马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 st788796 于 2014-11-1 08:05 编辑
用来查询各类 Ge 曲线的 Interval 区间
 - (defun c:tt (/ ss)
- (if (setq ss (ssget '((0 . "*LINE,ARC,CIRCLE,ELLIPSE,RAY"))))
- (progn
- (mapcar '(lambda (x / ge in)
- (setq ge (xdge::constructor x)
- in (car (xdge::getpropertyvalue ge "getInterval"))
- )
- (princ "\nAcGe Type = ")
- (princ (xdge::type ge))
- (princ "\nInterval lowerBound = ")
- (princ (xdge::getpropertyvalue in "lowerBound"))
- (princ "\nInterval upperBound = ")
- (princ (xdge::getpropertyvalue in "upperBound"))
- )
- (xdrx_pickset->ents ss)
- )
- )
- )
- ;;(xdge::free)
- (princ)
- )
命令: tt
选择对象: 指定对角点: 找到 10 个
选择对象: 指定对角点: 找到 2 个 (1 个重复),总计 11 个
选择对象:
AcGe Type = kLine3d (xline)
Interval lowerBound = 0.0
Interval upperBound = 0.0
AcGe Type = kRay3d (射线)
Interval lowerBound = 0.0
Interval upperBound = 0.0
AcGe Type = kEllipArc3d (椭圆段)
Interval lowerBound = 9.71415
Interval upperBound = 11.5886
AcGe Type = kNurbCurve3d (spline)
Interval lowerBound = 0.0
Interval upperBound = 284590.0
AcGe Type = kEllipArc3d ( 整椭圆)
Interval lowerBound = 6.28319
Interval upperBound = 6.28319
AcGe Type = kCircArc3d (circle)
Interval lowerBound = 0.0
Interval upperBound = 6.28319
AcGe Type = kCircArc3d (ARC)
Interval lowerBound = 0.409026
Interval upperBound = 2.88372
AcGe Type = kCompositeCrv3d (pline)
Interval lowerBound = 0.0
Interval upperBound = 435179.0
AcGe Type = kLineSeg3d (line)
Interval lowerBound = 0.0
Interval upperBound = 1.0
AcGe Type = kNurbCurve3d (spline)
Interval lowerBound = 0.0
Interval upperBound = 625930.0
AcGeCircArc3d Interval 为起始弧度到终止弧度
AcGeCompositeCrv3d (polyline 连续线) 长度
AcGekNurbCurve3d 长度
|