How to get mathemical PI constant in Swift
With Swift 3 & 4, pi is now defined as a static variable on the floating point number types Double
, Float
and CGFloat
, so no specific imports are required any more:
Double.pi
Float.pi
CGFloat.pi
Also note that the actual type of .pi
can be inferred by the compiler. So, in situations where it's clear from the context that you are using e.g. CGFloat
, you can just use .pi
(thanks to @Qbyte and @rickster for pointing that out in the comments).
For older versions of Swift:
M_PI
is originally defined in Darwin
but is also contained in Foundation
and UIKit
, so importing any of these will give you the right access.
import Darwin // or Foundation or UIKit
let pi = M_PI
Note: As noted in the comments, pi can also be used as unicode character in Swift, so you might as well do
let π = M_PI
alt + p
is the shortcut (on US-keyboards) that will create the π
unicode character.
import Darwin
is not needed all M_x are visible with the import Foundation
( Xcode Version 6.4 (6E35b) )