[分享]聚合線面積加總LISP
+3
Chung Hsiao Chih
Tiger&蘋果爸
devinchou
7 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
[分享]聚合線面積加總LISP
如標題
這小軟體是針對選取範圍內的聚合線
做面積加總的動作
適用建築抓室內面積
結構抓樑版柱面積
以下為程式碼
這小軟體是針對選取範圍內的聚合線
做面積加總的動作
適用建築抓室內面積
結構抓樑版柱面積
以下為程式碼
- 代碼:
; [CAL] COUNT THE AREA OF LWPOLYLINE(SELECTION SET:).
; [計算] 聚合線面積加總(選集內聚合線)。
; 支援軟體版本("AutoCAD")
; 設計者:Devin,Chou
; 版權所有,歡迎使用
; Rev.1(2020/09/20)
(defun C:as (/ pl_i s_pa
pl_s pl_n v_pl v_pl_a
v_pl_ns v_pl_ne v_pl_ps v_pl_pm
ps_x ps_y pe_x pe_y pc_x pc_y
t_lay str1 str2 t_p1 t_p2 )
(vl-load-com)
(setvar "cmdecho" 0 )
(setq t_lay
(tblsearch "LAYER" "TEMP" ))
(if (= t_lay nil )
(progn
(setq t_lay "TEMP" )
(entmake
(list
'(0 . "LAYER" )
'(100 . "AcDbSymbolTableRecord" )
'(100 . "AcDbLayerTableRecord" )
'(62 . 7 )
'(70 . 0 )
'(6 . "Continuous" )
(cons 2 t_lay ))))
(setq t_lay "TEMP" ))
(setq pl_i 0 s_pa 0 )
(princ "\n請選取聚合線[面積加總]:" )
(setq pl_s
(ssget '((0 . "LWPOLYLINE" ))))
(setq t_p2
(getpoint "\n請指定插入點座標[總面積]:" ))
(repeat (sslength pl_s )
(setq pl_n
(ssname pl_s pl_i ))
(setq v_pl
(vlax-ename->vla-object pl_n ))
(setq v_pl_a
(rtos
(vlax-curve-getArea v_pl ) 2 2 ))
(setq v_pl_ps
(vlax-curve-getStartPoint v_pl ))
(setq v_pl_ns
(vlax-curve-getStartParam v_pl ))
(setq v_pl_ne
(vlax-curve-getEndParam v_pl ))
(setq v_pl_pm
(vlax-curve-getPointAtParam v_pl
(/ (- v_pl_ne v_pl_ns ) 2 )))
(setq ps_x (car v_pl_ps ))
(setq ps_y (cadr v_pl_ps ))
(setq pe_x (car v_pl_pm ))
(setq pe_y (cadr v_pl_pm ))
(setq pc_x
(/ (+ ps_x pe_x ) 2 ))
(setq pc_y
(/ (+ ps_y pe_y ) 2 ))
(setq t_p1
(list pc_x pc_y 0 ))
(setq str1
(strcat "面積:" v_pl_a "cm2" ))
(entmake
(list
'(0 . "TEXT" )
(cons 1 str1 )
(cons 10 t_p1 )
(cons 40 20 )
(cons 41 0.8 )
(cons 72 1 )
(cons 11 t_p1 )
(cons 8 t_lay )))
(setq s_pa
(+ s_pa (atof v_pl_a )))
(setq pl_i
(1+ pl_i ))
(vlax-release-object v_pl )
)
(setq str2
(strcat "總面積:" (rtos s_pa 2 2 ) "cm2" ))
(entmake
(list
'(0 . "TEXT" )
(cons 1 str2 )
(cons 10 t_p2 )
(cons 40 20 )
(cons 41 0.8 )
(cons 8 t_lay )))
(prin1)
)
(princ "\nC:as")
(prin1)
- 附件
devinchou- 初級會員
- 文章總數 : 56
年齡 : 46
來自 : 基隆
職業 : 鋼筋檢料
愛好 : 寫作.閱讀.烹飪
個性 : 懶小孩一枚
使用年資 : 每天
使用版本 : 2006.2008
積分 : 3
經驗值 : 4039
威望值 : 192
注冊日期 : 2015-02-15
小東, wenfeng, spagg221 and shuyea like this post
回復: [分享]聚合線面積加總LISP
灰熊好
!!謝謝無私分享程式~
!!謝謝無私分享程式~
____________________________________________________________________________________
👉[訂購]AutoCAD圖塊大師課程(點我)👈
回復: [分享]聚合線面積加總LISP
請問有LISP是㎡和坪數都有的嗎??
跟LISP是有面積計算過程的嗎??
跟LISP是有面積計算過程的嗎??
Chung Hsiao Chih- 一般會員
- 文章總數 : 21
年齡 : 35
來自 : 台南
職業 : 學生
愛好 : 旅遊
個性 : 活潑
使用年資 : 5年
使用版本 : 2018
經驗值 : 3475
威望值 : 6
注冊日期 : 2015-06-18
謝謝分享
謝謝分享
研究一下
研究一下
ray63- 一般會員
- 文章總數 : 47
年齡 : 50
來自 : 台南
職業 : 建築
愛好 : 看小說
個性 : 溫和
使用年資 : 20年
使用版本 : AUTOCAD 2016
經驗值 : 1670
威望值 : 0
注冊日期 : 2020-10-23
回復: [分享]聚合線面積加總LISP
感謝你!!!這個LISP太棒了
ext2323- 一般會員
- 文章總數 : 24
年齡 : 42
來自 : 新北市汐止區
職業 : 營建
愛好 : 運動
個性 : 熱愛助人
使用年資 : 10年
使用版本 : 2018
經驗值 : 2174
威望值 : 6
注冊日期 : 2019-02-27
回復: [分享]聚合線面積加總LISP
感謝大大無私地分享......感恩
rickyyang- 專屬會員
- 文章總數 : 196
年齡 : 45
來自 : 台北
職業 : 營建暨室內裝修工程管理
愛好 : 喜愛黃金獵犬、哈士奇
個性 : 誠信、正義、穩健
使用年資 : 17
使用版本 : AutoCAD 2023
經驗值 : 4548
威望值 : 36
注冊日期 : 2014-11-11
回復: [分享]聚合線面積加總LISP
感謝無私分享 謝謝。
linxyz168- 專屬會員
- 文章總數 : 59
年齡 : 46
來自 : 新北市
職業 : 設計
愛好 : 看電影/打球
個性 : 隨和
使用年資 : 12年
使用版本 : 2011
經驗值 : 4503
威望值 : 12
注冊日期 : 2013-03-31
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章