1월, 2025의 게시물 표시

오토캐드(AutoCAD) 레이어(Layer)

이미지
  이제는 정리하여 유틸을 이용하지말고, AutoCAD 고유 명령을 이용하여 보다 편한 업무를 하시길 바랍니다. AutoCAD 도움말에 있는 내용을 복사하였습니다. ▣  레이어(Layer) 명령  - Layer명령  LAYER - 도면층 및 도면층 특성 관리  LAYERCLOSE - 도면층 특성 관리자 닫기  LAYCUR - 선택한 객체의 도면층을 현재 도면층으로 변경합니다.  LAYDEL - 도면층의 모든 객체를 삭제하고 도면층을 소거합니다.  LAYERP - 도면층 설정값에 대해 최근에 변경된 사항을 취소합니다.  LAYERPMODE - 도면층 설정에 대해 변경된 사항에 대한 추적을 켜거나 끕니다.  LAYERSTATE - 명명된 도면층 상태를 저장, 복원 및 관리합니다.  LAYFRZ - 선택한 객체의 도면층을 동결합니다.  LAYISO - 선택한 객체의 도면층을 제외한 모든 도면층을 숨기거나 잠급니다.  LAYLCK - 선택한 객체의 도면층을 잠급니다.  LAYMCH - 선택한 객체의 도면층을 대상 도면층에 맞게 변경합니다.  LAYMCUR - 선택한 객체의 도면층을 현재 도면층으로 설정합니다.  LAYMRG - 이전 도면층을 도면에서 제거하고 선택한 도면층을 대상 도면층에 결합합니다.  LAYOFF - 선택한 객체의 도면층을 끕니다.  LAYON - 도면의 모든 도면층을 켭니다.  LAYTHW - 도면의 모든 도면층을 동결해제합니다.  LAYTRANS - 도면의 도면층을 사용자가 지정한 도면층 표준으로 변경합니다.  LAYULK - 선택한 객체의 도면층을 잠금해제합니다.  LAYUNISO - LAYISO 명령으로 숨기거나 잠근 모든 도면층을 복원합니다.  LAYVPI - 현재 뷰포트를 제외한 모든 배치 뷰포트에서 선택한 도면층을 동결합니다. ...

캐드(AutoCAD)에서 AutoLisp 강좌 예제 - AutoCAD DXF 객체정보 확인하기

이미지
AutoCAD의 모든 객체는 DXF 정보를 가지고 있다. AutoLisp으로 객체의 DXF 정보를 가져올 수 있는 방벙은 명령: (entget(car(entsel "메시지 입력")))  이와 같이 사용할 수 있다. 그렇다면, Line, Arc, Circle, Text, Polyline 등의 DXF 정보를 확인해 본다. AutoCAD Command에 아래와 같이 입력하여 각 객체들을 선택한다. 명령: (entget(car(entsel "객체선택:"))) 폴리선 (Polyline 선택) 객체선택:((-1 . <도면요소 이름: 21765ecfe20>) (0 . "LWPOLYLINE") (330 . <도면요소 이름: 21765ecc9f0>) (5 . "2D2") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (62 . 2) (100 . "AcDbPolyline") (90 . 4) (70 . 1) (43 . 2.0) (38 . 0.0) (39 . 0.0) (10 50.0 50.0) (40 . 2.0) (41 . 2.0) (42 . 0.0) (91 . 0) (10 150.0 50.0) (40 . 2.0) (41 . 2.0) (42...

AutoLisp 강좌 예제 - AutoCAD에서 블럭(Block)의 레이어, 위치, 블럭 이름을 표시

이미지
AutoLISP는 AutoCAD에서 매우 유용하게 사용되는 프로그래밍 언어입니다.  선택한 블록의 레이어(Layer) 이름, 위치(Location), 블록 이름(Block Name) 등을 확인하는 스크립트를 작성하는 방법을 설명하겠습니다. 아래의 코드를 메모장 또는 Text 편집기에 작성하여 파일명을 test.lsp로 저장합니다. (defun c:BlockInfo (/ ent entdata blklayer blkname blkpos)   ;; 사용자에게 블록 선택을 요청합니다   (setq ent (entsel "\n블록을 선택하세요: "))   (if ent     (progn       ;; 엔터티 데이터를 가져옵니다       (setq entdata (entget (car ent)))       ;; 블록의 레이어 이름을 가져옵니다       (setq blklayer (cdr (assoc 8 entdata)))              ;; 블록의 이름을 가져옵니다       (setq blkname (cdr (assoc 2 entdata)))              ;; 블록의 위치를 가져옵니다       (setq blkpos (cdr (assoc 10 entdata)))              ;; 결과를 출력합니다       (princ (strcat "\n레이어 이름: " blklayer))       (princ (strcat "\n블록 이름: " blkname))     ...

오토캐드 AutoLisp 강좌 예제 - 객체선택 레이어(Layer)명 확인

이미지
오토캐드 AutoLisp 강좌 예제 - 객체선택 레이어(Layer)명 확인   AutoCAD에서 AutoLISP을 사용하여 객체의 레이어를 가져오는 예제입니다. 다음은 코드 예제와 설명을 참조바랍니다. 코드: (defun c:GetLayer ( / ent layer)   ; 사용자에게 객체 선택을 요청합니다.   (setq ent (car (entsel "\n객체를 선택하세요: ")))   ; 객체가 선택되었는지 확인합니다.   (if ent     (progn       ; 선택한 객체의 레이어를 가져옵니다.       (setq layer (cdr (assoc 8 (entget ent))))       ; 레이어를 출력합니다.       (princ (strcat "\n선택한 객체의 레이어: " layer))     )     ; 객체가 선택되지 않았을 경우 메시지를 출력합니다.     (princ "\n객체가 선택되지 않았습니다.") ...

AutoCAD DWG를 PNG(Portable Network Graphics) 파일로 저장하기

이미지
  AutoCAD파일 문서를 공유하기 위한 방법 들 중, PDF 처럼 이미지 형식으로 파일을 저장하여 공유하는 방식중에 하나인 PNG 이미지 저장하기가 있습니다. PDF, PNG, JPEG 등이 이에 해당합니다. 1. 도면 파일을 열어줍니다. PLOT명령을 실행합니다. 2. 프린터/플로터 설정 -> PNG로 출력 - 용지크기 설정 - 플롯대상 : 윈도우 -> 출력하고자하는 영역선택 - 플롯 간격띄우기 : 플롯의 중심 - 플롯축척 : 용지에 맛춤 - 플롯 스타일, 음영처리, 플롯옵션, 도면방향들을 적절히 선택하고 확인을 누릅니다. 3. 원하는 폴더 위치에 원하는 이름을 입력합니다. 4. PNG로 출력이 완료된 파일을 그림판으로 본 화면입니다.

오토캐드(AutoCAD) 팔레트(Palette) 배경색상 설정

이미지
 AutoCAD의 특성 팔레트와 같은 배경색의 팔레트를 C#으로 구현하려면, AutoCAD의 특성 팔레트와 동일한 색상을 가져와서 PaletteSet에 적용해야 합니다. AutoCAD는 내부적으로 특정 색상 테마를 사용하기 때문에, 특성 팔레트의 배경색을 직접 가져오는 API는 제공되지 않지만, AutoCAD의 다크 및 라이트 테마에 따라 팔레트 배경색을 설정할 수 있습니다. 다음은 AutoCAD 테마에 맞게 팔레트 배경 색상을 설정하는 예제 코드입니다. using System; using System.Drawing; using Systehttp://m.Windows.Forms; using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD.Runtime; using Autodesk.AutoCAD.Windows; [assembly: CommandClass(typeof(AutoCADPaletteExample.PaletteCommands))] namespace AutoCADPaletteExample {     public class PaletteCommands     {         private PaletteSet _paletteSet;         [CommandMethod("ShowPaletteWithTheme")]         public void ShowPaletteWithTheme()         {             if (_paletteSet == null)             {                 // Pale...

C# 응용프로그램을 활용한 폴리선의 좌표를 표시한다.

이미지
 AutoCAD에서 폴리선들을 선택하고 해당 폴리선의 꼭지점들의 XY 좌표를 보여주는 C# 코드를 작성해 보겠습니다.  이 코드는 AutoCAD .NET API를 사용하며, AutoCAD 플러그인 형태로 실행될 수 있습니다. using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.EditorInput; using Autodesk.AutoCAD.Geometry; using Autodesk.AutoCAD.Runtime; using System; namespace PolylineCoordinates {     public class Commands     {         [CommandMethod("GetPolylineCoords")]         public static void GetPolylineCoordinates()         {             Document doc = Application.DocumentManager.MdiActiveDocument;             Database db = doc.Database;             Editor ed = doc.Editor;             // 폴리선 선택 프롬프트             PromptSelectionOptions selectionOptions = new PromptSelectionOptions(); ...