-import "G3D/Math/Vector3d"
-import "G3D/Math/Quat4d"
+import "JavaBuiltin" as Java
-importJava "org.simantics.plant3d.scenegraph.P3DNode" where
+importJava "org.simantics.plant3d.scenegraph.IP3DVisualNode" where
data P3DNode
- getName :: P3DNode -> Maybe String
- setName :: P3DNode -> String -> ()
+ @JavaName getName
+ getName' :: P3DNode -> <Proc> Maybe String
+ @JavaName setName
+ setName' :: P3DNode -> String -> <Proc> ()
- getOrientation :: P3DNode -> Quat4d
- getPosition :: P3DNode -> Vector3d
-
- setOrientation :: P3DNode -> Quat4d -> ()
- setPosition :: P3DNode -> Vector3d -> ()
-
- getWorldOrientation :: P3DNode -> Quat4d
- getWorldPosition :: P3DNode -> Vector3d
-
- setWorldOrientation :: P3DNode -> Quat4d -> ()
- setWorldPosition :: P3DNode -> Vector3d -> ()
\ No newline at end of file
+class P3DNodeClass a where
+ asP3DNode :: a -> P3DNode
+ asP3DNode = Java.unsafeCoerce
+
+ getName :: a -> <Proc> Maybe String
+ getName c = getName' (asP3DNode c)
+ setName :: a -> String -> <Proc> ()
+ setName c = setName' (asP3DNode c)
+
+instance P3DNodeClass P3DNode where
+ asP3DNode = id