明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: xmheigou

[基础] 请问如何将多线段快捷的连接起来?

  [复制链接]
发表于 2011-3-24 20:29:45 | 显示全部楼层
回复 mandala 的帖子

你可以将精度设为比1大的数,

 楼主| 发表于 2011-3-24 20:38:40 | 显示全部楼层
回复 idljb 的帖子

是建筑电气的配线图,管线位置,长度不需要高的精度,何况,我只是把线段连起来用于计算长度(统计大致的用量,做预算用)
发表于 2011-3-24 21:02:10 | 显示全部楼层
回复 xmheigou 的帖子

你可以把CAD的单位设置成M,然后来调用程式!或者改一下精度,或者你可以把距离变小一点!提供另一个思路,你想要的是周长和,也是只是估算那么可以用lisp把所有线的周长加起!
发表于 2011-3-24 22:26:28 | 显示全部楼层
本帖最后由 mandala 于 2011-3-24 22:28 编辑
idljb 发表于 2011-3-24 20:29
回复 mandala 的帖子

你可以将精度设为比1大的数,


似乎不是每次都行。我找找原因看。
发表于 2011-3-24 22:48:44 | 显示全部楼层
本帖最后由 mandala 于 2011-3-24 23:00 编辑
xmheigou 发表于 2011-3-24 20:38
回复 idljb 的帖子

是建筑电气的配线图,管线位置,长度不需要高的精度,何况,我只是把线段连起来用于计算 ...


搞什么搞……只是求总长度是哇……用这个吧,简单多了,还要连线干什么啊~~连起来岂非总长度就不准了?



  1. ;;框选线条,求总长度
  2. (defun c:leng (/ list1 ss n)
  3.   (setvar "CMDECHO" 0)
  4.   (setq list1 0)
  5.   (if (setq ss (ssget '((0 . "*LINE"))))
  6.     (progn (setq n 0)
  7.     (repeat (sslength ss)
  8.       (command ".lengthen" (ssname ss n) "")
  9.       (setq list1 (+ (getvar "perimeter") list1)
  10.      n  (1+ n)
  11.       ) ;_ 结束setq
  12.     ) ;_ 结束repeat
  13.     (princ (strcat "\n选中线条的总长度为=" (rtos list1 2)))
  14.     (setvar "CMDECHO" 1)
  15.     (princ)
  16.     ) ;_ 结束progn
  17.   ) ;_ 结束if
  18. ) ;_ 结束defun
 楼主| 发表于 2011-3-25 08:11:42 | 显示全部楼层
回复 mandala 的帖子


谢谢,求总长的lisp程序我在网上找到过,
因为电气管线都是连接在一起的,中间不能断开,图纸上断开的原因是因为被图面上的其他设备(如灯具插座)等挡住,因此作图时在设备处把图线断开,在计算管线的总长度时,还是要把断开处的线段(连接上)计算上。
把选段连接上后,然后用线段批量统计的lisp程序,统计线段总长
发表于 2011-3-25 21:35:25 | 显示全部楼层
目前我见过的集合多义线做得最好的是一个叫ai_con的外挂,几十万条直线和弧,可以在几秒中内搞定,确实很牛,就是不知算法
发表于 2011-3-27 10:52:22 | 显示全部楼层
都不是最经典的。
 楼主| 发表于 2011-3-27 11:05:11 | 显示全部楼层
回复 lihezhou 的帖子

你的方法是什么?请赐教
发表于 2011-3-27 11:08:44 | 显示全部楼层
我有开发命令。把所有的相连的直线或多段线变成一条多段线!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-8 21:08 , Processed in 0.177148 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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