本帖最后由 277283904 于 2025-11-12 14:46 编辑

就是画的是1条线,出来的是3条线或者2条线,并且线与线的距离可以随意设定,谢谢!


网友答: (defun c:stx ( / p1 p2 choice dist ang dx dy )
  (setq dist 0.0)
  (setq p1 (getpoint "\n指定线段的起始点: "))
  (if p1
    (progn
      (initget 128)
      (setq choice (getpoint p1 "\n指定线段的终点或输入偏移距离 [回车结束]: "))
      (cond
        ((null choice) nil)
        ((= 'STR (type choice))
         (setq el (distof choice))
         (if el (setq dist el))
         (setq p2 (getpoint p1 "\n指定线段的终点: "))
         (if (and p2 (> dist 0.0))
           (progn
             (command "._LINE" p1 p2 "")
             (setq ang (angle p1 p2))
             (setq ang (+ ang (/ pi 2.0)))
             (setq dx (* dist (cos ang)))
             (setq dy (* dist (sin ang)))
            
             (entmake (list '(0 . "LINE") (cons 10 (list (+ (car p1) dx) (+ (cadr p1) dy) (caddr p1))) (cons 11 (list (+ (car p2) dx) (+ (cadr p2) dy) (caddr p2)))))
            
             (entmake (list '(0 . "LINE") (cons 10 (list (- (car p1) dx) (- (cadr p1) dy) (caddr p1))) (cons 11 (list (- (car p2) dx) (- (cadr p2) dy) (caddr p2)))))
           )
           (if p2 (command "._LINE" p1 p2 ""))
         )
        )
        ((listp choice)
         (setq p2 choice)
         (command "._LINE" p1 p2 "")
        )
      )
    )
  )
  (princ)
)

网友答: http://bbs.mjtd.com/thread-185931-1-1.html
参考这个帖子   这个只是画 3 5 7 9奇数个平行线的   可以自己添加偶数条线的
     加载程序后   先输入mst命令   输入5,就自动生成了画5条线的多线样式;
然后运行画多线的命令 ml,命令选项中选择 样式st,输入刚才定义的名称 5,就可以画5条平行线的多线了  

网友答:
forestgxc 发表于 2025-11-12 20:06
(defun c:stx ( / p1 p2 choice dist ang dx dy )
  (setq dist 0.0)
  (setq p1 (getpoint "\n指定线段 ...

谢谢!最完美的是线型可以做就好了

网友答: 定义多线,线型应该搞不了

网友答: ML这个功能

网友答: getreal
line
ssget p
offset

网友答:
pyj643921 发表于 2025-11-12 14:55
定义多线,线型应该搞不了

怎么个定义法,求指教

网友答:
forestgxc 发表于 2025-11-12 15:16
getreal
line
ssget p

怎么使用,小白一枚

网友答:
qifeifei 发表于 2025-11-12 15:02
ML这个功能

不是画双线,是画一条线出来两条线这种效果

网友答: 随便查一下多线样式定义就行啦,mlstyle命令

网友答:
277283904 发表于 2025-11-12 16:20
不是画双线,是画一条线出来两条线这种效果

自定义图元
  • 上一篇:[源码]超强的尺寸公差工具
  • 下一篇:没有了