[討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
+2
Tiger&蘋果爸
白金之星
6 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 2D討論
第1頁(共1頁)
[討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
我要在一個區域內建立剖面線
因為一直找不到有效區域
將圖放很大後
所以才發現有一個地方線條沒連起來
連起來後
就可以建立了
如果有一個圖線條比較多
不容易找到哪裡沒連起來的話
有什麼方法可以快速做成封閉區域
或忽略掉
然後順利建立剖面線
因為一直找不到有效區域
將圖放很大後
所以才發現有一個地方線條沒連起來
連起來後
就可以建立了
如果有一個圖線條比較多
不容易找到哪裡沒連起來的話
有什麼方法可以快速做成封閉區域
或忽略掉
然後順利建立剖面線
Tiger&蘋果爸 在 2010-07-25, 17:56 作了第 1 次修改 (原因 : 此主題改為討論類型)
____________________________________________________________________________________
白金之星- 初級會員
- 文章總數 : 248
年齡 : 47
來自 : 台北
職業 : 工頭
愛好 : AutoCad
個性 : 樂觀
使用年資 : 7
使用版本 : 2008
積分 : 4
經驗值 : 6107
威望值 : 9
未回應主題 : 您有一筆未回應
注冊日期 : 2008-09-22
回復: [討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
在討論區發表問題時,請在主題前請加入[問題],顏色請指定為[藍色],論壇管理顧問會將您的主題置頂,方便大家即時討論。
[說明]發表主題前,請遵守相關要領!
http://autocad.bestoforum.net/forum-f12/topic-t1521.htm
謝謝您的配合~
[說明]發表主題前,請遵守相關要領!
http://autocad.bestoforum.net/forum-f12/topic-t1521.htm
謝謝您的配合~
____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
回復: [討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
請參考以下文章!
http://autocad.bestoforum.net/search.forum?mode=searchbox&search_keywords=%E9%82%8A%E7%95%8C&show_results=topics
http://autocad.bestoforum.net/search.forum?mode=searchbox&search_keywords=%E9%82%8A%E7%95%8C&show_results=topics
judyyai- 管理顧問
- 文章總數 : 7786
年齡 : 47
來自 : 台南
職業 : 機械製圖
愛好 : 電腦相關
個性 : think too much...
使用年資 : 10↑
使用版本 : AC2019(開始於2019年底末月)
AutoCAD基礎篇等級 : 10星級
積分 : 393
最佳解答 : 1
經驗值 : 30445
威望值 : 3610
發帖精華 : 2
回帖精華 : 4
注冊日期 : 2008-11-19
回復: [討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
以圖片中的檔案為例(先假設黃色線、紅色線沒有交到線,綠色線及藍色線各有兩條重疊)
以下提供3種方法
第一種方法是使用「繪製」→「邊界」( boundary) 可能會有誤差的情形……
第二種方法使用繪製」→「聚合線」(pline),其中也是可以搭配圓角→把半徑更改為0的方式來求得黃色線及紅色線的交點,再來使用pline。
第三種方法可以使用建構線
參考看看摟
以下提供3種方法
第一種方法是使用「繪製」→「邊界」( boundary) 可能會有誤差的情形……
第二種方法使用繪製」→「聚合線」(pline),其中也是可以搭配圓角→把半徑更改為0的方式來求得黃色線及紅色線的交點,再來使用pline。
第三種方法可以使用建構線
參考看看摟
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
一般無封閉的區域.沒連接上的距離都很小.有時候肉眼不好看出來.
我用了一個很偷懶的方式..就是在所有端點上做一個小圓.斷點的部分.2個小圓會將小距離.包起來..使之封閉.做完hatch之後.再將小圓刪除
這個小程式不見得可以處理所有狀況.但某些情況.可以解決.提供一個方案.各位可以試試...
我用了一個很偷懶的方式..就是在所有端點上做一個小圓.斷點的部分.2個小圓會將小距離.包起來..使之封閉.做完hatch之後.再將小圓刪除
這個小程式不見得可以處理所有狀況.但某些情況.可以解決.提供一個方案.各位可以試試...
- 代碼:
(defun c:mkc(/ sa SST1 SST I EN ENN P10 P11 PCT PR P50 P51)
(SETQ MKCD (GETREAL "\nEnter circle radius:"))
(setq sst (ssget))
(setq sst1 '())
(setq i 0 sa 0)
(repeat (sslength sst)
(setq en (ssname sst i))
(setq enN (dxfb 0 EN))
(COND ((= ENN "LINE")
(setq p10 (getpt (dxfb 10 en)))
(setq p11 (getpt (dxfb 11 en)))
(CHK_C P10)
(CHK_C P11)
)
((= ENN "ARC")
(setq pct (dxfb 10 en))
(setq pr (dxfb 40 en))
(setq p50 (getpt (polar pct (dxfb 50 en) pr)))
(setq p51 (getpt (polar pct (dxfb 51 en) pr)))
(CHK_C P50)
(CHK_C P51)
)
)
(setq I (1+ I))
)
(DRAW_C)
(PRINC)
)
;------------------------------------------------
(defun draw_c( / W )
(setq w 0)
(repeat (length sst1)
(command "circle" (nth w sst1) MKCD)
(setq w (1+ w))
)
)
;------------------------------------------------
------------------------------------------------
(defun getpt(%ypt)
(setq x (atof (rtos (car %ypt) 2 3)))
(setq y (atof (rtos (cadr %ypt) 2 3)))
(setq a (list x y))
)
;------------------------------------------------
(defun chk_c(tp / KEY CL%)
(setq w 0 key nil)
(setq dart (member tp sst1))
(if dart (progn
(setq oldtp (car dart))
(if (not (equal oldtp tp 0.05)) (setq sst1 (cons tp sst1)))
)
(setq sst1 (cons tp sst1))
)
(setq sa (1+ sa))
(princ "\r")(princ sa)
)
(defun dxfb (idx entity)
(cdr (assoc idx (entget entity '("*"))))
)
shenhung- 高級會員
- 文章總數 : 281
年齡 : 57
來自 : 新北市
職業 : 塑膠模具設計.AUTOLISP
愛好 : 音樂
個性 : 隨和
使用年資 : 18年
使用版本 : 2010
積分 : 15
經驗值 : 8075
威望值 : 1188
注冊日期 : 2009-06-03
回復: [討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
先試試看先
謝謝大大
謝謝大大
____________________________________________________________________________________
白金之星- 初級會員
- 文章總數 : 248
年齡 : 47
來自 : 台北
職業 : 工頭
愛好 : AutoCad
個性 : 樂觀
使用年資 : 7
使用版本 : 2008
積分 : 4
經驗值 : 6107
威望值 : 9
未回應主題 : 您有一筆未回應
注冊日期 : 2008-09-22
回復: [討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
謝謝shenhung大大分享,這個程式還不錯用,可以減少很多校對的時間呢?我的眼睛度數減少很多了.....
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [討論]如果要建立剖面線的區域不是封閉的,要如何建立剖面線
shenhung 寫到:一般無封閉的區域.沒連接上的距離都很小.有時候肉眼不好看出來.
我用了一個很偷懶的方式..就是在所有端點上做一個小圓.斷點的部分.2個小圓會將小距離.包起來..使之封閉.做完hatch之後.再將小圓刪除
這個小程式不見得可以處理所有狀況.但某些情況.可以解決.提供一個方案.各位可以試試...
- 代碼:
(defun c:mkc(/ sa SST1 SST I EN ENN P10 P11 PCT PR P50 P51)
(SETQ MKCD (GETREAL "\nEnter circle radius:"))
(setq sst (ssget))
(setq sst1 '())
(setq i 0 sa 0)
(repeat (sslength sst)
(setq en (ssname sst i))
(setq enN (dxfb 0 EN))
(COND ((= ENN "LINE")
(setq p10 (getpt (dxfb 10 en)))
(setq p11 (getpt (dxfb 11 en)))
(CHK_C P10)
(CHK_C P11)
)
((= ENN "ARC")
(setq pct (dxfb 10 en))
(setq pr (dxfb 40 en))
(setq p50 (getpt (polar pct (dxfb 50 en) pr)))
(setq p51 (getpt (polar pct (dxfb 51 en) pr)))
(CHK_C P50)
(CHK_C P51)
)
)
(setq I (1+ I))
)
(DRAW_C)
(PRINC)
)
;------------------------------------------------
(defun draw_c( / W )
(setq w 0)
(repeat (length sst1)
(command "circle" (nth w sst1) MKCD)
(setq w (1+ w))
)
)
;------------------------------------------------
------------------------------------------------
(defun getpt(%ypt)
(setq x (atof (rtos (car %ypt) 2 3)))
(setq y (atof (rtos (cadr %ypt) 2 3)))
(setq a (list x y))
)
;------------------------------------------------
(defun chk_c(tp / KEY CL%)
(setq w 0 key nil)
(setq dart (member tp sst1))
(if dart (progn
(setq oldtp (car dart))
(if (not (equal oldtp tp 0.05)) (setq sst1 (cons tp sst1)))
)
(setq sst1 (cons tp sst1))
)
(setq sa (1+ sa))
(princ "\r")(princ sa)
)
(defun dxfb (idx entity)
(cdr (assoc idx (entget entity '("*"))))
)
請問大大,為什麼這個我貼上去之後,AUTOCAD 2020 在執行一直顯示語法錯誤呢
edmondsforum- 一般會員
- 文章總數 : 19
年齡 : 34
來自 : 台中
職業 : 水保顧問
愛好 : 電玩
個性 : 隨和、
使用年資 : 2年
使用版本 : autocad 2008 ,autocad 2017
經驗值 : 2797
威望值 : 0
注冊日期 : 2017-07-11
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 2D討論
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章