2012-06-04 10 views
6

मैंने बहुत कोशिश की है लेकिन मेरे आवेदन के लिए क्यूबाला कंपास नहीं बना सकता है। मैं समझ नहीं पा रहा हूं कि मैं क्या करता हूं। मुझे क्यूबाला कंपास की आवश्यकता है जो मुझे सही काम करे। धन्यवाद परागएंड्रॉइड में क्यूबाला कम्पास

+1

आप एक बहुत अधिक विशिष्ट होना चाहिए। – Hassan

+0

@ हसन हां हसन –

+0

क्या आप एक प्रोग्राम करने की कोशिश कर रहे हैं? आपको क्या परेशानी हो रही है? आपने क्या प्रयास किया है – CaseyB

उत्तर

7

आप मक्का का स्थान जानते हैं और आप उपयोगकर्ताओं को वर्तमान स्थान जानते हैं (यदि आपके पास जीपीएस या कुछ अन्य स्थान प्रदाता है)। इस फार्मूले द्वारा असर दिया जाता है, अक्षांश और अक्षांश रेडियंस में होना चाहिए।

float lonDelta = (lon2 - lon1); 
float y = Math.sin(lonDelta) * Math.cos(lat2); 
float x = Math.cos(lat1) * Math.sin(lat2) - Math.sin(lat1) * Math.cos(lat2) * Math.cos(lonDelta); 
float brng = Math.atan2(y, x).toDeg(); 

ब्रिंग डिग्री में दिशा है।

आप स्थान.बियरिंग() विधि का भी पता लगा सकते हैं।

http://developer.android.com/reference/android/location/Location.html#bearingTo(android.location.Location)

रूप-सलाम-वालेकुम

+0

मुझे एरो मिल रहा है: 'आदिम प्रकार को डबल' – Salim

+2

पर डीडी() को नहीं बुलाया जा सकता है इसे 'फ्लोट ब्रिंग = (फ्लोट) Math.toDegrees (Math.atan2 (y, x)) हल करें; ' – Salim

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