1、 点集运算
点与点之间求距离:DISTANCE_MEASURE(IDL自带)
2、 线相关
计算点到直线的距离PNT_LINE(IDL自带)或CalDistancePtoLine.pro
计算两直线的交点CAL2LINESINTERSECTPOINT.pro
线段与坐标轴的夹角(数学坐标系)cal2pointsangle.pro
3、 多边形相关(面)
求多边形面积:poly_area、(IDLanROI)-> ComputeGeometry, area = result(IDL自带)
求多边形周长:(IDLanROI)-> ComputeGeometry, PERIMETER = result(IDL自带)
点坐标是否在多边形范围内:(IDLanROI)->ContainsPoints(IDL自带)
三点求通过该系列三个点的圆心坐标和圆半径;CIR_3PNT(IDL自带)
多边形与曲面交集:MESH_CLIP(IDL自带)
两个多边形合并:MESH_MERGE(IDL自带)
多边形是否空间闭合:MESH_ISSOLID(IDL自带)
多边形包含的三角形个数:MESH_NUMTRIANGLES(IDL自带)
复杂多边形正确显示:IDLgrTessellator(IDL自带)
求两个平面的夹角cal2planeangle.pro
四面体与平面相交:TETRA_CLIP(IDL自带)
4、 体相关
体数据任意方向切面:EXTRACT_SLICE(IDL自带)
重点推荐MESH_OBJ,可以创建三角形、矩形、圆锥、圆柱、任意多边形旋转等。
;Mesh_Obj,2, Vertex_List, Polygon_List, $
; 调用格式
; Mesh_Obj, Type, Vertex_List, Polygon_List , $
; Array1 [, Array2] [, /CLOSED] [, /DEGREES] , $
; [P1, P2, P3, P4, P5 = value]
;Type = 6 创建旋转后模型的点坐标及连接关系
;Vertex_List 创建后的点坐标集
;Polygon_List 旋转模型的点连接关系
;Array1 创建旋转模型的起始数据集
;Array2 'Type 为6'时不支持
;/Closed 旋转后模型闭合
;/DEGREES 旋转的输入参数为角度,默认是弧度
;P1 -旋转后的边数
;P2 - 旋转的中心点
;P3 - 旋转的方向[0,0,1]
;P4 - 旋转起始角度
;P5 - 旋转结束角度