初始图形交换规格 ( IGES ) (*.igs、*.iges)

文件交换步骤

更详细的 IGES 文件交换信息请参考:White paper on the Rhino Wiki web site

简易 IGES 导出选项

  • 选择一种 IGES 类型。

  • 或按高级控制

高级选项

作者、组织、寄件者产品 ID、收件者产品 ID

这些设置是保存在 IGES 文件里的识别信息。

IGES 公差

通常 IGES 的公差应该与 Rhino 的绝对公差一致,考虑单位转换的可能性。

IGES 的公差并不会影响几何图形的精确性。

IGES 单位

导出 IGES 文件时使用的单位。

在 IGES 文件中包含 Rhino 的附注

这个选项可以将 Rhino 的附注保存到 IGES 文件的起始区块,否则 IGES 的起始区块会空白。

以渲染颜色作为 IGES 图元颜色

这个选项可以使用物件的渲染颜色做为 IGES 图元的颜色,否则 Rhino 会使用物件的显示颜色做为 IGES 图元的颜色。

如何自订 IGES 导出选项

  • IGES 导出高级选项对话框中,按编辑类型
    可以编辑或建立新的 IGES 导出类型。

附注

  • 当 Rhino 以 Open
    指令读取 IGES 文件时,IGES 文件的单位及公差会成为 Rhino 的单位及绝对公差,需要时会做一些调整,以避免 IGES 文件的公差设置不合理时,Rhino 将绝对公差设置的太大或太小。

  • 当 Rhino 以 Import
    指令读取 IGES 文件时,Rhino 的绝对公差并不会改变。IGES 文件的公差设置不合理时,Rhino 会以自己的绝对公差或更小的公差重新计算曲面的修剪曲线。如果 IGES 的单位与 Rhino 的单位不同,Rhino 会提示您是否要缩放 IGES 文件的单位,使导入的 IGES 几何图形符合目前 Rhino 的单位系统。

  • 网格无法导出至 IGES 文件,如果您将 3DS 文件 ( 网格格式的文件 ) 导入至 Rhino 再导出至 IGES 文件,该 IGES 文件的属性会是空的。

  • IGES 文件只支持可以打印的 ASCII 第 32 至 127 字节的子集,这会导至遇到图层名称中有非美国字节 ( 例如: é ) 时图层名称会被截断。

3D Studio MAX 3.0

附注

  • 合并 IGES 文件至 3DS MAX 3.0 之前请先保存您的文件。

  • IGES 文件导入后,建议您再一次保存文件,并重新启动 MAX。

  • 修剪过的曲面以 IGES 导入 MAX 时,曲面修剪掉的部分与保留的部分可能会对调,遇到这种情形时,选取该修剪曲线,然后将反转修剪。

  • IGES 导入程序使用 IGES 群组与层级信息辨别物件,所有位于相同层级但未群组的数据会导入为同一个物件。为了区分不同的图元,在从一个程序导出 IGES 文件时必需设置物件的群组及层级。

  • 将作业视窗配置设为单一作业视窗,并将显示模式设为线框模式
    ,可以让 IGES 文件以最快的速度导入。

  • MAX 4 有两个地方可以设置单位:Customize > Unit Setup 与 Customize > Preferences,请将这两个单位设置为与 Rhino 相同的单位。

CATIA

附注

  • 目前实体建模程序有两种类型:曲面实体。导出单一曲面请使用曲面类型,如果您导出的是需要组合在一起的曲面,请使用实体类型。

  • 如果曲面是单一方向封闭的曲面 ( 例如:圆柱曲面 ),而且分割封闭曲面=是,该曲面导出至 IGES 文件时会被分割为两个曲面。如果曲面是两个方向都封闭的曲面 ( 例如:环状体 ),而且分割封闭曲面=是,该曲面导出至 IGES 文件时会被分割为四个曲面。

  • 如果曲面有两个极点 ( 例如:球体 ),而且分割双极曲面=是,该曲面导出至 IGES 文件时会被分割为上、下两个曲面,每一个曲面各有一个极点。

  • 分割曲面有个缺点,如果您打算将封闭的曲面导入至其它程序再调整控制点,该曲面可能无法平滑地塑形。

 

Mechanical Desktop

从 Mechanical Desktop 2.0 导出

从 Mechanical Desktop (MDT) 2.0 导出 IGES 文件至 Rhino 最好的方法是使用 MDT 的 IGESOUT 指令,您可能需要调整 MDT 的 IGES 导出选项以得到最好的效果。

如何导出:

  1. 在 MDT 里执行 IGESOUT 指令。

  2. Autodesk IGES Translator R14 – IGESOUT 对话框中按 Edit options

  3. IGESOUT Options Editor 对话框中按 Start and Global

  4. IGESOUT Start and Global Options 对话框中设置 IGES Version5.25.3

  5. 5.3 版以四位数保存年份,而 5.2 版只以两位数保存,按 OK。

  6. IGESOUT Options Editor 对话框中按 Structure

  7. IGESOUT Structure Options 对话框中设置 Map Layer NamesLevel Property (4063),按 OK

  8. IGESOUT Options Editor 对话框中按 Geometry

  9. IGESOUT Geometry Options 对话框中设置 3D Solid/Designer part mappingSurfaces,并设置 Trimmed Surface MappingBounded surface (143),按 OK

  10. IGESOUT Options Editor 对话框中按 DE Mappings

  11. IGESOUT DE Mapping Options 对话框中勾选 Color Definition Entity (314),按 OK

  12. 需要保存这些设置时,可以在 IGESOUT Options Editor 对话框中的 Description 栏位输入这个设置的描述,按 Save As。这些设置会 保存为一个 文件名类似 MDTtoRhino.opt 的文件。

附注

  • 目前实体建模器有两种类型:曲面实体。导出单一曲面请使用曲面类型,如果您导出的是需要组合在一起的曲面,请使用实体类型。

  • 还有很多 MDT 的 IGES 选项没有在上面的讨论中提及。

Pro/E

附注

  • 从 Pro/E 20 版导出 IGES 文件时,请使用 All Parts 选项。

  • 以下为从 Pro/E 导出 IGES 文件至 Rhino 的最佳设置,请将这些设置 保存于 Pro/E 的 config.pro 文件,您也可以另存一个 rhino.pro 文件,在导出 IGES 文件之前先读取这个文件。

    IGES_OUT_ALL_SRFS_AS 128
    IGES_OUT_SPL_CRVS_AS_126 YES
    IGES_OUT_SPL_SRFS_AS_128 YES
    IGES_OUT_TRIM_XYZ YES
    IGES_OUT_MIL_D_28000 NO
    IGES_OUT_TRM_SRFS_AS_143 NO
    IGES_OUT_TRIM_CURVE_DEVIATION DEFAULT
    INTF_OUT_BLANKED_ENTITIES NO
    INTF_OUT_MAX_BSPL_DEGREE 5
    INTF_OUT_AS_BEZIER NO
    INTF3D_OUT_FORCE_SURF_NORMALS YES
    INTF3D_OUT_SURFACE_DEVIATION YES
    INTF3D_OUT_EXTEND_SURFACE YES

    IGES_IN_106_F2_AS_SPLINE NO
    IGES_IN_DWG_LINE_FONT YES
    IGES_IN_DWG_PNT_ENT YES
    IGES_IN_DWG_COLOR YES
    FIX_BOUNDARIES_ON_IMPORT YES

  • 在建立任何几何图形之前,将绝对公差设置为 0.001 至 0.0001 之间可以得到比较好的效果,再小的数值可能会降低 Rhino 的效能。

  • 绝对公差设置正确时,从 Rhino 导出 IGES 文件至 Pro/E 后可能只有一小部分的曲面需要以手动组合。

附注

  • 目前实体建模器有两种类型:曲面实体。导出单一曲面请使用曲面类型,如果您导出的是需要组合在一起的曲面,请使用实体类型。

  • 如果曲面是单一方向封闭的曲面 ( 例如:圆柱曲面 ),而且分割封闭曲面=是,该曲面导出至 IGES 文件时会被分割为两个曲面。如果曲面是两个方向都封闭的曲面 ( 例如:环状体 ),而且分割封闭曲面=是,该曲面导出至 IGES 文件时会被分割为四个曲面。

  • 如果曲面有两个极点 ( 例如:球体 ),而且分割双极曲面=是,该曲面导出至 IGES 文件时会被分割为上、下两个曲面,每一个曲面各有一个极点。

  • 分割曲面有个缺点,如果您打算将封闭的曲面导入至其它程序再调整控制点,该曲面可能无法平滑地塑形。

 

Softimage

Softimage 除了 IGES 以外也可以导入 Rhino 导出的 3DS
DXF
OBJ
文件格式。

SolidWorks

附注

  • 目前实体建模器有两种类型:曲面实体。导出单一曲面请使用曲面类型,如果您导出的是需要组合在一起的曲面,请使用实体类型。

  • Rhino -> SolidWorks

  • 为了使 IGES 导入至 SolidWorks 后可以组合,您可能需要调整 IGES 的单位或公差,实验不同的设置以获得最好的效果。

    在开始建模前将 Rhino 的绝对公差
    设的小一点 ( 例如:0.001 或 0.0001 ) 有助于建立水密的几何图形。

  • SolidWorks -> Rhino

  • SolidWorks 标准的 IGES 导出类型使用分析曲面,需要将模型导出至 Rhino 时,请以其它的使用 NURBS
    的 IGES 类型 ( 例如:SURFCAM 或 Mastercam ) 导出。

编辑 IGES 导出类型细节

Rhinoceros Gray Book Open IGES 相关主题…

一般

名称

输入 IGES 类型的名称。

IGES 版本

选择 IGES 5.2 版 或 5.3 版。

5.2 版以两位数保存年分,而 5.3 版以四位数。

文字文件类型

选择 MS-DOS、Unix、MacOS 操作系统使用的行末字节。

MS-DOS 使用归位字节 + 换行字节 ( CRLF )、Unix 只用换行字节 ( LF ),而 MacOS 只用归位 字节 ( CR )。

缩放比

设置 IGES 类型的预设缩放比,这个数值必需大于 0。

大部分的情形将缩放比设为 1 即可。

点和曲线

点物件

选择将点物件导出为个别的 IGES 116 点图元,或将所有位于相同层上的点物件导出为一个 IGES 106-2 点集合。

最大阶数

选择没有限制、3 阶或 5 阶。

最大阶数设为 3 时,所有阶数大于 3 的 NURBS
曲线会转换为非有理的 3 阶曲线,并以 IGES 的公差逼近原来的曲线。

最大阶数设为 5 时,所有阶数大于 5 的 NURBS 曲线会转换为非有理的 5 阶曲线,并以 IGES 的公差逼近原来的曲线。

将曲线合成为单一的 B-样条曲线

由两条或以上的 B-样条曲线所建立的曲线会导出为 IGES 102(复合曲线)图元或为 IGES 126 图元。

尽可能使用简易图元

这个设置可以将与直线、圆弧或圆误差小于 IGES 公差的 NURBS 曲线导出为 IGES 的直线、IGES 的圆弧或 IGES 的圆。

整修有理曲线

这个设置可以将所有的有理曲线(曲线物件和修剪曲线)导出为非有理的 3 阶曲线,并以 IGES 的公差逼近原来的曲线。

端点节点为夹点

这个设置可以将周期 NURBS 曲线导出为端点为夹点的 NURBS 曲线。

曲面

实体

实体可以被导出为分开的曲面、IGES 184 图元、IGES 186 ( 流形 BRep ) 图元或 IGES 402-7 ( 未排序的群组 ) 图元。

多重曲面

开放的多重曲面可以被导出为开放的曲面或 IGES 402-7 图元。

曲面

曲面可以导出为 IGES 128、IGES 143 或 IGES 144 图元。

以 IGES 128 图元导出时,所有修剪过的曲面会导出为未修剪的曲面。

尽可能使用简易图元

这个设置可以将与平面的误差小于 IGES 公差的曲面导出为 IGES 平面或 IGES 修剪过的平面。

整修有理曲面

这个设置可以将所有的有理曲面导出为非有理的 3 阶曲面,并以 IGES 的公差逼近原来的曲面。

端点节点为夹点

这个设置可以将周期 NURBS 曲面导出为接缝为夹点的 NURBS 曲面。

分割封闭曲面

如果曲面是单一方向封闭的曲面 ( 例如:圆柱曲面 ),而且分割封闭曲面=是,该曲面导出至 IGES 文件时会被分割为两个曲面。如果曲面是两个方向都是封闭的曲面 ( 例如:环状体 ),而且分割封闭曲面=是,该曲面导出至 IGES 文件时会被分割为四个曲面。

分割双极曲面

如果曲面有两个极点 ( 例如:球体 ),而且分割双极曲面=是,该曲面导出至 IGES 文件时会被分割为上、下两个曲面,每一个曲面各有一个极点。

编辑 IGES 导出类型

Rhinoceros Gray Book Open IGES 相关主题…

如何建立新的 IGES 类型:

  1. IGES 导出类型对话框中按新增

  2. 设置 IGES 类型的选项。

  3. 关闭

如何从现有的 IGES 类型建立新的类型:

  1. IGES 导出类型对话框中选择一个 IGES 类型,按复制类型

  2. 设置 IGES 类型的选项。

  3. 关闭

如何编辑 IGES 类型:

  1. IGES 导出类型对话框中选择一个 IGES 类型,按编辑

  2. 设置 IGES 类型的选项。

  3. 关闭

如何删除 IGES 类型:

  • IGES 导出类型对话框中选择一个 IGES 类型,按删除

导出 IGES 文件疑难排解

如果您将 Rhino 导出的 IGES 文件导入至其它程序时少了某些曲面,请做以下的测试。

  1. 将您的几何图形以 “IGES 143″ 类型导出。

  2. 将您的几何图形以 “IGES 144″ 类型导出。

  3. 将导出的两个文件导入到其它程序。

  4. 如果其中有一个 IGES 类型可以得到比较好的效果,请将结果张贴在 news://news.rhino3d.com/rhino.chinese
    ,我们会将您的测试结果加入说明文件。

问题:

网格物件无法导出至 IGES 文件。

回答:

IGES 文件格式不支持网格物件。

问题:

读入 IGES 文件没有读取到任何物件。

读取 IGES 文件但没有物件被导入时,Rhino 会弹出导入 IGES 摘要信息对话框,并显示以下的信息:

Rhino 在此 IGES 文件中找不到可以导入的物件。
在 IGES 文件中没有有效的独立几何图形时会发生这种情形。
导入的 IGES 文件的属性会显示在指令历史视窗。
执行 CommandHistory 指令可以查看整个导入摘要。

回答:

IGES 文件可能包含可以使用的 IGES 几何图形图元,但该图元未被标记为几何图形。Rhino 在导入 IGES 文件时会在指令历史视窗列出 IGES 文件的属性摘要。

执行 CommandHistory
指令或按 F2 可以查看 IGES 文件的属性摘要。

IGES 文件的属性摘要看起来如下:

myfile.igs“里的广域区段设置

作者姓名:…
作者组织:…
寄件者模型名称:…
收件者模型名称:…
寄件者文件名称:…
寄件者系统 ID:…
寄件者 IGES 前处理 程序:…
IGES 文件建立时间:日、月、年、秒:分:时
模型建立/上次修改时间:日、月、年、秒:分:时
单位系统:毫米
单位系统名称:MM
IGES 公差:0.01
最大座标:101
缩放比:1 模型单位 = 1 世界单位

IGES 文件属性摘要

无效的目录数:0
Null 图元数:0
变动矩阵母型图元数:1
属性信息图元数:0
所有其他图元:

类别 ( 独立数/物理非独立/逻辑非独立/总数 )
几何图形 (0/…/…/Ng)
注解 (…/…/…/Ng)
定义 (…/…/…/Ng)
其它 (0/0/0/ No)
逻辑的/位置的 (0/0/0/0)
2d 参数的 (0/0/0/0)
建构几何 (0/0/0/0)

已导入 0 个图元 ( 从 IGES 文件 x:\myfile.igs )。

如果几何图形 (…) 那行看起来像是几何图形 (0/…/…/n),而且 n 不是 0,那么 IGES 文件里可能有有效的几何图形错误地被标记为非独立。如果注解 ( )、定义 ( )、其它 ( )、逻辑的/位置的 ( ) 这几行为 (…/…/…/n),而且 n 不是 0,那么 IGES 文件里可能有有效的几何图形错误地被标记为几何图形以外的类别。

如果您认为导入的 IGES 文件中有因为类别标记错误而无法读取的有效几何图形,您可以使用另一个 Rhino 指令尝试读取这个 IGES 文件。

ReadEveryIgesEntity 指令会告诉 Rhino 下次读取 IGES 文件时忽略 IGES 文件里的所有类别设置,并试着读取所有属性。

ReadEveryIGESEntity

导入 IGES 文件时忽略类别,读取文件中的所有图元。

步骤:

  • 打开有问题的 IGES 文件。

  • 如果该 IGES 文件里有任何几何图形都会被读取,但也可能读入许多您不想要的几何图形。

ReadEveryIGESEntity 指令只有在下一次导入 IGES 文件时才有作用,例如:

导入 alpha.igs
执行 ReadEveryIgesEntity 指令
导入 beta.igs
导入 gamma.igs

只有在导入 beta.igs 时 Rhino 才会尝试读取文件内的所有物件。

Rhino 是以平常的方式读取 alpha.igs 和 gamma.igs,只有被标记为几何图形的图元会被读取。

Rhinoceros  ABlankButton IGES

Rhinoceros Menu2 IGES

Rhinoceros Gray Book Open IGES 相关主题…

IGESStudy

藉由限制 IGES 目录的哪一个部分会被解析,研究在 IGES 文件中的特定图元。

警告:

这个指令是为熟悉 IGES 文件数据结构的使用者所设计的,没有特别的技术支持IGESStudy 指令是给需要从大型的 IGES 文件中读取某些特定数据的专业人士使用的,使用这个指令需要了解 IGES 文件结构的专业知识。

背景

IGES 文件里的每一笔数据都有一个目录项目 ( Directory Entry,DE ),DE 保存的数据决定相对应的 IGES 图元 ( 曲线、曲面、实体、颜色、图层名称… ) 是否会被读取。为了更进一步了解不要盲目读取 IGES 文件中的每一个图元为顶层几何图形的重要性,请做以下测试:

  1. 使用 BooleanUnion
    指令从一个立方体、一个环状体及一个球体建立一个由许多曲面组合而成的实体。

  2. 将实体导出为 IGES 文件。

  3. 再将导出的 IGES 文件导入 Rhino,实体已经被炸开成许多个别的曲面。

  4. 删除所有导入进来的曲面。

  5. 执行 ReadEveryIGESEntity
    指令。

  6. 再一次导入该 IGES 文件,会有许多额外的曲线和曲面被导入。

第六个步骤的额外的曲线和曲面是建立已修剪曲面所需要的信息,这些额外的曲线及曲面会被导入是因为 Rhino 在读取 IGES 文件时忽略 DE 信息的结果,DE 信息用于标记相关图元中何者是顶层的物件。ReadEveryIGESEntity
指令是从 IGES 文件中取出未被标记为”顶层”的物件的最后手段。

基本方案:

当您读取一个 IGES 文件时发现有些信息已损坏,您必需先找出损坏物件的 DE。执行 IGESStudy 指令并打开标签选项。

IGES 除错选项 (DE测试=关闭  第一个DE=1  最后的DE=0  读取每个图元=关闭  标签=打开)

再读取一次该文件,这一次每个读取的物件都会被设置一个名称 “DE N” ( N 是奇数数字 ) 。目录项目 ( DE ) 在 IGES 文件里的标签为 1、3、5、7….。选取损坏的物件并建立这些物件的 DE 列表,例如:13、137、925 是损坏物件的 DE。

现在您可以使用 IGESStudy 指令读取有问题的图元,一次读取一个。

IGES 除错选项 (DE测试=打开  第一个DE=13  最后的DE=13  读取每个图元=关闭  标签=打开)

确认 DE 13 是乱码以后,以文字编辑器或类似 IGESure 的程序打开该 IGES 文件,检查 DE 13 的属性是什么。如果您知道这个图元,可以使用 IGESStudy 指令读取用于建立这个图元的相关图元。例如,您可以从未修剪的曲面及修剪曲线来了解可能发生的情形。在您这样做的同时,可能会发现一些您需要读取的图元区块。遇到这种情形时,可以使用 IGESStudy 指令读取该文件的某些部分。例如:

IGES 除错选项 (DE测试=打开  第一个DE=123  最后的DE=199  读取每个图元=打开  标签=打开)

Rhino 将会读取 DE 编号介于 123 与 199 之间的每一个图元。如果您只想读取顶层图元,可以设置读取每个图元=关闭

Rhinoceros  ABlankButton IGES

Rhinoceros Menu2 IGES

Rhinoceros Gray Book Open IGES 相关主题…

SetIGESLayerLevelMap

从指令行或以指令码控制导入、导出 IGES 文件时 Rhino 图层与 IGES 层级(Level)如何对应。

步骤:

IGES 的”层级”就像是 Rhino 的图层,但 IGES 的层级是以数字编号为名称,而不是像图层一样使用文字名称。如果您以 IGES 文件交换产品数据时有标准的图层设置,您必需要有定义 Rhino 图层名称和 IGES 层级编号如何对应的方法,Rhino 有对应图层与层级的功能。

如何设置 Rhino 图层和 IGES 层级的对应关系:

  • 建立一个如下列范例的文字文件:
    ;IGES level translation rules
    [3Stooges]
    “Default” = 0
    “Larry” = 13
    “Curley” = 7
    “Moe” = 32000

    [FruitStand]
    “Default” = 0
    “Orange” = 9876
    “Apple – Delicious” = 13
    “Apple – Granny Smith” = 7232
    “Grape” = 1

  • 这个文件定义从 Rhino 导出 IGES 文件时,Rhino 图层如何对应至 IGES 层级编号的规则,以及 Rhino 导入 IGES 文件时,IGES 层级编号如何对应至 Rhino 图层的规则。

    这个范例文件定义名为”3Stooges”和”FruitStand”的两组 Rhino 图层 – IGES 层级的对应规则 ( 样式 )。

步骤:

  1. 选取您建立的对应规则文件。

  2. 选择样式选项。

  3. 例如:如果您的对应文件为”iges_level_mapping.txt”,而且您想要使用”FruitStand”样式,设置样式选项为FruitStand

样式选项

图层对应

样式

文件

附注

  • 一般来说,将 Rhino 的”预设值”图层 对应至 IGES 的层级 0 是个不错的方式,但这并不是必要的。

  • 对应规则文件可以包含数个样式,样式名称置于括号 [ ] 中,接着的是看起来像这样的属性:

  • “<Rhino图层名称>” = N

    N 为非负数的整数 ( 0、1、2、3…)。

  • Rhino 的图层名称置于双引号之间。

  • 一个样式是以一个空白行做为结束。

  • 转换/对应射程序会忽略空格与定位点。

  • 转换/对应程序会忽略以分号 ( ; ) 为开头的行。

  • 如果导入的 IGES 文件中的 IGES 层级编号未列在对应规则中,该层级将会被自动导入至一个名为”IGES_LEVEL_N”的图层。

  • 如果导出的 Rhino 图层名称未列在对应规则中,则会自动选择一个 IGES 层级编号。

-SetIGESLayerLevelMap

Rhinoceros  ABlankButton IGES

Rhinoceros Menu2 IGES

Rhinoceros Gray Book Open IGES 相关主题…

 

IGES