비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 112044
다음
진행 중
Lv.0
등록일: 2019-12-232019-12-23T16:18:56+09:00 2019-12-23T16:18:56+09:00카테고리: AutoCAD & CADian

리습 수정이 필요해요 ㅜㅜ(수정

(defun c:pipi (/ AcDoc oSpace Lts Vgap Hgap ss p1 p2 SsObjList LayerSame_ObjList
                LaLenList LaLenList1 MaxLen1 MaxLen2 Table)
  (vl-load-com)
  (setq AcDoc (vla-get-activedocument (vlax-get-acad-object)))
  (cond
    ((= (vla-get-activespace AcDoc) 1) (setq oSpace (vla-get-modelspace AcDoc)))
    ((= (vla-get-activespace AcDoc) 0) (setq oSpace (vla-get-paperspace AcDoc)))
  )
 
  (defun Haru_ssToObjList ( ss / k ObjList)
    (repeat (setq k (sslength ss))
      (setq ObjList (cons (vlax-ename->vla-object (ssname ss (setq k (1- k)))) ObjList))
    )
    ObjList
  )
 
  (defun Haru_LayerSameList(L)
    (if L
      (cons
        (vl-remove-if-not ‘(lambda (a) (= (vla-get-Layer (car L)) (vla-get-Layer a))) L)
        (Haru_LayerSameList (vl-remove-if ‘(lambda (a) (= (vla-get-Layer (car L)) (vla-get-Layer a))) L))
      )
    )
  )
 
  (defun Sub_Comma(txt / Citem Btxt txt k comp Ntext)
    (if (setq Citem (vl-string-position (ascii “.”) txt))
      (progn
        (setq Btxt (substr txt (1+ Citem) (- (strlen txt) Citem)))
        (setq txt (substr txt 1 Citem))
      )
      (setq Btxt “”)
    )
    (setq k (strlen txt) comp 0 Ntext “”)
    (repeat k
      (setq item (substr txt k 1))
       (if (<=  48 (ascii item) 57)
        (setq comp (+ comp 1))
        (setq comp 0)
      )
      (if (= comp 4) (setq Ntext (strcat “,” Ntext) comp 1) )
      (setq Ntext (strcat item Ntext))
      (setq k (- k 1))
    )
    (setq Ntext (strcat Ntext Btxt))
    Ntext
  )
 
 
  (setq Lts (getvar “ltscale”))
  ;(setq @#Texhight (* Lts 5.0))
  (setq LaLenList1 ‘())
 
  (or @#Texhight (setq @#Texhight 20))
  (setq @#Texhight(cond((getreal(strcat  “n테이블 문자크기입력:<“(rtos @#Texhight 2 2)”>”)))(@#Texhight)))
 
  (setq Vgap 4 Hgap 4)
 
  (and
    (setq ss (ssget (list (cons 0 “LINE,LWPOLYLINE,CIRCLE,ARC,SPLINE,ELLIPSE”))))
    (setq p1 (getpoint “n삽입점:”))
    (progn
      (setq SsObjList (Haru_ssToObjList ss))
      (setq LayerSame_ObjList  (Haru_LayerSameList SsObjList))
  
(setq LaLenList
 (mapcar
  ‘(lambda (a)
   (list
    (vla-get-Layer (car a))
    (apply ‘+
     (mapcar
      ‘(lambda (b)
       (vlax-curve-GetDistAtParam b (vlax-curve-getEndParam b))
      )
      a
     )
    )
    (vl-list-length a)
   )
  )
  LayerSame_ObjList
 )
)
    )
  )
  (setq MaxLen1 (apply ‘max
                    (mapcar ‘(lambda (a) (car (cadr (textbox (list (cons 1 (car a)) (cons 40 @#Texhight)))))) LaLenList)
                  )
  )
  (setq MaxLen2 (apply ‘max
                    (mapcar ‘(lambda (a) (car (cadr (textbox (list (cons 1 (rtos (cadr a) 2 2)) (cons 40 @#Texhight)))))) LaLenList)
                  )
  )
 
  (setq LaLenList1(vl-sort LaLenList(function (lambda (x1 x2) (> (car x1) (car x2))))))
 
  (setq Table (vlax-invoke oSpace ‘AddTable p1 (+ 2 (length LaLenList1)) 3 (* @#Texhight 2) (* 1.5 (max MaxLen1 MaxLen2))))
  (vla-put-horzcellmargin table (* @#Texhight 0.5))
  (vla-SetText Table 1 0 “PIPE”)
  (vla-SetText Table 1 1 “M”)
  (vla-SetText Table 1 2 “EA”)
  (setq i 1)
  (mapcar ‘(lambda (a) (vla-SetText Table (setq i  (1+ i))  0 (car a)) (vla-SetCellAlignment Table i 0 acMiddleCenter)) LaLenList1)
  (setq i 1)
  (mapcar ‘(lambda (a) (vla-SetText Table (setq i  (1+ i))  1 (Sub_Comma (rtos (/ (cadr a) 1000.00) 2 2))) (vla-SetCellAlignment Table i 1 acMiddleRight)) LaLenList1)
  (setq i 1)
  (mapcar ‘(lambda (a) (vla-SetText Table (setq i  (1+ i))  2 (rtos (caddr a) 2 0)) (vla-SetCellAlignment Table i 2 acMiddleRight)) LaLenList1)
  (vlax-invoke Table ‘SetTextheight acHeaderRow @#Texhight)
  (vlax-invoke Table ‘SetTextHeight acDataRow @#Texhight)
  (vla-deleterows Table 0 1)
(vl-cmdf “_Explode” (entlast))
(vl-cmdf “_Explode” (entlast))
  (princ)
)

이렇게 레이어 마다 선길이를 표로 보여주는 리습을 쓰고있는데요
이렇게 해서 쓰니 레이어이름이 40,32,25가있다면 표 제일 위는  40 > 32 >25 순으로 나오더라구요 
25 > 32 > 40 순으로 제가 원하는 순서로 표나오게 할수없나요??
메리크리스마스
  • 0
  • 4 4 답변
  • 10 조회
공유
  • Facebook

    관련 있는 질문들

    • 캐드2022 레이어 그룹 분류시 레이어 드래그 오류
    • 전기도면 나사모양의 폴리선을 그릴수 있나요?
    • 캐드, zw캐드 와이프아웃 박스가 너무 많이 생겨요. 폴리선 박스가 중첩으로 많이 생겨요
    • 오토캐드 2016 맞춤법 검사기 끄는 방법 아시나요

    4 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. 수야12 Lv.21
      2019-12-23T18:55:34+09:00답변 등록 답변 등록 일시 2019-12-23 6:55 pm

      이 리습은 그냥 특정 레이어로 폴리라인 그리는 리습입니다 표 관련 구문 없어요 

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    3. [Deleted User]
      2019-12-24T08:34:19+09:00답변 등록 답변 등록 일시 2019-12-24 8:34 am

      헉 ㅇㅁㅇ 잘못올렸어요 수정하겠습니다 감사합니다 ㅜㅜ

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    4. 수야12 Lv.21
      2019-12-24T22:29:26+09:00답변 등록 답변 등록 일시 2019-12-24 10:29 pm

        (setq LaLenList1(vl-sort LaLenList(function (lambda (x1 x2) (> (car x1) (car x2))))))

      이 부분 
        (setq LaLenList1(vl-sort LaLenList(function (lambda (x1 x2) (< (car x1) (car x2))))))
      이렇게 꺽쇠 방향만 바꾸시면 됩니다 
      즐거운 성탄절 되세요 
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    5. [Deleted User]
      2020-01-02T17:12:43+09:00답변 등록 답변 등록 일시 2020-01-02 5:12 pm
      새해 복 많이 받으세요 ( 절받으세요 수야님 ~)
       수야님 혹시 제가 원하는 순서로는 안되는걸까요?예: 32 > 25 > 40이런순으로요?
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter

    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