use of org.jwildfire.create.tina.dance.model.PropertyModel in project JWildfire by thargor6.
the class FlamePropertiesTreeService method refreshFlamePropertiesTree.
public void refreshFlamePropertiesTree(JTree pFlamePropertiesTree, DancingFlameProject pProject) {
FlamePropertiesTreeNode<Object> root = new FlamePropertiesTreeNode<Object>("Flames", null, true);
for (Flame flame : pProject.getFlames()) {
FlamePropertiesTreeNode<Flame> flameNode = new FlamePropertiesTreeNode<Flame>(getFlameCaption(flame), flame, true);
PropertyModel model = AnimationModelService.createModel(flame);
addNodesToTree(model, flameNode);
root.add(flameNode);
}
pFlamePropertiesTree.setModel(new DefaultTreeModel(root));
}
use of org.jwildfire.create.tina.dance.model.PropertyModel in project JWildfire by thargor6.
the class FlamePropertiesTreeService method refreshFlamePropertiesTree.
public void refreshFlamePropertiesTree(JTree pFlamePropertiesTree, Flame pFlame) {
FlamePropertiesTreeNode<Object> root = new FlamePropertiesTreeNode<Object>("Flames", null, true);
if (pFlame != null) {
FlamePropertiesTreeNode<Flame> flameNode = new FlamePropertiesTreeNode<Flame>(getFlameCaption(pFlame), pFlame, true);
PropertyModel model = AnimationModelService.createModel(pFlame);
addNodesToTree(model, flameNode);
root.add(flameNode);
pFlamePropertiesTree.setModel(new DefaultTreeModel(root));
}
}
use of org.jwildfire.create.tina.dance.model.PropertyModel in project JWildfire by thargor6.
the class FlamePropertiesTreeService method addNodesToTree.
@SuppressWarnings({ "rawtypes", "unchecked" })
private void addNodesToTree(PropertyModel pModel, FlamePropertiesTreeNode<?> pParentNode) {
for (PropertyModel subNode : pModel.getChields()) {
FlamePropertiesTreeNode child = new FlamePropertiesTreeNode(subNode.getName(), subNode, true);
pParentNode.add(child);
addNodesToTree(subNode, child);
}
for (PlainProperty property : pModel.getProperties()) {
FlamePropertiesTreeNode<?> child = new FlamePropertiesTreeNode(property.getName(), property, false);
pParentNode.add(child);
}
}
use of org.jwildfire.create.tina.dance.model.PropertyModel in project JWildfire by thargor6.
the class DefaultMotionCreator method createMotions.
@Override
public void createMotions(DancingFlameProject pProject) {
pProject.getMotions().clear();
FFTMotion amp0 = new FFTMotion();
amp0.setFftChannel(0);
amp0.setAmplitude(-7.0);
FFTMotion amp1 = new FFTMotion();
amp1.setFftChannel(1);
amp1.setAmplitude(-0.5);
FFTMotion amp2 = new FFTMotion();
amp2.setFftChannel(2);
amp2.setAmplitude(-0.5);
FFTMotion amp3 = new FFTMotion();
amp3.setFftChannel(3);
amp3.setAmplitude(-2.0);
FFTMotion amp4 = new FFTMotion();
amp4.setFftChannel(4);
amp4.setAmplitude(0.25);
FFTMotion amp5 = new FFTMotion();
amp5.setFftChannel(5);
amp5.setAmplitude(-0.25);
FFTMotion amp7 = new FFTMotion();
amp7.setFftChannel(47);
amp7.setAmplitude(5.0);
FFTMotion amp8 = new FFTMotion();
amp8.setFftChannel(48);
amp8.setAmplitude(-0.75);
FFTMotion amp9 = new FFTMotion();
amp9.setFftChannel(49);
amp9.setAmplitude(0.5);
FFTMotion amp10 = new FFTMotion();
amp10.setFftChannel(50);
amp10.setAmplitude(3.0);
FFTMotion amp11 = new FFTMotion();
amp11.setFftChannel(51);
amp11.setAmplitude(0.25);
FFTMotion amp12 = new FFTMotion();
amp12.setFftChannel(52);
amp12.setAmplitude(0.25);
FFTMotion amp14 = new FFTMotion();
amp14.setFftChannel(2);
amp14.setAmplitude(0.25);
amp14.setOffset(1.0);
pProject.getMotions().add(amp0);
pProject.getMotions().add(amp1);
pProject.getMotions().add(amp2);
pProject.getMotions().add(amp3);
pProject.getMotions().add(amp4);
pProject.getMotions().add(amp5);
pProject.getMotions().add(amp7);
pProject.getMotions().add(amp8);
pProject.getMotions().add(amp9);
pProject.getMotions().add(amp10);
pProject.getMotions().add(amp11);
pProject.getMotions().add(amp12);
pProject.getMotions().add(amp14);
for (Flame flame : pProject.getFlames()) {
PropertyModel model = AnimationModelService.createModel(flame);
for (int layerIdx = 0; layerIdx < flame.getLayers().size(); layerIdx++) {
Layer layer = flame.getLayers().get(layerIdx);
if (layer.getXForms().size() > 0) {
addXFormLink(model, amp0, flame, layerIdx, 0, AnimationModelService.PROPNAME_ANGLE);
addXFormLink(model, amp1, flame, layerIdx, 0, AnimationModelService.PROPNAME_ORIGIN_X);
addXFormLink(model, amp2, flame, layerIdx, 0, AnimationModelService.PROPNAME_ORIGIN_Y);
}
if (layer.getXForms().size() > 1) {
addXFormLink(model, amp3, flame, layerIdx, 1, AnimationModelService.PROPNAME_ANGLE);
addXFormLink(model, amp4, flame, layerIdx, 1, AnimationModelService.PROPNAME_ORIGIN_X);
addXFormLink(model, amp5, flame, layerIdx, 1, AnimationModelService.PROPNAME_ORIGIN_Y);
}
if (layer.getXForms().size() > 2) {
addXFormLink(model, amp7, flame, layerIdx, 2, AnimationModelService.PROPNAME_ANGLE);
addXFormLink(model, amp8, flame, layerIdx, 2, AnimationModelService.PROPNAME_ORIGIN_X);
addXFormLink(model, amp9, flame, layerIdx, 2, AnimationModelService.PROPNAME_ORIGIN_Y);
}
if (layer.getXForms().size() > 3) {
addXFormLink(model, amp10, flame, layerIdx, 3, AnimationModelService.PROPNAME_ANGLE);
addXFormLink(model, amp11, flame, layerIdx, 3, AnimationModelService.PROPNAME_ORIGIN_X);
addXFormLink(model, amp12, flame, layerIdx, 3, AnimationModelService.PROPNAME_ORIGIN_Y);
}
if (layer.getFinalXForms().size() > 0) {
addFinalXFormLink(model, amp14, flame, layerIdx, 0, AnimationModelService.PROPNAME_ZOOM);
}
}
}
}
Aggregations