The bugfixes:
- API-comments to implement new painting tools
- nested CGOs can be saved
JAR and sources: https://github.com/gundermann/JFX3D
public class Ellipse3D extends AbstractPaintableObject3D
@Override public void changeHeightTo(double d) { // TODO Auto-generated method stub } @Override public void changeWidthTo(double d) { // TODO Auto-generated method stub } @Override public void paint(double x, double y, double initinalX, double initinalY) { // TODO Auto-generated method stub } @Override public DoubleProperty getHeightProperty() { // TODO Auto-generated method stub return null; } @Override public DoubleProperty getWidthProperty() { // TODO Auto-generated method stub return null; } @Override public Object3DFactory getFactory() { // TODO Auto-generated method stub return null; } @Override protected Class getShapeClass() { // TODO Auto-generated method stub return null; }
@Override public void changeHeightTo(double d) { // TODO Auto-generated method stub } @Override public void changeWidthTo(double d) { // TODO Auto-generated method stub } @Override public void paint(double x, double y, double initinalX, double initinalY) { // TODO Auto-generated method stub } @Override public DoubleProperty getHeightProperty() { // TODO Auto-generated method stub return null; } @Override public DoubleProperty getWidthProperty() { // TODO Auto-generated method stub return null; } @Override public Object3DFactory getFactory() { // TODO Auto-generated method stub return null; } @Override protected Class getShapeClass() { // TODO Auto-generated method stub return null; }
public class Ellipse3DFactory extends Object3DFactory { private static Object3DFactory _instance; @Override public Object3D createPlainObject3D() { return new Ellipse3D(); } public static Object3DFactory getInstance() { if(_instance == null) _instance = new Ellipse3DFactory(); return _instance; } @Override public String getType() { return "Ellipse"; } }
Rectangle, Ellipse, None;
public MapgetFactoryFormPaintingMode() { Map paintingStartListener = new HashMap (); paintingStartListener.put(Painting.Rectangle, Rectangle3DFactory.getInstance()); paintingStartListener.put(Painting.Ellipse, Ellipse3DFactory.getInstance()); return paintingStartListener; }
public Object3DFactory getFactoryFormPreference(String type) { MappaintingStartListener = new HashMap (); paintingStartListener .put("Rectangle", Rectangle3DFactory.getInstance()); paintingStartListener.put("Ellipse", Ellipse3DFactory.getInstance()); paintingStartListener.put("complex", ComplexObject3DFactory.getInstance()); return paintingStartListener.get(type); }
@FXML public void selectPaintEllipse() { actualPaintingArea.initPainting(Painting.Ellipse); }
public class TestPropertyObject { DoubleProperty testProperty = new SimpleDoubleProperty(); @Property(hasChildren=false, name="test") public DoubleProperty getTestProperty() { return testProperty; } @PropertyChange(hasChildren = false, name = "test") public void setTestProperty(double value) { this.testProperty.set(value); System.out.println(getTestProperty().get()); } }
public class Lauch extends Application { @Override public void start(Stage stage) throws Exception { GUIManipulatingMenu guiManipulatingMenu = new GUIManipulatingMenu(); guiManipulatingMenu.setPropertyObject(new TestPropertyObject()); Scene s = new Scene(guiManipulatingMenu); stage.setScene(s); stage.show(); } public static void main(String[] args) { launch(args); }
pic 1 |
Can look through the door |
<rect x-coordinate="123" y-coordinate="321" z-coordinate="0" height="100" width="100" xr="45" yr="90" zr="2" color="#FFFFFF"/>
</shape_definition>