비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 178315
다음
익명
익명
등록일: 2022-11-272022-11-27T11:21:24+09:00 2022-11-27T11:21:24+09:00카테고리: 기타

L = 연장 m << 이렇게 표현되게 바꾸고싶습니다.

지금 소숫점 2자리까지 나오는 길이 리습인데  3.14m라고 가정했을때

L = 3.14m << 요런식으로 나오게끔 리습 수정좀 해주세요 부탁드립니다..!!

;;;Created by Ju in hoe,in Seoul
;;;2002.3.9
;;; LWPOLYLINE,POLYLINE 만 선택하여
;;; 폴리선의 중간점에 폴리선의 길이TEXT를 입력한다.

;;;명령어 – mit

(defun dtr (a)
(setq x (* pi (/ a 180.0)))
)

(defun rtd (a)
(setq x (/ (* a 180) pi))
)

(defun text_box_mid (e / eb slope_pt)
(setq eb (entget e))
(setq slope_pt (textbox eb))
)

(defun ErrHandle (Err)
(if (and (/= Err “quit / exit abort”)
(/= Err “Function cancelled”)
)
(princ Err)
)
(setvar “cmddia” 1)
(setq *error* OldError)
(princ)
)

(defun Get_PolyVtx (EntList / x VtxList AA)
(setq VtxList ‘())
(cond
((= “LWPOLYLINE” (CDR (ASSOC 0 EntList)))
(foreach x EntList
(if (= (car x) 10)
(setq VtxList (append VtxList (list (cdr x))))
)
)
)

((= “POLYLINE” (CDR (ASSOC 0 EntList)))
(SETQ AA (ENTGET (ENTNEXT (CDR (ASSOC -1 EntList)))))
(WHILE (/= “SEQEND” (CDR (ASSOC 0 AA)))
(setq VtxList (append VtxList (list (cdr (ASSOC 10 AA)))))
(SETQ AA (ENTGET (ENTNEXT (CDR (ASSOC -1 AA)))))
)
)
)
VtxList
)

(defun c:mit (/ ss_poly sno b no
ss pl len_tot VtxList_out
rp_len sum_dist i mid_len seg_dist
ang mod_dist mid_pt len_tot_text
dgree_deg
)
(setq OldError *error*)
(setq *error* ErrHandle)
(setvar “cmdecho” 0)
(command “undo” “be”)

(setq input_HEIGHT (getreal “n 문자크기 입력<미입력시 현재 텍스트 크기>:”))
(cond
((/= input_HEIGHT nil)
(setq TEXT_HEIGHT input_HEIGHT)
)
(T
(setq TEXT_HEIGHT (getvar ‘textsize))
)
)

;;; (setq TEXT_LAYER “0”) ;TEXT 레이어
;;; (setq TEXT_HEIGHT 1.0) ;TEXT 기

(setq ss_poly (ssget))

;;; (setq ss_poly (ssget “x”
;;; (list
;;; (cons -4 ” ;;; (cons 0 “POLYLINE,LWPOLYLINE”)
;;; (cons -4 “AND>”)
;;; )
;;; )
;;; )

(if (= ss_poly nil)
(progn
(princ ” …. 폴리선이 존재하지 않습니다. n”)
)
(progn
(princ ” Processing …….. n”)
(setq sno 0)
(setq b (sslength ss_poly)
no 0
)
(repeat b
(setq ss (ssname ss_poly no))
(setq pl (entget ss))
(setq poly_id (cdr (assoc 0 pl)))

(if (or (= poly_id “LWPOLYLINE”) (= poly_id “POLYLINE”))
(progn

(command “area” “o” ss)
(setq len_tot (getvar “perimeter”))

(if (/= len_tot 0.0)
(progn

(setq VtxList_out (Get_PolyVtx pl))
(setq rp_len (length VtxList_out))

(setq sum_dist 0
i 0
)
(setq mid_len (/ len_tot 2))

(while (< sum_dist mid_len)

(setq seg_dist (distance (nth i VtxList_out)
(nth (+ i 1) VtxList_out)
)
)

(setq sum_dist (+ sum_dist seg_dist))
(setq i (+ i 1))
)

(setq ang
(angle (nth (- i 1) VtxList_out) (nth i VtxList_out))
)
(setq mod_dist (- seg_dist (- sum_dist mid_len)))
(setq mid_pt
(polar (nth (- i 1) VtxList_out) ang mod_dist)
)
(setq len_tot_text (rtos (/ len_tot 1000) 2 2))

(setq dgree_deg (rtd ang))

(if (and (> dgree_deg 90) (<= dgree_deg 270))
(progn
(setq dgree_deg (+ 180 dgree_deg))
(setq ang (dtr dgree_deg))
)
)

(entmake (list (cons 0 “TEXT”)
(cons 1 len_tot_text)
(cons 10 mid_pt)
(cons 40 TEXT_HEIGHT)
(cons 50 ang)
)
)

;;;문자의 중간점을 기준하여 입력한다.
;;; ——————————————-

;;; (setq e1 (entlast))
;;; (setq xvalue- (/ (caadr (text_box_mid e1)) 2))
;;; (setq new_mid_pt
;;; (polar mid_pt (+ ang (dtr 180)) xvalue-)
;;; )
;;; (setvar “osmode” 0)
;;; (command “move” e1 “” mid_pt new_mid_pt)

;;; ——————————————-

)
)

(setq sno (+ sno 1))

)
)

(setq no (+ no 1))

(if (or (= (rem no 100) 0)
(= no b)
)
(progn
(princ ” “)
(princ no)
(princ “/”)
(princ b)
(princ “r”)
)
)

)

(princ “n 길이가 0.0이 아닌 폴리선 개수: “)
(princ sno)
(princ “n Completed…..”)

)
)
(command “undo” “e”)
(princ)

)

  • 0
  • 0 0 답변
  • 70 조회
공유
  • Facebook

    관련 있는 질문들

    • 채용안내
    • CAD_CONNECT_EXCEL 리습 회사에서 사용 해도 문제 없나요?
    • 3d 폴리라인 점에 부여되어있는 Z값을 텍스트로 나타내는법
    • cadplus_plot 알람창 질문

    답변을 남겨주세요
    응답 취소

    답변을 등록하기 위해서는 로그인이 필요합니다.

    비밀번호를 잊으셨나요?

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

    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

    링크 삽입/편집

    대상 URL을 입력하세요

    또는 기존의 콘텐츠에 링크

      검색어가 지정되지 않았습니다. 최근 항목 표시 검색하거나 위와 아래 화살키를 이용하여 항목을 선택하세요.