FDO :CAD&GIS Integration

____เคยมีน้องคนหนึ่งถามผมว่าทำงาน GIS แนวไหนแล้วรวยคำตอบจากประสบการณ์ ถ้าเป็นระดับผู้ปฏิบัติงาน ผมว่าต้องเป็นกลุ่มงานด้านน้ำมัน และธุรกิจค้าปลีก ยังที่ทราบกันครับ GIS มันเป็นเครื่องมือที่ถูกนำมาใช้ในการบริหารจัดการและการแก้ปัญหา ตลอดจนสนับสนุนการตัดสินใจ ดังนั้นกลุ่มคนที่นำ GISและเทคโนโลยีที่เกี่ยวข้องเช่น GPS, RS, Photogrametry ไปใช้จึงมีมาก หลากหลายด้าน ถ้าเป็นอดีตอาจจะมีแต่กลุ่มเล็กๆแต่ปัจจุบันการใช้งานเริ่มขยายตัวมากขึ้นไปทุกๆด้านสังเกตุได้จากงานประชุมวิชาการต่างๆหรือแม้แต่กระทั่ง email ที่เขียนเข้ามาถามผม มีหลายท่านก็เพิ่งจะเริ่มใช้งาน GIS ในยุคไม่กี่ปี(After Google) หรือเริ่มมารู้จัก GIS เมื่อมี Google Earth กำเนิด บ้านเราค่อนข้างเสียเปรียบต่างประเทศตรงที่ว่าข้อมูลฟรีมีให้ใช้ไม่มาก ประกอบกับเมื่อคิดจะเริ่มนำ GIS ไปใช้งานในองค์กรก็ไม่รู้จะเริ่มยังไง กว่าจะหาข้อมูลได้ก็ทำให้ท้อเลิกไปก็มี แต่ถ้าองค์กรไหนมีงบประมาณก็ง่ายสามารถจ้างบริษัทที่ปรึกษาและดำเนินการหาซื้อข้อมูลมาใช้ได้ทันที

_____จริงๆมีอีกหลายบริษัทและหน่วยงานที่เริ่มมีการใช้ข้อมูลเชิงพื้นที่มาก่อน ในรูปแบบของ CAD ซึ่งแน่นอนว่าก็จะมีความต้องการที่จะนำข้อมูลจาก CAD เข้ามาใช้งานหรือนำมาเก็บเป็นข้อมูลแผนที่ฐานในระบบ GIS บริษัทกลุ่มที่ใช้ข้อมูล CAD ก็มีมากเช่นกลุ่มบริษัทสิ่งแวดล้อม ระบบน้ำเสีย, บริษัททางวิศวกรรม เช่นรับเหมาก่อสร้าง, บริษัทน้ำมันและพลังงาน เป็นต้นวันนี้ผมนำเทคโนโลยีหนึ่งมานำเสนอเพื่อว่าน้องๆที่จะเข้าไปทำงานในกลุ่มบริษัทเหล่านี้จะได้มี solution ติดตัวไป

_____เนื่องจาก CAD เป็นระบบที่เน้นไปที่การนำคอมพิวเตอร์มาช่วยในการออกแบบ วางแผนก่อสร้าง ดังนั้นความสามารถของระบบ CAD คือเรื่องการสร้างเวกเตอร์กราฟิคที่ดีและซับซ้อน และรวดเร็ว CAD มีโมเดลรูปแบบการจัดเก็บ ผมเองเคยใช้ CAD ในการ digitize พวกแปลงที่ดินและแนวท่อมาก่อนต้องยอมรับว่าการทำบน CAD นั้นเร็วและมี tools ที่เยอะ แต่ CAD ก็มีข้อแตกต่างกับข้อมูลภูมิสารสนเทศในระบบ GIS เช่น บางชุดข้อมูลมีแต่ graphic ไม่มีการกำหนด ระบบพิกัดอ้างอิงมา เช่นพวกแผนผังรวมของหมู่บ้าน หรือชุดอาคาร หรือบางข้อมูลมีแต่ label ที่เป็น graphic ซึ่งไม่เป็น attribute data

_____มาถึงยุคปัจจุบัน CAD มีความใกล้ชิดกับ GIS มาขึ้นดังเห็นได้จาก โปรแกรม CAD รุ่นใหม่ๆเช่น AutoCAD Map 3D หรือ Topobase แต่รูปแบบการจัดเก็บข้อมูล data model ก็แตกต่างกัน เช่น line ในระบบ GIS จะมองข้อมูลเป็นสองรูปแบบ Linestring กับ Muti-Linestring แต่ในระบบ CAD เส้นหรือ Linestring จะแยกออกเป็นรูปแบบกราฟิคเฉพาะเช่น Curve เป็นต้น การนำข้อมูล CAD เข้ามาใช้ในระบบ GIS มี 2 แนวทางคือแบบแรกการแปลงข้อมูล และแบบที่สองคือผ่านทาง middleware เช่น FDO

_____วิธีแรกผมคงไม่พูดถึงมากเพราะเราใช้กันมานาน เช่นการแปลงให้ DWG เป็น DXF แล้วแปลง DXF เป็น shp หรือ mif ในทางกลับกัน Autocad Map ก็มีความสามารถที่จะแปลงข้อมูลจาก GIS เข้ามาเป็น DWG เช่นกัน แน่นอนว่าการแปลงข้อมูลก็มีข้อเสียคือมีการ lost ของข้อมูลบางส่วน

_____ วิธีที่สองเป็นวิธีที่เพิ่งเริ่มจะพัฒนากันมาประมาณ 3 ปี แนวคิดของ interoperability ผ่าน middle ware จริงๆแล้วแนวคิดนี้พัฒนามาหลัง MapGuide Opensource เกิดเพื่อรองรับการนำเทคโนโลยี Map Server ของค่า Autodesk ไปใช้งานที่ผมพูดถึงก็คือ Feature Data Object (FDO)  FDO คือสะพานที่เชื่อมการทำงานระหว่างระบบ CAD กับระบบ GIS ในรูปแบบการจัดเก็บข้อมูลต่างๆมากมาย ทั้ง File base และ Spatial Database ความน่าสนใจคือ FDO พยายามสร้าง API ที่มีฟีเจอร์รองรับการเชื่อมต่อและการจัดการข้อมูลเวกเตอร์ในรูปแบบฟอร์แมทต่างๆ FDO ทำงานคล้ายๆพวก spatialData driver เช่น OGR หรือ Safe โดย FDO เป็น Opensource ที่อยู่ภายใต้ของ OSGEO กลุ่มผู้ที่พัฒนาแรกๆก็จะเป็น ทีมของ Autocad ปัจจุบันรองรับการทำงานกับหลายโหมด เช่น GDAL, Shapfile, SQLite, Postgis , Orcale, WFS, GML,ESRI ArcSDE, MySQL และอื่นๆ แวะเข้าไปอ่านรายละเอียดของ FDO ที่ http://fdo.osgeo.org/

2

_____การนำ FDO ไปใช้ทำได้หลายแบบจะใช้ในการเขียนโปรแกรมบน C++ หรือ .Net ผ่าน FDO API ก็ได้ หรือจะใช้ fdo.dll กับโปรแกรมก็ได้  ผมมีตัวอย่างการนำ FDO ไปใช้เพื่อเชื่อมต่อ Postgis(Spatial Database) กับ AutoCad Map โดยมีขั้นตอนง่ายๆดังนี้ครับ

1. ตรวจสอบว่าโปรแกรมรองรับ fdo โดยมีไฟล์ fdo.dll จากนั้นก็ดาวน์โหลด connector .dll ที่

http://download.osgeo.org/fdo/3.4.1/binaries/

2. copy file PostGISProvider.dll ไปไว้ใน FDO directory เช่น

C:\Program Files\AutoCAD Map 3D 2008\FDO\bin\

3. สร้าง connnector โดยเปิดไฟล์ providers.xml ทำการ config ให้เป็น  Postgis Provider

<FeatureProvider>
<Name>OSGeo.PostGIS.3.4</Name>
<DisplayName>OSGeo FDO Provider for PostGIS</DisplayName>
<Description>FDO Provider for PostGIS</Description>
<IsManaged>False</IsManaged>
<Version>3.4.0.0</Version>
<FeatureDataObjectsVersion>3.4.0.0</FeatureDataObjectsVersion>
<LibraryPath>.\PostGISProvider.dll</LibraryPath>
</FeatureProvider>

<FeatureProvider>

<Name>OSGeo.PostGIS.3.4</Name>

<DisplayName> OSGeo FDO Provider for PostGIS</DisplayName>

<Description>FDO Provider for PostGIS</Description>

<IsManaged>False</IsManaged>

<Version>3.4.0.0</Version>

<FeatureDataObjectsVersion>3.4.0.0</FeatureDataObjectsVersion>

<LibraryPath>.\PostGISProvider.dll</LibraryPath>

</FeatureProvider>

หรือในกรณีที่ต้องการใช้ OGR เพื่อเชื่อมต่อกับ dgn,shp ก็ ดาวน์โหลดตัว OGRProvider-3.4.0.win32 แล้ว config ตัว provider ดังนี้ครับ

<FeatureProvider>

<Name>OSGeo.OGR.3.2</Name>

<DisplayName>OSGeo FDO Provider for OGR</DisplayName>

<Description>Access to OGR data sources</Description>

<IsManaged>False</IsManaged>

<Version>3.2.1.0</Version>

<FeatureDataObjectsVersion>3.2.1.0</FeatureDataObjectsVersion>

<LibraryPath>OGRProvider.dll</LibraryPath>

</FeatureProvider>

4. ลองเชื่อมต่อดูครับกรอกพารามิเตอร์การเชื่อมต่อและทำการเลือกชั้นข้อมูลที่ต้องการเท่านี้ก็เรียบร้อยครับ

1

ตัวอย่างข้อมูล GIS ผ่าน FDO บนโปรแกรม CAD

อ้างอิงจาก

– http://vimeo.com/6369107

– http://trac.osgeo.org/fdo/wiki/FdoPostGISNotes

– http://fdo.osgeo.org/

– https://emap.wordpress.com/2009/05/28/autocad-map-3d-2009-mapguide-postgis/

– http://en.wikipedia.org/wiki/AutoCAD

Advertisements

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

สร้างเว็บไซต์หรือบล็อกฟรีที่ WordPress.com.

Up ↑

%d bloggers like this: