2013-04-18 9 views
14

मैं यह जानने की कोशिश कर रहा हूं कि कोई दिया गया मार्कर सर्कल त्रिज्या के अंदर है या नहीं।जांचें कि क्या मार्कर सर्कल त्रिज्या के अंदर है

google.maps.geometry.spherical.computeDistanceBetween(latLngCircleCenter, latLngPoint); 

लेकिन एंड्रॉयड में, नक्शे-v2 का उपयोग कर, मैं stucked हूँ:

जावास्क्रिप्ट में, मैं की तरह कुछ कर सकते हैं।

enter image description here

उत्तर

38

के बाद अनुसंधान के एक बहुत, मैं एक बहुत ही सरल समाधान नहीं मिला:

float[] distance = new float[2]; 

Location.distanceBetween(marker.getPosition().latitude, marker.getPosition().longitude, 
    circle.getCenter().latitude, circle.getCenter().longitude, distance); 

if(distance[0] > circle.getRadius() ){ 
    Toast.makeText(getBaseContext(), "Outside", Toast.LENGTH_LONG).show(); 
} else { 
    Toast.makeText(getBaseContext(), "Inside", Toast.LENGTH_LONG).show(); 
} 

मैं इस परीक्षण कर रहा हूँ और यह काम कर रहा। क्या कोई भी परीक्षण कर सकता है और यहां फीडबैक दे सकता है?

+3

दूरी होना चाहिए [0]

+0

कृपया जवाब ऊपर –

+0

@Otuyh उपयोग करने के लिए अद्यतन कृपया अपना पूरा उत्तर डालें। –

0

मैं चक्र के केंद्र खोजने के लिए यह संभव लगता है, आप किसी दिए गए geopoint को repect साथ अपने कोड में वृत्त परिभाषित कर रहे हैं। आप इसे सहेज सकते हैं और बाद में उपयोग कर सकते हैं। फिर कोशिश Location.distanceBetween(..)

संबंधित मुद्दे