لیسپ های اتوکد
لیسپ اتوکد چیست و چه کاربردی دارد؟
لیسپ (LISP) یکی از زبانهای برنامهنویسی است که برای انجام وظایف پیچیده در نرمافزار اتوکد (AutoCAD) مورد استفاده قرار میگیرد. این زبان به دلیل قابلیتهای بالای خود در اتوماسیون فرآیندهای طراحی و سفارشیسازی محیط کاربری اتوکد بسیار محبوب است. در این مقاله قصد داریم با لیسپ اتوکد، کاربردهای آن و نحوه استفاده از آن بیشتر آشنا شویم و در انتهای لیستی از لیسپ های کاربردی ارائه دهیم.
لیسپ چیست؟
واژه LISP مخفف “LISt Processing” است و به عنوان یکی از قدیمیترین زبانهای برنامهنویسی در دهه ۱۹۵۰ توسعه یافت. این زبان به دلیل ساختار ساده و انعطافپذیری خود، در حوزههای مختلفی مانند هوش مصنوعی و طراحی کامپیوتری کاربرد دارد. لیسپ اتوکد نسخهای از این زبان است که برای محیط CAD طراحی شده و به کاربران امکان میدهد دستورات جدید تعریف کرده و فرایندهای تکراری را به طور خودکار انجام دهند.
کاربردهای لیسپ در اتوکد
لیسپ در اتوکد برای انجام وظایف مختلفی استفاده میشود که شامل موارد زیر است:
- اتوماسیون وظایف تکراری: با استفاده از لیسپ، میتوانید وظایف تکراری مانند رسم خطوط، تغییر لایهها، یا اعمال تنظیمات مشخص را به صورت خودکار انجام دهید.
- سفارشیسازی دستورات: لیسپ امکان ایجاد دستورات جدید در اتوکد را فراهم میکند. به عنوان مثال، میتوانید یک دستور سفارشی برای تغییر سریع اندازه متن یا تغییر رنگ آبجکتها ایجاد کنید.
- تحلیل و پردازش دادهها: از لیسپ میتوان برای تحلیل دادههای موجود در نقشهها و استخراج اطلاعات مورد نیاز استفاده کرد.
- ایجاد ابزارهای کمکی: برنامههای لیسپ میتوانند ابزارهای کمکی کوچکی برای طراحی بهتر و سریعتر ارائه دهند.
مزایای استفاده از لیسپ در اتوکد
- صرفهجویی در زمان: با اتوماسیون وظایف تکراری، زمان زیادی صرفهجویی میشود.
- سفارشیسازی کامل: کاربران میتوانند محیط کاری خود را مطابق نیازهای خاص خود تنظیم کنند.
- سادگی یادگیری: زبان لیسپ به دلیل ساختار ساده و مستقیم خود، به راحتی قابل یادگیری است.
چگونه از لیسپ در اتوکد استفاده کنیم؟
برای استفاده از لیسپ در اتوکد، مراحل زیر را دنبال کنید:
- نوشتن فایل لیسپ: فایلهای لیسپ معمولاً با پسوند lsp. ذخیره میشوند. میتوانید از یک ویرایشگر متن ساده مانند Notepad برای نوشتن کد لیسپ استفاده کنید.پ
- بارگذاری فایل لیسپ در اتوکد:
- دستور AP یا APPLOAD را در خط فرمان اتوکد تایپ کنید.
- فایل lsp. مورد نظر خود را انتخاب و بارگذاری کنید.
- اجرای دستورات لیسپ: پس از بارگذاری، میتوانید دستورهای تعریفشده در فایل لیسپ را در خط فرمان اجرا کنید.
یک نمونه ساده از کد لیسپ
در ادامه یک نمونه ساده از کد لیسپ آورده شده است که یک دایره با شعاع مشخص رسم میکند:
(defun c:DrawCircle ()
(setq radius (getreal "nلطفاً شعاع دایره را وارد کنید: "))
(if radius
(command "CIRCLE" (getpoint "nمرکز دایره را مشخص کنید: ") radius)
(princ "nورودی نامعتبر است.")
)
(princ)
)
برای اجرای این کد:
- فایل را با پسوند .lsp ذخیره کنید.
- آن را در اتوکد بارگذاری کرده و دستور DrawCircle را تایپ کنید.
لیسپ ابزاری قدرتمند برای افزایش بهرهوری و سفارشیسازی در اتوکد است. با یادگیری این زبان میتوانید فرایندهای طراحی خود را بهبود داده و زمان خود را برای انجام وظایف خلاقانهتر آزاد کنید.
لیسپ تراز کردن متن
این برنامه نسبتاً ساده به کاربر این امکان را میدهد تا مجموعهای از اشیاء متنی تکخطی را به گونهای دوباره جایگذاری کند که نقاط ترازبندی متنها در جهتی عمود بر چرخش متن همتراز شوند و بهصورت اختیاری با ضریبی از ارتفاع متن فاصلهگذاری یکنواخت داشته باشند. با وارد کردن دستور AT در خط فرمان AutoCAD، تنها از کاربر خواسته میشود مجموعهای از اشیاء متنی را انتخاب کند و در صورت تمایل، ضریب فاصلهگذاری خطوط را مشخص نماید.
اگر کاربر در مرحله درخواست ضریب فاصلهگذاری خطوط کلید ENTER را فشار دهد، برنامه اشیاء متنی انتخابشده را بدون تغییر فاصله آنها همتراز میکند. اما اگر کاربر ضریب فاصلهگذاری معتبری را وارد کند، اشیاء متنی به فاصلهای برابر با ارتفاع متن ضرب در ضریب واردشده، همتراز و فاصلهگذاری یکنواخت خواهند شد.
این برنامه فرض میکند که تمامی اشیاء متنی انتخابشده دارای ارتفاع و زاویه چرخش یکسانی هستند و متنها را در جهتی عمود بر زاویه چرخش یکی از اشیاء متنی موجود در مجموعه همتراز میکند.
دانلود لیسپ تراز کردن متن
لیسپ تولید پرسپکتیو دو بعدی
این برنامه به کاربر اجازه میدهد یک تبدیل پرسپکتیو (که با نامهای دیگری همچون تبدیل هوموگرافی یا کولینئیشن نیز شناخته میشود) را روی مجموعهای از اشیای دوبعدی مسطح اعمال کند. این تبدیل، اشیا را از یک چارچوب مرجع (یا فضای پرسپکتیو) به چارچوبی دیگر منتقل میکند.
هنگام وارد کردن دستور 2dpro در خط فرمان AutoCAD، از کاربر خواسته میشود مجموعهای از اشیای دوبعدی همصفحه را برای تبدیل انتخاب کند. این انتخاب محدود به اشیای زیر است: کمانها (Arcs)، دایرهها (Circles)، بیضیها (Ellipses)، خطوط (Lines)، چندخطیهای سبک (LWPolylines)، چندخطیهای سنگین دوبعدی (2D Heavy Polylines)، منحنیهای دوبعدی (2D Splines) و نقاط (Points).
سپس از کاربر خواسته میشود یک چارچوب مرجع مبدأ و یک چارچوب مرجع مقصد انتخاب کند. برای هر یک از این انتخابها، برنامه نیاز دارد که کاربر یک چندخطی بسته و مسطح (LWPolyline) با چهار رأس غیرهمخط مشخص کند. پس از هر انتخاب، برنامه اطمینان حاصل میکند که نقاط تعریفکننده چارچوب مرجع به صورت پادساعتگرد مرتب شده و رأس پایین-چپ به عنوان اولین نقطه قرار گیرد.
در صورت ورود اطلاعات معتبر توسط کاربر، برنامه چهار نقطه دوبعدی تعریفکننده هر چارچوب مرجع را به مختصات همگن تبدیل کرده و ماتریس تبدیل برای نگاشت از چارچوب مرجع مبدأ به مقصد را محاسبه میکند.
سپس برنامه روی مجموعه اشیای انتخابشده اجرا شده و برای هر شیء، یک مجموعه نقاط دوبعدی برای توصیف یا (در مورد اشیای منحنی) تقریب آن ایجاد میکند. هر نقطه به مختصات همگن تبدیل شده، با استفاده از ماتریس تبدیل به چارچوب مرجع مقصد نگاشت شده و در نهایت به مختصات کارتزین بازگردانده میشود.
در پایان، برنامه بر اساس نقاط نگاشتشده، اشیای جدیدی نظیر نقطه (Point)، خط (Line) یا چندخطی سبک (LWPolyline) تولید میکند که خواص آنها با شیء اصلی تطابق دارد.
دانلود لیسپ پرسپکتیو دو بعدی
لیسپ رسم مستطیل با سه نقطه
این برنامه به کاربر امکان میدهد که یک مستطیل را به صورت پویا و با استفاده از سه نقطه مشخص ایجاد کند. برنامه دو دستور ارائه میدهد: 3PR و 3PRD که به ترتیب نسخه استاندارد و پویا (دینامیک) برنامه را نشان میدهند.
با وارد کردن هر یک از این دستورات در خط فرمان AutoCAD، ابتدا از کاربر خواسته میشود دو نقطه را مشخص کند که یکی از دو جفت اضلاع موازی مستطیل حاصل را تعریف میکنند.
پس از ورود صحیح این دو نقطه، از کاربر خواسته میشود نقطه سومی را مشخص کند که طول و جهت جفت دوم اضلاع را تعیین میکند. این اضلاع بهصورت عمود بر اضلاعی که توسط دو نقطه اول تعریف شدهاند، ایجاد میشوند. اگر از دستور پویا (3PRD) استفاده شود، برنامه یک پیشنمایش لحظهای از مستطیل ایجادشده را در حین مشخص کردن نقطه سوم نمایش میدهد. کاربر میتواند در هر زمان با فشار دادن کلید ENTER یا کلیک راست در هر مرحله از برنامه خارج شود.
پس از مشخص کردن صحیح هر سه نقطه، برنامه مستطیل تعریفشده را با استفاده از یک چندخطی دوبعدی (LWPolyline) ایجاد میکند.
نسخه پویا (3PRD) از ابزار GrSnap برای فراهم کردن قابلیت کامل Object Snap در حین فرآیند پویا استفاده میکند. علاوه بر این، این برنامه به گونهای طراحی شده است که در تمامی تنظیمات سیستم مختصات کاربری (UCS) و تنظیمات نما (View) بهدرستی عمل کند.
دانلود لیسپ رسم مستطیل با سه نقطه
لیسپ تراز کردن آبجکت بر روی منحنی
این برنامه به کاربر امکان میدهد تا مجموعهای از اشیا را به صورت پویا و با استفاده از کنترلهای شهودی به یک منحنی انتخابشده تراز کند.
با اجرای برنامه از طریق دستور OA در خط فرمان AutoCAD، ابتدا از کاربر خواسته میشود مجموعهای از اشیا را برای تراز کردن انتخاب کند. پس از انتخاب صحیح، کاربر باید یک نقطه مبنا برای استفاده در تراز مشخص کند؛ در این مرحله، برنامه به طور پیشفرض مرکز کادر محدودکننده (Bounding Box) مجموعه انتخابشده را به عنوان نقطه مبنا در نظر میگیرد.
سپس از کاربر خواسته میشود یک شیء منحنی (مانند خط، چندخطی، کمان، دایره، بیضی، خط بینهایت، اسپیلاین و غیره) انتخاب کند که اشیا باید به آن تراز شوند. این منحنی میتواند یک شیء اصلی یا یک شیء توکار در یک بلوک (Block) یا ارجاع خارجی (XRef) در هر سطحی از تو در تو بودن باشد.
پس از انتخاب، برنامه کنترلهای مختلفی برای کمک به جایگذاری اشیا در خط فرمان ارائه میدهد:
[+/-] for [O]ffset | [</>] for [R]otation | [M]ultiple | <[E]xit>:
- فاصله (Offset) اشیا از منحنی را میتوان بهصورت افزایشی به اندازه یکدهم ارتفاع شیء با کلیدهای + / – تغییر داد، یا با فشار دادن کلید O مقدار مشخصی را وارد کرد.
- مجموعه اشیا را میتوان با استفاده از کلیدهای < و > به ترتیب به اندازه ۴۵ درجه در جهت خلاف عقربههای ساعت یا در جهت عقربههای ساعت چرخاند، یا با فشار دادن کلید R یک زاویه چرخش مشخص وارد کرد.
- با فشار دادن کلید M، میتوان حالت “چندگانه” (Multiple Mode) را فعال یا غیرفعال کرد؛ در این حالت، کاربر میتواند چندین نسخه از اشیای انتخابشده را به منحنی تراز کند.
در نهایت، کاربر میتواند اشیا را با کلیک چپ ماوس جایگذاری کند یا با کلیک راست، فشار دادن کلید Enter یا Space، یا انتخاب گزینه خروج با فشار دادن کلید E از برنامه خارج شود.
این برنامه در تمامی تنظیمات سیستم مختصات کاربری (UCS) و نماها (Views) و در تمام نسخههای AutoCAD که از قابلیت Visual LISP پشتیبانی میکنند (از AutoCAD 2000 به بعد) بهدرستی عمل میکند.
دانلود لیسپ تراز کردن آبجکت بر روی منحنی
