angle v0.3.0 Angle.DMS
Functions relating to dealing with angles in Degrees, Minutes and Seconds.
Link to this section Summary
Functions
Convert the angle to it’s absolute value by discarding complete revolutions and converting negatives
Ensure that a DMS representation is present for this angle, otherwise calculate one
Initialize an Angle from integer d
degrees
Initialize an Angle from integer d
degrees, optionally followed by integer
m
minutes
Initialize an Angle from integer d
degrees, followed by integer
m
minutes and s
seconds
Attempt to parse a string of degrees, minutes and seconds
Returns the DMS representation of the Angle
Link to this section Functions
Convert the angle to it’s absolute value by discarding complete revolutions and converting negatives.
Examples
iex> ~a(-270,15,45)dms
...> |> Angle.DMS.abs()
#Angle<90° 45′ 15″>
iex> ~a(1170,0,0)dms
...> |> Angle.DMS.abs()
#Angle<90°>
Ensure that a DMS representation is present for this angle, otherwise calculate one.
Examples
iex> ~a(90.5)d
...> |> ensure()
...> |> Map.get(:dms)
{90, 30, 0.0}
iex> ~a(166.7662400)d
...> |> ensure()
...> |> Map.get(:dms)
{166, 45, 58.464000000037686}
iex> ~a(1.579522973054868)r
...> |> ensure()
...> |> Map.get(:dms)
{90, 30, 0.0}
iex> ~a(100.55555555555556)g
...> |> ensure()
...> |> Map.get(:dms)
{90, 30, 0.0}
Initialize an Angle from integer d
degrees, optionally followed by integer
m
minutes.
Examples
iex> init(13, 30)
#Angle<13° 30′>
Initialize an Angle from integer d
degrees, followed by integer
m
minutes and s
seconds.
Examples
iex> init(13, 30, 45)
#Angle<13° 30′ 45″>
Attempt to parse a string of degrees, minutes and seconds.
Examples
iex> "166 45 58.46" |> parse() |> inspect()
"{:ok, #Angle<166° 45′ 58.46″>}"
iex> "166,45,58.46" |> parse() |> inspect()
"{:ok, #Angle<166° 45′ 58.46″>}"
iex> "166° 45′ 58.46″" |> parse() |> inspect()
"{:ok, #Angle<166° 45′ 58.46″>}"
iex> "166°45′58.46″" |> parse() |> inspect()
"{:ok, #Angle<166° 45′ 58.46″>}"
iex> "-166° 45′ 58.46″" |> parse() |> inspect()
"{:ok, #Angle<-166° 45′ 58.46″>}"