无痕 发表于 2004-5-29 14:46:00

搞个图例吧

铆钉 发表于 2004-5-29 15:55:00

全部是曲线距离


我需要在曲线上点取一个点





然后取得这个点到起点的距离后


再给取得的距离加上一段距离后


求出这个点再在这个点画一条垂线

铆钉 发表于 2004-5-29 15:59:00

全部是曲线


机上是我打错了应为加上

铆钉 发表于 2004-5-29 16:00:00




就是他

meflying 发表于 2004-5-29 16:26:00

这里不用把ENAME转化为VLA-OBJ。。。这个问题我已经说过很多遍,好象没有人有什么反应建议你不要就着某个程序或任务来学习LISP,你需要的先把基础部分掌握了(defun ok_VVV (/ ENAME zxzhs ptcl ptcal cm os PX1 JANG) ;HOLDOSMODE)
   (vl-load-com)
   (setq ENAME   (car (entsel "\n拾取天桥路线: ")))
   (setq zxzhs (getpoint "\n点取天桥中心桩号:"))
   (setq ptcl (vlax-curve-getclosestpointto ENAME zxzhs))
   (setq ptCal (vlax-curve-getpointatdist ENAME (+ (vlax-curve-getdistatpoint ENAME ptcl) 20)))   
   (setq cm (getvar "cmdecho"))
   (setq os (getvar "osmode"))
   (setvar "cmdecho" 0)
   (setvar "osmode" 0)   
   (setq PX1 (vlax-curve-getfirstderiv ENAME (vlax-curve-getparamatpoint ENAME ptCal)))
   (setq JANG (angle '(0 0 0) PX1))
   (command "_.line" (polar ptcal (+ (* pi 0.5) JANG) 10) (polar ptcal (+ (* 1.5 pi) JANG) 10) "");两个10是你需要画线的长度
   (setvar "osmode" os)
   (setvar "cmdecho" cm)
   (princ)
)

铆钉 发表于 2004-5-29 16:34:00

谢谢
页: 1 [2]
查看完整版本: 请各位斑竹给瞧瞧病