Initial Graphics Exchange Specifications (.iges) 导入/导出

Initial Graphics Exchange Specification (IGES) 是一种中立的文件格式,可用于曲面模型的文件交换。

导入

To open, import, insert, and attach a file as a worksession

1. From the File menu, click Open or Import.
2. In the Open dialog box, select the supported file type.
3. If the import can be configured, click Options to specify import settings.
4. Click Open, or press Enter.

Note: When Rhino opens a non-3dm model, the title bar reflects the name of the model that was opened. When the model is saved for the first time, this model name is entered as the file name.

导出

另存或导出 Rhino 模型

1. 文件功能表选择导出选取的物件另存文件
2. 在弹出的对话框的文件类型栏位清单会列出可以导出的文件类型。
3. 文件类型栏位选择文件类型。
4. 文件名称栏位输入文件名称。
5. 设定保存的方式。

最小化保存

清除渲染、分析网格虽然可以让文件变小,但下次打开该文件时需要较多的时间重新计算渲染网格。

仅储存几何图形

只储存几何物件,不储存图层、材质、属性、附注与单位设定。

这个选项和导出物件很类似,使用这个选项储存时必需另存文件,储存的文件也不会成为目前 Rhino 打开的文件。

Save Textures

Embeds external textures used by materials, environments and decals into the model.

6. 如果导出的文件类型有选项设定,可以按选项按钮做设定。
7. 如果导出的文件类型只能储存网格物件时,会弹出将 NURBS 转换为网格的网格转换设定对话框。

导入的注意事项

当 Rhino 以 Open 指令读取 IGES 文件时,IGES 文件的单位与公差会成为 Rhino 的单位与绝对公差,必要时会做一些调整,避免 IGES 文件的公差设定不合理时,Rhino 将绝对公差设定的太大或太小。
当 Rhino 以 Import 指令读取 IGES 文件时,Rhino 的绝对公差并不会改变。IGES 文件的公差设定不合理时,Rhino 会以自己的绝对公差或更小的公差重新计算错误的曲面修剪曲线。如果 IGES 的单位与 Rhino 的单位不同,您可以设定导入 IGES 文件的缩放选项,使导入的 IGES 几何图形符合目前 Rhino 的单位系统。
网格物件无法导出至 IGES 文件。
IGES 文件只支持可以打印的 ASCII 第 32 至 127 字节的子集,这个限制会造成图层名称有非美国字节 (例如: e) 时会被截断。
导入曲线时,如果曲线和已导入的曲线具有相同的几何结构和参数值,那么非必要的节点会被移除。

IGES 导出选项

IGES 类型

Always use these settings. Do not show this dialog again.

Saves the current settings and turns off the dialog display.

恢复弹出设定对话框

4 Click Options in the appropriate Save, Export, Open, Import, or Insert dialog box.

IGES 导出高级选项

IGES 类型

以适用各种不同软体的设定导出 IGES 文件。

编辑类型

按这个按钮修改内建的 IGES 类型或建立新的类型。

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

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

IGES 公差

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

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

IGES 单位

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

在 IGES 文件中包含 Rhino 的附注

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

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

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

Always use these settings. Do not show this dialog again.

Saves the current settings and turns off the dialog display.

恢复弹出设定对话框

4 Click Options in the appropriate Save, Export, Open, Import, or Insert dialog box.

导出注意事项: 目前实体建模软体大概分为两种类型:曲面实体。导出单一曲面请使用曲面类型,如果您导出的是需要组合在一起的曲面,请使用实体类型。

IGES 类型细节

一般

Name

输入 IGES 类型的名称。

IGES 版本

选择 IGES 5.2 版 或 5.3 版。

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

文本文件类型

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

Windows (CRLF)

Mac OS X Unix (LF)

Mac OS 9 (CR)

缩放比

设定 IGES 类型的预设缩放比,这个数值必需大于 0,通常应该设为 1。

点与曲线

点物件

116(个别的点)

将点物件导出为个别的 IGES 图元。

106-2(图层点集合)

将同一个图层上的点物件导出为一个点集合。

最大阶数

沒有限制

不限制阶数。

3

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

5

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

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

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

尽可能使用简易图元

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

重新逼近有理曲线

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

端点节点为夹点

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

曲面

实体

分开的曲面

184

186 (流形 BRep)

402-7 (未排序的群组)

多重曲面

分开的曲面

402-7 (未排序的群组)

曲面

143

144

128 + 3D 修剪曲线

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

尽可能使用简易图元

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

重新逼近有理曲面

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

端点节点为夹点

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

分割封闭曲面

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

分割双极曲面

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

IGES 导出类型

IGES 类型

目前可用的 IGES 类型清单

New

打开 IGES 类型细节对话框。

复制类型

打开 IGES 类型细节对话框,以选取的类型的设定建立一个新的类型。

Edit

打开 IGES 类型细节对话框,修改选取的类型的设定。

删除

删除选取的 IGES 类型。

ReadEveryIGESEntity

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

步骤

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

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

open alpha.igs
ReadEveryIgesEntity
open beta.igs
open gamma.igs

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

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

IGESStudy

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

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

Background

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 之间的每一个图元。如果您只想读取顶层图元,可以设定读取每个图元=关闭

SetIGESLayerLevelMap

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

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

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

4 Create a text file like the following example:
;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. 选择样式选项。

例如:如果您的对应档为"iges_level_mapping.txt",而且您想要使用"FruitStand"样式,设定样式选项为 FruitStand

样式选项

图层对应

样式

文件

附注

一般来说,将 Rhino 的"预设值"图层对应至 IGES 的层级 0 是个不错的方式,但这并不是必要的。
对应规则文件可以包含数个样式,样式名称置于括号 [ ] 中,接着的是看起来像这样的属性:

"<Rhino图层名称>" = N

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

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

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

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

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

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

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

请参考

导入与导出物件

Troubleshooting IGES Files with Rhinoceros

维基百科: IGES