AutoCADLT 2024부터 리습지원 (일부기능제한)
Windows용 AutoCAD LT는 이제 AutoLISP 및 DCL을 지원합니다.
https://help.autodesk.com/view/ACDLT/2024/ENU/?guid=GUID-037BF4D4-755E-4A5C-8136-80E85CCEDF3E
하지만 AutoCAD와 달리 일부기능이 제한적으로 지원합니다
최대 VL*, VLA*, VLAX*, 그리고 VLR*기능은 지원되지만 타사 자동화 라이브러리의 사용은 AutoCAD LT에서 지원되지 않습니다.
다음은 지원되지 않는 기능에 대한 대략적인 요약입니다.
vlax-create-object
vlax-get-object
vlax-get-or-create-object
vlax-import-type-library
vla-GetInterfaceObject
VLA*AutoCAD에서만 생성할 수 있는 3D 솔리드 및 표면, 나선, 재료, 여러 줄 객체 생성 및 수정과 관련된 기능
entmake, 엔트마펙스, 그리고 엔트모드기능은 AutoCAD LT에서 지원되는 객체의 생성 및 수정만 허용합니다.
사용자 정의 ObjectARX 및 관리 .NET 프로그램에 의해 노출된 AutoLISP 기능은 사용할 수 없습니다.
액티브X 제한 사항:
기본 설정 프로필개체가 ActiveX 구현의 일부로 존재하지만 Windows용 AutoCAD LT에서 프로파일이 지원되지 않기 때문에 해당 메서드와 속성이 모두 제거되었습니다.
3D 메쉬, 표면 및 솔리드 생성은 지원되지 않고 3D 개체 수정에 대한 지원은 제한됩니다.
AutoLISP 프로그램 제한 개발:
Windows용 AutoCAD LT에서는 Visual LISP IDE(통합 개발 환경) 및 VLIDE/VLISP 명령을 사용할 수 없습니다.
Windows용 AutoCAD LT에서는 Visual Studio Code에서 AutoLISP Extension을 사용한 디버깅이 지원되지 않습니다.
AutoLISP 프로그램 배포 제한 사항:
MNL 파일은 이름이 같은 CUIx 파일과 함께 자동으로 로드되지 않지만 AutoLISP를 사용하여 파일을 로드할 수 있습니다. 짐다른 LISP 파일의 함수
컴파일된 LSP 파일은 Windows용 AutoCAD LT에서 지원되지만 LSP 파일 컴파일은 AutoCAD for Windows에서만 수행할 수 있습니다.
AutoCAD로 제한된 기능과 명령을 활용하는 프로그램은 호환성 문제를 피하기 위해 로드되는 제품을 확인해야 합니다. 이것은 PROGRAM 시스템 변수를 사용하여 수행할 수 있습니다. acadltAutoCAD LT에 대해 반환됩니다.
다음 예제 에서는 코드가 AutoCAD 또는 AutoCAD LT에 로드되었는지 여부에 따라 DVB 파일의 로드 및 VBA 매크로를 실행하는 명령의 정의를 제한합니다.
(if (/= (strcase (getvar "PROGRAM") T) "acadlt")
(progn
(vl-load-com)
;; Load a DVB file
(setq retVal (vl-catch-all-apply 'vl-vbaload (list (findfile "sample/vba/drawline.dvb"))))
;; If the DVB file was found, then define the function to run the function
(if (not (vl-catch-all-error-p retVal))
(defun c:DRAWLINE (/)(vl-vbarun "drawline"))
(prompt "\ndrawline.dvb is missing")
)
(prompt "\nEnter DRAWLINE to run the VBA macro.")(princ)
)
(progn (prompt "\nVBA macros are not supported on AutoCAD LT.")(princ))
)
Express 명령어 사용불가
acet-ui-pickdir등 익스프레스에서 제공하는 명령어들
LEE리습 개발 테스트
(vl-load-com)
(print (list "1" (vlax-create-object "WbemScripting.SWbemLocator")))
(print (list "2" (vlax-create-object "vbscript.regexp")))
(print (list "3" (vlax-create-object "htmlfile")))
(print (list "4" (vlax-create-object "WScript.Shell")))
(print (list "5" (vlax-create-object "Scripting.FilesystemObject")))
(print (list "6" (vlax-create-object "Excel.Application")))
;일반오토캐드 실행결과
(LOAD "LEE_LT_TEST.LSP")
("1" #<VLA-OBJECT ISWbemLocator 0000011522395130>)
("2" #<VLA-OBJECT IRegExp2 000001156e1a5c80>)
("3" #<VLA-OBJECT DispHTMLDocument 000001e2832a0230>)
("4" #<VLA-OBJECT IWshShell3 0000029b36fe38b0>)
("5" #<VLA-OBJECT IFileSystem3 0000029b36fe3160>)
("6" #<VLA-OBJECT _Application 0000011522445c48>)
; LT에서 실행결과
(LOAD "LEE_LT_TEST.LSP")
("1" nil)
("2" nil)
("3" nil)
("4" nil)
("5" nil)
("6" nil)
결론
오토캐드 LT리습지원은 개인적으로 간단한 리습제작은 가능하지만
타사 라이브러리를 사용할수 있는 부분은 제한되어 WIN32API와 VBA, 엑셀연결등 기능이 제한되어 작동하지 않습니다.
LEE 리습은 파이썬으로 대체완료 하였습니다
개발진행사항 ( LEE 리습 2024A7~E2 )
1. WMI정보 연동
2. VB스크립트 사용
3. 클립보드 사용
4. 외부 프로그램 실행
5. 드라이브 리스트 (C:[HDD]...)
6. 엑셀연동 -> 파이썬으로 실행 (2024E2부터 사용가능)
------- 지원 불가 ---------------------------------------------
7. "vla-GetInterfaceObjec"와 "ObjectDBX.AxDbDocument" 를 사용하는 XREF 색수정, BM등등 일부명령어
------- 현재 사용 가능 ----------
그외 출력하기(PDF병합) 도곽분리(W4), 표제란입력(S4), 각종계산하는명령(WS, APY, BAD)들은 모두 사용가능합니다.
'F A Q > AutoCAD' 카테고리의 다른 글
AutoCADLT 2024에서 LEE 리습 실행 (0) | 2023.10.14 |
---|