비밀번호를 잊으셨나요?

비밀번호를 잊으셨나요? 비밀번호를 재설정하려면 이메일 주소를 입력해주세요.

계정이 있나요? 로그인

You must login to ask a question.

비밀번호를 잊으셨나요?

아직 계정이 없으신가요? 회원가입 하기

해당 질문을 신고하는 이유를 간단히 입력해주세요.

해당 답변을 신고하는 이유를 간단히 입력해주세요.

해당 유저를 신고하는 이유를 간단히 입력해주세요.

로그인회원가입

고캐드 – 캐드(CAD) 정보의 중심

고캐드 – 캐드(CAD) 정보의 중심 Logo 고캐드 – 캐드(CAD) 정보의 중심 Logo

고캐드 – 캐드(CAD) 정보의 중심 Navigation

  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
검색
질문하기

Mobile menu

닫기
질문하기
  • 홈
  • 카테고리
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 투표
  • 커뮤니티 그룹
  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
홈/ 질문/Q 110927
다음
Lv.0
등록일: 2019-02-132019-02-13T08:14:35+09:00 2019-02-13T08:14:35+09:00카테고리: AutoCAD & CADian

캐드LT에서 도구막대나 명령어 입력으로 면적구하는 방법좀 알려주세요

안녕하세요 에저 질문에서 LT버젼은 리습이 안먹는다고 하시더라구요
제가 업무상 면적을 구하는 일이 많은데 PR로 면적 일일이 구하기가 시간이 너무 걸리는 노가다라서요
도구막대의 명령어나 리습을 대체할 유용한 방법이 있다면 자세히좀 부탁드립니다.
예전엔
(defun c:qa ( / a area b decimal doc inspt len ltsc maxpt minpt n obj space ss txtsize yn)
;;;—————————————————————————–;
   ;; 원작자 : 모름 (보시면 여기에 서명해 주세요~~)
   ;; edit by kimhyunchul.co.kr 2016-12-28 (필요한 부분만 출력 하도록 조정함)
;;;—————————————————————————–;
   (vl-load-com)
   (princ “n   객체 중앙에 면적 문자 넣기. (문자높이는 선축척을 곱해서 표현됨)”)
   (setvar “cmdecho” 0)
   (setq doc (vla-get-activedocument (vlax-get-acad-object)))
   (if (not (tblsearch “style” “TEXT-AREA”))
      (entmake
         (list
            (cons 0 “STYLE”)
            (cons 100  “AcDbSymbolTableRecord”)
            (cons 100  “AcDbTextStyleTableRecord”)
            (cons 2 “TEXT-AREA”)
            (cons 3 “romans.shx”)
            (cons 4 “whgtxt.shx”)
            (cons 40 0)
            (cons 41 1)
            (cons 42 1)
            (cons 70 0)
            (cons 71 0)
            (cons 50 0)
         )
      )
   )
   (if
      (not
         (and
            (setq txtsize (getcfg “AppData/XiCAD/xiAREA1”))
            (/= txtsize “”)
            (setq decimal (getcfg “AppData/XiCAD/xiAREA2”))
            (/= decimal “”)
         )
      )
      (setq txtsize “2.5”
            decimal “2”
      )
   )
   (setq ltsc (getvar ‘ltscale))
   (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”))))
      (progn
         (initget “Yes No”)
         (setq yn
            (getkword
               (strcat “n   <선축척=” (rtos ltsc 2 1) “, 문자높이=” txtsize “, 자리수=” decimal “> 변경여부? [Y/N] <N>: “)
            )
         )
         (if (= yn “Yes”)
            (progn
               (setq a (getdist (strcat “n>> 문자높이 지정 <” txtsize “>:”)))
               (if (and a (numberp a))
                  (setq txtsize (rtos a 2 1))
               )
               (setq b (getint (strcat “n>> 소수점 자리수 지정 <” decimal “>:”)))
               (if (and b (numberp b))
                  (setq decimal (rtos b 2 0))
               )
               (if (and txtsize decimal)
                  (progn
                     (setcfg “AppData/XiCAD/xiAREA1” txtsize)
                     (setcfg “AppData/XiCAD/xiAREA2” decimal)
                  )
               )
            )
         )
         (setq txtsize (* (atof txtsize) ltsc)
               decimal (atoi decimal)
         )
         (repeat (setq n (sslength ss))
            (setq obj (vlax-ename->vla-object (ssname ss (setq n (1- n)))))
            (vla-getboundingbox obj ‘mi ‘mx)
            (setq minpt (vlax-safearray->list mi)
                  maxpt (vlax-safearray->list mx)
                  area (vla-get-area obj)
                  len (vlax-curve-getdistatparam obj (vlax-curve-getendparam obj))
                  inspt (polar (polar minpt
                                  (angle minpt maxpt)
                                  (/ (distance minpt maxpt) 2)
                               )
                               0
                               (/ (* txtsize 14) 2)
                        )
                  inspt (list (car inspt) (+ (cadr inspt) (* txtsize 2)))
            )
            (mapcar
              ‘(lambda (a b)
                  (setq p (vlax-3d-point inspt))
                  (setq txtobj (vla-addtext space (strcat a b) p txtsize))
                  (vla-put-alignment txtobj 2)
                  (vla-put-textalignmentpoint txtobj p)
                  (vla-put-stylename txtobj “Standard”)
                  (setq inspt (polar inspt (/ (* 270 pi) 180) (* txtsize 2)))
               )
              ‘(“㎡: ” “PY: ” )
               (list
                  (rtos (/ area 1000000.) 2 decimal)
                  (rtos (/ area 3305796.) 2 decimal)
;;                  (rtos len 2 decimal)
               )
            )
         )
         (command “chprop” (ssget “x” ‘((0 . “TEXT”) (1 . “PY*”))) “” “c” “7” “”)
      )
   )
   (princ)
)
(princ)
;;;—————————————————————————–;
이걸 리습으로 유용하게 썻는데요 ㅠㅠ

  • 0
  • 55 조회
공유
  • Facebook

    관련 있는 질문들

    • 객체 전체 간격 조정 할수 있을까요?
    • 블록 안에서 블록을 만들 수 있나요? 과거에는 됐었는데 2023부터 안되나요?
    • 캐드 2023 find 명령어가 너무 느립니다.
    • 폴리선 각도에 맞는 문자를 폴리선위에 올리고싶습니다. (관로선형에 위에문자올릴때)

    Sidebar

    질문하기
    공지사항

    • AI CAD의 미래! 캐디안 2025 1+1 프로모션 안내 2025-05-14

    Adv 234x60

    aalan

    Adv 234x60

    aalan

    Adv 120x600

    aalan

    Explore

    • 홈
    • 카테고리
      • AutoCAD & CADian
      • Inventor & Solidworks
      • Revit & ArchiCAD
      • 자유질문
      • 기타
    • 투표
    • 커뮤니티 그룹
    aalan

    Footer

    Support

    • 회사 및 서비스 소개
    • 자주 묻는 질문
    • 문의하기

    Guide

    • 제휴/협업 안내
    • 광고 서비스 안내

    Policy

    • 서비스 이용약관
    • 개인정보 처리방침
    • 광고성 정보 수신 동의

    Contents

    • 고밍스토리
    • 리습 시리즈

    정소프트 | 사업자등록번호 : 677-40-00198 | 대표 : 정은숙 | 이메일 : gocad.manager@gmail.com
    주소 : 서울특별시 강서구 양천로 400-12, 6층 614,615,617호(등촌동, 더리브골드타워)
    Copyright. 2012-2024 GOCAD All rights reserved