继续STEP 文件的实体 UpdateOrientedBoundingBox
在 Solidworks 中,他们用许多零件构建装配体。每个部分都有自己的协调系统。当他们将所有零件组装成一个组件时,每个零件都可以旋转。那么,并不是所有的实体都是Up-z,也许有些实体是Up-y,有些实体是Up-x。当我导出到一个步骤(AP214)时,这些属性被保留。我将步骤加载到我的视口,我想让所有实体都是 Up-z。然后,我translate(0,0,1000)
认为实体会向上移动,而不是向左移动。
继续STEP 文件的实体 UpdateOrientedBoundingBox
在 Solidworks 中,他们用许多零件构建装配体。每个部分都有自己的协调系统。当他们将所有零件组装成一个组件时,每个零件都可以旋转。那么,并不是所有的实体都是Up-z,也许有些实体是Up-y,有些实体是Up-x。当我导出到一个步骤(AP214)时,这些属性被保留。我将步骤加载到我的视口,我想让所有实体都是 Up-z。然后,我translate(0,0,1000)
认为实体会向上移动,而不是向左移动。
中没有 UpZ 或 UpX 这样的东西Solidworks
。一切都很好。
当您进行装配时,所有零件要么手动定位,要么使用配合定位(99% 的时间)。这个过程几乎会一直旋转和平移零件。
当您导出到Step
或Iges
(Eyeshot 可以使用的 2 种主要导出格式)时,这些文件中生成的所有几何图形都不包含原始矩阵。如果您查看某个部分的顶点,您会看到该部分的顶点Mesh
相对于世界而不是内部矩阵定位。
话虽如此,如果您遍历视口中的所有实体并将它们中的每一个平移到 Z 中,它们将全部朝同一个方向移动。
为了保持最终的矩阵,原理很简单,因为我已经做到了,但是您需要了解Solidworks API
. 您需要创建一个Solidworks Addin
并将按钮或菜单添加到Solidworks
. 然后,一旦您编写了一些代码以将每个零件单独导出到 step 中,这将在修改到组件之前保持其原始旋转。如果您有 10 个零件,则最终应该有 10 个Step
文件,除非在装配中多次使用同一零件,否则您将拥有更少的文件。
最后,您需要使用组件来获取组件中每个零件的矩阵,并制作某种与PartName
to关联的文件,Matrix
因此您应该拥有每个零件。
当您完成Eyeshot
所有操作时,您只需加载正确的步骤并应用您保存在文件中的矩阵。然后,如果您想相对于它们自己的 Z 轴移动所有东西,您只需创建一个具有所需位移的 Z 向量,即: (0, 0, 1000) 并通过部分矩阵之一转换该向量,然后通过转换向量。最后,您对每个部分重复相同的过程。
在获取真实矩阵的过程中,逐步添加此部分,使其更易于阅读:
Solidworks
Step
为 part1.stepStep
文件并通过文本文件中的矩阵转换块。