大家好, 我在Panda3D中操纵一个装配好的网格模型时遇到了问题。我加载了一个网格模型,它有一个由两个伴随骨骼组成的骨架模型(一个用于手掌,一个用于四个手指的集合,即索引,中间,环和小指),看起来像original unchanged hand model;然后我使用actor的'controlJoint'方法转换后一个骨骼(关节)以向内折叠四个手指。代码在这里:
self.handActor = Actor( r'/d/3DModels/TestHand.egg' )
self.handJoint1 = self.handActor.controlJoint( None,
'modelRoot',
'Bone1'
)
self.handJoint2 = self.handActor.controlJoint( None,
'modelRoot',
'Bone2'
)
self.handJoint2.setP( 90 )
然后我访问了当前转换网格的顶点信息,代码如下:
geomNodeCollection = self.handActor.findAllMatches( '**/+GeomNode' )
geomNodePath = geomNodeCollection[ 0 ]
geomNode = geomNodePath.node()
geom = geomNode.getGeom( 0 )
vData = geom.getVertexData()
reader_vertex = GeomVertexReader( vData, 'vertex' )
reader_normal = GeomVertexReader( vData, 'normal' )
vertexList = list()
normalList = list()
for i in xrange( 2000 ) :
vertex = reader_vertex.getData3f()
normal = reader_normal.getData3f()
vertexList.append( vertex )
normalList.append( normal )
然后我用笑脸球标记了这些位置中的每一个,期望看到这些笑脸的云层恰好适合变形的手。但是,我得到了一个原始手形的点云,它是扁平的,如下所示:deformed hand model and vertices obtained shown a point cloud 有关如何获得与变形手网格完全匹配的顶点位置的任何想法?谢谢!
答案 0 :(得分:1)
我认为您需要在mainApp.config(function ($stateProvider,$urlRouterProvider,$httpProvider) {
$urlRouterProvider.otherwise("/home/dashboard");
$stateProvider.state("home",{
url:"/home",
views:{
'header':{
templateUrl:"/main/header"
},
'menu':{
templateUrl:"/main/menu",
controller:'menuCtrl'
},
'content':{
templateUrl:"/main/content",
controller:function($scope,$stateParams){
}
}
}
})
.state('home.profile',{
url:'/profile',
views:{
'content@':{
templateUrl: '/profile/index'
}
}
})
.state('home.dashboard',{
url:'/dashboard',
views:{
'content@':{
templateUrl: '/dashboard/index'
}
}
})
.state('home.tooltabs',{
url:'/tools/tooltabs',
views:{
'content@':{
templateUrl: '/tools/tooltabs',
controller:'toolTabsCtrl'
}
}
})
.state('home.toolsindex',{
url:'/tools/index',
views:{
'content@':{
templateUrl: '/tools/index',
controller:'toolIndexCtrl'
}
}
}) .state('home.openapi',{
url:'/tools/index',
views:{
'content@':{
templateUrl: '/tools/index'
}
}
});
上致电animateVertices
,例如:
GeomVertexData
Panda会自动缓存动画GeomVertexData。