在 FBX SDK 中创建点或顶点

Posted

技术标签:

【中文标题】在 FBX SDK 中创建点或顶点【英文标题】:Creating a Point or Vertex in FBX SDK 【发布时间】:2016-05-30 21:57:00 【问题描述】:

我正在尝试在父节点的给定坐标处创建单个顶点。

# 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()

【讨论】:

以上是关于在 FBX SDK 中创建点或顶点的主要内容,如果未能解决你的问题,请参考以下文章

FBX SDK:如何逐点变换矩阵?

在 Python 中创建点类

Autodesk FBX SDK Program 中文

在 C 和 C++ 中创建点数组

在ROS中创建点云并可视化

如何在矩阵内使用for循环和数据在R中创建点图?