तो यदि मेरे पास एक सामान्य जीपीएस लेट/एलएनजी बिंदु है, तो क्या यह कहना संभव होगा, हाँ यह बिंदु एक इमारत में है, या यह बिंदु एक सड़क पर है जिस पर एक कार यात्रा कर सकती है?Google मानचित्र में किसी सड़क से इमारत को अलग करने का कोई तरीका?
उत्तर
मुझे नहीं लगता कि आप यह निर्धारित कर सकते हैं कि कोई बिंदु सड़क या इमारत Google मानचित्र डेटा के साथ पूरी तरह से है या नहीं। ऐसा करने के लिए मुझे लगता है कि आपको कुछ अतिरिक्त डेटा स्रोत की आवश्यकता होगी।
हालांकि, आप यह निर्धारित करने में सक्षम हो सकते हैं कि Snap point to street तकनीक का उपयोग करके कोई बिंदु सड़क है या नहीं।
मैंने Google मानचित्र API v3 का उपयोग करने के लिए तकनीक को फिर से लिखा है और मूल क्लिक किए गए बिंदु और निकटतम सड़क के संबंधित बिंदु के बीच दूरी (किमी में) को बताने के लिए हावरसिन फ़ंक्शन जोड़ा है।
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>Google Maps JavaScript API v3 Example: Directions Simple</title>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
rad = function(x) {return x*Math.PI/180;}
distHaversine = function(p1, p2) {
var R = 6371; // earth's mean radius in km
var dLat = rad(p2.lat() - p1.lat());
var dLong = rad(p2.lng() - p1.lng());
var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(rad(p1.lat())) * Math.cos(rad(p2.lat())) * Math.sin(dLong/2) * Math.sin(dLong/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;
return d.toFixed(3);
}
var dirn = new google.maps.DirectionsService();
var map;
function initialize() {
var center = new google.maps.LatLng(53.7877, -2.9832);
var myOptions = {
zoom:15,
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: center
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
google.maps.event.addListener(map, "click", function(event) {
// == When the user clicks on a the map, get directiobns from that point to itself ==
var request = {
origin: event.latLng,
destination: event.latLng,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
dirn.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
if(response.routes && response.routes.length > 0){
route = response.routes[0];
if(route.overview_path && route.overview_path.length > 0){
pos = route.overview_path[0];
new google.maps.Marker({
position: pos,
map: map
});
alert(distHaversine(request.origin, pos));
}
}
}
});
});
}
</script>
</head>
<body onload="initialize()">
<div id="map_canvas"></div>
</body>
</html>
मुझे आशा है कि यह सहायक होगा।
पूछने के लिए सबसे अच्छी जगह https://gis.stackexchange.com/ है। क्या परत से सड़क के स्थान को समझना संभव नहीं है जिसमें सड़कों हैं? आपको सभी सड़क नोड्स का लेट-लांग दिया जाएगा। जब तक यह एक घुमावदार रेखा न हो, आप पाते हैं कि आपका अक्षांश बिंदु lies on the road line है या नहीं। lat-long to cartesian को परिवर्तित करने के लिए, लिंक का पालन करें।
मैंने ऐसा कुछ किया है, लेकिन यह जीपीएस बिंदु दिए गए निकटतम सड़क खंड को निर्धारित करना है। मैं यह बताने का एक तरीका निर्धारित करने की कोशिश कर रहा हूं कि क्या एक कार सड़क से विचलित हो गई है और एक इमारत/परिदृश्य/किसी न किसी इलाके में मारा होगा। – Stevus
AFAIK, इसे समझने का एकमात्र तरीका एक परत है जहां भवनों को इमारतों (या समान बाध्य वेक्टर) के रूप में चिह्नित किया जाता है। इलाके के लिए, नक्शे बाध्य वेक्टर प्रदान करते हैं जो समोच्चों और विभिन्न अन्य इलाके को दर्शाते हैं। यदि आप अपने काम को आउटसोर्स कर सकते हैं, तो आप ऑटोकैड (इस तरह के नक्शे कैसे बनाए जाते हैं) का उपयोग करके मैन्युअल रूप से परत बनाने और सभी इमारतों को चिह्नित करने के लिए प्राप्त कर सकते हैं या उन स्रोतों से मानचित्र या परत खरीद सकते हैं जिन्होंने पहले से ही इमारतों को चिह्नित किया है। – Nav
कोई विचार जहां जीपीएस मानचित्र डेटा के सेट डाउनलोड/खरीदना है? मैं बहुत सारे OpenStreetMap का उपयोग करता हूं, लेकिन मुझे यह जानकर उत्सुकता है कि Google अपने मानचित्र दृश्य कैसे बना रहा है। उन्हें कहीं से भी अपना डेटा प्राप्त करना होगा। – Stevus
- 1. जियोकोडर का उपयोग करना, क्या अलग-अलग कॉलम में सड़क का नाम, शहर और ज़िप सहेजने का कोई तरीका है?
- 2. Google मानचित्र में प्रत्येक देश को अलग-अलग रंग दें
- 3. Google मानचित्र में सड़कों को चिह्नित करना
- 4. इमारत से पहले ग्रहण को "सभी सहेजें" कहने का कोई तरीका है?
- 5. क्या किसी भी मानचित्र से java.util.Map में कनवर्ट करने के लिए स्कैला में कोई तरीका है?
- 6. Google मानचित्र - ASP.Net में आसान तरीका?
- 7. सड़क के नाम, शहर से खोजने के लिए Google मानचित्र को कैसे कार्यान्वित करें?
- 8. किसी .NET डेस्कटॉप एप्लिकेशन से Google मानचित्र का उपयोग
- 9. क्या किसी डेवलपर के Google Play Store ऐप्स से लिंक करने का कोई तरीका है?
- 10. Google मानचित्र: Google मानचित्र API v3 का उपयोग करके मानचित्र
- 11. किसी फोन नंबर को "पिंग" करने का कोई तरीका?
- 12. Google मानचित्र एपीआई ऑटोकंपलेट प्रतिबंधित/पूर्वाग्रह मेरे शहर में सड़क पते
- 13. Google मानचित्र V3 निकटतम स्ट्रीट
- 14. किसी सरणी को ऑनलाइन घोषित करने का कोई तरीका?
- 15. किसी निजी विधि को आमंत्रित करने का कोई तरीका?
- 16. Google मानचित्र v2 एंड्रॉइड
- 17. सड़क नेटवर्क का निर्माण
- 18. मानचित्र से रिकॉर्ड उदाहरण को अलग करना
- 19. क्या V3 google.maps.Polygon को फीका करने का कोई तरीका है?
- 20. Google मानचित्र
- 21. पूर्ण स्क्रीन Google मानचित्र
- 22. किसी भी पाठ संपादक में ऐसा करने का कोई तरीका?
- 23. क्या एनएससीओलेक्शन व्यू में अलग-अलग विचार करने का कोई तरीका है?
- 24. Google मानचित्र
- 25. जावा में मूल्य से मानचित्र से किसी तत्व को निकालने का सबसे तेज़ तरीका क्या है?
- 26. लूप प्रारंभकर्ता में दो अलग-अलग प्रकार के चर परिभाषित करने का कोई तरीका है?
- 27. Google मानचित्र
- 28. Google मानचित्र: एक बिंदु देखते हुए, किसी दिए गए सड़क दूरी पर सभी बिंदुओं को कैसे ढूंढें?
- 29. रेटिना डिस्प्ले के लिए उच्च रिज़ॉल्यूशन में Google मानचित्र KML परत बनाने का कोई तरीका है?
- 30. रिपोर्ट को हटाएं Google मानचित्र से मानचित्र त्रुटि
मुझे लगता है कि यह निर्धारित करने के लिए इसका उपयोग किया जा सकता है कि कोई बिंदु सड़क से दूर है या नहीं। मैंने OpenStreetMap से जीपीएस अंक का एक टन आयात किया जो कि मैंने निर्दिष्ट एक खंड की सड़कों पर थे, लेकिन मुझे पता है कि पूरे संग्रह के खिलाफ एक बिंदु की जांच करना सबसे अच्छा तरीका नहीं होगा। – Stevus