package org.simantics.plant3d.scenegraph;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import javax.vecmath.Vector3d;
import org.simantics.g3d.math.MathTools;
+import org.simantics.g3d.property.annotations.GetComboProperty;
+import org.simantics.g3d.property.annotations.GetComboPropertyValue;
import org.simantics.g3d.property.annotations.GetPropertyValue;
+import org.simantics.g3d.property.annotations.SetComboPropertyValue;
import org.simantics.g3d.property.annotations.SetPropertyValue;
import org.simantics.g3d.scenegraph.base.ParentNode;
import org.simantics.g3d.tools.NodeTools;
return getControlPoint().getTurnAxis();
}
- @GetPropertyValue(name="Turn Radius", value="TurnRadius", tabId = "Default")
- public Double getTurnRadius() {
+ public Double getTurnRadius() {
if (turnRadiusIndex != null)
return getPipeRun().getTurnRadiusArray()[turnRadiusIndex];
return getPipeRun().getTurnRadiusArray()[0];
}
@RelatedGetValue(Plant3D.URIs.HasTurnRadiusIndex)
- @GetPropertyValue(name="Turn Radius Index", value=Plant3D.URIs.HasTurnRadiusIndex, tabId = "Default")
+ @GetComboPropertyValue(name="Turn Radius", value=Plant3D.URIs.HasTurnRadiusIndex, tabId = "Default")
public Integer getTurnRadiusIndex()
{
// TODO: For backwards compatibility, we do not accept null values.
}
@RelatedSetValue(Plant3D.URIs.HasTurnRadiusIndex)
- @SetPropertyValue(value=Plant3D.URIs.HasTurnRadiusIndex)
+ @SetComboPropertyValue(value=Plant3D.URIs.HasTurnRadiusIndex)
public void setTurnRadiusIndex(Integer turnRadiusIndex) {
if (this.turnRadiusIndex == turnRadiusIndex)
return;
PipingRules.requestUpdate(getControlPoint());
}
+ @GetComboProperty(value=Plant3D.URIs.HasTurnRadiusIndex)
+ public List<Double> _getTurnRadii() {
+ List<Double> values = new ArrayList<Double>();
+ for (double d : getPipeRun().getTurnRadiusArray())
+ values.add(d);
+ return values;
+ }
+
+
@RelatedGetValue(Plant3D.URIs.HasRotationAngle)
@GetPropertyValue(name="Rotation Angle", value=Plant3D.URIs.HasRotationAngle, tabId = "Default")
public Double getRotationAngle() {