用法
评论
建议
取 消
确 定
(defun curve:subsegment-parameter (curve pt / arclength cenangle center points pt1 pt1param pt2 pt3 radius tlength xangle xbulge) "多段线子段参数" (setq points (curve:subsegment-picked-points curve pt) pt1 (car points) pt2 (cadr points) pt1param (vlax-curve-getparamatpoint curve pt1) arclength (curve:subsegment-length curve pt1 pt2)) (setq xbulge (vla-getbulge (vlax-ename->vla-object curve) pt1param)) (if (= 0 xbulge) (progn (list pt1 pt2 arclength (angle pt1 pt2))) (progn (setq xangle (* 4 (atan xbulge)) cenangle ((if (< xbulge 0) - +) (- (angle pt1 pt2) (/ xangle 2.0)) (/ pi 2)) radius (abs (/ (/ (distance pt1 pt2) 2.0) (sin (/ xangle 2.0)))) center (polar pt1 cenangle radius) pt3 (inters pt1 (polar pt1 (+ (angle pt1 center) (/ pi 2)) radius) pt2 (polar pt2 (+ (angle pt2 center) (/ pi 2)) radius) nil) tlength (if (null pt3) 0 (distance pt2 pt3))) (list center pt1 pt2 pt3 radius (abs xangle) arclength tlength))))
函数库使用说明
应用包
技术支持
统计信息
函数库规模: 733 个
函数库类别: 51 种
上传记录
刷新