Rhino 物件

Rhino 中基本的几何体是点、曲线、曲面、多重曲面、挤出物件以及网格物件。

为什么使用 NURBS 建模

NURBS(非均匀有理 B 样条)是一种能够用来进行精确建模的数学表达。从简单的二维直线、圆、圆弧或方体,到复杂的三维自由造型曲面或实体,都可以通过 NURBS 来表达。由于其具有灵活、精确的特点,所以可以应用于从草图绘制、动画制作到加工制造等各个方面。

NURBS 几何体提供给设计人员一种工业级标准的三维自由造型。造型和功能两者都非常重要。Rhino 除了被应用于船舶、航空航天、汽车外观与内饰设计等领域外,家庭及办公家具、医疗与运动设备、鞋、珠宝等制造商也通过 Rhino 来创建自由造型。

NURBS 建模也同样被专业动画制作人和数字艺术家广泛使用。对比多边形网格建模,NURBS 不存在细分面片,生成的模型可以在任何分辨率下进行渲染,可以在任何分辨率下生成渲染网格,更多关于 NURBS 的数学知识,请参考 What are NURBS?

Points

点物件在三维空间中标记出一个独立的点,点物件是 Rhino 中最简单的物件,可以放置在空间中的任何位置,点物件常常被用作标记位置。

点物件。

请参考: 建立点物件。

曲线

Rhino 曲线就像是一根线,可以被拉直或弯曲,也可以把两头系紧(闭合)或解开(开放)。

多重曲线是把多条曲线段首尾相连在一起。

Rhino 提供多种绘制曲线的工具,您可以绘制平直的直线、由多条直线相连而成的多重直线、圆弧、圆、多边形、椭圆、弹簧线和螺旋线等。

您也可以通过曲线的控制点绘制曲线,也可以选取数个点绘制通过这几个点的曲线。

封闭的和开放的曲线

Rhino 中的曲线有直线、圆弧、圆、自由造型曲线以及以上这些曲线组合而成的曲线,曲线可以是开放或者封闭的、平面或非平面的。

请参考: 绘制曲线与直线

曲面

曲面就像是一个有弹性的矩形橡胶片,NURBS 既可以表现如平面和圆柱这样的简单造型,也可以表现如雕刻曲面这样的复杂自由造型。

Rhino 中所有创建曲面的工具生成的物件都是相同的类型:NURBS 曲面,Rhino 带有很多直接生成曲面或通过现有曲线生成曲面的工具。

所有的 NURBS 曲面内部都具有一个矩形结构。

甚至于圆柱面这样的造型也可以看作是一个矩形面首尾相接构成的,相接的边缘处被称为接缝,即使一个造型看起来不是矩形结构,它也是通过矩形结构修剪或移动了边缘的控制点形成的。

封闭的和开放的曲面

曲面可以是开放或封闭的,两端开放的圆柱面,有一个方向是封闭的。

环状体在两个方向都是封闭的。

修剪与未修剪曲面

曲面可以是修剪或未修剪的,修剪过的曲面由两部分组成,未修剪时定义其基本几何造型的所有元素依然存在,曲面上的修剪曲线标记并区分出了被修剪和被保留的部分。

修剪曲面是将未修剪曲面通过 trim 或 split 指令用曲线或其他曲面修剪以后产生的。有一些指令可以直接生成修剪曲面。

曲面的形状依然是由矩形结构排布的控制点所控制。

了解一个曲面是修剪曲面还是未修剪曲面非常重要,通过 Properties 指令打开物件属性的详细列表,从中可以查看物件是否已被修剪。一些 Rhino 指令只能运行于未修剪曲面,一些软件无法导入已修剪的 NURBS 曲面。

修剪曲线潜藏于曲面下,曲面绝大多数情况下都超出了修剪曲线划定的范围,但是您无法看到潜藏的曲面部分,因为 Rhino 不会去显示修剪曲线之外的部分,每一个被修剪的曲面都保留了被修剪部分的几何信息,您可以通过 Untrim 指令移除潜藏在曲面的修剪曲线,将已修剪曲面恢复为未修剪曲面。

如果修剪曲线贯穿了曲面,修剪曲线和影响曲面结构的控制点之间并没有实际的联系,可以打开已修剪曲面的控制点,您可以看到的控制点布局和曲面被修剪之前是一样的。

如果您从一条平面曲线创建了一个曲面,这个曲面可能是已修剪曲面,图示中的曲面是由一个圆创建的,控制点显示出了曲面的矩形结构。

通过 Untrim 指令移除修剪曲线,曲面恢复到了未修剪之前的矩形曲面。

曲面结构线与边缘曲线

In wireframe view, surfaces look like a network of crossing curves. These curves are called isoparametric curves or isocurve. These curves help you visualize the shape of the surface. Isoparametric curves do not define the surface the way the polygons do in a polygon mesh. They are merely a visual aid that allows you to see the surface on the screen. When a surface is selected, all of its isoparametric curves highlight.

Edge curves bound the surface. Surface edge curves can be used as input to other commands.

Isocurves (1), Edge curves (2).

See: Create surfaces

多重曲面

A polysurface consists of two or more surfaces that are joined together. A polysurface that encloses a volume of space defines a solid.

Closed and open polysurfaces.

See: Polysurfaces

实体

A solid is a surface or polysurface that encloses a volume. Solids are created anytime a surface or polysurface is completely closed. Rhino creates single-surface solids, polysurface solids, and extrusion solids.

A single surface can wrap around and join itself. Example commands include Sphere, Torus, and Ellipsoid. Control points can be displayed on single-surface solids and moved to change the surface.

Single-surface solids.

Some Rhino commands create polysurface solids. Pyramid, Cone, and TruncatedCone are examples of commands that create polysurface solids.

The SolidPtOn command turns on grip points for polysurfaces, which act like control points.

Polysurface solids.

See: Create solid objects

Light-weight extrusion objects

Light-weight extrusion objects use only a profile curve and a length as input instead of the network of isocurves normally needed for NURBS objects. The Box, Cylinder, Tube, and ExtrudeCrv commands create extrusion objects. Extrusion objects can be closed with a planar cap or open. These objects will be converted to polysurfaces by some commands if necessary to add additional information for editing.

Extrusion objects.

See: Extrude curves and surfaces

Polygon mesh objects

Because there are many modelers that use polygon meshes to represent geometry for rendering, animation, stereolithography, visualization, and finite element analysis, the Mesh command translates NURBS geometry into polygonal meshes for export. In addition, the Mesh creation commands MeshSphere, MeshBox, MeshCylinder, etc., draw mesh objects.

Mesh objects.

Note: There is no easy way to convert a mesh model into a NURBS model. The information that defines the objects is completely different.

However, Rhino has a few commands for drawing curves on meshes and extracting vertex points and other information from mesh objects to assist in using mesh information to create NURBS models.

See: Draw mesh objects