大家好,感谢您的帮助!
我试图找到最快的算法来确定向量列表中的对称性。每个向量都是 3D 向量(maya.api.OpenMaya.MVector,因此它也具有 x、y 和 z 属性),它们都是同一个 3D 网格的一部分,应该是对称的。
当然,我必须注意细微的差异,例如 0.00001 的差异。
我已经尝试过我遇到的最基本的算法:遍历所有点的所有点并找到最匹配的点(使用圆形等)。为了优化它,我使用了 Maya 迭代器和跳过或等于以下的点在第一个迭代器上为 0,在第二个迭代器上大于或等于 0。但性能仍然“糟糕”。
我听说过 scipy kdtree,但我不能在 maya 中使用 scipy(也不能编译它)*。我也听说过空间有序列表,但我真的不明白如何使它工作......
当然,如果您需要更多详细信息,您可以问我,非常感谢!:)
- 编辑:好的,我找到了一种为 maya.py (1.19.0) 获得编译版本的 scipy 的方法,所以我现在有很多新的可能性。如果我发现了什么,我会告诉你的。