درباره پاسخ به AutoLISP با عبارات DIESEL در ماکرو
میتوانید از عبارتهای رشتهای DIESEL بهعنوان راهی برای ارائه پاسخ به یک فرمان تعریفشده با AutoLISP یا ObjectARX استفاده کنید.
عبارات DIESEL مقادیر رشته ای (رشته های متنی) را برمی گرداند که می توانند به عنوان پاسخی به دستورات استاندارد، روال AutoLISP و ObjectARX α® و سایر ماکروها استفاده شوند.
مقدار بازگردانده شده توسط عبارت DIESEL یک رشته متنی است، می توان آن را در پاسخ به فراخوانی تابع AutoLISP get XXX یا ObjectARX acetGet XXX استفاده کرد. این عملکرد آیتم های منو را قادر می سازد تا شرایط ترسیم فعلی را ارزیابی کرده و مقداری را به روال AutoLISP یا ObjectARX برگردانند.
اگر نمونه روال AutoLISP زیر را بارگیری و اجرا کنید، برنامه نام و اندازه نماد و یک مکان در نقشه را درخواست می کند.
(defun C:SYMIN() (setq sym (getstring " Enter symbol name: ") ; Prompts for a symbol name ) (setq siz (getreal " Select symbol size: ") ; Prompts for a symbol size p1 (getpoint " Insertion point: ") ; Prompts for insertion point ) (command "._insert" ; Issues the INSERT command sym ; using the desired symbol p1 siz siz 0) ; insertion point, and size (princ) ; Exits quietly )
در حالی که مثال قبلی در حال اجرا است، میتوانید روی عناصر رابط کاربری که عبارت DIESEL را در پاسخ به یکی از درخواستها اجرا میکنند، کلیک کنید.
به عنوان مثال، ممکن است از عبارت $M=$(*,$(getvar,dimscale),0.375) برای استفاده از ضریب مقیاس استفاده کنید که 3/8 نسبت DIMSCALE فعلی است.
این کار را نمی توان با کد AutoLISP مشابه انجام داد. مقدار بازگردانده شده توسط یک عبارت AutoLISP معمولاً نمی تواند به عنوان پاسخی به فراخوانی تابع get XXX (مانند تابع getreal در نمونه قبلی) استفاده شود.
مراجع مرتبط
مفاهیم مرتبط