]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - src/scene-node.cpp
get-position
[guile-irrlicht.git] / src / scene-node.cpp
index 50d402b3866031277d9fab2edf9ca143dde2b3a1..8b3b561902674b8114157969c30fe1d94bfcaa44 100644 (file)
@@ -51,6 +51,16 @@ extern "C" {
                        init_scene_node_type, scene_node_p,
                        wrap_scene_node, unwrap_scene_node);
 
+  bool
+  is_scene_node_object (SCM wrapped_scene_node)
+  {
+    return
+      animated_mesh_scene_node_p (wrapped_scene_node) ||
+      camera_scene_node_p (wrapped_scene_node) ||
+      mesh_scene_node_p (wrapped_scene_node) ||
+      scene_node_p (wrapped_scene_node);
+  }
+
   SCM
   irr_scene_addAnimator (SCM wrapped_scene_node,
                          SCM animator)
@@ -85,6 +95,13 @@ extern "C" {
     return scm_from_matrix4 (node->getAbsoluteTransformation ());
   }
 
+  SCM
+  irr_scene_getPosition (SCM wrapped_scene_node)
+  {
+    irr::scene::ISceneNode* node = unwrap_scene_node (wrapped_scene_node, false);
+    return scm_from_vector3df (node->getPosition ());
+  }
+
   SCM
   irr_scene_ISceneNode_setMaterialFlag (SCM wrapped_scene_node,
                                         SCM flag,