2016-02-18 3 views
4

Я пытаюсь создать единую вершину в заданной координате родительского узла.Создание точки или вершины в FBX SDK

# create a manager, scene and node 
manager = fbx.FbxManager.Create() 
scene = fbx.FbxScene.Create(manager, "") 
node = fbx.FbxNode.Create(manager, "") 

# create a mesh 
mesh = fbx.FbxMesh.Create(scene, "") 

# How to add a single vertex to the mesh? 

# add the mesh attribute to the node 
node.AddNodeAttribute(mesh) 

# add node to the node tree 
root_node = scene.GetRootNode() 
root_node.AddChild(node) 

# Translate the node to (0, 0, 10) 
node.LclTranslation.Set(fbx.FbxDouble3(0, 0, 10)) 

Это не обязательно должен быть конкретный ответ python. Я ценю вашу помощь.

ответ

1

Вершина или точка является координатой определяется следующим образом:

v = fbx.FbxVector4(x, y, z) 

Вершина сам не виден, если он не сделал контрольную точку на сетку.

my_mesh = fbx.FbxMesh.Create(my_scene, '') 
my_mesh.SetControlPointAt(v, 0) 

Где 0 это «заказ» или «индекс» вершины в группе вершин (если таковой имеется). Затем может быть нарисован многоугольник, который может представлять собой сторону сетки:

my_mesh.BeginPolygon() 
my_mesh.AddPolygon(0) 
my_mesh.AddPolygon(n) 
... 
my_mesh.EndPolygon()