יותר

ספריית .NET להמיר KML ל- WKT?


מישהו מכיר ספריית OpenSource .NET בחינם שאני יכול להשתמש בה כדי להמיר KML ל- WKT?

אני יודע שאני יכול להשתמש ב- openlayers ויש הרבה אפשרויות JavaScript, אבל אני צריך לעשות זאת בצד האחורי.


מה דעתך להשתמש בכריכות OGR .NET של GDAL?

http://bjarte.com/post/gdal-in-csharp

ומנהל KML שלו באמצעות libkml http://www.gdal.org/ogr/drv_libkml.html

לחלופין, תוכל להשתמש ב- libkml ישירות.


האפשרות הנוספת שלך היא להשתמש ב- NetTopologySuite שהוא יציאה מגרסת הג'אווה, הוא תומך ב- WKT קריאה/כתיבה.

לאחר מכן לקחנו את ה- xml של Kml, באמצעות כלי ms המסופקים המרת אותו לשיעורים אותם סדרת ה- xml מבינה ואז הלכנו על העץ והמיר את הצמתים שאכפת לנו מהם ל- NTS IGeometry ששאר המערכת שלנו השתמשה בו.


מכיוון שאני משתמש בפוסט GIS, בסופו של דבר אני חייב לעשות את זה בשבילי:

אם אני צריך שתי תכניות KML שהוסבו, אשלח לה בחירה כמו הבאה:

בחר ST_AsText (ST_GeomFromKML ('    120.801170655354,14.632489189195,0 120.782956111463,14.5427894930054,0 120.76474480255,14.4530886861418,0 120.925219414103,14.4220920136416,0 120.943496765891,14.5117984961193,0 120.961777812394,14.6015038368517,0 120.801170655354,14.632489189195,0 ')), ST_AsText (ST_GeomFromKML ('    121.087312420981,14.6013782055702,0 121.071223131928,14.5142178677531,0 121.244070778376,14.4838207663532,0 121.260233278214,14.571006143522,0 121.087312420981,14.6013782055702,0 '))

תוֹצָאָה:

"מצולע ((120,801170655354 14.632489189195,120.782956111463 14.5427894930054,120.76474480255 14.4530886861418,120.925219414103 14.4220920136416,120.943496765891 14.5117984961193,120.961777812394 14.6015038368517,120.801170655354 14,632489189195))"; "מצולע ((121,087312420981 14.6013782055702,121.071223131928 14.5142178677531,121.244070778376 14.4838207663532,121.260233278214 14.571006143522,121.087312420981 14,6013782055702))"


צפו בסרטון: Tutorial ArcGIS: KML to Layer and Shapefile (אוֹקְטוֹבֶּר 2021).