50 * to the subclass of this instance of Mesh 51 */ 52 private MeshHelper meshHelper = null; 53 54 static { 55 // This is used by classes in different packages to get access to 56 // private and package private methods. 57 MeshHelper.setMeshAccessor(new MeshHelper.MeshAccessor() { 58 @Override 59 public MeshHelper getHelper(Mesh mesh) { 60 return mesh.meshHelper; 61 } 62 63 @Override 64 public void setHelper(Mesh mesh, MeshHelper meshHelper) { 65 mesh.meshHelper = meshHelper; 66 } 67 }); 68 } 69 70 protected Mesh() { 71 if (!Platform.isSupported(ConditionalFeature.SCENE3D)) { 72 String logname = Mesh.class.getName(); 73 PlatformLogger.getLogger(logname).warning("System can't support " 74 + "ConditionalFeature.SCENE3D"); 75 } 76 } 77 78 // Mesh isn't a Node. It can't use the standard dirtyBits pattern that is 79 // in Node 80 // TODO: 3D - Material and Mesh have similar pattern. We should look into creating 81 // a "NodeComponent" class if more non-Node classes are needed. 82 83 // Material isn't a Node. It can't use the standard dirtyBits pattern that is 84 // in Node 85 private final BooleanProperty dirty = new SimpleBooleanProperty(true); 86 87 final boolean isDirty() { 88 return dirty.getValue(); 89 } | 50 * to the subclass of this instance of Mesh 51 */ 52 private MeshHelper meshHelper = null; 53 54 static { 55 // This is used by classes in different packages to get access to 56 // private and package private methods. 57 MeshHelper.setMeshAccessor(new MeshHelper.MeshAccessor() { 58 @Override 59 public MeshHelper getHelper(Mesh mesh) { 60 return mesh.meshHelper; 61 } 62 63 @Override 64 public void setHelper(Mesh mesh, MeshHelper meshHelper) { 65 mesh.meshHelper = meshHelper; 66 } 67 }); 68 } 69 70 /** 71 * A constructor that is called by any {@code Mesh} implementation. 72 */ 73 protected Mesh() { 74 if (!Platform.isSupported(ConditionalFeature.SCENE3D)) { 75 String logname = Mesh.class.getName(); 76 PlatformLogger.getLogger(logname).warning("System can't support " 77 + "ConditionalFeature.SCENE3D"); 78 } 79 } 80 81 // Mesh isn't a Node. It can't use the standard dirtyBits pattern that is 82 // in Node 83 // TODO: 3D - Material and Mesh have similar pattern. We should look into creating 84 // a "NodeComponent" class if more non-Node classes are needed. 85 86 // Material isn't a Node. It can't use the standard dirtyBits pattern that is 87 // in Node 88 private final BooleanProperty dirty = new SimpleBooleanProperty(true); 89 90 final boolean isDirty() { 91 return dirty.getValue(); 92 } |