AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~

[已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

上一篇主題 下一篇主題 向下

[已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 iccs 于 2011-05-04, 14:15

各位先進大家好~小弟是一位水電繪圖工程師,公司常會要我們抓工程預算,所幸來到貴論壇後學到及收獲到不少CAD的專業技巧,之前在貴站有下載到一個自動計算線段總長的LISP,對於計算管線的我們還真的是受益良多,但我們所畫的水電圖,在管線重疊的地方常會用"斷線"來加以修飾,以利工地的施工人員便於識圖,小弟想請教各為先進,CAD是否有用框選的方式就自動連接斷掉的線段LISP呢?因為我們如果把管線重疊的地方斷線後~計算出來的總長度還是會有些許誤差,CAD內建的『接合』指令(快捷鍵J),並無法用框選的方式進行連接,必須一條線一條線選取,這樣也浪費了不少時間,煩請賜教,謝謝~



judyyai 在 2011-06-15, 13:32 作了第 2 次修改 (原因 : 此主題為討論類型)
avatar
iccs
初級會員
初級會員

文章總數 : 47
年齡 : 36
來自 : 高雄
職業 : 消防設計
愛好 : 電腦、電影、上網
個性 : 龜毛
使用年資 : 10年
使用版本 : AutoCAD 2016
積分 : 1
經驗值 : 3199
威望值 : 18
注冊日期 : 2009-04-28
串連貼紙成功 男 金牛座 雞

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 Tiger&蘋果爸 于 2011-05-04, 15:22

AutoCAD無此功能,只有接近的作法,但是仍比不上LISP的快速~
2012版本的接合可以不用一條一條選,可以使用窗選,注意線的X或Y座標需要在同一延伸軸上。
或許可以加上係數,就是得到總長再乘個倍數。

PS:提醒您不宜直接要求程式,通常是秀出局部程式來討論的方式。

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17061
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 63854
威望值 : 12639
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 iccs 于 2011-05-04, 15:42

Tiger&蘋果爸 寫到:AutoCAD無此功能,只有接近的作法,但是仍比不上LISP的快速~
2012版本的接合可以不用一條一條選,可以使用窗選,注意線的X或Y座標需要在同一延伸軸上。
或許可以加上係數,就是得到總長再乘個倍數。

PS:提醒您不宜直接要求程式,通常是秀出局部程式來討論的方式。

回蘋果爸~2012小弟試了接合指令之後,如果是單獨的兩條線是可以直接框選接合沒錯,但如果是同樣的兩組(如下圖),就不能框選接合了,系統會顯示"已接合 0 個物件,作業捨棄了 4 個物件"



以下是自動計算線段總長的LISP,感謝蘋果爸的提醒及建言

代碼:
(defun C:LONG (/ CURVE TLEN SS N SUMLEN)
(vl-load-com)
(setq SUMLEN 0)
(setq
SS (ssget
'((0 . "REGION,CIRCLE,ELLIPSE,LINE,*POLYLINE,SPLINE,ARC"))
)
)
(setq N 0)
(repeat (sslength SS)
(setq CURVE (vlax-ename->vla-object (ssname SS N)))
(if(/= (vla-get-objectname CURVE) "AcDbRegion")
(setq TLEN (vlax-curve-getdistatparam
CURVE
(vlax-curve-getendparam CURVE)
)
)
(setq TLEN (vla-get-perimeter CURVE))
)
(setq SUMLEN (+ SUMLEN TLEN))
(setq N (1+ N))
)

(print (strcat "總長度: " (rtos SUMLEN 2 5)))
(princ)
)
avatar
iccs
初級會員
初級會員

文章總數 : 47
年齡 : 36
來自 : 高雄
職業 : 消防設計
愛好 : 電腦、電影、上網
個性 : 龜毛
使用年資 : 10年
使用版本 : AutoCAD 2016
積分 : 1
經驗值 : 3199
威望值 : 18
注冊日期 : 2009-04-28
串連貼紙成功 男 金牛座 雞

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 阿希 于 2011-05-05, 09:31

Tiger&蘋果爸 寫到:PS:提醒您不宜直接要求程式,通常是秀出局部程式來討論的方式。

這句話感觸很深~或許這就是職場吧....
老闆 : 你在公司寫的程式就屬公司的
我想反問 (空閒時我寫程式.其他人在上網看小說.購物等等.....我的程式要充公,那其他人看小說的是不是要寫份心得報告.網購的東西要充公呢 ??? )

阿希
高級會員
高級會員

文章總數 : 335
年齡 : 36
來自 : 台北
職業 : 水電設計
愛好 : autolisp
個性 : 和平主義者
使用年資 : 5
使用版本 : 2008
積分 : 19
經驗值 : 4079
威望值 : 196
發帖精華 : 1
注冊日期 : 2008-09-22
男 摩羯座 猴

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 Tiger&蘋果爸 于 2011-05-05, 10:41

阿希 寫到:
Tiger&蘋果爸 寫到:PS:提醒您不宜直接要求程式,通常是秀出局部程式來討論的方式。

這句話感觸很深~或許這就是職場吧....
老闆 : 你在公司寫的程式就屬公司的
我想反問 (空閒時我寫程式.其他人在上網看小說.購物等等.....我的程式要充公,那其他人看小說的是不是要寫份心得報告.網購的東西要充公呢 ??? )
這狀況我也遇過...
可能是老闆的佔有慾很強吧~
嘆氣

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17061
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 63854
威望值 : 12639
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 lsj 于 2011-05-05, 12:20

不用求程式,EXPRESS的OVERKILL可以達到要求
注意Numeric fuzz的設定及其他選項的控制
avatar
lsj
初級會員
初級會員

文章總數 : 43
年齡 : 52
來自 : 桃園
職業 : 營建工程
愛好 :
個性 :
使用年資 : 10↑
使用版本 : 2008
積分 : 2
經驗值 : 2847
威望值 : 104
注冊日期 : 2010-06-28
男 水瓶座 龍

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 Tiger&蘋果爸 于 2011-05-05, 14:09

lsj 寫到:不用求程式,EXPRESS的OVERKILL可以達到要求
注意Numeric fuzz的設定及其他選項的控制
這部份有試過~
可從精確度來調整合併
但是精確度過大時會連旁邊的線段一起刪除~

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17061
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 63854
威望值 : 12639
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 shenhung 于 2011-05-06, 10:50

阿希 寫到:
Tiger&蘋果爸 寫到:PS:提醒您不宜直接要求程式,通常是秀出局部程式來討論的方式。

這句話感觸很深~或許這就是職場吧....
老闆 : 你在公司寫的程式就屬公司的
我想反問 (空閒時我寫程式.其他人在上網看小說.購物等等.....我的程式要充公,那其他人看小說的是不是要寫份心得報告.網購的東西要充公呢 ??? )
你如果不是專職程式設計師.或有跟老闆簽合約.宣告你在公司寫的程式是公司財產...那老闆說的話.聽聽就好...程式絕對是你的..!!



avatar
shenhung
高級會員
高級會員

文章總數 : 237
年齡 : 50
來自 : 新北市
職業 : 塑膠模具設計.AUTOLISP
愛好 : 音樂
個性 : 隨和
使用年資 : 18年
使用版本 : 2010
積分 : 15
經驗值 : 4928
威望值 : 904
注冊日期 : 2009-06-03
男 摩羯座 馬

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 tarpon 于 2011-05-08, 13:24

to iccs
不用接合的改用延伸方式應該也可以吧
反正計算也是要選線段
提供您試用
代碼:

;快速延伸同一邊界線段
(defun c:qexl()
  (setq po1(getpoint "\n點選邊界起始點:"))
  (setq po2(getpoint po1 "\n點選邊界結束點:"))
  (command "line" po1 po2 "");繪延伸邊界線
  (setq cw1(ssget "c" (getpoint) (getpoint)));框選延伸範圍
  (command "extend" "l" "" "c" cw1 "");延伸框選線段
  (command "erase" "l" "");刪除邊界線
)
avatar
tarpon
中級會員
中級會員

文章總數 : 201
年齡 : 27
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 3529
威望值 : 238
注冊日期 : 2010-07-01
串連貼紙成功 男 巨蟹座 馬

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 iccs 于 2011-06-15, 13:28

感謝各路高手的指教與分享~問題已解決
avatar
iccs
初級會員
初級會員

文章總數 : 47
年齡 : 36
來自 : 高雄
職業 : 消防設計
愛好 : 電腦、電影、上網
個性 : 龜毛
使用年資 : 10年
使用版本 : AutoCAD 2016
積分 : 1
經驗值 : 3199
威望值 : 18
注冊日期 : 2009-04-28
串連貼紙成功 男 金牛座 雞

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 Tiger&蘋果爸 于 2011-06-15, 15:18

iccs 寫到:感謝各路高手的指教與分享~問題已解決
很高興你的問題已獲得處理~
請問題是使用何種方式解決!

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17061
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 63854
威望值 : 12639
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 iccs 于 2011-06-15, 16:29

解決方法是pizg大大告知小弟的「芭蕉葉上聽雨聲」的部落格
網址如下 也分享給需要的朋友
http://tw.myblog.yahoo.com/rain-fall/article?mid=3333

另外在此感謝pizg大大與芭蕉葉上聽雨聲大大的分享以及蘋果爸所提供的討論平台和tarpon大大所提供的方法 感謝~
avatar
iccs
初級會員
初級會員

文章總數 : 47
年齡 : 36
來自 : 高雄
職業 : 消防設計
愛好 : 電腦、電影、上網
個性 : 龜毛
使用年資 : 10年
使用版本 : AutoCAD 2016
積分 : 1
經驗值 : 3199
威望值 : 18
注冊日期 : 2009-04-28
串連貼紙成功 男 金牛座 雞

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 Tiger&蘋果爸 于 2011-06-16, 03:27

iccs 寫到:解決方法是pizg大大告知小弟的「芭蕉葉上聽雨聲」的部落格
網址如下 也分享給需要的朋友
http://tw.myblog.yahoo.com/rain-fall/article?mid=3333

另外在此感謝pizg大大與芭蕉葉上聽雨聲大大的分享以及蘋果爸所提供的討論平台和tarpon大大所提供的方法 感謝~
謝謝您的熱心回報!
PS:建議您的貼圖空間不要刪掉,不然你的主題就看不到圖片,請撥空補上方便其他朋友日後觀看~
竊喜

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17061
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 63854
威望值 : 12639
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 tarpon 于 2011-06-16, 03:48

陳老師的連接程式太好用了感謝呢 熱情
avatar
tarpon
中級會員
中級會員

文章總數 : 201
年齡 : 27
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 3529
威望值 : 238
注冊日期 : 2010-07-01
串連貼紙成功 男 巨蟹座 馬

回頂端 向下

[已解決]請問是否有"框選就能連接所有斷掉線段"的LISP

發表 由 wwsh3 于 2011-06-19, 15:20

這一個計算長度的程式,稍經修改就能符合小弟之所須謝謝分享
avatar
wwsh3
初級會員
初級會員

文章總數 : 41
年齡 : 49
來自 : 彰化
職業 : 建築施工
愛好 : 逛論壇
個性 : 內向
使用年資 : 15YEAR
使用版本 : 2010
積分 : 1
經驗值 : 2590
威望值 : 51
注冊日期 : 2011-01-26
男 雙子座 猴

回頂端 向下

上一篇主題 下一篇主題 回頂端


 
這個論壇的權限:
無法 在這個版面回復文章