咸觉好用就用吧,命令是qq,功能见主题,不保证百分百成功,大多数情况是没问题的,用法见提示,



网友答: 觉得好用的,帮忙顶一下

网友答:
dforme 发表于 2016-6-16 14:09
谢谢,我这里有个相似的程序,但是只能改变原对象的颜色,能否帮我看看,让偏移后的对象颜色改变,比如4 ...
  1. (defun C:w3 ( / curve ent holdcmd holdosmode jang n pt pt1 pt2 ss tmp x)
  2.   (defun LEN (CURVE / TLEN)
  3.     (setq TLEN (vlax-curve-getdistatparam CURVE (vlax-curve-getendparam CURVE)))
  4.   )

  5.   (command "_.UNDO" "BE")
  6.   (if (null tee_dist) (setq tee_dist 10.0)) ;_设置全局变量
  7.   (setq HOLDOSMODE (getvar "OSMODE"))
  8.   (setq HOLDCMD (getvar "CMDECHO"))
  9.   (setvar "CMDECHO" 0)
  10.   (setvar "OSMODE" 0)
  11.   (if (setq ss (ssget '((0 . "*LINE,CIRCLE,ARC"))))
  12.     (progn
  13.       (setq n 0)
  14.       (initget 2)
  15.       (if (setq tmp (getdist (strcat "\n指定偏移距离(正__向外偏移 /负__向内偏移): <" (rtos tee_dist 2) ">")))
  16.          (setq tee_dist tmp)
  17. ) ;_不输入时自动使用上一次输入数值
  18.       (repeat (sslength ss)
  19. (setq ent (ssname ss n)
  20.        n   (1+ n)
  21. )
  22. (setq CURVE (vlax-ename->vla-object ENT)
  23.        x     (vlax-curve-getParamAtDist curve (/ (len curve) 3.33))
  24.        pt    (vlax-curve-getPointAtParam curve x)
  25. );_获得线上指定距离值的点及参数
  26. (setq JANG (angle '(0 0 0) (vlax-curve-getfirstderiv CURVE X)))
  27. (setq PT1 (polar PT (+ JANG (* 0.5 pi)) 0.00000001))
  28. (setq PT2 (polar PT (- JANG (* 0.5 pi)) 0.00000001))
  29. (command "_.OFFSET" (abs tee_dist) ENT PT1 "")
  30. (if (or (and (> tee_dist 0) (> (LEN CURVE) (LEN (entlast))))
  31.   (and (< tee_dist 0) (< (LEN CURVE) (LEN (entlast))))
  32.      )
  33.    (progn
  34.      (entdel (entlast))
  35.      (command "_.OFFSET" (abs tee_dist) ENT PT2 "")
  36.          (command "change" (entlast) "" "p" "c" 4 "")
  37.    )
  38. )
  39.       )
  40.     )
  41.   )

  42. ;;<<<
  43. ;;改变颜色
  44. ;;参考http://bbs.mjtd.com/forum.php?mod=viewthread&tid=101254
  45.      ;(command "change" ss "" "p" "c" 4 "")
  46. ;;<<<
  47.   (setvar "OSMODE" HOLDOSMODE)
  48.   (setvar "CMDECHO" HOLDCMD)
  49.   (command "_.UNDO" "E")
  50.   (princ)
  51. )


网友答:

如果能同时偏移N个指定的距离就好了



网友答: 很好,谢谢。

网友答:

既然大家有兴趣就放出代码,有要求的自己改吧

 



网友答: 上面漏了一句(setq end(entlast)),不然颜色不会变

网友答:

还是请楼主把源程序完善一下吧

谢谢!



网友答:
phoenixdjq发表于2009-4-15 8:36:00还是请楼主把源程序完善一下吧谢谢!

要怎么完善?



网友答: 支持原创,支持源码
  • 上一篇:弄了一个面积计算的小插件,只能凑合弄个半自
  • 下一篇:没有了