lib/aixm/component/geometry.rb in aixm-1.2.1 vs lib/aixm/component/geometry.rb in aixm-1.3.0
- old
+ new
@@ -25,11 +25,11 @@
# geometry = AIXM.geometry
# geometry.add_segment(AIXM.point(...))
#
# @see https://gitlab.com/openflightmaps/ofmx/wikis/Airspace#avx-border-vertex
class Geometry < Component
- include AIXM::Association
+ include AIXM::Concerns::Association
# @!method segments
# @return [Array<AIXM::Component::Geometry::Point,
# AIXM::Component::Geometry::RhumbLine
# AIXM::Component::Geometry::Arc,
@@ -91,13 +91,13 @@
!segments.any? { _1.is_a?(AIXM::Component::Geometry::Circle) } &&
segments.last.is_a?(AIXM::Component::Geometry::Point) &&
segments.first.xy == segments.last.xy
end
- # @return [String] AIXM or OFMX markup
- def to_xml
+ # @!visibility private
+ def add_to(builder)
fail(GeometryError.new("geometry is not closed", self)) unless closed?
- segments.map { _1.to_xml }.join
+ segments.each { _1.add_to(builder) }
end
end
end
end