سؤال

بعد بعض البحث على جوجل ، وأنا أسأل نفسي:

هل من الممكن لبناء بوصلة (بسيطة تظهر عنوان/اتجاه) مع أي فون الجيل الثالث 3G GPS الاستشعار ؟

لدي الشك في أن هذا ممكن فقط إذا كان الجهاز يتحرك.

أي الأفكار هي موضع تقدير.

هل كانت مفيدة؟

المحلول

نعم, أنت على حق, هذا هو السبيل الوحيد.على الرغم من أنني أعتقد بمجرد أن تعرف اتجاه ، يمكنك تتبع الحركات الصغيرة من الهاتف من الاستشعار التسارع ورسم اتجاه بدقة حتى لو الأصلي توقف حركة.

ملاحظة: هذا هو معلومات عفا عليها الزمن ، كان من الصحيح حتى 3Gs خرج.للأسف لا أستطيع حذف الإجابة المقبولة حتى مجرد نظرة أدناه.

نصائح أخرى

مع الأصلي فون و iPhone 3G, لا.

مع اي فون 3GS المتاحة حزيران / يونيه 2009 ، نعم.ويشمل المغنطيسية التي تسمح تطبيق البوصلة.

على موقع الأساسية إطار توفر هذه المعلومات في CLHeading فئة.يمكنك التحقق من إذا كان الجهاز يدعم هذه الوظيفة مع magnetometer مفتاح.

كما قال آخرون ، مع الجيل الثالث 3G اي فون سوف تكون قادرة على معرفة اتجاه الحركة عندما يكون الهاتف المتحرك ، ولكن أنت لن تكون قادرة على معرفة اتجاه الهاتف للإشارة إلى الاتجاه إلى المستخدم.بالتأكيد يمكن للمستخدم أن أوعز إلى المشرق الهاتف بطريقة معينة والتي جنبا إلى جنب مع حركة يمكن أن تشير إلى الاتجاه بدقة.

واستكمالا لهذا، 3Gs فون لا تشمل، العمل بوصلة رقمية الفعلية المتوفرة إلى تطبيقات. فهو يجعل كتابة مثل هذا التطبيق تافهة.

واطلع على الطبقة CLHeading والخاصية magneticHeading.

http://developer.apple كوم / اي فون / مكتبة / وثائق / CoreLocation / المرجع / CLHeading_Class / المرجع / Reference.html

ويمكنك أيضا الحصول على عنوان الشمال الحقيقي، على افتراض أن الهاتف كان لديها الوقت لتحديد نفسها جغرافيا.

عن طريق مسح التطبيقات المتاحة جئت إلى استنتاج مفاده أن هناك طريقتان لجعل بوصلة الحالي اي فون الجيل الثالث 3G.

  1. تتطلب الهاتف للتحرك.استخدام الفرق في البيانات GPS لتحديد الاتجاه.
  2. يحتاج المستخدم إلى نقطة الهاتف في الشمس.استخدام نظام تحديد المواقع و المعلومات في الوقت لتحديد الاتجاهات.

وتحتاج فقط إلى تنفيذ وظائف مدير الموقع للعثور على الاتجاه الدقيق الذي فون الخاص بك لافتا.

وهكذا، يمكنك التحقق من ذلك:

وCLLocationManager * locationManager. [locationManager startUpdatingHeading]؛

ومتى استدعاء startUpdatingHeading () فإنه سيتم استدعاء "- (الفراغ) locationManager: (CLLocationManager *) مدير didUpdateHeading: (CLHeading *) newHeading" الطريقة التي تحتاج إلى تجاوز من مدير الموقع.

وهذا كل شيء يمكنك العثور على الاتجاه الذي فون 3GS يشير كتبها newHeading.magneticHeading أو newHeading.trueHeading.

وأنت سيكون مفاجأة أنه يمكنك الحصول على بالضبط نفس الاتجاه ما يعطي البوصلة المغناطيسية لك.

البوصلة سوف تظهر فقط في الاتجاه الذي نسير.لن أقول لك اتجاه اي فون هو المتمركزة في.حتى باستخدام التسارع إلى تتبع اي فون تحولت/انتقلت وليس بالضرورة تمكنك من نقطة إلى الشمال على الشاشة.

(Ie.لن تعرف إذا كانت تتحرك جانبيا أو إذا كنا عقد اي فون رأسا على عقب أو أي شيء.عليك فقط أن تعرف أين أنت تتحرك...)

تحرير كانون الأول / ديسمبر 2010: لأن هذا المشاركة الأصلية كتبت, اي فون 3GS (أطلقت الصيف '09) وأحدث الموديلات البوصلة الإلكترونية.هذه البوصلة يمكن أن تظهر الاتجاه الصحيح عندما دون تحريك...(هذا يعني أن البوصلة الآن قادرا على نقطة إلى الشمال بغض النظر عن اتجاه اي فون هو عقد أو يتحرك.)

وأعتقد حقك بعين الشك بك، وهو موقف GPS هو نقطة واحدة من دون أي معلومات الاتجاه. لتحديد الاتجاه الذي تحتاج نقطتين لخلق ناقلات الاتجاه. أنظمة الملاحة في السيارات تعمل بنفس الطريقة. ويمكن أن تظهر فقط متجه الاتجاه إذا كانت السيارة تتحرك.

إذا قمت بتطبيق التناظرية على مدار الساعة, يمكنك استخدام الإرشادات أدناه إلى ركب بوصلة الاتصال الهاتفي.

هذا يمكن أن تستخدم "معايرة" البوصلة واستخدام التسارع يبقى لافتا إلى الشمال عندما ينتقل الهاتف.

من الواضح أن هذا ليس فائقة الدقة..."التكنولوجيا المنخفضة إلى التكنولوجيا العالية مشكلة"

(تعليمات مأخوذة من http://www.qwerty.co.za)

في نصف الكرة الأرضية الشمالي ، وضع مراقبة على مستوى قطعة الأرض, نقطة ساعة اليد في اتجاه الشمس.شمال خط الجنوب مرة أخرى على خط تقسيم الزاوية بين عقرب الساعات و الساعة 12 خط في نصف.

في نصف الكرة الجنوبي, ، ضع الساعة على قطعة من الأرض ، النقطة رقم 12 في اتجاه الشمس.شمال-جنوب الخط هو خط تقسيم الزاوية بين عقرب الساعات و الساعة 12 خط في نصف.

وكملاحظة جانبية، والتسارع في اي فون لا تتبع التناوب ترجمة فقط لذلك أنت لا تستطيع أن تفعل الصحيح 6 محور تتبع بالقصور الذاتي الموقف والاتجاه.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top