프로그램
캐드 분류

캐드 면적 리습 글자색 변경?

컨텐츠 정보

  • 197 조회
  • 2 댓글
  • 0 추천
  • 0 비추천
  • 목록

본문

(defun c:mm ( / 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)))
       )
              '("면적(㎡) : " "길이(m) : " ) (list (rtos (/ area 1000000.) 2 3) (rtos (/ len 1000.) 2 3))
    )
   (setq index (1+ index))
   )
 (command "chprop" (ssget "x" '((2 . "TEXT") (1 . "길*"))) "" "c" "7″ "")
 )
      )
    )
  (princ)
  )
(vl-load-com)
(prompt "n[ AAA ]")
(princ)



면적을 일일이 손으로 적어가며 구하던중 리습이 있다는 사실을 알고 면적 리습을 받았습니다만

글자 색이 회색으로 나오는 바람에 지금 몇시간째 고민 중입니다.

검색을 많이 하긴 했으나 제가 원하는 대답을 찾진 못해 질문올립니다.

색상이 bylayer로 되어있는데 이걸 바꾸면 도면에 다른 레이어도 바뀌게 되어 일단 처음으로 돌려놓은 상태 입니다.

그냥 흰색으로 나오게 할려면 어떻게 해야 될까요?

관련자료

댓글 2
여분필드1 여분필드2 여분필드3
전체 7,152 / 1 페이지
번호
제목
이름
알림 0