import java.util.List;
import java.util.Map;
-import javax.vecmath.Point3d;
import javax.vecmath.Vector3d;
import org.simantics.Simantics;
import org.simantics.db.exception.DatabaseException;
import org.simantics.g3d.math.MathTools;
import org.simantics.g3d.scenegraph.GeometryProvider;
+import org.simantics.g3d.scenegraph.ParametricGeometryProvider;
import org.simantics.layer0.Layer0;
+import org.simantics.plant3d.geometry.ParameterRead;
import org.simantics.plant3d.ontology.Plant3D;
import org.simantics.plant3d.scenegraph.EndComponent;
import org.simantics.plant3d.scenegraph.Equipment;
types.add(Plant3D.URIs.Builtin_ConcentricReducer);
types.add(Plant3D.URIs.Builtin_BranchSplitComponent);
types.add(Plant3D.URIs.Builtin_EccentricReducer);
+ types.add(Plant3D.URIs.Builtin_Elbow45);
+ types.add(Plant3D.URIs.Builtin_Elbow90);
for (String typeURI : types) {
load(graph, typeURI);
}
if (geom != null) {
GeometryProvider provider = graph.adapt(geom, GeometryProvider.class);
+ if (provider instanceof ParametricGeometryProvider) {
+ Map<String,Object> params = graph.syncRequest(new ParameterRead(type));
+ if (params.size() > 0)
+ ((ParametricGeometryProvider)provider).setProperties(params);
+ }
return provider;
}
return null;
Equipment equipment = createEquipment(root, equipmentType.getUri());
String n = root.getUniqueName(equipmentType.getName());
equipment.setName(n);
- root.addChild(equipment);
return equipment;
}
pipeRun = toPcp.getPipeRun();
}
break;
+ default:
+ break;
}
Vector3d start = new Vector3d();
Vector3d end = new Vector3d();
case SPLIT:
pos = new Vector3d(toPcp.getWorldPosition());
break;
+ default:
+ break;
}
} else if (toPcp.isDirected()) {
dir = new Vector3d(toPcp.getDirection(Direction.NEXT));
pos = new Vector3d(toPcp.getWorldPosition());
- } else if (toPcp.isTurn() && toPcp.isFixed()) {
+ } else if (toPcp.isTurn() && toPcp.asFixedAngle()) {
dir = new Vector3d(toPcp.getDirection(position == PositionType.NEXT ? Direction.NEXT : Direction.PREVIOUS));
pos = new Vector3d(toPcp.getWorldPosition());
if (!lengthAdjustable) {
break;
case SPLIT:
break;
+ default:
+ break;
}
switch (position) {
break;
case SPLIT:
PipingRules.splitVariableLengthComponent(newComponent, (InlineComponent)component, true);
+ default:
+ break;
}
} else {
PipeRun other = new PipeRun();
break;
case SPLIT:
break;
+ default:
+ break;
}
newPcp.setWorldPosition(pos);
// Runs do not have compatible specs, and a reducer must be attached in between.
InlineComponent reducer = ComponentUtils.createReducer(root);
PipeControlPoint pcp = reducer.getControlPoint();
- PipeControlPoint ocp = pcp.getSubPoint().get(0);
Vector3d endPos = endCP.getWorldPosition();
Vector3d currentPos = currentCP.getWorldPosition();