Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maximbilan/ios-coremotion-example
Core Motion in iOS using Swift
https://github.com/maximbilan/ios-coremotion-example
accelerometer accelerometer-data coremotion device-motion gyroscope ios motion motion-framework motionevent swift tutorial
Last synced: about 1 month ago
JSON representation
Core Motion in iOS using Swift
- Host: GitHub
- URL: https://github.com/maximbilan/ios-coremotion-example
- Owner: maximbilan
- License: mit
- Created: 2016-01-21T15:18:29.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2018-09-22T09:30:47.000Z (about 6 years ago)
- Last Synced: 2024-09-22T12:30:31.521Z (about 2 months ago)
- Topics: accelerometer, accelerometer-data, coremotion, device-motion, gyroscope, ios, motion, motion-framework, motionevent, swift, tutorial
- Language: Swift
- Homepage:
- Size: 103 KB
- Stars: 106
- Watchers: 9
- Forks: 20
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Core Motion in iOS using Swift
Users generate motion events when they move, shake, or tilt the device. These motion events are detected by the device hardware, specifically, the accelerometer and the gyroscope. The Core Motion framework lets your application receive motion data from the device hardware and process that data.
![alt tag](https://raw.github.com/maximbilan/iOS-CoreMotion-Example/master/images/1.png)
To get started import the Core Motion framework like this:
import CoreMotionNow create an instance of CMMotionManager object. The app can use it to receive four types of motion: raw accelerometer data, raw gyroscope data, raw magnetometer data, and processed device-motion data (which includes accelerometer, rotation-rate, and attitude measurements).
let motionManager = CMMotionManager()For starting accelerometer updates you need to call the next method:
func startAccelerometerUpdates()Finally, read the accelerometer data as often as you want.
if let accelerometerData = motionManager.accelerometerData {
}You can change accelerometerUpdateInterval, the interval, in seconds, for providing accelerometer updates to the block handler.
The same story for Gyroscope, Magnetometer and Device motion.
func startGyroUpdates()
func startMagnetometerUpdates()
func startDeviceMotionUpdates()Happy coding!