ja nie mogę znaleźć żadnej dokumentacji na ten temat w Internecie, a co ja googlowania daje mi wiele sprzecznych informacji ...Jakie są zakresy akceleratora na iPhonie?
Odpowiedz
Od iphonedevsdk.com:
akcelerometrów stosowana w pierwszym i iPhone'y drugiej generacji (i I zakładają również dotknięcia iPoda) działają w trybie w dwóch trybach: +/- 2 gi +/- 8 g. (Faktycznie, jak zaobserwowano, to raport przyspieszeń nieco poza zakres nominalny. Dokładność nie jest spec'ed poza tym przedziale, choć.)
Jabłko działa ich w +/- 2 g trybie . Istnieje kompromis: Aktualna rozdzielczość wynosi nominalnie 0,018 g, zgodnie z arkuszem danych (chociaż mój telefon iPhone pierwszej generacji używa 0.018168604, zgodnie ze zmodyfikowaną wersją AccelerometerGraph). W trybie +/- 8 g rozdzielczość będzie cztery razy większa.
Zakładam, że Apple zdecydowało, że lepsza rozdzielczość niż będzie bardziej przydatna niż w szerszym zakresie. (Wolałbym zobaczyć lepszą rozdzielczość niż 0,018 g. Tak więc żadna z nas jest w pełni usatysfakcjonowany.)
Nie można zmienić tryb z dowolnym opublikowanego cechą API. Od są przyspieszane jako podwójne, teoretycznie mogą pozwolić na zmianę trybu w trybie i po prostu spojrzeć na tryb podczas przeskalowywania wartości A/D, przed zgłoszeniem przyspieszenia. (The oczywiste miejsce, aby ustawić tryb byłby w zaproszeniu, które konfiguruje aplikację aby otrzymywać akcelerometr informacji). Jednak dla wstecznej kompatybilności , OS musiałoby ustawić tryb akcelerometr do +/- 2 g na początku aplikacji. Żaden z procesów w tle nie może pozwolić na ustawienie trybu przyspieszeniomierza .
stworzyłem następujący wniosek, aby spróbować przetestować zakresy ...
UIAccelerometer *objAccelerometer;
UILabel *lblxmin, *lblxmax, *lblymin, *lblymax, *lblzmin, *lblzmax;
UILabel *lblxnow, *lblynow, *lblznow;
float xmin = 0.0, xmax = 0.0, ymin = 0.0, ymax = 0.0, zmin = 0.0, zmax = 0.0, xnow = 0.0, ynow = 0.0, znow = 0.0;
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration {
//NSLog (@"%f, %f, %f", acceleration.x, acceleration.y, acceleration.z);
xnow = acceleration.x;
ynow = acceleration.y;
znow = acceleration.z;
if (xnow < xmin) { xmin = xnow; }
if (ynow < ymin) { ymin = ynow; }
if (znow < zmin) { zmin = znow; }
if (xnow > xmax) { xmax = xnow; }
if (ynow > ymax) { ymax = ynow; }
if (znow > zmax) { zmax = znow; }
lblxmin.text = [NSString stringWithFormat:@"%f", xmin];
lblymin.text = [NSString stringWithFormat:@"%f", ymin];
lblzmin.text = [NSString stringWithFormat:@"%f", zmin];
lblxmax.text = [NSString stringWithFormat:@"%f", xmax];
lblymax.text = [NSString stringWithFormat:@"%f", ymax];
lblzmax.text = [NSString stringWithFormat:@"%f", zmax];
lblxnow.text = [NSString stringWithFormat:@"%f", xnow];
lblynow.text = [NSString stringWithFormat:@"%f", ynow];
lblznow.text = [NSString stringWithFormat:@"%f", znow];
}
-(void) invokeAccelerometer {
objAccelerometer = [UIAccelerometer sharedAccelerometer];
objAccelerometer.delegate = self;
objAccelerometer.updateInterval = (1.0/10.0);
}
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
lblxmin = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 100, 40)];
lblxnow = [[UILabel alloc] initWithFrame:CGRectMake(100, 10, 100, 40)];
lblxmax = [[UILabel alloc] initWithFrame:CGRectMake(200, 10, 100, 40)];
lblymin = [[UILabel alloc] initWithFrame:CGRectMake(10, 60, 100, 40)];
lblynow = [[UILabel alloc] initWithFrame:CGRectMake(100, 60, 100, 40)];
lblymax = [[UILabel alloc] initWithFrame:CGRectMake(200, 60, 100, 40)];
lblzmin = [[UILabel alloc] initWithFrame:CGRectMake(10, 110, 100, 40)];
lblznow = [[UILabel alloc] initWithFrame:CGRectMake(100, 110, 100, 40)];
lblzmax = [[UILabel alloc] initWithFrame:CGRectMake(200, 110, 100, 40)];
[self.view addSubview:lblxmin];
[self.view addSubview:lblxnow];
[self.view addSubview:lblxmax];
[self.view addSubview:lblymin];
[self.view addSubview:lblynow];
[self.view addSubview:lblymax];
[self.view addSubview:lblzmin];
[self.view addSubview:lblznow];
[self.view addSubview:lblzmax];
[self invokeAccelerometer];
[super viewDidLoad];
}
Problemem jest to, kiedy obrócić iPoda wzdłuż osi poziomej/pionowej, a następnie ją odwrócić, ja uzyskać wartości jak:
Xmin -1,271802
Xmax 1,180959
Ymin -1,344477
ymax 1,108285
Zmin -2,30713
zmax 2,325581
Jeśli wezmę iPod i wstrząsać do cholery z nim, mam ...
x -2,325581 do 2,307413
y -2,325581 do 2,307413
oo -2,307413 do 2.325581
Jakieś pomysły co to pomiarowych?
Najlepszym Mam wymyślić to:
pionowa oś
x = -1 jeśli przechylona na lewo (< |)
x = +1, jeśli przechylony na drodze po prawej (|>)
- gdzie < jest sposobem w jaki ekran jest skierowany, a | jest dno iPod
r ~ -1, jeśli ekran jest tyłem do siebie, prostopadle do podłogi („stojąco”)
r ~ 1, jeżeli odwrócony od siebie (do góry i do dołu)
Aplikacja aGauge wyświetla te nieprzetworzone dane pochodzące z akcelerometru podczas przesuwania urządzenia. Może to również pomóc w znalezieniu progu "przerzucania" dla Twojego urządzenia.
- 1. Najlepsze praktyki SQLite na iPhonie
- 2. prywatne zakresy adresów IP
- 3. Rozcinanie UIImage na iPhonie
- 4. Zakresy wersji w gradle
- 5. Podział tabeli na zakresy dat
- 6. Plik "Untar" na iPhonie
- 7. Mono na iPhonie?
- 8. Lua na iPhonie
- 9. Dziurkowanie TCP na iPhonie
- 10. Jakie źródła entropii są dostępne na heroku?
- 11. Jakie są odpowiedniki TortoiseSVN na Mac OSX?
- 12. Jakie są praktyczne ograniczenia wątków na procesor?
- 13. Jakie są rzeczywiste zalety wzoru gościa? Jakie są alternatywy?
- 14. Wykonywanie kodu prologu na iPhonie
- 15. Jakie są zalety coroutines?
- 16. Jakie są zalety VistaDB
- 17. Rysowanie prostego wykresu na iPhonie
- 18. Zrozumienie zużycia pamięci na iPhonie
- 19. Synchroniczne Vs Asynchroniczne na iPhonie
- 20. Aktualizacje akceleratora Coremotion w tle/tryb uśpienia
- 21. Jakie są domyślne repozytoria?
- 22. Jakie są zalety NSBinaryStoreType?
- 23. Jakie są alternatywy ClickOnce?
- 24. Jakie są chińskie kodowanie?
- 25. Jakie są poziomy DOM?
- 26. Jakie są zalety JRebel?
- 27. Wymuszanie zmian UInterfaceOrientation na iPhonie
- 28. Grupy kluczy tablicy na zakresy numerów, możliwe?
- 29. Jak wyróżnić zakresy czasu na działce?
- 30. Zapytanie o powolne zakresy na indeksie wielostronicowym
To powinno być w innym pytaniu –