pducks32 / Hamilton

A great way to manipulate vectors and quaternions in Swift

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hamilton

Swift Version License Platform

Requirements

Using Swift 4. Please be aware.

Basic Usage

  • Only Right handed coordinate systems are currently supported. Please be aware as Unity, Unreal, and DirectX use left handed systems.

Basic Operations

let baseVector = Vector3(1, 6, 5)
let otherVector = Vector3(7, 1, 3)

baseVector.adding(otherVector) //=> Vector3(8, 7, 8)
baseVector.magnitude //=> 7.874

Rotations

let baseVector = Vector3(0, 1, 0)

let quat = Quaternion(axis: .xAxis, angle: Degrees(90))
let eulerAngles = EulerAngles(pitch: 90.degrees, yaw: 0.degrees, roll: 0.degrees, system: .xyz)

baseVector.rotated(by: quat) //=> Vector3(0, 0, 1)
baseVector.rotated(by: eulerAngles) // -> Vector3(0, 0, 1)

Installation

Hamilton is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "Hamilton"

Author

Patrick Metcalfe, git@patrickmetcalfe.com

License

Hamilton is available under the MIT license. See the LICENSE file for more info.

About

A great way to manipulate vectors and quaternions in Swift

License:MIT License


Languages

Language:Swift 97.9%Language:Ruby 2.1%