Skip to content

A Swift package to compute satellite positions from two-line elements (TLE).

License

Notifications You must be signed in to change notification settings

csanfilippo/swift-sgp4

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

swift-sgp4

A Swift package to compute satellite positions from two-line elements (TLE), wrapping the sgp4lib library (by Daniel Warner)

Usage

import SGPKit

let title = "ISS (ZARYA)"
let firstLine = "1 25544U 98067A   13165.59097222  .00004759  00000-0  88814-4 0    47"
let secondLine = "2 25544  51.6478 121.2152 0011003  68.5125 263.9959 15.50783143834295"

// Instantiate a new TLE descriptor
let tle = TLE(title: title, firstLine: firstLine, secondLine: secondLine)

// Instantiate the interpreter
let interpreter = TLEInterpreter()

// Obtain the data
let data: SatelliteData = interpreter.satelliteData(from: tle, date: .now)

print(data.latitude)
print(data.longitude)
print(data.altitude)
print(data.speed)

Installation

Swift Package Manager

If you want to use SGPKit in any other project that uses SwiftPM, add the package as a dependency in Package.swift:

dependencies: [
  .package(
    url: "https://github.com/csanfilippo/swift-sgp4",
    from: "1.2.0"
  ),
]