Package org.jwildfire.image

Examples of org.jwildfire.image.SimpleImage


      ImagePanel panels[] = { getPalettePanel(), getColorChooserPalettePanel() };
      for (ImagePanel imgPanel : panels) {
        int width = imgPanel.getWidth();
        int height = imgPanel.getHeight();
        if (width >= 16 && height >= 4) {
          SimpleImage img = new RGBPaletteRenderer().renderHorizPalette(getCurrLayer().getPalette(), width, height);
          imgPanel.setImage(img);
        }
        imgPanel.getParent().validate();
        imgPanel.repaint();
      }
View Full Code Here


    JPanel batchPanel = new JPanel();
    batchPanel.setLayout(null);
    batchPanel.setSize(panelWidth, panelHeight);
    batchPanel.setPreferredSize(new Dimension(panelWidth, panelHeight));
    for (int i = 0; i < randomBatch.size(); i++) {
      SimpleImage img = randomBatch.get(i).getPreview(3 * prefs.getTinaRenderPreviewQuality() / 4);
      // add it to the main panel
      ImagePanel imgPanel = new ImagePanel(img, 0, 0, img.getImageWidth());
      imgPanel.setImage(img);
      imgPanel.setLocation(BORDER_SIZE, i * IMG_HEIGHT + (i + 1) * BORDER_SIZE);
      randomBatch.get(i).setImgPanel(imgPanel);
      final int idx = i;
      addRemoveButton(imgPanel, idx);
View Full Code Here

      boolean fadePaletteColors = Math.random() > 0.06;
      RandomFlameGeneratorSampler sampler = new RandomFlameGeneratorSampler(IMG_WIDTH / 2, IMG_HEIGHT / 2, prefs, randGen, randSymmGen, randGradientGen, palettePoints, fadePaletteColors, pQuality);
      RandomFlameGeneratorSample sample = sampler.createSample();
      FlameThumbnail thumbnail;
      thumbnail = new FlameThumbnail(sample.getFlame(), null);
      SimpleImage img = thumbnail.getPreview(3 * prefs.getTinaRenderPreviewQuality() / 4);
      if (prefs.getTinaRandomBatchRefreshType() == RandomBatchRefreshType.INSERT) {
        randomBatch.add(0, thumbnail);
        imgList.add(0, img);
      }
      else {
View Full Code Here

      }
    }
    if (chooser.showOpenDialog(centerPanel) == JFileChooser.APPROVE_OPTION) {
      File file = chooser.getSelectedFile();
      try {
        SimpleImage img = new ImageReader(centerPanel).loadImage(file.getAbsolutePath());
        prefs.setLastInputImageFile(file);
        RGBPalette palette = new MedianCutQuantizer().createPalette(img);
        data.paletteKeyFrames = null;
        saveUndoPoint();
        getCurrLayer().setPalette(palette);
View Full Code Here

      final double MIN_RENDER_COVERAGE = 0.42;
      final double MIN_DIFF_COVERAGE = 0.28;
      final double INVALID_COVERAGE = -1.0;
      Dimension probeSize = new Dimension(80, 60);

      SimpleImage baseFlameImg = renderRandomizedFlame(getCurrRandomizeFlame().makeCopy(), probeSize);
      SimpleImage simplifiedBaseFlameImg = RandomFlameGeneratorSampler.createSimplifiedRefImage(baseFlameImg);

      int iter = 0;
      double bestCoverage = INVALID_COVERAGE;
      Flame bestMutation = null;
      while (true) {
        Flame currMutation = getCurrRandomizeFlame().makeCopy();
        List<MutationType> mutationTypes = createRandomMutationTypes();
        for (MutationType mutationType : mutationTypes) {
          int layerIdx = data.layersTable.getSelectedRow();
          Layer layer = currMutation.getLayers().get(layerIdx);
          mutationType.createMutationInstance().execute(layer);
        }

        SimpleImage renderedImg = renderRandomizedFlame(currMutation.makeCopy(), probeSize);
        double coverage = renderedImg != null ? RandomFlameGeneratorSampler.calculateCoverage(renderedImg, 0, 0, 0, true) : INVALID_COVERAGE;
        if (coverage > MIN_RENDER_COVERAGE) {
          coverage = RandomFlameGeneratorSampler.calculateDiffCoverage(renderedImg, simplifiedBaseFlameImg);
        }
        if (coverage > MIN_DIFF_COVERAGE) {
View Full Code Here

        List<RGBPalette> gradients = new MapGradientReader().readPalettes(currFile.getAbsolutePath());

        int imgWidth = this.getPreferredSize().width;
        int imgHeight = this.getPreferredSize().height - BUTTON_HEIGHT;

        SimpleImage img = new RGBPaletteRenderer().renderHorizPalette(gradients.get(0), imgWidth, imgHeight);
        currThumbnail = new ImageIcon(img.getBufferedImg());
      }
    }
    catch (Exception ex) {
      currThumbnail = null;
      if (ex.getCause() != null) {
View Full Code Here

    if (imageScrollPane != null) {
      getImgMainPnl().remove(imageScrollPane);
      imageScrollPane = null;
    }
    ImgSize size = getImgSize();
    image = new SimpleImage(size.getWidth(), size.getHeight());
    image.fillBackground(prefs.getTinaRandomBatchBGColorRed(), prefs.getTinaRandomBatchBGColorGreen(), prefs.getTinaRandomBatchBGColorBlue());
    ImagePanel imagePanel = new ImagePanel(image, 0, 0, image.getImageWidth());
    imagePanel.setSize(image.getImageWidth(), image.getImageHeight());
    imagePanel.setPreferredSize(new Dimension(image.getImageWidth(), image.getImageHeight()));
View Full Code Here

          //          SVGRoot root = diagram.getRoot();
          //          root.setAttribute("width", AnimationElement.AT_XML, Integer.toString(imgWidth));
          //          root.setAttribute("height", AnimationElement.AT_XML, Integer.toString(imgHeight));
          //          root.build();

          SimpleImage imgMap = new SimpleImage(imgWidth, imgHeight);

          Graphics2D g = imgMap.getBufferedImg().createGraphics();
          g.scale(resolution_multiplier, resolution_multiplier);
          if (pre_antialias != 0) {
            g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
            g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);
          }
          else {
            g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF);
            g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
          }
          diagram.render(g);

          Pixel pixel = new Pixel();
          _points = new ArrayList<Point>();

          int xMin = imgMap.getImageWidth() - 1, xMax = 0;
          int yMin = imgMap.getImageHeight() - 1, yMax = 0;
          for (int i = 0; i < imgMap.getImageHeight(); i++) {
            for (int j = 0; j < imgMap.getImageWidth(); j++) {
              int argb = imgMap.getARGBValue(j, i);
              if (argb != 0) {
                if (j < xMin) {
                  xMin = j;
                }
                else if (j > xMax) {
                  xMax = j;
                }
                if (i < yMin) {
                  yMin = i;
                }
                else if (i > yMax) {
                  yMax = i;
                }
              }
            }
          }
          int xSize = xMax - xMin;
          int ySize = yMax - yMin;
          int maxSize = xSize > ySize ? xSize : ySize;

          if (maxSize > 0) {
            for (int i = 0; i < imgMap.getImageHeight(); i++) {
              for (int j = 0; j < imgMap.getImageWidth(); j++) {
                int argb = imgMap.getARGBValue(j, i);
                if (argb != 0) {
                  double x = ((j - xMin) - xSize / 2.0) / (double) maxSize;
                  double y = ((i - yMin) - ySize / 2.0) / (double) maxSize;
                  pixel.setARGBValue(argb);
                  _points.add(new Point(x, y, pixel.r, pixel.g, pixel.b));
View Full Code Here

        txt.setBaseLineOffset(baseline);

        Dimension dim = txt.calculateTextSize();
        int imgWidth = (int) (dim.getWidth() + 2 * font_size);
        int imgHeight = (int) (dim.getHeight() + 2 * font_size);
        SimpleImage imgMap = new SimpleImage(imgWidth, imgHeight);

        txt.transformImage(imgMap);
        _points = new ArrayList<Point>();
        double w2 = (double) imgMap.getImageWidth() / 2.0;
        double h2 = (double) imgMap.getImageHeight() / 2.0;
        for (int i = 0; i < imgMap.getImageHeight(); i++) {
          for (int j = 0; j < imgMap.getImageWidth(); j++) {
            int argb = imgMap.getARGBValue(j, i);
            if (argb != 0) {
              double x = ((double) j - w2) / (double) imgMap.getImageWidth();
              double y = ((double) i - h2) / (double) imgMap.getImageHeight();
              _points.add(new Point(x, y));
            }
          }
        }
        //        System.out.println("IMG: " + imgWidth + "x" + imgHeight + ", POINTS: " + _points.size());
View Full Code Here

  private FlamePanel getFlamePanel() {
    if (flamePanel == null) {
      int width = getPreviewRootPanel().getWidth();
      int height = getPreviewRootPanel().getHeight();
      SimpleImage img = new SimpleImage(width, height);
      img.fillBackground(0, 0, 0);
      flamePanel = new FlamePanel(Prefs.getPrefs(), img, 0, 0, getPreviewRootPanel().getWidth(), this, null);
      flamePanel.setRenderWidth(800);
      flamePanel.setRenderHeight(600);
      flamePanel.setFocusable(true);
      getPreviewRootPanel().add(flamePanel, BorderLayout.CENTER);
View Full Code Here

TOP

Related Classes of org.jwildfire.image.SimpleImage

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.