if reader.node_type == XML::Reader::TYPE_ELEMENT
if reader.name == "trkpt"
point = TrkPt.new(@tracksegs, reader["lat"].to_f, reader["lon"].to_f)
@possible_points += 1
if reader.node_type == XML::Reader::TYPE_ELEMENT
if reader.name == "trkpt"
point = TrkPt.new(@tracksegs, reader["lat"].to_f, reader["lon"].to_f)
@possible_points += 1
point.timestamp = DateTime.parse(reader.read_string)
end
elsif reader.node_type == XML::Reader::TYPE_END_ELEMENT
point.timestamp = DateTime.parse(reader.read_string)
end
elsif reader.node_type == XML::Reader::TYPE_END_ELEMENT
end
def icon(min_lat, min_lon, max_lat, max_lon)
end
def icon(min_lat, min_lon, max_lat, max_lon)
class TrkPt < Struct.new(:segment, :latitude, :longitude, :altitude, :timestamp)
def valid?
class TrkPt < Struct.new(:segment, :latitude, :longitude, :altitude, :timestamp)
def valid?
- self.latitude and self.longitude and self.timestamp and
- self.latitude >= -90 and self.latitude <= 90 and
- self.longitude >= -180 and self.longitude <= 180
+ latitude && longitude && timestamp &&
+ latitude >= -90 && latitude <= 90 &&
+ longitude >= -180 && longitude <= 180