/* -------------------------------------------------------------------------------- * * Open Asset Import Library (ASSIMP) (http://assimp.sourceforge.net) * Assimp2Java bridge * * Copyright (c) 2006-2009, ASSIMP Development Team * All rights reserved. See the LICENSE file for more information. * * -------------------------------------------------------------------------------- */ #include "jbridge_pch.h" using namespace Assimp; // ------------------------------------------------------------------------------------------------ void JNIEnvironment::_assimp::_NodeAnim::Initialize() { AIJ_LOAD_CLASS(); AIJ_LOAD_FIELD(mName); AIJ_LOAD_FIELD(mPosKeys); AIJ_LOAD_FIELD(mScalingKeys); AIJ_LOAD_FIELD(mQuatKeys); VectorKey.Initialize(); QuatKey.Initialize(); } // ------------------------------------------------------------------------------------------------ void JNIEnvironment::_assimp::_NodeAnim::Fill(jobject obj,const aiNodeAnim* pcSrc) { jobjectArray ja; JNIEnv* pc = JNIEnvironment::Get()->GetThread()->m_pcEnv; pc->SetObjectField(obj,mName,JNU_NewStringNative(pc,pcSrc->mNodeName.data)); // copy position keys if (pcSrc->mNumPositionKeys) { JNU_CopyObjectArrayToVM(pc,(const void**)pcSrc->mPositionKeys,pcSrc->mNumPositionKeys, AIJ_GET_HANDLE(assimp.NodeAnim.VectorKey),ja); pc->SetObjectField(obj,mPosKeys,ja); } // copy scaling keys if (pcSrc->mNumScalingKeys) { JNU_CopyObjectArrayToVM(pc,(const void**)pcSrc->mScalingKeys,pcSrc->mNumScalingKeys, AIJ_GET_HANDLE(assimp.NodeAnim.VectorKey),ja); pc->SetObjectField(obj,mScalingKeys,ja); } // copy rotation keys if (pcSrc->mNumRotationKeys) { JNU_CopyObjectArrayToVM(pc,(const void**)pcSrc->mRotationKeys,pcSrc->mNumRotationKeys, AIJ_GET_HANDLE(assimp.NodeAnim.QuatKey),ja); pc->SetObjectField(obj,mQuatKeys,ja); } }