जावा भू-स्थान और मानचित्रों के लिए: लाइब्रेरीज़, API और उदाहरण

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

जावा में भू-स्थान और मानचित्रों के साथ काम करना: लाइब्रेरीज़ और उपकरणों का अवलोकन



भौगोलिक डेटा और मानचित्रों के साथ काम करने वाले अनुप्रयोगों का विकास आधुनिक जावा विकास में एक लोकप्रिय कार्य है। उपयोगकर्ता के स्थान को ट्रैक करने से लेकर मार्गों के विज़ुअलाइज़ेशन और स्थानिक डेटा के विश्लेषण तक। इस लेख में, हम भू-स्थान और मानचित्रों के साथ काम करने के लिए प्रमुख जावा लाइब्रेरीज़ और उपकरणों की समीक्षा करेंगे, साथ ही व्यावहारिक कोड उदाहरण भी प्रस्तुत करेंगे।



भौगोलिक डेटा के साथ काम करने के लिए मुख्य लाइब्रेरीज़



जावा इकोसिस्टम में भौगोलिक जानकारी को संसाधित करने के लिए कई परिपक्व समाधान मौजूद हैं। आइए सबसे लोकप्रिय पर नज़र डालें।



1. GeoAPI (JSR 363)

GeoAPI भू-स्थानिक डेटा के साथ काम करने के लिए इंटरफ़ेस (JSR 363) का एक मानक सेट है। यह निर्देशांक, संदर्भ प्रणाली, ज्यामिति और मेटाडेटा के लिए अमूर्तता प्रदान करता है। लाइब्रेरी स्वयं कार्यक्षमता को लागू नहीं करती है, लेकिन कई अन्य उपकरणों का आधार है।



// GeoAPI इंटरफ़ेस का उपयोग करने का उदाहरणimport org.opengis.geometry.DirectPosition;import org.opengis.referencing.crs.CoordinateReferenceSystem;

// WGS84 में एक बिंदु बनाना (अक्षांश, देशांतर)CoordinateReferenceSystem crs = CRS.decode("EPSG:4326"); // WGS84DirectPosition position = new DirectPosition2D(crs, 55.7558, 37.6173);System.out.println("निर्देशांक: " + position);


2. JTS (Java Topology Suite)

JTS स्थानिक वस्तुओं (बिंदु, रेखाएँ, बहुभुज) के साथ काम करने और ज्यामितीय संचालन करने के लिए एक शक्तिशाली लाइब्रेरी है: प्रतिच्छेदन, संघ, बफरिंग। इसका व्यापक रूप से GIS अनुप्रयोगों और डेटा विश्लेषण प्रणालियों में उपयोग किया जाता है।



// JTS में ज्यामिति के साथ काम करने का उदाहरणimport org.locationtech.jts.geom.Coordinate;import org.locationtech.jts.geom.GeometryFactory;import org.locationtech.jts.geom.Point;

GeometryFactory gf = new GeometryFactory();Point point = gf.createPoint(new Coordinate(37.6173, 55.7558)); // देशांतर, अक्षांशSystem.out.println("ज्यामिति का प्रकार: " + point.getGeometryType());


3. OpenMap

OpenMap मानचित्र प्रदर्शित करने और भौगोलिक डेटा के साथ काम करने के लिए एक ओपन-सोर्स लाइब्रेरी है। यह मानचित्रों को विज़ुअलाइज़ करने, परतें जोड़ने और माउस इवेंट को संभालने की अनुमति देता है। यह विभिन्न डेटा प्रारूपों (Shapefile, GeoTIFF) का समर्थन करता है।



मानचित्र प्रदर्शित करने के लिए लाइब्रेरीज़



Unfolding Maps

Unfolding Maps जावा (Processing) में इंटरैक्टिव मानचित्र बनाने के लिए उपयोग में आसान लाइब्रेरी है। यह OpenStreetMap, Google Maps, MapBox मानचित्रों का समर्थन करता है और मार्कर, रेखाएँ, बहुभुज जोड़ने की अनुमति देता है।



// मार्कर के साथ मानचित्र प्रदर्शित करने का उदाहरणimport de.fhpotsdam.unfolding.UnfoldingMap;import de.fhpotsdam.unfolding.geo.Location;import de.fhpotsdam.unfolding.marker.SimplePointMarker;import processing.core.PApplet;

public class SimpleMap extends PApplet { UnfoldingMap map;

public void setup() { size(800, 600); map = new UnfoldingMap(this); map.zoomAndPanTo(new Location(55.7558f, 37.6173f), 10);

SimplePointMarker marker = new SimplePointMarker(new Location(55.7558f, 37.6173f)); marker.setColor(color(255, 0, 0)); map.addMarker(marker); }

public void draw() { map.draw(); }

public static void main(String[] args) { PApplet.main("SimpleMap"); }}


जियोकोडिंग और मानचित्र API के साथ काम करना



पतों को निर्देशांक (जियोकोडिंग) और इसके विपरीत रूपांतरित करने के लिए अक्सर REST API का उपयोग किया जाता है। जावा में, HttpClient के माध्यम से उनके साथ काम करना सुविधाजनक है।



उदाहरण: Nominatim (OpenStreetMap) के माध्यम से जियोकोडिंग



import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;

public class GeocodingExample { public static void main(String[] args) throws Exception {

अनुशंसाएँ