आईओएस 5 के साथ कम्पास कच्चे डेटा पढ़ने की अद्यतन आवृत्ति, CLHeading
, नाटकीय रूप से गिरा दी गई। इसने मेरे उन्नत वास्तविकता ऐप को अनुपयोगी प्रदान किया, क्योंकि यह कच्चे कंपास डेटा के नज़दीक-वास्तविक-पढ़ने के समय पर निर्भर करता है।आईओएस 5: सीएलएचडिंग रीडिंग की कम अपडेट दर -> कोरमोशन पर स्विच करना समस्याग्रस्त है
इसलिए अब मैं CoreMotion पर स्विच करने की कोशिश कर रहा हूं।
cmManager = [[CMMotionManager alloc] init];
[cmManager startMagnetometerUpdates];
मैं तो magneticField
डेटा किसी भी समय मैं खेल के दौरान चाहते उपयोग कर सकते हैं: कर रहे हैं CMMagneticField
में डेटा:
CMMagneticField magneticField = cmManager.magnetometerData.magneticField;
समस्या मेरे पास है
पीछा कर रहा है यह और अधिक अक्सर अद्यतन मैग्नेटोमीटर डेटा प्रदान करता है एक अलग इकाई में CLHeading
एक्स/वाई/जेड डेटा।
मैं CLHeading/CLHeadingComponentValue के समान है इकाइयों को CMMagneticField
एक्स/Y/Z डेटा परिवर्तित करने के लिए चाहते हैं कर रहे हैं - आदेश मेरे मौजूदा ए.आर. कोड उपयोग करने के लिए सक्षम होने के लिए में।
यहाँ कुछ रीडिंग:
7.3 /17.64/-39.58 CLHeadingComponentValue X/Y/Z
-103.12/88.51/-20.05 CMMagneticField
-10.81/-34.9/-18.6 CLHeadingComponentValue X/Y/Z
-121.00/ 33.29/3.1 CMMagneticField
-20.8/-38.0/ -4.0 CLHeadingComponentValue X/Y/Z
-132.9/ 32.2/14.4 CMMagneticField