FreeCAD یک نرمافزار مدلسازی سهبعدی پارامتریک و مبتنی بر ویژگی برای طراحی CAD، MCAD، CAx، CAE و PLM است که به طور خاص برای مهندسی مکانیک و طراحی محصولات ساخته شده است، اما دامنه کاربرد گستردهتری در مهندسی، مانند معماری و دیگر تخصصهای مهندسی دارد. این نرمافزار کاملاً متنباز و بسیار ماژولار است که امکان گسترش و سفارشیسازی پیشرفته را فراهم میکند. FreeCAD بر پایه OpenCasCade بنا شده است، که یک هسته هندسی قدرتمند است، و از مدل نمایش صحنه سهبعدی سازگار با Open Inventor استفاده میکند که توسط کتابخانه Coin 3D ارائه شده و همچنین دارای یک API گسترده مبتنی بر Python است. رابط کاربری این نرمافزار با استفاده از Qt ساخته شده است. FreeCAD به طور یکسان بر روی سیستمعاملهای ویندوز، مک OSX و لینوکس اجرا میشود.

ویژگیهای کلی:
چند پلتفرمی بودن: FreeCAD به طور یکسان بر روی ویندوز، لینوکس و مک OSX اجرا و عملکرد مشابهی دارد.
رابط کاربری کامل: FreeCAD دارای یک رابط کاربری گرافیکی کامل است که بر پایه چارچوب مشهور Qt ساخته شده و از یک نمایشگر سهبعدی مبتنی بر Open Inventor بهره میبرد که امکان رندر سریع صحنههای سهبعدی و نمایش گرافی صحنه را فراهم میکند.
اجرای نرمافزار در حالت خط فرمان: FreeCAD میتواند بدون رابط کاربری خود و با استفاده از ابزارهای هندسی اجرا شود. این حالت برای مثال میتواند به عنوان سرور برای تولید محتوا برای برنامههای دیگر مورد استفاده قرار گیرد.
قابلیت استفاده به عنوان ماژول Python: FreeCAD میتواند به عنوان یک ماژول Python در دیگر برنامههایی که قابلیت اجرای اسکریپتهای Python دارند یا در کنسول Python مورد استفاده قرار گیرد. مشابه حالت خط فرمان، در این حالت رابط کاربری در دسترس نیست اما ابزارهای هندسی قابل استفاده هستند.
مفهوم Workbench: در رابط کاربری FreeCAD، ابزارها بر اساس Workbenchها دستهبندی شدهاند. این امکان باعث میشود فقط ابزارهای مربوط به انجام یک وظیفه خاص نمایش داده شوند، که فضای کاری را مرتب و پاسخگو نگه میدارد و باعث میشود نرمافزار سریعتر بارگذاری شود.
چارچوب ماژول/پلاگین برای بارگذاری ویژگیها یا نوع دادهها به صورت دیرهنگام: FreeCAD به دو بخش اصلی، یعنی نرمافزار هسته و ماژولها تقسیم شده است که فقط در صورت نیاز بارگذاری میشوند. تقریباً همه ابزارها و انواع هندسی در ماژولها ذخیره شدهاند. ماژولها مانند پلاگین عمل میکنند و میتوانند به یک نصب موجود از FreeCAD اضافه یا حذف شوند.
اشیاء سند پارامتریک و وابسته: تمام اشیاء موجود در یک سند FreeCAD میتوانند با پارامترها تعریف شوند. این پارامترها را میتوان به صورت زنده تغییر داد و در هر زمان بازمحاسبه کرد. رابطه بین اشیاء نیز ذخیره میشود، بنابراین تغییر یک شیء باعث تغییر اشیاء وابسته به آن میشود.
ایجاد اشیاء اولیه پارامتریک: مانند جعبه، کره، استوانه و غیره.
عملیات گرافیکی تغییر شکل: مانند انتقال، چرخش، مقیاسدهی، آینهکردن، جابجایی (ساده یا پس از Jung/Shin/Choi) یا تبدیل شکل، در هر صفحه از فضای سهبعدی.
عملیات بولی: مانند اتحاد، تفریق، تقاطع.
ایجاد گرافیکی هندسه ساده صفحهای: مانند خطوط، سیمها، مستطیلها، قوسها یا دایرهها در هر صفحه از فضای سهبعدی.
مدلسازی با اکستروژن مستقیم یا چرخشی، بخشها و لبهها.
اجزای توپولوژیک: مانند رئوس، لبهها، سیمها و صفحات (از طریق اسکریپتنویسی Python).
ابزارهای تست و تعمیر مشها: مانند تست جامد، تست غیر دو-مانیفولد، تست خود-تقاطع، پر کردن حفرهها و جهتدهی یکنواخت.
حاشیهنویسیها: مانند متون یا ابعاد.
چارچوب Undo/Redo: همه چیز قابل بازگشت یا تکرار است، با دسترسی به پشته undo، بنابراین میتوان چندین مرحله را به طور همزمان بازگرداند.
مدیریت تراکنشها: پشته undo/redo تراکنشهای سند را ذخیره میکند نه اقدامات منفرد، که به هر ابزار اجازه میدهد دقیقاً تعریف کند چه چیزی باید بازگردانده یا تکرار شود.
چارچوب اسکریپتنویسی داخلی: FreeCAD دارای یک مفسر Python داخلی و یک API است که تقریباً هر بخش از نرمافزار، رابط کاربری، هندسه و نمایش هندسه در نمایشگر سهبعدی را پوشش میدهد. مفسر میتواند از دستورات ساده تا اسکریپتهای پیچیده را اجرا کند، حتی میتوان کل ماژولها را به طور کامل در Python برنامهنویسی کرد.
کنسول Python داخلی با برجستهسازی نحو، تکمیل خودکار و مرورگر کلاس: دستورات Python میتوانند مستقیماً در FreeCAD اجرا شوند و بلافاصله نتایج بازگردانده شوند، که به نویسندگان اسکریپت اجازه میدهد عملکرد را به صورت زنده آزمایش کنند، محتویات ماژولها را کاوش کنند و به راحتی درباره بخشهای داخلی FreeCAD یاد بگیرند.
بازتاب تعامل کاربر در کنسول: همه چیزهایی که کاربر در رابط FreeCAD انجام میدهد کدهای Python را اجرا میکند، که میتوانند در کنسول چاپ شوند و به صورت ماکرو ذخیره شوند.
ضبط و ویرایش کامل ماکروها: دستورات Python که هنگام تعامل کاربر با رابط صادر میشوند، میتوانند ضبط، در صورت نیاز ویرایش و ذخیره شوند تا بعداً دوباره اجرا شوند.
فرمت ذخیره سند مرکب (مبتنی بر ZIP): اسناد FreeCAD با پسوند .fcstd ذخیره میشوند و میتوانند انواع مختلفی از اطلاعات مانند هندسه، اسکریپتها یا آیکونهای کوچک را در خود داشته باشند.
رابط کاربری گرافیکی کاملاً قابل تنظیم/اسکریپتنویسی: رابط مبتنی بر Qt FreeCAD به طور کامل از طریق مفسر Python قابل دسترسی است. علاوه بر عملکردهای سادهای که FreeCAD برای Workbenchها فراهم میکند، کل چارچوب Qt نیز قابل دسترسی است، که امکان هرگونه عملیات روی رابط کاربری، مانند ایجاد، اضافهکردن، جابهجا کردن، تغییر یا حذف ابزارها و نوارها را فراهم میکند.
Thumbnailer (فقط برای سیستمهای لینوکس در حال حاضر): آیکونهای سند FreeCAD محتویات فایل را در اکثر برنامههای مدیریت فایل مانند nautilus گنوم نمایش میدهند.
نصبکننده MSI ماژولار: نصب انعطافپذیر در سیستمهای ویندوز را امکانپذیر میکند. همچنین بستههایی برای سیستمهای Ubuntu نگهداری میشوند.
دانلود نرم افزار FreeCAD