วันจันทร์ที่ 2 มกราคม พ.ศ. 2555

สวัสดี Revit หรือ HelloRevit

อ.ธนะพันธ์ อินทรเกสร


โปรแกรม Revit กำลังเป็นที่นิยม ในสถาปนิก วิศวกร รุ่นใหม่ สังเกตุจาก นักศึกษาในหลายมหาวิทยาลัย จะมาสมัครเรียน Revit ก่อนที่จะไปสมัครหางานทำ โปรแกรม Revit เป็นโปรแกรม ออกแบบ สถาปัตย์กรรม แบบ  BIM ซึ่งแปลว่า Building Information Modeling
ถ้าต้องการทำความเข้าใจ ลองอ่าน จาก

ถ้าไม่เข้าใจก็ให้ ใช้ Translate.google.com แปลเป็นภาษาไทย ก่อน อันนี้เป็นปัญหาของนักศึกษาในปัจจุบัน เพราะไม่ได้ใช้ TextBook ที่เป็นภาษาอังกฤษ เลยไม่คุ้นในการอ่านภาษาอังกฤษ

ในการเขียนแบบ Revit มีความสะดวกในการทำงานที่ การสร้าง Model แล้ว สามารถสร้างแบบ 2D รูปแปลนรูปด้าน รูปตัด รูป Detail และ จำนวนนับวัสดุ ให้เสร็จใน Project เดียว โดยจะมี ชิ้นส่วนในการออกแบบ สำเร็จรูป ที่เรียกว่า Family มาให้มาก ทั้งใน Library ที่ทำการติดตั้งโปรแกรม หรือไม่พอ สามารถเข้าไป นำชิ้นส่วนมาจาก Revitcity.com หรือ seek.autodesk.com ทำให้การทำงาน ง่ายขึ้นมาก
ถ้าไม่มี Family มาให้ บอกได้เลยครับ ว่าการสร้าง Family ใหม่ ต้องอ่านเป็นหนังสือหนาประมาณ 1 ซม (ยังดีไม่ถึงนิ้ว ภาษาอังกฤษด้วย)

เรื่องการ  Custom Family ของ Revit เอาใว้เรียบเรียงก่อนจะสรุปมาให้ อ่านกัน

มาเข้าเรื่องกัน ผมมีโจทย์ต้องเขียนโปรแกรม Interface Revit กับ Database Microsoft SQL Server เพื่อเก็บวัสดุที่อยู่ใน Revit เข้าฐาน ข้อมูล ปัญหาคือ เราจะเขียนโปรแกรมบน Revit ด้วย อะไร
ไปดูที่ Autdesk.com เจ้าของ Revit

จะพบว่ามี ให้ Download Revit SDK ตั้งแต่ Version 2010-2012
Revit ไม่ว่าจะเป็น Architect,Structure หรือ MEP จะใช้ Engine ตัวเดียวกันหมด ดังนั้นเมื่อเขียน โปรแกรมจะ Run ได้หมดทุกตัว

เลือก Revit ให้เลือก Version ล่าสุด คือ 2012 เนื่องจาก Revit มีการเปลี่ยนโครงสร้างภายใน ระหว่าง Version  2010 มาเป็น 2011 ระบบจัดการใน System Family ได้แก่ พื้น กำแพง หลังคามีการปรับปรุ่งให้ง่ายในการเข้าถึง ใน Version 2012 ขณะที่ ใน V.2011 จะมีคำสั่งผสมระหว่างคำสั่งที่จะใช้ได้ใน V.2010 และ 2012 ว่าไปแล้ว 2012 ก็คือ  2011 ที่ Fix แล้ว แต่การเขียนโปรแกรมบน 2012 จะยากกว่า 2010 เนื่องจากจะมีการแยก ระบบ User Interface ออกจาก Document แต่จะดีที่จะทำให้โปรแกรมเสถียรกว่าเดิม

website ที่ให้ข้อมูลในการเขียนโปรแกรมของ Revit ต้องขอบคุณคนนี้
    JEREMY TAMMIK
และ Web ของเขา

มาเริ่มกันดีกว่า
เริ่มจากลงโปรแกรมจาก SDK จะสร้าง โฟล์เดอร์ RevitSDK2012


ให้ทำการติดตั้ง Addin Manager จะสร้าง Toolbar ใน Revit ชื่อ Add-ins

เครื่องมือในการเขียนโปรแกรม ใช้ Visual Studio 2010(VS) จะเป็น  Standard  หรือ professional ก็ได้ ให้เลือก C# เป็นภาษาหลัก ถ้าใช้ Visual Studio version ต่ำกว่าจะ compile โปรแกรมได้แต่ Debug โปรแกรมไม่ได้

ทดสอบ Application ตัวแรก
เข้าไปใน Samples และเลือก
HelloRevit และเลือก เข้าไปใน Folder  CS
เลือกที่  File

hellorevit.csproj

จะเปิด Project ของ VisualStudio อัตโนมัติ ถ้าพยายาม Build จะพบปัญหาแรก คือ Reference 2 ตัว ได้แก่ RevitAPI และ RevitAPIUI จะเกิด Error ไม่ต้องตกใจ ให้ลบทั้ง 2 ตัวนี้ใน Reference Browser โดยการกด Mouse ขวา Delete แล้ว Add Reference ใหม่ ไปเลือกที่ ติดตั้งโปรแกรม Revit ใว้
ถ้าโปรแกรม VS ถามว่าต้องการ Save Solution ให้กดตกลง
แล้ว compile ใหม่

เมื่อ Compile เสร็จแล้วโปรแกรมจะไปอยู่ที่

\Revit 2012 SDK\Samples\HelloRevit\CS\bin\Debug\HelloRevit.dll

ไปเปิด Revit  และกดที่ Add-ins
และเลือกที่ External Tools
กดที่ Addin Manager (Manual Mode)

และเลือกที่ load
ไปที่
\Revit 2012 SDK\Samples\HelloRevit\CS\bin\Debug\HelloRevit.dll
จะแสดงที่ หน้าให้ใส่ ในช่อง Command ว่าชื่อ Hello Revit


ถ้ากด Save จะมี Menu External Command จะมี คำสั่ง  Hello Revit ปรากฏในครั้งต่อไป ที่เข้า Revit ถ้าต้องการ ทำงานให้กด Run
การเชื่อม โปรแกรม Revit กับ C# สำเร็จแล้วสำหรับการเชื่อม กับ SQL server ก็ไม่ยากเกินไป มีตัวอย่างจำนวนมากที่เขียนด้วย C# ใน Internet อยู่แล้ว


ไม่มีความคิดเห็น:

แสดงความคิดเห็น