📄 org_ogre4j_scenenode.cpp
字号:
/* Ogre4J
Copyright (C) 2002 macross
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "org_ogre4j_SceneNode.h"
#include "Ogre4JRoot.h"
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_attachObject
(JNIEnv *, jobject obj, jobject movable) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
MovableObject* m = OGRE4J.getCppMovableObjectRef(movable);
node->attachObject(m);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jint JNICALL Java_org_ogre4j_SceneNode_numAttachedObjects
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return node->numAttachedObjects();
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
/*
JNIEXPORT jobject JNICALL Java_org_ogre4j_SceneNode_getAttachedObject__I
(JNIEnv *, jobject obj, jint i) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return 0;
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jobject JNICALL Java_org_ogre4j_SceneNode_getAttachedObject__Ljava_lang_String_2
(JNIEnv *, jobject obj, jstring) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return 0;
}
*/
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_detachObject__I
(JNIEnv *, jobject obj, jint i) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->detachObject(i);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_detachObject__Ljava_lang_String_2
(JNIEnv *env, jobject obj, jstring name) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
const char* _name = env->GetStringUTFChars(name, 0);
node->detachObject(_name);
env->ReleaseStringUTFChars(name, _name);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_detachAllObjects
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->detachAllObjects();
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_attachLight
(JNIEnv *, jobject obj, jobject light) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
Light* l = (Light*)OGRE4J.getCppRef(light);
node->attachLight(l);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_attachCamera
(JNIEnv *, jobject obj, jobject camera) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
Camera* cam = (Camera*)OGRE4J.getCppRef(camera);
node->attachCamera(cam);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jobject JNICALL Java_org_ogre4j_SceneNode_getCreator
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return OGRE4J.newJRef(OGRE4J.sceneNodeClass, node->getCreator());
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_removeAndDestroyChild__Ljava_lang_String_2
(JNIEnv *env, jobject obj, jstring name) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
const char* _name = env->GetStringUTFChars(name, 0);
node->removeAndDestroyChild(_name);
env->ReleaseStringUTFChars(name, _name);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_removeAndDestroyChild__I
(JNIEnv *, jobject obj, jint i) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->removeAndDestroyChild(i);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_removeAndDestroyAllChildren
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->removeAndDestroyAllChildren();
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_showBoundingBox
(JNIEnv *, jobject obj, jboolean show) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->showBoundingBox(show?true:false);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jstring JNICALL Java_org_ogre4j_SceneNode_getName
(JNIEnv *env, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return env->NewStringUTF(node->getName());
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jobject JNICALL Java_org_ogre4j_SceneNode_getParent
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return OGRE4J.newJRef(OGRE4J.sceneNodeClass, node->getParent());
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jobject JNICALL Java_org_ogre4j_SceneNode_getOrientation
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return OGRE4J.newQuaternion(node->getOrientation());
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_setOrientation__Lorg_ogre4j_math_Quaternion_2
(JNIEnv *, jobject obj, jobject q) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->setOrientation(OGRE4J.newQuaternion(q));
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_setOrientation__FFFF
(JNIEnv *, jobject obj, jfloat w, jfloat x, jfloat y, jfloat z) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->setOrientation(w,x,y,z);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_resetOrientation
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->resetOrientation();
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_setPosition__Lorg_ogre4j_math_Vector3_2
(JNIEnv *, jobject obj, jobject pos) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->setPosition(OGRE4J.newVector3(pos));
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_setPosition__FFF
(JNIEnv *, jobject obj, jfloat x, jfloat y, jfloat z) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->setPosition(x,y,z);
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT jobject JNICALL Java_org_ogre4j_SceneNode_getPosition
(JNIEnv *, jobject obj) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
return OGRE4J.newVector3(node->getPosition());
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_setScale__Lorg_ogre4j_math_Vector3_2
(JNIEnv *, jobject obj, jobject scaleVec) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
node->setScale(OGRE4J.newVector3(scaleVec));
}
//==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==~==
JNIEXPORT void JNICALL Java_org_ogre4j_SceneNode_setScale__FFF
(JNIEnv *, jobject obj, jfloat x, jfloat y, jfloat z) {
SceneNode* node = (SceneNode*)OGRE4J.getCppRef(obj);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -