안녕하세요.
면적구하기 리습입니다.
면적,평,길이만 나오는데요,
면적을 구할 시에 분할해서 계산 할텐데….
계산식을 보여줄수는 없나요??
예를 들어서 A라는 면적을 계산한다면,
1. 2X3=6
2. 2x3x1/2=3
3. 2x2x1/2=2
합계 11
이런식으로 표형태로 보여질 수 있었으면 좋겠는데요..
가능할까요???
그리고….면적분할한 모습을….선택한 면적에 선으로 표시될 수는 없나요??
———————————————————————————————————————————-
(defun c:aq ( / doc space ss index obj mi mx minpt maxpt inspt area txtobj )
(setvar “cmdecho” 0)
(setq doc (vla-get-activedocument (vlax-get-acad-object)))
(cond
((= (vla-get-activespace doc) 1) (setq space (vla-get-modelspace doc)))
((= (vla-get-activespace doc) 0) (setq space (vla-get-paperspace doc)))
)
(if (setq ss (ssget (list (cons 0 “CIRCLE,ARC,*POLYLINE,LINE,ELLIPSE,SPLINE”))))
(if (or (setq ts (getreal (strcat “n텍스트 높이 입력 <” (vl-princ-to-string (getvar “textsize”)) “>:”))) (setq ts (getvar “textsize”)))
(progn
(setvar “textsize” ts)
(setq index 0)
(repeat (sslength ss)
(setq obj (vlax-ename->vla-object (ssname ss index)))
(vla-getboundingbox obj ‘mi ‘mx)
(setq minpt (vlax-safearray->list mi) maxpt (vlax-safearray->list mx))
(setq inspt (polar minpt (angle minpt maxpt) (/ (distance minpt maxpt) 2)))
(setq inspt (list (car inspt) (+ (cadr inspt) (* ts 2))))
(setq area (vla-get-area obj) len (vlax-curve-getdistatparam obj (vlax-curve-getendparam obj)))
(mapcar ‘(lambda (a b)
(setq p (vlax-3d-point inspt))
(setq txtobj (vla-addtext space (strcat a b) p ts))
(vla-put-alignment txtobj 4)
(vla-put-textalignmentpoint txtobj p)
(setq inspt (polar inspt (/ (* 270 pi) 180) (* ts 2)))
)
‘(“평 : ” “면적(㎡) : ” “길이(mm) : ” ) (list (rtos (/ area 3305796.) 2 2) (rtos (/ area 1000000.) 2 3) (rtos len 2 2))
)
(setq index (1+ index))
)
(command “chprop” (ssget “x” ‘((0 . “TEXT”) (1 . “평*”))) “” “c” “7” “”)
)
)
)
(princ)
)
(vl-load-com)
(prompt “n[ AAA ]”)
(princ)
팡팡수야Lv.0
면적 구하기 리습
공유
삼각구적을 말씀하시는 듯합니다
일반적으로 예전에는 사용서드파티에만, 있는기능이었는데,
요즘, 리습 또는 Arx 로 많이 돌아다닙니다
검색해 보셔요
볼록2
좋은 정보 감사합니다. 그런데……
볼록님 죄송한데요..
검색을해도,…못찾겠는데..
있으시면, 올려주시면 더 감사하겠습니다.~~^^플리즈~~