การนําเสนอข อมูลแผนท ี่ด วยเทค...

13
1 การนําเสนอขอมูลแผนที่ดวยเทคโนโลยี SVG ชัยภัทร เนื่องคํามา การนําเสนอขอมูลแผนที่ดวยเทคโนโลยี SVG นาย ชัยภัทร เนื่องคํามา Email: [email protected] SVG (Scalable Vector Graphics) เปนภาษาหนึ่งที่ถูกนํามาใชมากในงานสารสนเทศภูมิศาสตร โดยเฉพาะปจจุบัน การนําเสนอขอมูลสารสนเทศภูมิศาสตรผานระบบอินเตอรกําลังเปนที่ไดรับความ นิยมอยางมากในหลายองคกร ประกอบกับความยืดหยุนของ SVG ที่สนับสนุนการทํางานรวมกับ เทคโนโลยี Web 2.0 จึงทําให SVG เปนอีกหนึ่งทางเลือกที่นาสนใจในการนําเสนอขอมูลแผนที่ผาน ระบบอินเตอรเน็ต 1. บทนํา SVG เปนภาษาที่พัฒนามาจากแนวคิดของภาษา Extensible Markup Language (XML) เพื่อใช ในการแสดงผลขอมูลขอมูลกราฟกประเภทเวกเตอรและรูปภาพบนอินเตอรเน็ต โดยมาตรฐานนี้ถูก สรางโดยองคกร World Wide Web Consortium (W3C) การทํางานของ SVG จําเปนที่จะตองอาศัย โปรแกรมที่อาน SVG และแปลออกมาเปนขอมูลกราฟก ซึ่งโปรแกรมนั้นก็คือ SVG Viewer โปรแกรม นี้พัฒนาโดย Adobe Systems Inc. ซึ่งเปนผูสรางโปรแกรม Adobe Photoshop การจัดเก็บขอมูล SVG แบงออกเปน 2 ฟอรแมทหลักคือ .svg ในรูปแบบปกติและ .svgz ใน รูปแบบการบีบอัดขอมูล ผูใชจําเปนจะตองมีโปรแกรมสําหรับคลายขอมูล (decompression) สําหรับ ทํางานดวย Uncompressed SVG With gzip compression Compression ratio 12,912 2,463 81% 12,164 2,553 79% 11,613 2,617 77% 18,689 4,077 78% 13,024 2,041 84% ตารางที1 แสดงผลการทดสอบเปรียบเทียบการบีบอัดขอมูล (http://www.w3.org/TR/SVG11/minimize.html)

Upload: others

Post on 03-May-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

1

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG นาย ชยภทร เนองคามา Email: [email protected]

SVG (Scalable Vector Graphics) เปนภาษาหนงทถกนามาใชมากในงานสารสนเทศภมศาสตร โดยเฉพาะปจจบน การนาเสนอขอมลสารสนเทศภมศาสตรผานระบบอนเตอรกาลงเปนทไดรบความนยมอยางมากในหลายองคกร ประกอบกบความยดหยนของ SVG ทสนบสนนการทางานรวมกบเทคโนโลย Web 2.0 จงทาให SVG เปนอกหนงทางเลอกทนาสนใจในการนาเสนอขอมลแผนทผานระบบอนเตอรเนต 1. บทนา SVG เปนภาษาทพฒนามาจากแนวคดของภาษา Extensible Markup Language (XML) เพอใชในการแสดงผลขอมลขอมลกราฟกประเภทเวกเตอรและรปภาพบนอนเตอรเนต โดยมาตรฐานนถกสรางโดยองคกร World Wide Web Consortium (W3C) การทางานของ SVG จาเปนทจะตองอาศยโปรแกรมทอาน SVG และแปลออกมาเปนขอมลกราฟก ซงโปรแกรมนนกคอ SVG Viewer โปรแกรมนพฒนาโดย Adobe Systems Inc. ซงเปนผสรางโปรแกรม Adobe Photoshop การจดเกบขอมล SVG แบงออกเปน 2 ฟอรแมทหลกคอ .svg ในรปแบบปกตและ .svgz ในรปแบบการบบอดขอมล ผใชจาเปนจะตองมโปรแกรมสาหรบคลายขอมล (decompression) สาหรบทางานดวย

Uncompressed SVG With gzip compression Compression ratio 12,912 2,463 81% 12,164 2,553 79% 11,613 2,617 77% 18,689 4,077 78% 13,024 2,041 84%

ตารางท 1 แสดงผลการทดสอบเปรยบเทยบการบบอดขอมล

(http://www.w3.org/TR/SVG11/minimize.html)

Page 2: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

2

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

SVG ตางจากภาพบตแมป ตรงท SVG จะทาการจดเกบคาพกดและรหสของฟเจอรแบบตอเนอง แตภาพบตแมปจะจดเกบคาความสวางของจดภาพในรปแบบตารางกรด ดงนนจงทาให SVG สามารถแสดงผลกราฟฟกไดแบบตอเนอง ชดเจนทกๆมาตรสวน กลาวคอไมมการแตกเมอขยายภาพไปในมาตรสวนทใหญขน ดงภาพดานลาง

รปท 1 แสดงภาพบตแมป PNG ทถกขยาย

รปท 2 แสดงเวกเตอรกราฟก(svg) ทสามารถแสดงรายละเอยดไดชดเจนแมถกขยาย

Page 3: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

3

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

เนองจาก SVG มโครงสรางแบบ XML ดงนนจงสามารถใชเทคนคตางๆทเกยวเนองกบ XML ได เชน XSLT, XSL, XPATH เปนตน สวนการเขาถงองคประกอบตางๆใน SVG สามารถเขาถงแบบ DOM (Document Object Model) ซงทาให SVG มคณสมบตการทางานทซบซอนมากขนกวาภาพทวไป กลาวคอสามารถรองรบการเชอมตอกบผใชแบบมปฏกรยาโตตอบ (Interactive) และการแสดงผลในลกษณะเคลอนไหว (Dynamic)

รปท 3 แสดงตวอยางเอกสาร SVG ตามมาตรฐานของ W3C

2. รปทรงพนฐาน (Basic Shape) SVG จะประกอบดวยรปทรงเรขาคณตพนฐาน 6 ประเภท ทเปนตนแบบของกราฟฟกตางๆ รปทรงเรขาคณตพนฐานประกอบดวย line, polyline, polygon, rect, circle and ellipse

<? xml version="1.0” standalone="no"?> <! DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20001102//EN" "http://www.w3.org/TR/2000/CR-SVG-20001102/DTD/svg-20001102.dtd"> <svg width=”300px" height=”200px"> <desc> <! -- put a description here --> </desc> <g> <! -- your graphic here --> </g> </svg>

PKGIS2007

Page 4: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

4

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

รปท 4 แสดงตวอยางรปทรงเรขาคณตพนฐานทงหก

Object Code Parameter

1. line <line x1="325" y1="150" x2="375" y2="50" /> x1,y1 คอพกดจดเรมตน x2,y2 คอพกดจดสนสด

2. Polyline <polyline points="50, 250 75, 350 100, 250 125, 350 150, 250 175, 350" />

ชดของจด(Points) ตางๆทประกอบกนอยางตอเนอง

3. Polygon <polygon points=" 250, 250 297, 284 279, 340 220, 340 202, 284" />

สเหลยมรปปดทเกดจากชดของจด(Points) ตางๆทประกอบกนอยางตอเนอง

4. Rect <rect x="150" y="50" rx="20" ry="20" width="135" height="100" />

สเหลยมพนผาซงประกอบดวยพารามเตอรพกดซายบน(x,y), คารศมของมมทงสดาน(rx,ry) , ขนาดความกวาง, ขนาดความยาว

5. Circle <circle cx="70" cy="100" r="50" /> cx, cy คอคาพกดของจดศนยกลางวงกลม r คอขนาดรศม

6. Ellipse <ellipse cx="400" cy="300" rx="72" ry="50" /> cx, cy คอคาพกดของจดศนยกลางวงร rx,ry คอขนาดรศมแกนxและy

PKGIS2007

Page 5: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

5

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

3. JavaScript JavaScript เปนภาษาสครปต ซงอยภายใตมาตรฐานของ W3C ททางานทางฝงของ Client โดย JavaScript จะมหนาเพอใชในการควบคมการทางานของแผนท การแสดงผลขอมลในลกษณะทตอบโตกบผใช เชน การ สรางเครองมอคนหาขอมล การแสดงพกดภมศาสตรเมอ mouse วางดานบนของแผนท เปนตน

รปท 5 แสดงตวอยาง code ภาษา JavaScript

PKGIS2007

Page 6: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

6

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

4. Basic SVG Map Application with SAGA SAGA (System for Automated Geoscientific Analyses) เปนโปรแกรมสารสนเทศภมศาสตร ภายใตลขสทธแบบ GNU General Public License (GPL) โดยมโมดลการทางานเหมอนโปรแกรมประเภท Desktop GIS ทวไป และมโมดลทใชในการวเคราะหขอมลเชงพนทดานตางๆเชน Geostatistic, Hydrology, Terrain Analysis เปนตน นอกจากนยงสามารถรองรบรปแบบขอมลทงเวกเตอรและราสเตอรไดหลากหลาย ผใชสามารถดาวโหลดไดจาก http://downloads.sourceforge.net/saga-gis/saga_2.0_rc3_bin_msw.zip?modtime=1162220563&big_mirror=0

รปท 6 แสดงตวอยางโปรแกรม SAGA

PKGIS2007

PKGIS2007

Page 7: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

7

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

รปท 7 แสดงรายการโมดลสาหรบวเคราะหขอมลเชงพนททงหมด

นอกจากนโปรแกรม SAGA ยงมฟงกชนการนาเสนอขอมลเชงพนทในรปแบบ Interactive SVG โดยผใชสามารถนาผลลพธทไดไปใชในการนาเสนอขอมลเชงพนทผานระบบอนเตอรเนต ซงผลลพธทไดจะประกอบดวยขอมลเชงพนทและโคดโปรแกรม JavaScript สาหรบการควบคมการแสดงผล บทความนจะมงเนนการนาเสนอวธการสรางและรายละเอยดการใชงาน โดยมขนตอนดงตอไปน 1. ทาการนาเขาขอมลเชงพนททตองการจะสราง SVG Application โดยไปท File>Shapes>Load shapes

รปท 8 แสดงขนตอนการนาเขาขอมลเชงพนทสโปรกรม SAGA

รปท 9 เลอกไฟลขอมลเวกเตอรทตองการนาเขา

PKGIS2007

PKGIS2007

Page 8: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

8

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

รปท 10 แสดงภาพผลลพธทไดจากการนาเขาขอมลเวกเตอร

2. ทาการปรบแตงสและสไตลการแสดงผล โดย Click ทชนขอมลแผนททตองการ แลวทาการปรบแตงคาในแถบเครองมอดานขวาดงรป

รปท 11 แสดงภาพผลลพธทไดจากการนาเขาขอมลเวกเตอร

กาหนดส

กาหนดขนาดของฟเจอร

PKGIS2007

PKGIS2007

Page 9: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

9

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

3. ทาการ Add ชนขอมลตางๆเขาไปบนเฟรมแผนท โดยใชเมาสคลกขวาทชนขอมลทตองการ แลวเลอกคาสง Show Shapes ดงรปท 12

รปท 12 แสดงการเลอกแถบคาสง Show Shapes เพอเพมชนขอมลลงบนเฟรมแผนท

รปท 13 แสดงการกาหนดเฟรมแผนททตองการแสดงผลชนขอมล

กรณทตองการนาชนขอมลตางๆ มาทาการซอนทบกนบนเฟรมแผนทให ผใชทาตามขนตอนท 3 จนครบทกชนขอมลทตองการ โดยกาหนดเฟรมแผนทปลายทาง เปนชอเดยวกน

Page 10: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

10

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

รปท 14 แสดงผลลพธการซอนทบชนขอมลแผนทของชนขอมลตางๆ

4. ไปท Map >> Save As Interactive SVG เพอทาการสราง SVG Application

รปท 15 แสดงการสราง SVG Application

PKGIS2007

Page 11: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

11

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

รปท 16 แสดงการกาหนดคาพารามเตอรสาหรบการสราง SVG Application

รปท 17 แสดงขอความแจงเตอนเมอประมวลผลเสรจ

5. ทาการทดลองเปด Application ผลลพธดวยโปรแกรม web browser เพอทดสอบการทางาน

กาหนด Reference View

กาหนดไดเรกทอรปลายทางสาหรบผลลพธ

PKGIS2007

Page 12: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

12

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

รปท 18 แสดงผลลพธของ SVG Application ทไดจากการสรางดวยโปรแกรม SAGA

กรณทผใชตองการบรการขอมลผานอนเตอรเนตกสามารถ นา SVG Application ไป upload ขนสแมขายเพอใหบรการไดทนท นอกจากนทานทตองการพฒนาโปรแกรมประยกตทางดาน SVG ทซบซอนมากขนกสามารถใช SVG Application ทไดนเปนพนฐานในการศกษา ทงในเรองของการเขยนโคดโปรแกรม JavaScript เพอควบคมการทางานของ SVG ดวยวธแบบ DOM และการสรางเอกสาร SVG ทซบซอน เปนตน อลกอรทมของโปรแกรมประยกตนเปนของ Andreas Neumann และนกพฒนาอนๆจาก http://www.carto.net/

Layer Controls

Map View

Reference View Toolbar

PKGIS2007

Page 13: การนําเสนอข อมูลแผนท ี่ด วยเทค ...Geostatistic, Hydrology, Terrain Analysis เป นต น นอกจากน ย งสามารถรองร

13

การนาเสนอขอมลแผนทดวยเทคโนโลย SVG ชยภทร เนองคามา

รปท 19 แสดงไฟลผลลพธทงหมดของ SVG Application

ไฟล JavaScript สาหรบควบคมการทางาน

ไฟล SVG เกบขอมลเชงพนท

PKGIS2007