Package org.jwildfire.create.tina.base

Examples of org.jwildfire.create.tina.base.Flame


      errorHandler.handleError(ex);
    }
  }

  private boolean appendToFlame(Flame pSrc) {
    Flame destFlame = getCurrFlame();
    for (Layer layer : pSrc.getLayers()) {
      destFlame.getLayers().add(layer);
    }
    return pSrc.getLayers().size() > 0;
  }
View Full Code Here


      }
    }
    if (chooser.showOpenDialog(centerPanel) == JFileChooser.APPROVE_OPTION) {
      File file = chooser.getSelectedFile();
      List<Flame> flames = new FlameReader(prefs).readFlames(file.getAbsolutePath());
      Flame flame = flames.get(0);
      prefs.setLastInputFlameFile(file);
      RGBPalette palette = flame.getFirstLayer().getPalette();
      data.paletteKeyFrames = null;
      saveUndoPoint();
      getCurrLayer().setPalette(palette);
      setLastGradient(palette);
      refreshPaletteColorsTable();
View Full Code Here

      }
    }
  }

  public void newFlameButton_clicked() {
    Flame flame = new Flame();
    flame.setWidth(800);
    flame.setHeight(600);
    flame.setPixelsPerUnit(50);
    flame.setBGTransparency(prefs.isTinaDefaultBGTransparency());
    flame.setAntialiasAmount(prefs.getTinaDefaultAntialiasingAmount());
    flame.setAntialiasRadius(prefs.getTinaDefaultAntialiasingRadius());
    RandomGradientGenerator gradientGen = RandomGradientGeneratorList.getRandomGradientGeneratorInstance((String) data.paletteRandomGeneratorCmb.getSelectedItem());
    RGBPalette palette = gradientGen.generatePalette(Integer.parseInt(data.paletteRandomPointsREd.getText()), data.paletteFadeColorsCBx.isSelected());
    flame.getFirstLayer().setPalette(palette);
    setLastGradient(palette);
    setCurrFlame(flame);
    undoManager.initUndoStack(getCurrFlame());
  }
View Full Code Here

  private void flamePanel_mouseClicked(MouseEvent e) {
    if (e.getClickCount() == 2) {
      renderFlameButton_actionPerformed(null);
    }
    else if (e.getClickCount() == 1) {
      Flame flame = getCurrFlame();
      Layer layer = getCurrLayer();
      if (flame != null && flamePanel != null) {
        XForm xForm = flamePanel.mouseClicked(e.getX(), e.getY());
        if (xForm != null || flamePanel.getConfig().getMouseDragOperation() == MouseDragOperation.GRADIENT) {
          for (int i = 0; i < layer.getXForms().size(); i++) {
View Full Code Here

      transformationTableClicked();
    }
  }

  public void newDOFCBx_changed() {
    Flame flame = getCurrFlame();
    if (flame != null) {
      saveUndoPoint();
      flame.setNewCamDOF(data.newDOFCBx.isSelected());
      flameControls.enableDOFUI();
      refreshFlameImage(false);
    }
  }
View Full Code Here

public class ExperimentalGnarlRandomFlameGenerator extends RandomFlameGenerator {

  @Override
  protected Flame prepareFlame(RandomFlameGeneratorState pState) {
    // Bases loosely on the W2R Batch Script by parrotdolphin.deviantart.com */
    Flame flame = new Flame();
    Layer layer = flame.getFirstLayer();
    flame.setCentreX(0.0);
    flame.setCentreY(0.0);
    flame.setPixelsPerUnit(200);
    layer.getFinalXForms().clear();
    layer.getXForms().clear();
    // init
    double scaleX = Math.random() * 0.04 + 0.04;
    if (Math.random() > 0.75) {
View Full Code Here

public class SierpinskyRandomFlameGenerator extends RandomFlameGenerator {

  @Override
  protected Flame prepareFlame(RandomFlameGeneratorState pState) {
    Flame flame = new Flame();
    Layer layer = flame.getFirstLayer();
    flame.setCentreX(0.0);
    flame.setCamRoll((int) (Math.random() * 8.0) * -45.0);
    flame.setCentreY(0.0);
    flame.setPixelsPerUnit(200);
    layer.getFinalXForms().clear();
    layer.getXForms().clear();
    flame.setCamZoom(4.56);
    double posx[] = { -0.5, 0.5, 0.5, -0.5 };
    double posy[] = { -0.5, -0.5, 0.5, 0.5 };

    for (int i = 0; i < posx.length; i++) {
      XForm xForm = new XForm();
View Full Code Here

            }
            return true;
          }
          case VIEW: {
            if (flameHolder != null && flameHolder.getFlame() != null) {
              Flame flame = flameHolder.getFlame();
              // Move
              if (pLeftButton && !pRightButton) {
                double rcX, rcY;
                if (flame.is3dProjectionRequired()) {
                  rcX = dx;
                  rcY = dy;
                }
                else {
                  double cosa = cos(M_PI * (flame.getCamRoll()) / 180.0);
                  double sina = sin(M_PI * (flame.getCamRoll()) / 180.0);
                  rcX = dx * cosa - dy * sina;
                  rcY = dy * cosa + dx * sina;
                }
                if (fineMovement) {
                  rcX *= 0.1;
                  rcY *= 0.1;
                }
                flame.setCentreX(flame.getCentreX() - rcX * 0.3);
                flame.setCentreY(flame.getCentreY() + rcY * 0.3);
                return true;
              }
              // rotate
              else if (pRightButton) {
                if (fineMovement) {
                  dx *= 0.1;
                  dy *= 0.1;
                }
                if (pLeftButton) {
                  flame.setCamYaw(flame.getCamYaw() + 12 * dx);
                }
                else {
                  flame.setCamRoll(flame.getCamRoll() - 12 * dx);
                  //                  flame.setCamPitch(flame.getCamPitch() + 12 * dy);
                }
                return true;
              }
              // zoom
              else if (pMiddleButton && !pLeftButton && !pRightButton) {
                if (fineMovement) {
                  dx *= 0.1;
                  dy *= 0.1;
                }
                flame.setPixelsPerUnit(flame.getPixelsPerUnit() + 2.0 * dx);
                return true;
              }
            }
          }
          case FOCUS: {
            Flame flame = flameHolder.getFlame();
            //            double cosa = cos(M_PI * (flame.getCamRoll()) / 180.0);
            //            double sina = sin(M_PI * (flame.getCamRoll()) / 180.0);
            //            double rcX = dx * cosa - dy * sina;
            //            double rcY = dy * cosa + dx * sina;
            double rcX = dx;
            double rcY = dy;
            if (fineMovement) {
              rcX *= 0.1;
              rcY *= 0.1;
            }
            flame.setFocusX(flame.getFocusX() + rcX * 0.5);
            flame.setFocusY(flame.getFocusY() - rcY * 0.5);
            return true;
          }
          case GRADIENT: {
            Layer layer = layerHolder.getLayer();
            dx = viewDX * 0.25;
 
View Full Code Here

  private FlameRenderer flameRenderer = null;

  private FlameRenderer getFlameRenderer() {
    if (flameRenderer == null) {
      Flame flame = flameHolder.getFlame();
      if (flame == null) {
        throw new IllegalStateException();
      }
      flameRenderer = new FlameRenderer(flame, prefs, withShowTransparency, false);
    }
View Full Code Here

  }

  public boolean mouseWheelMoved(int pRotateAmount) {
    if (pRotateAmount != 0) {
      if (config.getMouseDragOperation() == MouseDragOperation.VIEW && flameHolder != null && flameHolder.getFlame() != null) {
        Flame flame = flameHolder.getFlame();
        double dx = pRotateAmount * 3.0;
        if (fineMovement) {
          dx *= 0.1;
        }
        flame.setPixelsPerUnit(flame.getPixelsPerUnit() - dx);
        return true;
      }
      if (config.getMouseDragOperation() == MouseDragOperation.TRIANGLE_VIEW && flameHolder != null && flameHolder.getFlame() != null) {
        double dx = pRotateAmount * 0.3;
        if (fineMovement) {
          dx *= 0.1;
        }
        viewSizeIncrease -= dx;
        return true;
      }
      else if (config.getMouseDragOperation() == MouseDragOperation.MOVE_TRIANGLE && selectedXForm != null) {
        double dx = -pRotateAmount * 0.1;
        double dy = dx;
        if (fineMovement) {
          dx *= 0.1;
          dy *= 0.1;
        }
        TriangleControlShape triangle = new TriangleControlShape(config, selectedXForm);
        double v1x = triangle.x[0] - triangle.x[1];
        double v1y = triangle.y[0] - triangle.y[1];
        double v2x = v1x + dx;
        double v2y = v1y + dy;
        double dr1 = Math.sqrt(v1x * v1x + v1y * v1y);
        double dr2 = Math.sqrt(v2x * v2x + v2y * v2y);
        double scale = dr2 / dr1;
        if (config.isEditPostTransform()) {
          if (allowScaleX) {
            selectedXForm.setPostCoeff00(selectedXForm.getPostCoeff00() * scale);
            selectedXForm.setPostCoeff01(selectedXForm.getPostCoeff01() * scale);
          }
          if (allowScaleY) {
            selectedXForm.setPostCoeff10(selectedXForm.getPostCoeff10() * scale);
            selectedXForm.setPostCoeff11(selectedXForm.getPostCoeff11() * scale);
          }
        }
        else {
          if (allowScaleX) {
            selectedXForm.setCoeff00(selectedXForm.getCoeff00() * scale);
            selectedXForm.setCoeff01(selectedXForm.getCoeff01() * scale);
          }
          if (allowScaleY) {
            selectedXForm.setCoeff10(selectedXForm.getCoeff10() * scale);
            selectedXForm.setCoeff11(selectedXForm.getCoeff11() * scale);
          }
        }
        return true;
      }
      else if (config.getMouseDragOperation() == MouseDragOperation.FOCUS && flameHolder != null && flameHolder.getFlame() != null) {
        double dz = -pRotateAmount * 0.1;
        if (fineMovement) {
          dz *= 0.1;
        }
        Flame flame = flameHolder.getFlame();
        flame.setFocusZ(flame.getFocusZ() + dz);
        return true;
      }
      else if (config.getMouseDragOperation() == MouseDragOperation.GRADIENT && flameHolder != null && flameHolder.getFlame() != null) {
        double dz = -pRotateAmount * 0.1;
        if (fineMovement) {
View Full Code Here

TOP

Related Classes of org.jwildfire.create.tina.base.Flame

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.