اسکریپت نویسی در اتوکد

اسکریپت نویسی در اتوکد

اشتراک گذاری مطلب:
لینک کوتاه مطلب
https://selfamooz.ir/?p=7419

در این مطلب می‎خوانید

چگونه در اتوکد اسکریپت نویسی کنیم؟

اگر بخواهیم اسکریپت نویسی در اتوکد را تعریف کنیم بهتر است آنها را برنامه هایی ساده برای انجام کارهایی شگفت انگیز بنامیم.

اسکریپت یک ماکرو است، لیستی از دستوراتی است که میتوانیم بطور همزمان و هر چند بار که لازم است اجرا کنیم، به ما امکان میدهد وظایف را به صورت خودکار انجام دهیم که اگر همان کارها را به صورت دستی انجام دهیم طولانی تر میشود. استفاده از اسکریپتها در Autocad میتواند بسیار قدرتمند باشد.

میتوانیم آنها را روی موضوعات در یک نقشه یا بسیاری از نقشه ها اجرا کنیم.

در اینجا 3 نکته مهم وجود دارد که باید در مورد اسکریپت نویسی در اتوکد بدانیم:

    • اسکریپتها فقط فایلهای متنی هستند. ما معمولاً آنها را در Notepad ایجاد میکنیم.
    • آنها دارای پسوند SCR هستند، بنابراین هنگام ذخیره کردن، دقت میکنیم که آنها را با پسوند SCR ذخیره کنیم.
    • اسکریپتها فقط از خط فرمان استفاده میکنند. آنها نمیتوانند به کادرهای گفتگو (مثل پنجره Print)، دکمه های نوار ابزار و غیره دسترسی پیدا کنند.

اسکریپتها فقط دستورات را اجرا میکنند. اگر دستوری با تایپ کردن در خط فرمان اجرا نمیشود، بنابراین نمیتوانیم در اسکریپت نیز از آن استفاده کنیم. ارزش اسکریپتها به این است که میتوانیم از آنها بارها و بارها استفاده کنیم و آنها میتوانند حتی در بسیاری از نقشه ها، لیستهای طولانی از دستورات را انجام دهند.

اگر فراتر از قابلیت اسکریپت نویسی در اتوکد نیاز داشته باشیم، میتوانیم از اتولیسپ یا زبان برنامه نویسی دیگری نیز استفاده کنیم. آموزش کامل اتولیسپ را میتوانید از اینجا تهیه کنید.

ایجاد فایل اسکریپت

برای ایجاد یک فایل اسکریپت مراحل زیر را اجرا میکنیم:

متغیر سیستمی FILEDIA را روی صفر تنظیم میکنیم، تا پنجره های گفتگویی که به فایلها دسترسی دارند باز نشوند. البته اگر از خط تیره “-” در ابتدای دستور استفاده کنیم، آن دستور فقط از طریق خط فرمان اجرا میشود (البته بهتر است از متغیر سیستمی FILEDIA استفاده شود).

برای روشن شدن این مطلب دستور Layer را یکبار بدون خط تیره و یکبار با نوشتن خط تیره در ابتدای دستور اجرا میکنیم.

مراحلی را که میخواهیم به صورت خودکار اجرا شوند، فقط با استفاده از خط فرمان اجرا میکنیم. اجرای دستورات و قسمتهایی از آنها را که نیاز داریم، به صورت مرحله به مرحله و هر کدام را در یک خط مینویسیم.

در انتهای هر دستور، Enter میزنیم یا از یک فضای خالی استفاده میکنیم که برابر با زدن Enter در خط فرمان است. اسکریپت هر فضایی را میخواند، بنابراین باید دقیقاً آن را درست کنیم!

نام لایه ها یا نام پرونده ها (و مسیرهای پرونده) را که حاوی فاصله هستند، در علامتهای نقل قول “” (دابل کوتیشن)، محصور میکنیم.

-open “D:\selfamooz.dwg”

اگر به توضیح در داخل فایل نیاز داشتیم میتوانیم در ابتدای آن توضیح از نقطه ویرگول «;» استفاده کنیم. اسکریپت از خواندن هر نوشته ای که در ابتدای آن از نقطه ویرگول استفاده شده باشد، صرف نظر میکند.

فایل را با پسوند SCR ذخیره میکنیم.

متغیر سیستمی FILEDIA را روی 1 تنظیم میکنیم.

اجرای فایل بعد از اسکریپت نویسی در اتوکد

به 3 طریق میتوانیم فایل اسکریپت را اجرا کنیم:

    • نوشتن دستور Script در خط فرمان و اجرای آن
    • گرفتن فایل اسکریپت و رها کردن آن بر روی صفحه ترسیم اتوکد
    • اجرای دستور Run Script از پنل Applications در سربرگ Manage
دستور Run Script

هر کدام از 3 روش بالا را که انجام دهیم، اسکریپت اجرا میشود.

اگر بخواهیم فایل اسکریپت را روی بیش از یک نقشه اجرا کنیم، میتوانیم از دستورات Open، Close، QSave برای باز کردن نقشه ها، اجرای برخی از دستورات، ذخیره نقشه ها و سپس بستن آنها استفاده کنیم.

مثالهایی از اسکریپت نویسی در اتوکد

در این بخش میخواهم برای درک هر چه بیشتر اسکریپت نویسی در اتوکد ، چند مثال بزنم تا این موضوع برای شما عزیزان کاملا جا بیفتد:

اسکریپت ترسیم چهار ضلعی با دستور Line

اگر بخواهیم با دستور Line، یک مربع ترسیم کنیم که هر کدام از اضلاع آن 50 میلی‏متر باشد باید به ترتیب زیر عمل کنیم:

ابتدا یک فایل Notepad باز میکنیم و در خط اول آن Line را مینویسیم (دستوری که میخواهیم اتوکد با آن عملی را انجام دهد) و با زدن اینتر به خط بعدی میرویم.

 مختصات نقاط ترسیم را در هر خط وارد کرده و در انتها Close را مینویسیم (چون میخواهیم ترسیم بسته باشد). بعد از نوشتن کلمه Close حتماً اینتر میزنیم تا به خط بعد منتقل شویم (این کار برای این است که در اسکریپت نویسی ، اتوکد، Enter را به معنی خروج از دستور یا تمام شدن یک مرحله از ترسیم در نظر میگیرد).

اسکریپت ترسیم چهارضلعی

بعد از نوشتن برنامه آنرا با پسوند SCR ذخیره میکنیم.

فایل را مطابق با آموزش بالا اجرا کرده و به محض اجرای برنامه به صفحه اتوکد برمیگردیم و خواهیم دید که ترسیم انجام شده است.

اسکریپت ترسیم چهار ضلعی با دستور Polyline و مختصات نسبی

حال به جای Line کلمه Pline را مینویسیم و نتیجه را میبینیم.

اسکریپتی که در بالا نوشتیم مربع را به صورت مختصات مطلق ترسیم میکند. اگر بخواهیم مربع را به صورت مختصات نسبی ترسیم کنیم، باید به شکل زیر بنویسید:

اسکریپت ترسیم چهارضلعی یکپارچه

استفاده از چند دستور در برنامه نویسی اسکریپت

می‏توانیم از چند دستور در اسکریپت نویسی استفاده کنیم.

مثلاً اگر بخواهیم در وسط مربعی که ترسیم کردیم، یک دایره به قطر 30 میلی‏متر ترسیم کنیم، اسکریپت آن به صورت زیر خواهد شد:

اسکریپت ترسیم چهارضلعی و دایره

اسکریپت باز کردن صفحه جدید و ترسیم در آن

در این اسکریپت میخواهیم ابتدا مانند اسکریپت قبل یک چهار ضلعی و یک دایره در وسط آن ترسیم کرده و روی این ترسیمات Zoom انجام شود.

بعد از اینکار یک صفحه جدید ایجاد کنیم و همین عملیات را روی آن نیز انجام دهیم و این کار تا موقعی که دکمه Esc کیبورد را نزنیم ادامه پیدا میکند.

اسکریپت آن به صورت روبرو خواهد شد:

اسکریپت باز کردن صفحه جدید

برنامه را اجرا کرده و نتیجه آن را میبینیم.

در اسکریپت بالا، دستور Rscript باعث میشود تمام خطوط بالای این دستور تا زمانی که دکمه Esc کیبورد را نزنیم ادامه پیدا کند.

اسکریپت نویسی در اتوکد و مهارت در آن نیاز به انجام تمرین زیاد دارد.

چون برای اسکریپت نویسی در اتوکد ، محیط برنامه نویسی مشخصی نداریم و در یک فایل Notepad نوشته میشود، برای اینکه ببینیم برنامه درست کار میکند، باید آنرا در اتوکد امتحان کنیم و نیاز به انجام سعی و خطا میباشد.

برنامه ‏های نوشته شده را می‏توانید از فایل ضمیمه دریافت کنید.

باکس دانلود فقط زمانی نمایش داده می‌شود که وارد شده باشید.

ابتدا وارد شوید.

مقالات مرتبط

6 پاسخ

  1. سلام و درود بی پایان.
    آیا دستوری نوشتاری در اتوکد هست (script) که یک فایل اسکریپت را از بیرون فراخوانی کند و آنرا اجرا نماید. چنین دستوری مورد نیاز برای اتوماسیون می باشد. با تشکر فراوان

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

جستجو کردن

کاربران عزیز برای ارتباط بیشتر، کانال سلف آموز در پیامرسان بله را دنبال کنید.