第八章 输入、输出模型
Rhino软件的主要功能在于方便的工业设计模型的制作,但其后期渲染效果图的功能不够理想,但它有较强的兼容性,能将模型输出到其它的CAD软件中去完成此项任务。所以设计师在使用Rhino时,在渲染上一般和3Dmax等软件配合使用,以达到最佳的渲染效果。
8.1 Rhino默认3dm文件的输入、输出 Rhino默认的文件输入、输出格式为3dm,下面简单的介绍一下应用方法。(下列方法主要应用于不同版本Rhino文件的互传) 8.1.1 输入物体(Import) 从其它档案中输入或加入物体。 工具列: File 指令: Import 1 在档案型式(Files of type)栏中,选取Rhino立体模型(Rhino 3D Models)。 2 在档名(File name)栏中,键入档名。 3 选取开启(Open)。 注意:Rhino支持数种不同的档案格式。 Rhino在输入物体时, 仍会将其保留在原始图层中。若Rhino内没有该图层, 则会自动建立。若输入的档案格式并不支持图层, 则输入的物体会被放在目前图层(current layer)。Rhino会自动并保持选取输入物体,以供移动或变更图层。
8.1.2 输出物体(Export) 将物体输出成一个档案。 工具列: File 指令: Export (1)选取要输出的物体。 (2)在档案型式(Files of type)栏中,选取Rhino立体模型(Rhino 3D Models)。 (3)在档名(File name)栏中,键入档名。 (4)选取储存(Save)。 选项(Options) 储存小档案(Save Small) 从档案中清除着色网面(render meshes)。 清除着色网面可减小档案的体积,但在下一次开档时,第一次着色需要比较久的时间。 注意:Rhino支持数种不同的档案格式。 当输出多边形网面格式时,在从NURBS物体建立网面(Create mesh from NURBS object)对话窗中,可设定建立网面的转换参数。
物体性质(properties)可输出成一个以逗号分隔的档案(comma-delimited text file)。此文件包含了一个物体性质的表格, 内有图层名称(layer name)、图层色彩(layer color)、物体名称(object name)、物体着色色彩(object render color)及质量特征(mass properties)。如此可将这些信息输入至如Microsoft Excel之类的电子电子表格软件中。 8.2 其他类型文件的输入、输出 Rhino有较强的兼容性,能将已经制成的三维模型输出到其它的三维或二维软件中去完成其渲染任务。 8.2.1 支持档案型式(Supported file types) Rhino支持以下的档案格式: IGES IGES交换档。 DWG AutoCAD原生DWG档。 DXF AutoCAD DXF图型交换文件。 OBJ Wavefront原生OBJ档。 3DS 3D Studio原生3DS档。
LWO Lightwave原生LWO档。 RAW 原生三角形网面档(Raw Triangle)。 POV POV Ray原生POV档。 UDO UDO档。 STL 快速成型STL档。 VRML 虚拟实境VRML档。 AI Adobe Illustrator原生AI档。 WMF 窗口中继文件(Windows Metafiles)。 RIB Renderman原生RIB档。 AG AG档。 Moldex Moldex的DXF图型交换文件。 PostScript PostScript档。 DirectX DirectX档。 8.2.2 主要常用软件的档案交换 Rhino在渲染上一般和3Dmax软件配合使用,以达到最佳的渲染效果。也是我们最长使用到的一种渲染方法。 1. 3D Studio档案交换(3D Studio file exchange) 我们以前面作过的椅子为例,简述一下3D Studio档案交换(To open 3D Studio files): (1)在档案(File)菜单中,选取开旧档案(Open)。(图8-1)
图8-1 开启档案 (2)在档案(File)菜单中,选取输出(emport)。并在档案型式(Files of type)栏中,选取3D_Studio。(图8-2)
图8-2 输出界面 (3)在档名(File name)栏中,键入档案名。(图8-4) 图8-3 键入档案名 (4)选取保存(save)。 注意:3DS格式可包含多边形网面(polygon mesh)物体。多边形网面物体输入至Rhino中,仍然是多边形网面物体,而不会转换成NURBS物体。 Rhino可自3DS档中读取材质贴图坐标(texture mapping coordinates)。 Rhino支持物体名称。3DS只使用物体名称中的前10个字符。若在Rhino中并未指定物体名称,则会自动使用通用名称,即obj+数字(obj+number)为物体名称。每一个物体皆有其独立的名称,即物体名称不可相同,若输入的物体含有相同的名称,则只会输入相同名称物体中的一个。 (5)在从NURBS物体建立网面(polygon mesh options)对话窗中,可设定建立网面的转换参数。(图8-5)
图8-4 转换参数 其中fewer polygone 代表较少的三维网格面,而more polygone 代表较多的三维网格面,网格面的多少直接决定模型导入3ds max 后的表面光滑程度。 注意:Rhino可将材质贴图坐标(texture mapping coordinates)写入3DS档中。 输出至3DS MAX(To export to 3DS MAX): (1)储存成Rhino 3DM档。 (2)以MAX 6、MAX 7或MAX 8版的Rhino 3DM档案输入附加程序(Rhino 3DM file import plug-in),直接读取Rhino的原生3DM档。 在3DS MAX中可藉由MAX 6、MAX 7或MAX 8版的Rhino 3DM档案输入附加程序(Rhino 3DM file import plug-in),直接读取Rhino的原生3DM档。每一版本的MAX皆有其专用的附加程序。MAX 8版则请使用IGES格式转档。 输出至3D Studio MAX的技巧(Tips on exporting to 3D Studio MAX) 在MAX中的曲面方向(Surface direction in MAX)Rhino在显示及着色皆预设为双面着
色,但MAX预设为单面着色。在Rhino的着色选项中关闭背面着色功能,可显示出法向量指向错误的曲面,请使用反转(Flip)或方向(Dir)指令修正曲面的法向量。 在MAX中建立变形物体(Making morphs in Max) Rhino只支持从单一曲面变形(morph)为另一单一曲面的功能,而不支持复合曲面(Polysurfaces)及连接曲面间的变形(morph)。当建立变形物体时,必需先将最复杂的曲面物体转换成网面(meshe)物体,再使用应用网面(ApplyMesh)指令,将此网面物体应用至较简单的曲面上。 档案格式(File formats)一般来说,3DS档案格式非常好用。它可直接将3DM档输出成MAX可接受的网面格式,而不需先将模型转换成网面模型,再使用外挂程序。3DM档则在输出未裁切曲面或3DS档的多边形数量太大时非常好用。 将模型输出成网面3DM档 (1)若模型中含有连结曲面或平面曲面,请先使用爆炸(Explode)指令将其炸开。 (2)选取所有的平面曲面,并使用最小设定将每一个平面曲面转换成单一多边形,这在模型中有细长或小的平面曲面时非常有用。
(3)现在再将曲面转换成网面。若曲面间有共边的情况,在转换成网面时就必需视模型的复杂程度,适度地提高网面的设定值,以保持曲面间的接触状况。 (4)删除所有的NURBS曲面,只留下网面模型。清除所有的着色网面,再储存成3DM档。 (5)在MAX程序中打开3DM档。 2. 另一种就是AutoCAD DWG档案交换(AutoCAD DWG file exchange) 为了制作标准的物体标注,我们还需要将已经作好的三维物体输入AutoCAD,更加深入的进行尺寸标注及装配合理性的分析。 储存AutoCAD DWG档(To save AutoCAD DWG files) (1)在档案(File)菜单中,选取另存新档(Save As)。 或在档案(File)菜单中,选取输出选取物体(Export Selected)。 (2)在储存格式为(Save as type)栏中,选取AutoCAD DWG。 (3)在档名(File name)栏中,键入档名。 (4)选取储存(Save)。 (5)在AutoCAD输出选项(AutoCAD Export Options)对话窗中,选取AutoCAD DWG。 注意:在R2000或R2004版的DWG格式并不支持ACIS实体物体。要在AutoCAD及Rhino间交换NURBS物体只有使用IGES格式。
DWG格式可包含多面网面(polyface mesh)及3D面(3D face)等组件。多面网面及3D面可输入至Rhino中,并转换成多边形网面(polygon mesh)物体,而不会转换成NURBS物体。 Rhino无法输入影像(Images)、射线(Rays)、区域(Regions) 、OLE物体及图纸空间(paperspace)中的任何组件。 在输入及输出DWG档时,图层的名称及色彩皆会保留。 Rhino会忽略AutoCAD的线型(line type)。 在DWG档中的尺寸标注(Dimensions)及文字(text),无法输入至Rhino,因为Rhino并没有类似的组件。 在AutoCAD中的锁住(Lock)图层,对Rhino不会产生任何影响。 关闭(Off)及冻结(frozen)的图层会输入至Rhino的关闭图层中。 可输入外部参考档(XREF),但其XREF图层中的物体会合并至同名图层中。在AutoCAD中任何图层被合并至关闭(Off)及冻结(frozen)图层中的图层,在Rhino中也会关闭。
3. AutoCAD DXF档案交换(AutoCAD DXF file exchange) 储存AutoCAD DXF档案(To save AutoCAD DXF files) (1)在档案(File)菜单中,选取另存新档(Save As)。 或在档案(File)菜单中,选取输出选取物体(Export Selected)。 (2)在储存格式为(Save as type)栏中,选取AutoCAD DXF。 (3)在档名(File name)栏中,键入档名。 (4)选取储存(Save)。 (5)在AutoCAD输出选项(AutoCAD Export Options)对话窗中,选取AutoCAD DXF。 注意:DXF格式可包含多面网面(polyface mesh)及3D面(3D face)等组件。多面网面及3D面可输入至Rhino中,并转换成多边形网面(polygon mesh)物体,而不会转换成NURBS物体。 在DXF档中的尺寸标注(Dimensions)及文字(text),无法输入至Rhino,因为Rhino并没有类似的组件。 Rhino会忽略AutoCAD的线型(line type)。 在输入及输出DXF档时,图层的名称及色彩皆会保留。
关闭(Off)及冻结(frozen)的图层会输入至Rhino的关闭图层中。 在AutoCAD中的锁住(Lock)图层,对Rhino不会产生任何影响。 要将多边形网面(polygon mesh)物体打散成各别的三角形(triangles)及四边形(quadrangles),可利用DXF格式输出,使多边形网面物体转换3D面(3D face)物体。再输入至Rhino中,并使用炸开网面(ExplodeMesh)指令即可。 要将多边形网面(polygon mesh)物体,全部打散成三角形(triangles),则请使用原生(RAW)指令。 Rhino无法输入影像(Images)、射线(Rays)、区域(Regions)、OLE物体及图纸空间(paperspace)中的任何组件。 可输入外部参考档(XREF),但其XREF图层中的物体会合并至同名图层中。在AutoCAD中任何图层被合并至关闭(Off)及冻结(frozen)图层中的图层,在Rhino中也会关闭。 8.2.3 工业类专用IGES档交换 1.IGES档交换(IGES file exchange)(图8-5)
图8-5 IGES档交换 输出IGES档(To export to an IGES file) (1)选取要输出的物体。 (2)在档案(File)菜单中,选取输出选取物体(Export Selected)。 (3)在输出选取物体(Export Selected Objects)对话窗中,从储存型式(Save as type)栏内,选取IGES。 (4)在档名(File name)栏中,键入档名,并选取储存(Save)。 此外,大家在保存IGES档时要注意将要使用那种软件进行打开,并在输出对话框中进行选择。(图8-6) 图8-6 IGES输出的文件格式 简易及细节的IGES输出选项(Simple and detailed IGES export options)在IGES输出选项(IGES Export Options)对话窗中,从IGES型式(IGES type)栏内选取IGES的档案型式。 或选取细节控制(Detailed Controls),打开IGES输出细节选项(IGES Export Detailed Options)对话窗。
常用的方式有以下几种: (1)Alias|Wavefront档案交换(Alias|Wavefront file exchange) (2)Catia IGES档案交换(Catia IGES file exchange) (3)Maya IGES档案交换(Maya IGES file exchange) (4)Pro/E IGES档案交换(Pro/E IGES file exchange) (5)SolidWorks IGES档案交换(SolidWorks IGES file exchange) (6)Unigraphics档案交换(Unigraphics file exchange) IGES输出细节选项(IGES export detailed options) 在IGES输出细节选项(IGES Export Detailed Options)对话窗中,选取编辑型式(Edit types),可编辑并建立新的IGES输出格式。 细节选项(Detailed options) 作者、公司组织、送出者产品ID及接收者产品ID(Author, Organization, Sender's product ID, and Receiver's product ID)在IGES文件中,这些文字字段所存放的信息,可用来辨识档案内容。 IGES公差(IGES tolerance) 一般而言IGES档的公差,会与Rhino所设定单位的绝对公差相同。 IGES文件的公差并不会影响模型的精确度。 IGES单位(IGES units) 在输出IGES文件时所使用的单位。
在IGES文件中包含笔记说明文件(Include notes in the IGES file) 打开此项功能,可将笔记说明文件储存至IGES档的启始段。不包含笔记说明文件的IGES文件,其启始段会是一行空白。 依IGES组件色彩着色(Render color as IGES entity color) 打开此项功能,则IGES组件会依其设定的色彩进行着色。关闭开此项功能,则IGES组件会依其所在图层的色彩进行着色。 2. IGES档输出设定(IGES export settings) 每一种程序皆有其自已的IGES解译格式。这表示每一种程序有不同的设定。 Rhino可自行设定IGES的输出格式,使其它程序在输入Rhino的IGES档案时,能得到最佳的结果。
下表是设定的控制参数: 变量(Variable) 值(Values) IgesVersion(IGES版本) 5.2或5.3 EOL(换行(End Of Line)) CRLF (MS-DOS/Windows主机) LF (Unix主机) CR (Mac OS主机) Scale(比例) 1.0 Points(点物体) 116 (个别点物体) 106-2 (图层点集合(layer point sets)) MaxCurveDegree(最高曲线阶数) No limit(无限制) 35 CurvesAsSingleBspline(将曲线视为单一云形线) Yes/No SimplifyCurves(简化曲线) Yes/No FitRationalCurves(吻合有理曲线) Yes/No ClampCurveEndKnots(结合曲线端点节点) Yes/No Surfaces(曲面物体) 143 144 128 +立体裁切曲线(3D trim curves) PolySurfaces(复合曲面物体) 0 (个别曲面物体)
402-7 (无次序群组(unordered group)) Meshes(网面物体) Skip(忽略) MaxSurfaceDegree(最高曲面阶数) No limit(无限制) 35 Solids(实体物体) 0 (个别曲面物体)184 186 (拓朴边界表示法(manifold B-rep)) SimplifySurfaces(简化曲面) Yes/No FitRationalSurfaces(吻合有理曲面) Yes/No ClampSurfaceEndKnots(结合曲面端点节点) Yes/No 注意:若IGES文件的单位与Rhino的设定单位不同时,Rhino会询问是否要将物体,依不同的单位比例做尺寸调整。 多边形网面(Polygon meshes)无法输出成IGES档。若输入3DS档(为多边形网面格式),再输出成IGES档,则此IGES档将是一个空档。 要建立IGES文件的输入纪录,请在Rhino.ini档中的IGES段内,将CreateImportLog=n改为CreateImportLog=y。 若要将裁切曲线(trimming curves)输入为一般曲线,请在Rhino.ini档中的IGES段内,
多边形网面(Polygon meshes)无法输出成IGES档。若输入3DS档(为多边形网面格式),再输出成IGES档,则此IGES档将是一个空档。 要建立IGES文件的输入纪录,请在Rhino.ini档中的IGES段内,将CreateImportLog=n改为CreateImportLog=y。 若要将裁切曲线(trimming curves)输入为一般曲线,请在Rhino.ini档中的IGES段内,将Import3dTrimmingCurves=n改为Import3dTrimmingCurves=y。 Rhino和IGES之间图层对图层的转换(Level/Layer translation between Rhino and IGES)IGES的图层(level)就像Rhino的图层(layer),其差别在IGES使用数字而非文字来命名。通常公司在使用会使用IGES交换档案时,皆有其产品的图层标准,因此必须要有方法来定义对应的Rhino图层名称及IGES的图层数字。在Rhino中就有此图层功能。 注意:若Rhino输入的IGES档中包括了一个未列入对应文件定义的图层数字,则Rhino会自动产生"IGES_LEVEL_N"为输入图层的图层名称。 若Rhino输出的IGES档中包括了一个未列入对应档定义的图层名称,则Rhino会自动产生一个IGES的图层数字。 思考练习题: 将前面已经完成的各章练习内容转换为响应的格式,在相应的软件当中打开。并观察其变化。 将自己以前用其他软件完成的产品模型调入Rhino,看看能否继续编辑?