明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1849|回复: 7

[提问] 请教如何连续画直线或者多线段上边自动标注线的长度?

[复制链接]
发表于 2015-12-17 07:38:05 | 显示全部楼层 |阅读模式
本帖最后由 717957265 于 2015-12-17 07:38 编辑

请教如何连续画直线或者多线段上边自动标注线的长度?
就是连续画线自动标注线的长度,我想达到这样的效果

我是做通信的,想找个画杆路的简便方法,在线上一个一个插入文字太麻烦了,求版主和各位高手教个简便方法


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2015-12-17 09:17:04 | 显示全部楼层
自己顶一顶~~~~~~
发表于 2015-12-17 21:29:47 | 显示全部楼层
(defun c:hgl(/  ls zg oce bl p1 r osm a1 len p2 p11 p22 p3 a2 p4 p5 ghstring)
  (setq ls 2.25 ;设定直线上面的字偏离直线的距离为ls
        zg 2.5) ;设定字高zg
  (command "-style" "Standard" "" 0 "" "" "" "" "")    ;切换到默认的字体
  (graphscr) ;切换到图形窗口
  (setq oce (getvar "cmdecho"))  
  (setvar "cmdecho" 0)         
  (setq bl (getint "\n请输入比例<推荐4000>,1:")
        p1 (getpoint "\n杆路的起点:")         
        r 1.5               ;电杆半径
  )
(setq osm (getvar "osmode"))  
(setvar "osmode" 0)           
(while (setq a1 (getangle p1 "\n杆路的方向<右键退出/Esc退出>:"))   
(while (setq len (getdist "\n请输入杆距<米>:"))   
(setq
    p2 (polar p1 a1 (/ (* len 1000) bl))         
    p11 (polar P1 a1 r)
    p22 (polar p1 a1 (- (/ (* len 1000) bl) r))
    p3 (list (/ (+ (car p1) (car p2)) 2.0) (/ (+ (cadr p1) (cadr p2)) 2.0))
)
  (command ".line" p11 p22 "")
  (command ".circle" p2 r)

(if (and  (> a1 (* pi 0.5))(< a1 (* pi 1.5)))
    (setq a2 (angle p2 p1))
    (setq a2 a1)
)
(setq
     p5 (polar p3 (+ a2 (/ pi 2)) ls) ;计算直线上面的文字位置
)
  (command ".text" "m" p5 zg (/ (* a2 180) pi) (rtos len 2 1)) ;以中央对齐的方式写直线上面的字:米
  (setq p1 p2)                  
)      
)      
(setvar "osmode" osm)         
(setvar "cmdecho" oce)
  (princ)
)
 楼主| 发表于 2015-12-22 09:14:09 | 显示全部楼层
lxdz443 发表于 2015-12-17 21:29
(defun c:hgl(/  ls zg oce bl p1 r osm a1 len p2 p11 p22 p3 a2 p4 p5 ghstring)
  (setq ls 2.25 ;设定 ...

您的代码正是我需要的  太感谢你了
请问有没有批量打断被文字压住线的代码呢?
发表于 2015-12-22 11:00:59 | 显示全部楼层
717957265 发表于 2015-12-22 09:14
您的代码正是我需要的  太感谢你了
请问有没有批量打断被文字压住线的代码呢?

可以考虑文本遮罩,方便编辑
 楼主| 发表于 2016-6-1 14:48:03 | 显示全部楼层
lxdz443 发表于 2015-12-17 21:29
(defun c:hgl(/  ls zg oce bl p1 r osm a1 len p2 p11 p22 p3 a2 p4 p5 ghstring)
  (setq ls 2.25 ;设定 ...

文字样式改为宋体  文字就压住线,这个怎么改呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2017-12-5 10:33:31 | 显示全部楼层
lxdz443 发表于 2015-12-17 21:29
(defun c:hgl(/  ls zg oce bl p1 r osm a1 len p2 p11 p22 p3 a2 p4 p5 ghstring)
  (setq ls 2.25 ;设定 ...

请教高手我想要的是第一张图那样的效果应该怎么弄呢?谢谢!!
发表于 2021-11-14 00:38:47 | 显示全部楼层
lxdz443 发表于 2015-12-17 21:29
(defun c:hgl(/  ls zg oce bl p1 r osm a1 len p2 p11 p22 p3 a2 p4 p5 ghstring)
  (setq ls 2.25 ;设定 ...

如将画出的直线改为多段线,指定线段的宽度。插入圆为为插入指定的电杆就更好了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-16 16:27 , Processed in 0.168434 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表