Skip to content

Commit

Permalink
Merge pull request #89 from vincentneo/naming
Browse files Browse the repository at this point in the history
Change naming style
  • Loading branch information
vincentneo committed Mar 12, 2021
2 parents ee1fa3f + 80bfe86 commit bc61acc
Show file tree
Hide file tree
Showing 8 changed files with 97 additions and 78 deletions.
38 changes: 19 additions & 19 deletions Classes/GPXCompression.swift
Expand Up @@ -95,8 +95,8 @@ public class GPXCompression {

if types.contains(.trackpoint) {
for track in gpx.tracks {
for segment in track.tracksegments {
for trkpt in segment.trackpoints {
for segment in track.segments {
for trkpt in segment.points {
if trkpt.compareCoordinates(with: lastTrackpoints.last) {
lastTrackpoints.append(trkpt)
continue
Expand All @@ -111,8 +111,8 @@ public class GPXCompression {
lastTrackpoints = [GPXTrackPoint]()
lastTrackpoints.append(trkpt)
}
else if let i = segment.trackpoints.firstIndex(of: dupTrkpt) {
segment.trackpoints.remove(at: i)
else if let i = segment.points.firstIndex(of: dupTrkpt) {
segment.points.remove(at: i)
}
}

Expand All @@ -126,7 +126,7 @@ public class GPXCompression {

if types.contains(.routepoint) {
for route in gpx.routes {
for rtept in route.routepoints {
for rtept in route.points {
if rtept.compareCoordinates(with: lastRoutepoints.last) {
lastRoutepoints.append(rtept)
continue
Expand All @@ -141,8 +141,8 @@ public class GPXCompression {
lastRoutepoints = [GPXRoutePoint]()
lastRoutepoints.append(rtept)
}
else if let i = route.routepoints.firstIndex(of: dupRtept) {
route.routepoints.remove(at: i)
else if let i = route.points.firstIndex(of: dupRtept) {
route.points.remove(at: i)
}
}

Expand Down Expand Up @@ -184,12 +184,12 @@ public class GPXCompression {

if types.contains(.trackpoint) {
for track in gpx.tracks {
for segment in track.tracksegments {
for trkpt in segment.trackpoints {
for segment in track.segments {
for trkpt in segment.points {
if let distance = GPXCompressionCalculate.getDistance(from: lastPointCoordinates, and: trkpt) {
if distance < distanceRadius {
if let i = segment.trackpoints.firstIndex(of: trkpt) {
segment.trackpoints.remove(at: i)
if let i = segment.points.firstIndex(of: trkpt) {
segment.points.remove(at: i)
}
lastPointCoordinates = nil
continue
Expand All @@ -205,11 +205,11 @@ public class GPXCompression {

if types.contains(.routepoint) {
for route in gpx.routes {
for rtept in route.routepoints {
for rtept in route.points {
if let distance = GPXCompressionCalculate.getDistance(from: lastPointCoordinates, and: rtept) {
if distance < distanceRadius {
if let i = route.routepoints.firstIndex(of: rtept) {
route.routepoints.remove(at: i)
if let i = route.points.firstIndex(of: rtept) {
route.points.remove(at: i)
}
lastPointCoordinates = nil
continue
Expand Down Expand Up @@ -248,13 +248,13 @@ public class GPXCompression {

if types.contains(.trackpoint) {
for track in gpx.tracks {
for segment in track.tracksegments {
let trkptCount = segment.trackpoints.count
for segment in track.segments {
let trkptCount = segment.points.count
if trkptCount != 0 {
let removalAmount = Int(percent * Double(trkptCount))
for i in 0...removalAmount {
let randomInt = Int.random(in: 0...trkptCount - (i+1))
segment.trackpoints.remove(at: randomInt)
segment.points.remove(at: randomInt)
}
}
}
Expand All @@ -264,12 +264,12 @@ public class GPXCompression {

if types.contains(.routepoint) {
for route in gpx.routes {
let rteCount = route.routepoints.count
let rteCount = route.points.count
if rteCount != 0 {
let removalAmount = Int(percent * Double(rteCount))
for i in 0...removalAmount {
let randomInt = Int.random(in: 0...rteCount - (i+1))
route.routepoints.remove(at: randomInt)
route.points.remove(at: randomInt)
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion Classes/GPXParser.swift
Expand Up @@ -236,7 +236,7 @@ public final class GPXParser: NSObject {
return root
}

// MARK:- For >= V1.0 Parser
// MARK:- For version <= 1.0 Parser
///
/// Starts parsing, returns parsed `GPXRoot` when done.
///
Expand Down
24 changes: 16 additions & 8 deletions Classes/GPXRoute.swift
Expand Up @@ -59,7 +59,15 @@ public final class GPXRoute: GPXElement, Codable, GPXRouteType {
/// Route points in the route.
///
/// All route points joined represents a route.
public var routepoints = [GPXRoutePoint]()
@available(*, deprecated, renamed: "points")
public var routepoints: [GPXRoutePoint] {
return points
}

/// Route points in the route.
///
/// All route points joined represents a route.
public var points = [GPXRoutePoint]()

/// Number of route (possibly a tag for the route)
public var number: Int?
Expand All @@ -79,7 +87,7 @@ public final class GPXRoute: GPXElement, Codable, GPXRouteType {
for child in raw.children {
switch child.name {
case "link": self.links.append(GPXLink(raw: child))
case "rtept": self.routepoints.append(GPXRoutePoint(raw: child))
case "rtept": self.points.append(GPXRoutePoint(raw: child))
case "name": self.name = child.text
case "cmt": self.comment = child.text
case "desc": self.desc = child.text
Expand Down Expand Up @@ -117,21 +125,21 @@ public final class GPXRoute: GPXElement, Codable, GPXRouteType {
/// Adds a singular route point to the route.
func add(routepoint: GPXRoutePoint?) {
if let validPoint = routepoint {
routepoints.append(validPoint)
points.append(validPoint)
}
}

/// Adds an array of route points to the route.
func add(routepoints: [GPXRoutePoint]) {
self.routepoints.append(contentsOf: routepoints)
self.points.append(contentsOf: routepoints)
}

/// Removes a route point from the route.
func remove(routepoint: GPXRoutePoint) {
let contains = routepoints.contains(routepoint)
let contains = points.contains(routepoint)
if contains == true {
if let index = routepoints.firstIndex(of: routepoint) {
routepoints.remove(at: index)
if let index = points.firstIndex(of: routepoint) {
points.remove(at: index)
}
}

Expand Down Expand Up @@ -164,7 +172,7 @@ public final class GPXRoute: GPXElement, Codable, GPXRouteType {
self.extensions?.gpx(gpx, indentationLevel: indentationLevel)
}

for routepoint in routepoints {
for routepoint in points {
routepoint.gpx(gpx, indentationLevel: indentationLevel)
}
}
Expand Down
28 changes: 17 additions & 11 deletions Classes/GPXTrack.swift
Expand Up @@ -19,7 +19,7 @@ public final class GPXTrack: GPXElement, Codable {
/// for Codable
private enum CodingKeys: String, CodingKey {
case links = "link"
case tracksegments = "trkseg"
case segments = "trkseg"
case name
case comment = "cmt"
case desc
Expand All @@ -42,8 +42,14 @@ public final class GPXTrack: GPXElement, Codable {
/// Holds web links to external resources regarding the current track.
public var links = [GPXLink]()

/// Array of track segements. Must be included in every track.
public var tracksegments = [GPXTrackSegment]()
/// Array of track segments. Must be included in every track.
@available(*, deprecated, renamed: "segments")
public var tracksegments: [GPXTrackSegment] {
return segments
}

/// Array of track segments. Must be included in every track.
public var segments = [GPXTrackSegment]()

/// Name of track.
public var name: String?
Expand Down Expand Up @@ -79,7 +85,7 @@ public final class GPXTrack: GPXElement, Codable {
for child in raw.children {
switch child.name {
case "link": self.links.append(GPXLink(raw: child))
case "trkseg": self.tracksegments.append(GPXTrackSegment(raw: child))
case "trkseg": self.segments.append(GPXTrackSegment(raw: child))
case "name": self.name = child.text
case "cmt": self.comment = child.text
case "desc": self.desc = child.text
Expand Down Expand Up @@ -113,22 +119,22 @@ public final class GPXTrack: GPXElement, Codable {
/// Adds a single track segment to the track.
public func add(trackSegment: GPXTrackSegment?) {
if let validTrackSegment = trackSegment {
tracksegments.append(validTrackSegment)
segments.append(validTrackSegment)
}
}

/// Adds an array of track segments to the track.
public func add(trackSegments: [GPXTrackSegment]) {
self.tracksegments.append(contentsOf: trackSegments)
self.segments.append(contentsOf: trackSegments)
}

/// Removes a tracksegment from the track.
public func remove(trackSegment: GPXTrackSegment) {
let contains = tracksegments.contains(trackSegment)
let contains = segments.contains(trackSegment)

if contains == true {
if let index = tracksegments.firstIndex(of: trackSegment) {
tracksegments.remove(at: index)
if let index = segments.firstIndex(of: trackSegment) {
segments.remove(at: index)
}
}
}
Expand All @@ -137,7 +143,7 @@ public final class GPXTrack: GPXElement, Codable {
public func newTrackPointWith(latitude: Double, longitude: Double) -> GPXTrackPoint {
var tracksegment: GPXTrackSegment

if let lastTracksegment = tracksegments.last {
if let lastTracksegment = segments.last {
tracksegment = lastTracksegment
} else {
tracksegment = self.newTrackSegment()
Expand Down Expand Up @@ -173,7 +179,7 @@ public final class GPXTrack: GPXElement, Codable {
self.extensions?.gpx(gpx, indentationLevel: indentationLevel)
}

for tracksegment in tracksegments {
for tracksegment in segments {
tracksegment.gpx(gpx, indentationLevel: indentationLevel)
}

Expand Down
21 changes: 13 additions & 8 deletions Classes/GPXTrackSegment.swift
Expand Up @@ -16,13 +16,18 @@ public final class GPXTrackSegment: GPXElement, Codable {

/// For Codable use
private enum CodingKeys: String, CodingKey {
case trackpoints = "trkpt"
case points = "trkpt"
case extensions
}

/// Track points stored in current segment.
@available(*, deprecated, renamed: "points")
public var trackpoints: [GPXTrackPoint] {
return points
}

/// Track points stored in current segment.
public var trackpoints = [GPXTrackPoint]()
public var points = [GPXTrackPoint]()

/// Custom Extensions, if needed.
public var extensions: GPXExtensions?
Expand All @@ -42,7 +47,7 @@ public final class GPXTrackSegment: GPXElement, Codable {
init(raw: GPXRawElement) {
for child in raw.children {
switch child.name {
case "trkpt": self.trackpoints.append(GPXTrackPoint(raw: child))
case "trkpt": self.points.append(GPXTrackPoint(raw: child))
case "extensions": self.extensions = GPXExtensions(raw: child)
default: continue
}
Expand All @@ -63,19 +68,19 @@ public final class GPXTrackSegment: GPXElement, Codable {
/// Adds a single track point to this track segment.
public func add(trackpoint: GPXTrackPoint?) {
if let validPoint = trackpoint {
trackpoints.append(validPoint)
points.append(validPoint)
}
}

/// Adds an array of track points to this track segment.
public func add(trackpoints: [GPXTrackPoint]) {
self.trackpoints.append(contentsOf: trackpoints)
self.points.append(contentsOf: trackpoints)
}

/// Removes a track point from this track segment.
public func remove(trackpoint: GPXTrackPoint) {
if let index = trackpoints.firstIndex(of: trackpoint) {
trackpoints.remove(at: index)
if let index = points.firstIndex(of: trackpoint) {
points.remove(at: index)
}
}

Expand All @@ -94,7 +99,7 @@ public final class GPXTrackSegment: GPXElement, Codable {
self.extensions?.gpx(gpx, indentationLevel: indentationLevel)
}

for trackpoint in trackpoints {
for trackpoint in points {
trackpoint.gpx(gpx, indentationLevel: indentationLevel)
}
}
Expand Down
8 changes: 4 additions & 4 deletions Example/GPXKit/ParseViewController.swift
Expand Up @@ -45,8 +45,8 @@ class ParseViewController: UIViewController, UITableViewDelegate, UITableViewDat
func trackpointsCount() -> Int {
var totalCount: Int = 0
for track in self.tracks {
for trackSegment in track.tracksegments {
totalCount += trackSegment.trackpoints.count
for trackSegment in track.segments {
totalCount += trackSegment.points.count
}
}
return totalCount
Expand Down Expand Up @@ -103,8 +103,8 @@ class ParseViewController: UIViewController, UITableViewDelegate, UITableViewDat
var subtitles = [String]()

for track in self.tracks {
for tracksegment in track.tracksegments {
for trackpoint in tracksegment.trackpoints {
for tracksegment in track.segments {
for trackpoint in tracksegment.points {
coordinates.append("Lat=\(trackpoint.latitude!), Lon=\(trackpoint.longitude!)")
subtitles.append("Date:\(trackpoint.time ?? Date()), Ele:\(trackpoint.elevation ?? 0), Ext:\(trackpoint.extensions?.get(from: nil) ?? [String:String]())")

Expand Down
4 changes: 2 additions & 2 deletions Example/GPXKit/ViewController.swift
Expand Up @@ -38,8 +38,8 @@ class ViewController: UIViewController {

// This example prints all the trackpoint's latitude, longitude and date from the GPX file.
for track in self.tracks {
for tracksegment in track.tracksegments {
for trackpoint in tracksegment.trackpoints {
for tracksegment in track.segments {
for trackpoint in tracksegment.points {
print("trackpoint-latitude: \(trackpoint.latitude ?? 0)")
print("trackpoint-longitude: \(trackpoint.longitude ?? 0)")
print("trackpoint-date: \(trackpoint.time ?? Date())")
Expand Down

0 comments on commit bc61acc

Please sign in to comment.