use of org.jwildfire.base.Prefs in project JWildfire by thargor6.
the class SubFlameRandomFlameGenerator method prepareFlame.
@Override
public Flame prepareFlame(RandomFlameGeneratorState pState) {
Prefs prefs = Prefs.getPrefs();
AllRandomFlameGenerator randGen = new AllRandomFlameGenerator();
randGen.setUseSimpleGenerators(true);
final int IMG_WIDTH = 80;
final int IMG_HEIGHT = 60;
int palettePoints = 3 + Tools.randomInt(68);
boolean fadePaletteColors = Math.random() > 0.33;
boolean uniformWidth = Math.random() > 0.75;
RandomFlameGeneratorSampler sampler = new RandomFlameGeneratorSampler(IMG_WIDTH, IMG_HEIGHT, prefs, randGen, RandomSymmetryGeneratorList.NONE, RandomGradientGeneratorList.DEFAULT, palettePoints, fadePaletteColors, uniformWidth, RandomBatchQuality.LOW);
Flame subFlame = sampler.createSample().getFlame();
Flame flame;
try {
flame = embedFlame(subFlame);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}
flame.setCentreX(2);
flame.setCentreY(1);
flame.setCamPitch(0);
flame.setCamRoll(-2);
flame.setCamYaw(0);
flame.setPixelsPerUnit(200);
return flame;
}
use of org.jwildfire.base.Prefs in project JWildfire by thargor6.
the class FlameThumbnail method generatePreview.
private void generatePreview(int pQuality) {
if (cacheKey != null) {
preview = ThumbnailCacheProvider.getThumbnail(cacheKey, IMG_WIDTH, IMG_HEIGHT, pQuality);
if (preview != null) {
return;
}
}
Prefs prefs = Prefs.getPrefs();
RenderInfo info = new RenderInfo(IMG_WIDTH, IMG_HEIGHT, RenderMode.PREVIEW);
Flame renderFlame = flame.makeCopy();
double wScl = (double) info.getImageWidth() / (double) renderFlame.getWidth();
double hScl = (double) info.getImageHeight() / (double) renderFlame.getHeight();
renderFlame.setPixelsPerUnit((wScl + hScl) * 0.5 * renderFlame.getPixelsPerUnit());
renderFlame.setWidth(IMG_WIDTH);
renderFlame.setHeight(IMG_HEIGHT);
renderFlame.setSampleDensity(prefs.getTinaRenderPreviewQuality());
renderFlame.setSpatialFilterRadius(0.0);
FlameRenderer renderer = new FlameRenderer(renderFlame, prefs, false, false);
renderFlame.setSampleDensity(pQuality);
RenderedFlame res = renderer.renderFlame(info);
preview = res.getImage();
if (cacheKey != null) {
ThumbnailCacheProvider.storeThumbnail(cacheKey, IMG_WIDTH, IMG_HEIGHT, pQuality, preview);
}
}
use of org.jwildfire.base.Prefs in project JWildfire by thargor6.
the class EnvelopeDlgController method importRawDataFromFile.
public void importRawDataFromFile() {
try {
Prefs prefs = Prefs.getPrefs();
JFileChooser chooser = new SplineDataFileChooser(prefs);
if (prefs.getTinaRawMotionDataPath() != null) {
try {
chooser.setCurrentDirectory(new File(prefs.getTinaRawMotionDataPath()));
} catch (Exception ex) {
ex.printStackTrace();
}
} else if (prefs.getTinaFlamePath() != null) {
try {
chooser.setCurrentDirectory(new File(prefs.getTinaFlamePath()));
} catch (Exception ex) {
ex.printStackTrace();
}
}
if (chooser.showOpenDialog(envelopePanel) == JFileChooser.APPROVE_OPTION) {
File file = chooser.getSelectedFile();
String data = Tools.readUTF8Textfile(file.getAbsolutePath());
importRawMotionData(data);
enableControls();
}
} catch (Throwable ex) {
errorHandler.handleError(ex);
}
}
use of org.jwildfire.base.Prefs in project JWildfire by thargor6.
the class EnvelopeDlgController method importMP3.
public void importMP3() {
try {
Prefs prefs = Prefs.getPrefs();
JFileChooser chooser = new SoundFileChooser(prefs);
if (prefs.getInputSoundFilePath() != null) {
try {
chooser.setCurrentDirectory(new File(prefs.getInputSoundFilePath()));
} catch (Exception ex) {
ex.printStackTrace();
}
}
if (chooser.showOpenDialog(envelopePanel) == JFileChooser.APPROVE_OPTION) {
File file = chooser.getSelectedFile();
prefs.setLastInputSoundFile(file);
mp3Data = new EnvelopeMP3Data(file.getAbsolutePath());
mp3SettingsChanged();
enableControls();
}
} catch (Throwable ex) {
errorHandler.handleError(ex);
}
}
use of org.jwildfire.base.Prefs in project JWildfire by thargor6.
the class IFlamesController method getFlamePanel.
@Override
public FlamePanel getFlamePanel() {
if (flamePanel == null) {
Prefs prefs = Prefs.getPrefs();
int width = centerPanel.getWidth();
int height = centerPanel.getHeight();
SimpleImage img = new SimpleImage(width, height);
img.fillBackground(0, 0, 0);
flamePanel = new FlamePanel(prefs, img, 0, 0, centerPanel.getWidth(), this, null);
flamePanel.getConfig().setWithColoredTransforms(prefs.isTinaEditorControlsWithColor());
flamePanel.setFlamePanelTriangleMode(prefs.getTinaEditorControlsStyle());
flamePanel.getConfig().setProgressivePreview(prefs.isTinaEditorProgressivePreview());
flamePanel.importOptions(prevFlamePanel);
prevFlamePanel = null;
ResolutionProfile resProfile = getResolutionProfile();
flamePanel.setRenderWidth(resProfile.getWidth());
flamePanel.setRenderHeight(resProfile.getHeight());
flamePanel.setFocusable(true);
if (firstFlamePanel) {
centerPanel.remove(0);
firstFlamePanel = false;
}
centerPanel.add(flamePanel, BorderLayout.CENTER);
centerPanel.getParent().validate();
centerPanel.repaint();
flamePanel.requestFocusInWindow();
}
return flamePanel;
}
Aggregations