اكتشاف التسارع إلى جانب الحركات الجانبية - الكشف الفوري للتغيير في الاتجاه
-
21-09-2019 - |
سؤال
معرف يحتوي على تطبيق يقوم بشيء واحد إذا هزته بطريقة واحدة ، وآخر إذا هزته الآخر.
أجهزة الصراف الآلي رمز بلدي.
if (acceleration.x > 1.5) {
// ذراع إلى اليمين عند مواجهتك
float duration = ([imageArray count]*0.04);
//HUMAN EYE KEEPS IMAGES IN EYE For 40 MILLISECONDS//
//NSLog(@"duration:%f", duration);
[theFlash setAnimationImages:imageArray];
[theFlash setAnimationRepeatCount:1];
theFlash.animationDuration = duration;
[theFlash startAnimating];
NSLog(@"images flashed forward");
}
if (acceleration.x < -1)
{
//arm to the left when facing you
float duration = ([imageArrayReversed count]*0.04);
//HUMAN EYE KEEPS IMAGES IN EYE For 40 MILLISECONDS//
NSLog(@"duration:%f", duration);
[theFlash setAnimationImages:imageArrayReversed];
[theFlash setAnimationRepeatCount:1];
theFlash.animationDuration = duration;
[theFlash startAnimating];
NSLog(@"images flashed backward");
}
القيم 1 و -1 تعمل عليها ليست حساسة للغاية.
ومع ذلك ، فإن هذا الرمز لا يعطيني النتائج المطلوبة. معرّف مثل الصور المراد Flash (انظر الرمز) بمجرد أن يبدأ الشخص في تحريك الجهاز في الاتجاه الآخر.
أي طريقة للقيام بذلك؟
المحلول
حسنًا ، سيتعين عليك دمج التسارع للحصول على السرعة. لسوء الحظ ، فإن مقياس التسارع صاخب بعض الشيء وسوف ينجرف حتماً قليلاً ، لذلك سيتعين عليك تصفية هذا التكامل. أنا فكر في المرشح الموصوف في http://www.musicdsp.org/showone.php؟id=92 ستفعل ما تحتاجه ، مع تعيين تردد القطع إلى حوالي 1/4 تردد أخذ العينات. أنت بحاجة إلى band
الإخراج ، وسيتعين عليك ضبط معلمة الرنين.
لا تنتمي إلى StackOverflow