Search in sources :

Example 6 with RandomFlameGenerator

use of org.jwildfire.create.tina.randomflame.RandomFlameGenerator in project JWildfire by thargor6.

the class JWildfire method getMainDesktopPane.

private JDesktopPane getMainDesktopPane() {
    if (mainDesktopPane == null) {
        mainDesktopPane = createMainDesktopPane();
        for (InternalFrameHolder<?> internalFrame : mainInternalFrames) {
            mainDesktopPane.add(internalFrame.getInternalFrame());
        }
        getInternalFrame(NavigatorInternalFrame.class).setDesktop(this);
        TinaInternalFrame tinaInternalFrame = getInternalFrame(TinaInternalFrame.class);
        tinaInternalFrame.addComponentListener(new java.awt.event.ComponentAdapter() {

            public void componentResized(java.awt.event.ComponentEvent e) {
                tinaController.refreshFlameImage(true, false, 1, true, false);
            }
        });
        if (!tinaInternalFrame.isVisible()) {
            tinaInternalFrame.setVisible(true);
        }
        for (InternalFrameHolder<?> internalFrame : settingsInternalFrames) {
            mainDesktopPane.add(internalFrame.getInternalFrame());
        }
        for (InternalFrameHolder<?> internalFrame : helpInternalFrames) {
            mainDesktopPane.add(internalFrame.getInternalFrame());
        }
        errorHandler = new StandardErrorHandler(mainDesktopPane, getShowErrorDlg(), getShowErrorDlgMessageTextArea(), getShowErrorDlgStacktraceTextArea());
        NavigatorInternalFrame navigatorInternalFrame = getInternalFrame(NavigatorInternalFrame.class);
        if (!navigatorInternalFrame.isVisible()) {
            navigatorInternalFrame.setVisible(true);
        }
        navigatorInternalFrame.moveToFront();
        /*
            WelcomeInternalFrame welcomeInternalFrame = getInternalFrame(WelcomeInternalFrame.class);
            if (!welcomeInternalFrame.isVisible()) {
              welcomeInternalFrame.setVisible(true);
            }
            welcomeInternalFrame.moveToFront();
      */
        TipOfTheDayInternalFrame tipOfTheDayInternalFrame = getInternalFrame(TipOfTheDayInternalFrame.class);
        if (!tipOfTheDayInternalFrame.isVisible() && Prefs.getPrefs().isShowTipsAtStartup()) {
            tipOfTheDayInternalFrame.setVisible(true);
        }
        tipOfTheDayInternalFrame.moveToFront();
        try {
            getInternalFrame(ListOfChangesInternalFrame.class).initChangesPane();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        try {
            getInternalFrame(GPURenderInfoInternalFrame.class).initChangesPane();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        MutaGenInternalFrame mutaGenFrame = getInternalFrame(MutaGenInternalFrame.class);
        FlameBrowserInternalFrame flameBrowserFrame = getInternalFrame(FlameBrowserInternalFrame.class);
        EasyMovieMakerInternalFrame easyMovieMakerFrame = getInternalFrame(EasyMovieMakerInternalFrame.class);
        DancingFlamesInternalFrame dancingFlamesFrame = getInternalFrame(DancingFlamesInternalFrame.class);
        BatchFlameRendererInternalFrame batchFlameRendererFrame = getInternalFrame(BatchFlameRendererInternalFrame.class);
        MeshGenInternalFrame meshGenFrame = getInternalFrame(MeshGenInternalFrame.class);
        InteractiveRendererInternalFrame interactiveRendererFrame = getInternalFrame(InteractiveRendererInternalFrame.class);
        VariationsSettingsInternalFrame variationsSettingsFrame = getInternalFrame(VariationsSettingsInternalFrame.class);
        // create some unregistered window even when FACLRender is not available, in order to avoid further null-checks etc.
        FlamesGPURenderInternalFrame gpuRendererFrame = FACLRenderTools.isFaclRenderAvalailable() ? getInternalFrame(FlamesGPURenderInternalFrame.class) : new FlamesGPURenderInternalFrame();
        HelpInternalFrame helpFrame = getInternalFrame(HelpInternalFrame.class);
        TinaInternalFrame tinaFrame = getInternalFrame(TinaInternalFrame.class);
        tinaController = tinaFrame.createController(this, errorHandler, prefs, mutaGenFrame, flameBrowserFrame, easyMovieMakerFrame, dancingFlamesFrame, batchFlameRendererFrame, meshGenFrame, interactiveRendererFrame, gpuRendererFrame, helpFrame);
        try {
            RandomFlameGenerator randGen = RandomFlameGeneratorList.getRandomFlameGeneratorInstance(RandomFlameGeneratorList.DEFAULT_GENERATOR_NAME, true);
            if (randGen instanceof AllRandomFlameGenerator) {
                ((AllRandomFlameGenerator) randGen).setUseSimpleGenerators(true);
            }
            RandomSymmetryGenerator randSymmGen = RandomSymmetryGeneratorList.getRandomSymmetryGeneratorInstance(RandomSymmetryGeneratorList.DEFAULT_GENERATOR_NAME, true);
            RandomGradientGenerator randGradientGen = RandomGradientGeneratorList.getRandomGradientGeneratorInstance((RandomGradientGeneratorList.DEFAULT_GENERATOR_NAME), true);
            tinaController.createRandomBatch(2, randGen, randSymmGen, randGradientGen, RandomBatchQuality.LOW);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        flameBrowserFrame.setTinaController(tinaController);
        mutaGenFrame.setTinaController(tinaController);
        easyMovieMakerFrame.setTinaController(tinaController);
        dancingFlamesFrame.setTinaController(tinaController);
        batchFlameRendererFrame.setTinaController(tinaController);
        variationsSettingsFrame.setTinaController(tinaController);
        meshGenFrame.setTinaController(tinaController);
        interactiveRendererFrame.setTinaController(tinaController);
        gpuRendererFrame.setTinaController(tinaController);
        helpFrame.setTinaController(tinaController);
        FormulaExplorerInternalFrame formulaExplorerFrame = getInternalFrame(FormulaExplorerInternalFrame.class);
        formulaExplorerController = new FormulaExplorerController((FormulaPanel) formulaExplorerFrame.getFormulaPanel(), formulaExplorerFrame.getFormulaExplorerFormula1REd(), formulaExplorerFrame.getFormulaExplorerFormula2REd(), formulaExplorerFrame.getFormulaExplorerFormula3REd(), formulaExplorerFrame.getFormulaExplorerFormulaXMinREd(), formulaExplorerFrame.getFormulaExplorerFormulaXMaxREd(), formulaExplorerFrame.getFormulaExplorerFormulaXCountREd(), formulaExplorerFrame.getFormulaExplorerValuesTextArea());
        OperatorsInternalFrame operatorsFrame = getInternalFrame(OperatorsInternalFrame.class);
        operatorsFrame.setDesktop(this);
        PreferencesInternalFrame preferencesFrame = getInternalFrame(PreferencesInternalFrame.class);
        preferencesFrame.setDesktop(this);
        preferencesFrame.setPrefs(prefs);
        preferencesFrame.setMainController(mainController);
        mainController = new MainController(prefs, errorHandler, mainDesktopPane, getWindowMenu(), operatorsFrame.getTransformerInputCmb(), operatorsFrame.getTransformerPresetCmb(), operatorsFrame.getCreatorPresetCmb(), getShowMessageDlg(), getShowMessageDlgTextArea(), null, null, null, null, null, null, null, mainInternalFrames.size());
        /*
      EDENInternalFrame edenFrame = (EDENInternalFrame) getEDENInternalFrame();
      edenFrame.createController(mainController, errorHandler, prefs).newEmptyScene();
      */
        IFlamesInternalFrame iflamesInternalFrame = getInternalFrame(IFlamesInternalFrame.class);
        iflamesInternalFrame.createController(mainController, tinaController, errorHandler);
        tinaController.setMainController(mainController);
        operatorsFrame.setMainController(mainController);
        formulaExplorerFrame.setMainController(mainController);
        formulaExplorerFrame.setFormulaExplorerController(formulaExplorerController);
    }
    try {
        getInternalFrame(WelcomeInternalFrame.class).setSelected(true);
    } catch (PropertyVetoException ex) {
        ex.printStackTrace();
    }
    return mainDesktopPane;
}
Also used : HelpInternalFrame(org.jwildfire.create.tina.swing.HelpInternalFrame) TinaInternalFrame(org.jwildfire.create.tina.swing.TinaInternalFrame) InteractiveRendererInternalFrame(org.jwildfire.create.tina.swing.InteractiveRendererInternalFrame) MeshGenInternalFrame(org.jwildfire.create.tina.swing.MeshGenInternalFrame) BatchFlameRendererInternalFrame(org.jwildfire.create.tina.swing.BatchFlameRendererInternalFrame) EasyMovieMakerInternalFrame(org.jwildfire.create.tina.swing.EasyMovieMakerInternalFrame) FlamesGPURenderInternalFrame(org.jwildfire.create.tina.swing.FlamesGPURenderInternalFrame) AllRandomFlameGenerator(org.jwildfire.create.tina.randomflame.AllRandomFlameGenerator) RandomFlameGenerator(org.jwildfire.create.tina.randomflame.RandomFlameGenerator) FlameBrowserInternalFrame(org.jwildfire.create.tina.swing.FlameBrowserInternalFrame) MutaGenInternalFrame(org.jwildfire.create.tina.swing.MutaGenInternalFrame) RandomGradientGenerator(org.jwildfire.create.tina.randomgradient.RandomGradientGenerator) AllRandomFlameGenerator(org.jwildfire.create.tina.randomflame.AllRandomFlameGenerator) NavigatorInternalFrame(org.jwildfire.create.tina.swing.NavigatorInternalFrame) VariationsSettingsInternalFrame(org.jwildfire.create.tina.swing.VariationsSettingsInternalFrame) PropertyVetoException(java.beans.PropertyVetoException) PropertyVetoException(java.beans.PropertyVetoException) IFlamesInternalFrame(org.jwildfire.create.iflames.swing.IFlamesInternalFrame) RandomSymmetryGenerator(org.jwildfire.create.tina.randomsymmetry.RandomSymmetryGenerator) DancingFlamesInternalFrame(org.jwildfire.create.tina.swing.DancingFlamesInternalFrame)

Example 7 with RandomFlameGenerator

use of org.jwildfire.create.tina.randomflame.RandomFlameGenerator in project JWildfire by thargor6.

the class TinaInteractiveRendererController method genRandomFlame.

public void genRandomFlame() {
    final int IMG_WIDTH = 80;
    final int IMG_HEIGHT = 60;
    RandomFlameGenerator randGen = RandomFlameGeneratorList.getRandomFlameGeneratorInstance((String) randomStyleCmb.getSelectedItem(), true);
    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.SPARSE, RandomGradientGeneratorList.DEFAULT, palettePoints, fadePaletteColors, uniformWidth, RandomBatchQuality.HIGH);
    currFlame = sampler.createSample().getFlame();
    storeCurrFlame();
}
Also used : RandomFlameGeneratorSampler(org.jwildfire.create.tina.randomflame.RandomFlameGeneratorSampler) XYZProjectedPoint(org.jwildfire.create.tina.base.XYZProjectedPoint) RandomFlameGenerator(org.jwildfire.create.tina.randomflame.RandomFlameGenerator)

Aggregations

RandomFlameGenerator (org.jwildfire.create.tina.randomflame.RandomFlameGenerator)7 RandomFlameGeneratorSampler (org.jwildfire.create.tina.randomflame.RandomFlameGeneratorSampler)5 AllRandomFlameGenerator (org.jwildfire.create.tina.randomflame.AllRandomFlameGenerator)4 XYZProjectedPoint (org.jwildfire.create.tina.base.XYZProjectedPoint)2 RandomGradientGenerator (org.jwildfire.create.tina.randomgradient.RandomGradientGenerator)2 RandomSymmetryGenerator (org.jwildfire.create.tina.randomsymmetry.RandomSymmetryGenerator)2 Dimension (java.awt.Dimension)1 ActionEvent (java.awt.event.ActionEvent)1 ActionListener (java.awt.event.ActionListener)1 PropertyVetoException (java.beans.PropertyVetoException)1 ImageIcon (javax.swing.ImageIcon)1 JButton (javax.swing.JButton)1 IFlamesInternalFrame (org.jwildfire.create.iflames.swing.IFlamesInternalFrame)1 Flame (org.jwildfire.create.tina.base.Flame)1 RandomFlameGeneratorSample (org.jwildfire.create.tina.randomflame.RandomFlameGeneratorSample)1 WikimediaCommonsRandomFlameGenerator (org.jwildfire.create.tina.randomflame.WikimediaCommonsRandomFlameGenerator)1 RenderedFlame (org.jwildfire.create.tina.render.RenderedFlame)1 BatchFlameRendererInternalFrame (org.jwildfire.create.tina.swing.BatchFlameRendererInternalFrame)1 DancingFlamesInternalFrame (org.jwildfire.create.tina.swing.DancingFlamesInternalFrame)1 EasyMovieMakerInternalFrame (org.jwildfire.create.tina.swing.EasyMovieMakerInternalFrame)1