การสร้างไดนามิกบล็อคแบบปรับขนาดได้ใน AutoCAD 2006

ไดนามิกบล็อค(Dynamic Block)แบบหลายๆ เวอร์ชั่นใน AutoCAD 2006 นั้นมีประโยชน์ เป็นอย่างมาก เนื่องจาก เราสามารถสร้าง บล็อคเพียง ชิ้นเดียว แต่มีหลายขนาด หรือ หลายรูปแบบหรือ หลายสถานะ ให้เลือกใช้งาน โดยเราไม่ต้อง สร้างบล็อค ขึ้นมาจำนวนมาก เพราะจะทำให้ เกิดความยุ่งยาก และเสียเวลา ในการค้นหาและ สิ้นเปลือง เนื้อที่ในการจัดเก็บ หากนำไดนามิก บล็อคเข้ามาใช้งาน จะช่วยให้เรา สามารถค้นหา สอดแทรก ปรับตำแหน่ง ขนาดและทิศทางของ ไดนามิกบล็อค ให้เหมาะสม กับชิ้นงานอื่นๆ ให้อย่างรวดเร็ว โดยไม่ต้อง เกรงว่าบล็อค ที่จะนำมาสอดแทรกนั้น จะมีขนาด ไม่ฟิตพอดี กับชิ้นงานอื่นๆ ในแบบแปลน เพราะเรา สามารถสร้าง ไดนามิกบล็อค ที่สามารถปรับขนาด หรือเปลี่ยนรูปร่าง หรืออาจจะมี หลายๆ รูปแบบใน บล็อคเดียวก็ได้ การสร้างไดนามิกบล็อค แบบหลายเวอร์ชั่นนั้น นิยมใช้ Visibility Parameter หรือ Lookup Parameter เป็นตัวควบคุม การปรับเปลี่ยนรูปแบบ อย่างไรก็ตาม ในการสร้างบล็อคแบบ หลายเวอร์ชั่น ก็จะมีพารามิเตอร์และ แอกชั่นอื่นๆ เป็นส่วนที่กำหนด ขนาดและการใช้คำสั่งกระทำกับบล็อคเช่นเดียวกัน ดังนั้น เราจะศึกษาการ ใช้พารามิเตอร์และ แอกชั่นแบบง่ายๆ เสียก่อน จึงจะศึกษาการใช้ Visibility Parameter หรือ Lookup Parameter ในโอกาสต่อไป โดยในที่นี้ เราจะมาลองสร้าง บล็อคหน้าต่าง ที่สามารถ ปรับขนาดความกว้าง ได้หลายขนาดพร้อม ทั้งสามารถ พลิกกลับด้าน ได้โดยที่หน้าต่าง จะอยู่ในตำแหน่งเดิมไม่มีการ เคลื่อนที่ไม่ว่าจะขนาดความกว้างจะเปลี่ยน เป็นเท่าใดก็ตาม โดยมีขั้นตอนดังต่อไปนี้

   
  1. ดาวน์โหลดไฟล์ dynamicblock.zip แล้ว Unzip และเปิดไฟล์ dynamicblock.dwg ซึ่งมีุบล็อค ธรรมดา รูปบาน หน้าต่างชื่อ Window ออกมาใช้งานใน AutoCAD 2006 (บล็อคนี้สร้างจากคำสั่ง Draw/Block/Make เหมือนกับ การสร้างบล็อค ธรรมดาโดยทั่วไป)จะปรากฏดังรูปที่ 1
  2. ใช้คำสั่ง Tools/Block Editor เมื่อปรากฏไดอะล็อค Edit Block Definition คลิกบล็อค Window ดังรูปที่ 2 คลิกบนปุ่ม OK จะปรากฏดังรูปที่ 3

หมายเหตุ การสร้างบล็อคเพื่อให้ ปรับความกว้างได้ เราจะใช้ Linear Parameter คู่กับ Stretch Action เพื่อบังคับให้บล็อคยืดออกในแนวนอน พารามิเตอร์ Linear Parameter ใช้เป็นตัวกำหนดระยะในการยืดหรือหด ส่วนแอคชั่น Stretch Action เป็นคำสั่งในการยืดบล็อคตามที่กำหนดใน Linear Parameter เราสามารถเลือกที่จะใช้ปุ่มไอคอน Linear Parameter บนแถบ Parameters และปุ่มไอคอน Stretch Action บนแถบ Actions บนหน้าต่าง Block Authoring Palettes หรือจะเลือกใช้ปุ่มไอคอน Linear Stretch บนแถบ Parameter Sets เนื่องจากปุ่มไอคอน Linear Stretch นั้นมีการรวบรวม Linear Parameter และ Stretch Action ไว้ให้เราเรียบร้อยแล้ว

                         
                     
 
  1. จากรูปที่ 3 คลิกแถบ Parameter Sets คลิกปุ่มไอคอน Linear Stretch เมื่อปรากฏข้อความ Specify start point... คลิกจุดที่ 1 เมื่อปรากฏข้อความ Specify endpoint: คลิกจุดที่ 2 เมื่อปรากฏข้อความ Specify label location: คลิกจุดที่ 3 จะปรากฏดังรูปที่ 4
         
 
 
  1. จากรูปที่ 4 ดับเบิ้ลคลิกบนไอคอน Stretch จะปรากฏข้อความ Specify first corner of stretch frame ให้กำหนดขอบเขตของส่วนที่จะยืดโดยคลิกจุดที่ 1 เมื่อปรากฏข้อความ Specify opposite corner: คลิกจุดที่ 2เมื่อปรากฏข้อความ Specify objects to stretch ให้เลือกวัตถุที่ต้องการยืดแบบ Crossing โดยคลิกจุดที่1 เมื่อปรากฏข้อความ Specify opposite corner: คลิกจุดที่ 2 เมื่อปรากฏข้อความ Select objects: ให้คลิกขวา
  2. ทดสอบบล็อคในเบื้องต้นว่าสามารถยืดหรือหดได้หรือไม่ โดยคลิกบนปุ่ม Close Block Editor แล้วคลิกบนบล็อคให้ปรากฏจุดกริ๊ปส์ดังรูปที่ 5 (ซ้าย) คลิกบนจุดกริ๊ปส์ตรงจุดที่ 1 แล้วคลิกประมาณจุดที่ 2 บล็อคจะถูกยืดออกได้ ดังรูปที่ 5 (ขวา) แต่สังเกตุว่าขอบบานหน้าต่างที่อยู่ตรงกลาง ไม่อยู่ตรงกลางแล้ว เราสามารถแก้ไขได้ดังนี้
       
                                   
 
  1. ย้อนกลับไปทำซ้ำข้อ 2 จะปรากฏดังรูปที่ 6
         
                                 
   
  1. จากรูปที่ 6 คลิกบนแถบ Actions แล้วคลิกปุ่มไอคอน Stretch Action เมื่อปรากฏข้อความ Select parameter: คลิกพารามิเตอร์จุดที่ 1 เมื่อปรากฏข้อความ Specify parameter point to associate with ให้กดปุ่ม Enter เมื่อปรากฏข้อความ Specify first corner of stretch frame ปิด OSNAP แล้วคลิกจุดที่ 2 เมื่อปรากฏข้อความ Specify opposite corner: คลิกจุดที่ 3 เมื่อปรากฏข้อความ Specify objects to stretch ให้เลือกวัตถุที่ต้องการยืดแบบ Crossing โดยคลิกจุดที่ 2เมื่อปรากฏข้อความ Specify opposite corner: คลิกจุดที่ 3 เมื่อปรากฏข้อความ Select objects: ให้คลิกขวา เมื่อปรากฏข้อความ Specify action location คลิกตรงจุดที่ 4 เพื่อกำหนดตำแหน่งไอคอน Stretch จะปรากฏดังรูปที่ 7 (ซ้าย)
     
         
     
  1. จากรูปที่ 7 (ซ้าย) ใช้คำสั่ง Modify/Properties คลิกไอคอน Stretch ตรงจุดที่ 1 แก้ไขค่า Distance Multiplierเป็น 0.5 ดังรูปที่ 7 (ขวา)
  2. ทดสอบบล็อคต่อไปว่าขอบหน้าต่างอยู่ตรงกลางทุกๆ จุดที่เรายืดหรือหดบานหน้าต่างหรือไม่ โดยคลิกบนปุ่ม Close Block Editor แล้วคลิกบนบล็อคให้ปรากฏจุดกริ๊ปส์ดังรูปที่ 8 (ซ้าย) คลิกบนจุดกริ๊ปส์ แล้วคลิกตำแหน่งใหม่ ขอบหน้าต่างจะปรากฏอยู่ตรงกลาง ไม่ว่าเราจะยืดหรือหดบล็อคไปเท่าใดก็ตาม ดังรูปที่ 8 (กลาง) และ (ขวา)
           
                       
     

หมายเหตุ จากตัวอย่างที่ผ่านมานี้ เมื่อเราปรับความกว้าง ของบานหน้าต่าง เราจะได้ขนาดที่เป็น ตัวเลขที่ไม่ลงตัว หากต้องการกำหนดขนาด ความกว้างของบาน หน้าต่าง ให้สามารถ ปรับขนาด ได้เฉพาะที่ต้องการ อาทิ เช่น 0.5, 1.00, 1.50, 2.00, 2.20, 2.50, 3.00 เราสามารถทำได้ดังนี้

  1. ย้อนกลับไปทำซ้ำข้อ 2 เพื่อเข้าสู่ Block Editor แล้วคลิกบนพารามิเตอร์ Distance แล้วใช้คำสั่ง Modify/Properties เลือก List ในแถบรายการ Dist type ในหมวด Value Set คลิกบนอิดิทบอกซ์ Dist Value List แล้วคลิกบนปุ่มจุด 3 จุด (ตรงจุดที่ 1 ของรูปที่ 9) จะปรากฏไดอะล็อค Add Distance Value แล้วเพิ่ม 0.5, 1.5, 2, 2.2, 2.5, 3 เข้าไปในไดอะล็อคดังรูปที่ 9 แล้วคลิกบนปุ่ม OK
           
                         
  1. ทดสอบบล็อคต่อไปว่าขนาดความกว้าง ของบานหน้าต่างถูกล็อค ไว้ที่ระยะ 0.5, 1, 1.5, 2, 2.2, 2.5, 3 หรือไม่ โดยคลิกบนปุ่ม Close Block Editor แ ล้วคลิกบนบล็อคให้ปรากฏ จุดกริ๊ปส์ดังรูปที่ 10 (ซ้าย) คลิกบนจุดกริ๊ปส์ แล้วคลิกตำแหน่งใหม่ เราจะเห็นว่าเมื่อคลิก บนจุดกริ๊ปส์ แล้วเลื่อนเมาส์ จะปรากฏเส้นขีด แนวดิ่งเล็กๆ ตรงจุดต่างๆ ของระยะ 0.5, 1, 1.5, 2, 2.2, 2.5, 3 ซึ่งจะเป็นตัวบังคับ ให้เคอร์เซอร์สแน๊ป ตามระยะต่างๆ ที่กำหนด
   
             
  1. เริ่มสร้างการพลิกกลับบานหน้าต่างในแนวนอน โดยที่การพลิกกลับของบานหน้าต่าง จะต้องไม่ทำให้หน้าต่าง เคลื่อนที่ไป จากจุดสอดแทรก ถึงแม้ว่า จะมีการปรับเปลี่ยน ความกว้างของบานหน้าต่าง เป็นเท่าใดก็ตาม หรือพูดง่ายๆ ว่าหากเราสอดแทรก หน้าต่างไปยังตำแหน่ง ที่เหมาะสม ในแบบแปลนแล้ว เราสามารถพลิกมือจับไปทาง ด้านซ้ายหรือด้านขวา โดยที่บานหน้าต่างจะต้อง อยู่ในตำแหน่งเดิม ของทุกๆ ขนาดความกว้าง โดยก่อนอื่น ย้อนกลับไปทำซ้ำข้อ 2 เพื่อกลับสู่ Block Editor จะปรากฏดังรูปที่ 11
  2. จากรูปที่ 11 คลิกแถบคำสั่ง Parameter คลิกไอคอน Flip Parameter เมื่อปรากฏข้อความ Specify base point of reflection line คลิกตรงจุดที่ 1 เมื่อปรากฏข้อความ Specify endpoint of reflection line: คลิกจุดที่ 2 เมื่อปรากฏข้อความ Specify label location: คลิกตรงจุดที่ 3 เพื่อกำหนดตำแหน่งของพารามิเตอร์ Flip จะปรากฏดังรูปที่ 12
 
                       
  1. จากรูปที่ 12 คลิกแถบ Actions แล้วคลิกปุ่มไอคอน Flip Action เมื่อปรากฏข้อความ Select parameter: คลิกพารามิเตอร์ Flip State ตรงจุดที่ 1 เมื่อปรากฏข้อความ Select objects: คลิกจุดที่ 2 และ จุดที่ 3 เพื่อเลือกวัตถุทั้งหมดแบบ Crossing เมื่อปรากฏข้อความ Specify action location: คลิกตรงจุดที่ 4 จะปรากฏดังรูปที่ 13
  2. จากรูปที่ 13 คลิกปุ่มไอคอน Stretch Action ในแถบคำสั่ง Actions เมื่อปรากฏข้อความ Select parameter: คลิกบนพารามิเตอร์ Flip state
    ตรงจุดที่ 1 เมื่อปรากฏข้อความ Specify parameter point to associate with action เลื่อนเคอร์เซอร์ไปตรงจุดที่ 2 แล้วกดปุ่ม Enter เมื่อปรากฏข้อความ
    Specify first corner of stretch frame คลิกตรงจุดที่ 3 เมื่อปรากฏข้อความ Specify opposite corner: คลิกตรงจุดที่ 4 เมื่อปรากฏข้อความ
    Specify objects to stretch คลิกบนพารามิเตอร์และแอกชั่นตรงจุดที่ 1, 5, 6, 7, 8, 9 แล้วคลิกขวา เมื่อปรากฏข้อความ Specify action location คลิกจุดที่ 10 เพื่อกำหนดตำแหน่งไอคอน Stretch Action จะปรากฏดังรูปที่ 14
           
  1. จากรูปที่ 14 ใช้คำสั่ง Modify/Properties คลิกไอคอน Stretch2 ตรงจุดที่ 1 แก้ไขค่า Distance Multiplierเป็น 0.5 ดังรูปที่ 15
  2. ทดสอบบล็อคว่าบล็อคหน้าต่างพลิกกลับในตำแหน่งเดิมหรือไม่ โดยคลิกบนปุ่ม Close Block Editor แล้วคลิกบนบล็อคให้ปรากฏจุดกริ๊ปส์ดังรูปที่ 16 (ซ้าย) คลิกบนจุดกริ๊ปส์ ของ Flip หน้าต่าง จะพลิกจากซ้ายไปขวาหรือขวาไปซ้าย โดยที่ไม่ทำให้บานหน้าต่างเคลื่อนที่ออกไปจากตำแหน่งจุดสอดแทรก ไม่ว่าเราจะปรับขนาดความกว้างบล็อค บานหน้าต่างเป็นขนาดใดก็ตาม ดังรูปที่ 16 (กลาง) และ (ขวา) (ดูตัวอย่างบล็อค Window ที่กำหนดพารามิเตอร์และแอคชั่นทั้งหมดไว้เรียบร้อยแล้วในไฟล์ Dynamicblockfinish.dwg)
   
   

หมายเหตุ สังเกตุว่าจุดสอดแทรก(Base point)ในไดนามิกบล็อคตัวอย่างในไฟล์ dynamicblockfinish.dwg มีการพลิกกลับตามการ พลิกกลับของ บานหน้าต่างด้วย เราสามารถเพิ่ม การพลิกกลับ ของจุดสอดแทรกของบล็อค Window นี้ได้ โดยในขณะอยู่ใน Block Editor คลิกบนปุ่ม Base point parameter ในแถบคำสั่ง Parameters แล้วคลิกที่มุมซ้ายล่าง ของบานหน้าต่าง เพื่อกำหนด จุดสอดแทรก ของบล็อคใหม่ แล้วดับเบิ้ลคลิก บนไอคอนแอคชั่น Flip จะปรากฏข้อความ Select object to add to action set คลิกบนจุด Base point parameter ที่มุมซ้ายล่างของ บานหน้าต่าง แล้วคลิกขวา ออกจาก Block Editor เมื่อเราพลิกกลับบล็อค Window จุดสอดแทรก ของบล็อค ก็จะพลิกกลับ เหมือนกับบล็อค Window ในไฟล์ dynamicblockfinish.dwg ด้วย

*********************************************

 
   
1