X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.plant3d%2Fscl%2FPlant3d%2FScenegraph%2FPipelineComponent.scl;h=efd86b715a7fbaed5ef88051ef4f64000cd7e44b;hb=d3f535e82944e98845638c0e56b23077c1e7c104;hp=f4b621560ad78f940ac7153319b626552cb2635b;hpb=0f296670cc492cef317342832d3e131fd6d76aba;p=simantics%2F3d.git diff --git a/org.simantics.plant3d/scl/Plant3d/Scenegraph/PipelineComponent.scl b/org.simantics.plant3d/scl/Plant3d/Scenegraph/PipelineComponent.scl index f4b62156..efd86b71 100644 --- a/org.simantics.plant3d/scl/Plant3d/Scenegraph/PipelineComponent.scl +++ b/org.simantics.plant3d/scl/Plant3d/Scenegraph/PipelineComponent.scl @@ -2,47 +2,106 @@ import "G3D/Math/Tuple3d" import "G3D/Math/Quat4d" import "G3D/Math/Vector3d" +include "G3D/Scenegraph/Node" +include "G3D/Scenegraph/G3DNode" + +include "./P3DNode" + +import "JavaBuiltin" as Java + importJava "org.simantics.plant3d.scenegraph.PipelineComponent" where data PipelineComponent - getPipeRun :: PipelineComponent -> PipeRun - setPipeRun :: PipelineComponent -> PipeRun -> () + @JavaName getPipeRun + getPipeRun' :: PipelineComponent -> PipeRun + @JavaName setPipeRun + setPipeRun' :: PipelineComponent -> PipeRun -> () - getAlternativePipeRun :: PipelineComponent -> Maybe PipeRun - setAlternativePipeRun :: PipelineComponent -> PipeRun -> () + @JavaName getAlternativePipeRun + getAlternativePipeRun' :: PipelineComponent -> Maybe PipeRun + @JavaName setAlternativePipeRun + setAlternativePipeRun' :: PipelineComponent -> PipeRun -> () - updateParameters :: PipelineComponent -> () + @JavaName updateParameters + updateParameters' :: PipelineComponent -> () - getNext :: PipelineComponent -> Maybe PipelineComponent - setNext :: PipelineComponent -> Maybe PipelineComponent -> () + @JavaName getNext + getNext' :: PipelineComponent -> Maybe PipelineComponent + @JavaName setNext + setNext' :: PipelineComponent -> Maybe PipelineComponent -> () - getPrevious :: PipelineComponent -> Maybe PipelineComponent - setPrevious :: PipelineComponent -> Maybe PipelineComponent -> () + @JavaName getPrevious + getPrevious' :: PipelineComponent -> Maybe PipelineComponent + @JavaName setPrevious + setPrevious' :: PipelineComponent -> Maybe PipelineComponent -> () - getBranch0 :: PipelineComponent -> Maybe PipelineComponent - setBranch0 :: PipelineComponent -> Maybe PipelineComponent -> () + @JavaName getBranch0 + getBranch0' :: PipelineComponent -> Maybe PipelineComponent + @JavaName setBranch0 + setBranch0' :: PipelineComponent -> Maybe PipelineComponent -> () - getType :: PipelineComponent -> String + @JavaName getType + getType' :: PipelineComponent -> String //getControlPoint :: PipelineComponent -> PipeControlPoint - remove :: PipelineComponent -> () - - getFlowLength :: PipelineComponent -> Maybe Double - getEnds :: PipelineComponent -> Tuple3d -> Tuple3d -> () - - getOrientation :: PipelineComponent -> Quat4d - getPosition :: PipelineComponent -> Vector3d - - setOrientation :: PipelineComponent -> Quat4d -> () - setPosition :: PipelineComponent -> Vector3d -> () - - getWorldOrientation :: PipelineComponent -> Quat4d - getWorldPosition :: PipelineComponent -> Vector3d - - setWorldOrientation :: PipelineComponent -> Quat4d -> () - setWorldPosition :: PipelineComponent -> Vector3d -> () + @JavaName remove + remove' :: PipelineComponent -> () + @JavaName getFlowLength + getFlowLength' :: PipelineComponent -> Maybe Double + @JavaName getEnds + getEnds' :: PipelineComponent -> Tuple3d -> Tuple3d -> () + +class PipelineComponentClass a where + asPipelineComponent :: a -> PipelineComponent + asPipelineComponent = Java.unsafeCoerce + + getPipeRun :: a -> PipeRun + getPipeRun c = getPipeRun' (asPipelineComponent c) + setPipeRun :: a -> PipeRun -> () + setPipeRun c = setPipeRun' (asPipelineComponent c) + + getAlternativePipeRun :: a -> Maybe PipeRun + getAlternativePipeRun c = getAlternativePipeRun' (asPipelineComponent c) + setAlternativePipeRun :: a -> PipeRun -> () + setAlternativePipeRun c = setAlternativePipeRun' (asPipelineComponent c) + + updateParameters :: a -> () + updateParameters c = updateParameters' (asPipelineComponent c) + + getNext :: a -> Maybe PipelineComponent + getNext c = getNext' (asPipelineComponent c) + setNext :: a -> Maybe PipelineComponent -> () + setNext c = setNext' (asPipelineComponent c) + + getPrevious :: a -> Maybe PipelineComponent + getPrevious c = getPrevious' (asPipelineComponent c) + setPrevious :: a -> Maybe PipelineComponent -> () + setPrevious c = setPrevious' (asPipelineComponent c) + + getBranch0 :: a -> Maybe PipelineComponent + getBranch0 c = getBranch0' (asPipelineComponent c) + setBranch0 :: a -> Maybe PipelineComponent -> () + setBranch0 c = setBranch0' (asPipelineComponent c) + + getType :: a -> String + getType c = getType' (asPipelineComponent c) + + remove :: a -> () + remove c = remove' (asPipelineComponent c) + + getFlowLength :: a -> Maybe Double + getFlowLength c = getFlowLength' (asPipelineComponent c) + getEnds :: a -> Tuple3d -> Tuple3d -> () + getEnds c = getEnds' (asPipelineComponent c) + +instance NodeClass PipelineComponent +instance G3DNodeClass PipelineComponent +instance P3DNodeClass PipelineComponent +instance PipelineComponentClass PipelineComponent where + asPipelineComponent = id + importJava "org.simantics.plant3d.scenegraph.controlpoint.PipeControlPoint$PointType" where data PointType @@ -92,4 +151,9 @@ importJava "org.simantics.plant3d.scenegraph.PipeRun" where getChild :: PipeRun -> [PipelineComponent] remChild :: PipeRun -> PipelineComponent -> () - getSortedChild :: PipeRun -> [PipelineComponent] \ No newline at end of file + getSortedChild :: PipeRun -> [PipelineComponent] + +instance NodeClass PipeRun +instance ParentNodeClass PipeRun +instance G3DNodeClass PipeRun +instance P3DNodeClass PipeRun