X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.g3d.csg%2Fsrc%2Forg%2Fsimantics%2Fg3d%2Fcsg%2Fscenegraph2%2FCSGparentNode.java;h=46610414f8c6ab4a061f6a08ab54ffab60caf870;hb=9f84331c9967c88e0e5550ce91f2b7e364a5cb6d;hp=087ec522468a2f13e3a9354f0f09a246ee61aff8;hpb=da945733caf267fed4cf28206cc99f4f57fbd1e9;p=simantics%2F3d.git diff --git a/org.simantics.g3d.csg/src/org/simantics/g3d/csg/scenegraph2/CSGparentNode.java b/org.simantics.g3d.csg/src/org/simantics/g3d/csg/scenegraph2/CSGparentNode.java index 087ec522..46610414 100644 --- a/org.simantics.g3d.csg/src/org/simantics/g3d/csg/scenegraph2/CSGparentNode.java +++ b/org.simantics.g3d.csg/src/org/simantics/g3d/csg/scenegraph2/CSGparentNode.java @@ -13,6 +13,7 @@ package org.simantics.g3d.csg.scenegraph2; import java.util.Collection; import java.util.Collections; +import java.util.Objects; import javax.vecmath.AxisAngle4d; import javax.vecmath.Quat4d; @@ -56,7 +57,7 @@ public abstract class CSGparentNode extends ParentNode implements ICSG @RelatedSetValue(Layer0.URIs.HasName) @SetPropertyValue(Layer0.URIs.HasName) public void setName(String name) { - if (name == null) + if (name == null || name.equals(this.name)) return; this.name = name; firePropertyChanged(Layer0.URIs.HasName); @@ -181,6 +182,9 @@ public abstract class CSGparentNode extends ParentNode implements ICSG @SetPropertyValue(G3D.URIs.hasOrientation) public void setOrientation(Quat4d orientation) { assert(orientation != null); + if (Objects.equals(this.orientation, orientation)) + return; + this.orientation = orientation; firePropertyChanged(G3D.URIs.hasOrientation); @@ -190,6 +194,9 @@ public abstract class CSGparentNode extends ParentNode implements ICSG @SetPropertyValue(G3D.URIs.hasPosition) public void setPosition(Vector3d position) { assert(position != null); + if (Objects.equals(this.position, position)) + return; + this.position = position; firePropertyChanged(G3D.URIs.hasPosition);