拓扑定义了与简单几何实体之间的关系,进而连接在一起表示复杂的实体。不同类型的拓扑实体有:
-
COMPOUND:一组任意类型的拓扑对象;
-
COMPSOLID:多个通过面相连的体
-
SOLID:由Shell组成的体
-
SHELL:由面通过边组成
-
FACE:由线组成的面
-
WIRE:一组由顶点组成的边
-
EDGE:边,跟几何曲线相对应
-
VERTEX:顶点,跟几何点相对应
1. 曲线与曲面拓扑
Vertex
vertex name [x y z / p edge]:根据坐标创建点,或在曲线上参数为p的位置创建点
mkpoint
mkpoint name vertex:从拓扑Vertex创建几何point
edge, mkedge, uisoedge, visoedge
edge name vertex1 vertex2 :根据两个顶点创建边
mkedge edge curve [surface] [pfirst plast] [vfirst [pfirst] vlast [plast]]:给定几何曲线创建边
uisoedge edge face u v1 v2
visoedge edge face v u1 u2
wire, polyline, polyvertex
wire wirename e1/w1 [e2/w2 ...] :根据边或wire创建wire
polyline name x1 y1 z1 x2 y2 z2 ... :根据点创建wire
polyvertex name v1 v2 ... :根据顶点创建多边形wire
mkoffset
mkoffset result shape nboffset stepoffset [jointype(a/i) [alt]] :通过偏移wire或面创建新的wire
mkplane, mkface
mkplane name wire : 从wire创建一个面
mkface name surface [ufirst ulast vfirst vlast]
mkcurve, mksurface
mkcurve curve edge :从拓扑Edge创建几何曲线
mksurface name face :从拓扑面创建几何面
pcurve
pcurve [name edgename] facename: 提取面上边的二维曲线
chfi2d:二维曲线倒角
chfi2d result face [edge1 edge2 (F radius/CDD d1 d2/CDA d ang) ....
2. 基本体
box,wedge:立方体、楔形体
box name [x y z] dx dy dz
wedge name dx dy dz ltx / xmin zmin xmax xmax
pcylinder, pcone, psphere, ptorus
pcylinder name [plane] radius height [angle] :圆柱体
pcone name [plane] radius1 radius2 height [angle] :圆台体
pcone name [plane] radius1 radius2 height [angle]
psphere name [plane] radius1 [angle1 angle2] [angle] :球体
ptorus name [plane] radius1 radius2 [angle1 angle2] [angle] :圆环体
halfspace:使用面创建无限长的体
3. 扫略Sweeping
给定路径扫略创建体。
- prism – 沿着某一方向扫略
- revol – 沿着轴旋转扫略
- pipe – 沿着线进行扫略
4. 拓扑转移(Topological transformation)
- tcopy:复制一个shape,包括几何数据
- ttranslate:按给定矢量平移
- trotate: 按给定轴进行旋转
- tmove:将一个shape的移动施加到另一个;
- reset name x y z scale:复原到未移动之前的状态;
-
tscale name x y z scale:以(x y z)点为中心进行缩放;
-
tmirror name x y z dx dy dz:以过点(x y z),法线为(dx dy dz)的平面进行镜像操作;
beziercurve c 3 0 0 0 10 0 0 20 10 0
mkedge e1 c
ttranslate e1 0 5 0
tcopy e1 e2 # 复制e1,新对象是e2
ttranslate e2 0 5 0 # 将e2平移,按矢量0 5 0
tmove b2 b1 # b2按b1的移动方式进行移动
reset b1 b2 # 将b1、b2复原到以前的状态
pcylinder c1 10 10 270 # 创建圆柱体,半径10,高度10,扫略角度270度
copy c1 c2 # 复制一份
tmirror c1 15 0 0 1 0 0 # 对c1进行镜像,平面原点为(15,0,0),法线(1,0,0)
tscale c1 0 0 0 0.5 # 以原点为中心,缩放0.5倍