Class: RGeo::CoordSys::CS::CoordinateSystemFactory
- Inherits:
-
Object
- Object
- RGeo::CoordSys::CS::CoordinateSystemFactory
- Defined in:
- lib/rgeo/coord_sys/cs/factories.rb
Overview
A class implementing the CS_CoordinateSystemFactory interface. It provides methods for building up complex objects from simpler objects or values.
Note that the methods of CS_CoordinateSystemFactory do not provide facilities for setting the authority. If you need to set authority values, use the create methods for the object classes themselves.
Instance Method Summary collapse
-
#create_compound_coordinate_system(name_, head_, tail_) ⇒ Object
Create a CompoundCoordinateSystem from a name, and two constituent coordinate systems.
-
#create_ellipsoid(name_, semi_major_axis_, semi_minor_axis_, linear_unit_) ⇒ Object
Create an Ellipsoid from a name, semi-major axis, and semi-minor axis.
-
#create_flattened_sphere(name_, semi_major_axis_, inverse_flattening_, linear_unit_) ⇒ Object
Create an Ellipsoid from a name, semi-major axis, and an inverse flattening factor.
-
#create_from_wkt(str_) ⇒ Object
Create any object given the OGC WKT format.
-
#create_geographic_coordinate_system(name_, angular_unit_, horizontal_datum_, prime_meridian_, axis0_, axis1_) ⇒ Object
Create a GeographicCoordinateSystem, given a name, an AngularUnit, a HorizontalDatum, a PrimeMeridian, and two AxisInfo objects.
-
#create_horizontal_datum(name_, horizontal_datum_type_, ellipsoid_, to_wgs84_) ⇒ Object
Create a HorizontalDatum given a name, a horizontal datum type code, an Ellipsoid, and a WGS84ConversionInfo.
-
#create_local_coordinate_system(name_, datum_, unit_, axes_) ⇒ Object
Create a LocalCoordinateSystem given a name, a LocalDatum, a Unit, and an array of at least one AxisInfo.
-
#create_local_datum(name_, local_datum_type_) ⇒ Object
Create a LocalDatum given a name and a local datum type code.
-
#create_prime_meridian(name_, angular_unit_, longitude_) ⇒ Object
Create a PrimeMeridian given a name, an AngularUnit, and a longitude offset.
-
#create_projected_coordinate_system(name_, gcs_, projection_, linear_unit_, axis0_, axis1_) ⇒ Object
Create a ProjectedCoordinateSystem given a name, a GeographicCoordinateSystem, and Projection, a LinearUnit, and two AxisInfo objects.
-
#create_projection(name_, wkt_projection_class_, parameters_) ⇒ Object
Create a Projection given a name, a projection class, and an array of ProjectionParameter.
-
#create_vertical_coordinate_system(name_, vertical_datum_, vertical_unit_, axis_) ⇒ Object
Create a VerticalCoordinateSystem given a name, a VerticalDatum, a VerticalUnit, and an AxisInfo.
-
#create_vertical_datum(name_, vertical_datum_type_) ⇒ Object
Create a VerticalDatum given a name ane a datum type code.
Instance Method Details
#create_compound_coordinate_system(name_, head_, tail_) ⇒ Object
Create a CompoundCoordinateSystem from a name, and two constituent coordinate systems.
80 81 82 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 80 def create_compound_coordinate_system(name_, head_, tail_) CompoundCoordinateSystem.create(name_, head_, tail_) end |
#create_ellipsoid(name_, semi_major_axis_, semi_minor_axis_, linear_unit_) ⇒ Object
Create an Ellipsoid from a name, semi-major axis, and semi-minor axis. You can also provide a LinearUnit, but this is optional and may be set to nil.
89 90 91 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 89 def create_ellipsoid(name_, semi_major_axis_, semi_minor_axis_, linear_unit_) Ellipsoid.create_ellipsoid(name_, semi_major_axis_, semi_minor_axis_, linear_unit_) end |
#create_flattened_sphere(name_, semi_major_axis_, inverse_flattening_, linear_unit_) ⇒ Object
Create an Ellipsoid from a name, semi-major axis, and an inverse flattening factor. You can also provide a LinearUnit, but this is optional and may be set to nil.
98 99 100 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 98 def create_flattened_sphere(name_, semi_major_axis_, inverse_flattening_, linear_unit_) Ellipsoid.create_flattened_sphere(name_, semi_major_axis_, inverse_flattening_, linear_unit_) end |
#create_from_wkt(str_) ⇒ Object
Create any object given the OGC WKT format. Raises Error::ParseError if a syntax error is encounterred.
106 107 108 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 106 def create_from_wkt(str_) WKTParser.new(str_).parse end |
#create_geographic_coordinate_system(name_, angular_unit_, horizontal_datum_, prime_meridian_, axis0_, axis1_) ⇒ Object
Create a GeographicCoordinateSystem, given a name, an AngularUnit, a HorizontalDatum, a PrimeMeridian, and two AxisInfo objects. The AxisInfo objects are optional and may be set to nil.
116 117 118 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 116 def create_geographic_coordinate_system(name_, angular_unit_, horizontal_datum_, prime_meridian_, axis0_, axis1_) GeographicCoordinateSystem.create(name_, angular_unit_, horizontal_datum_, prime_meridian_, axis0_, axis1_) end |
#create_horizontal_datum(name_, horizontal_datum_type_, ellipsoid_, to_wgs84_) ⇒ Object
Create a HorizontalDatum given a name, a horizontal datum type code, an Ellipsoid, and a WGS84ConversionInfo. The WGS84ConversionInfo is optional and may be set to nil.
125 126 127 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 125 def create_horizontal_datum(name_, horizontal_datum_type_, ellipsoid_, to_wgs84_) HorizontalDatum.create(name_, horizontal_datum_type_, ellipsoid_, to_wgs84_) end |
#create_local_coordinate_system(name_, datum_, unit_, axes_) ⇒ Object
Create a LocalCoordinateSystem given a name, a LocalDatum, a Unit, and an array of at least one AxisInfo.
133 134 135 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 133 def create_local_coordinate_system(name_, datum_, unit_, axes_) LocalCoordinateSystem.create(name_, datum_, unit_, axes_) end |
#create_local_datum(name_, local_datum_type_) ⇒ Object
Create a LocalDatum given a name and a local datum type code.
140 141 142 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 140 def create_local_datum(name_, local_datum_type_) LocalDatum.create(name, local_datum_type_) end |
#create_prime_meridian(name_, angular_unit_, longitude_) ⇒ Object
Create a PrimeMeridian given a name, an AngularUnit, and a longitude offset.
148 149 150 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 148 def create_prime_meridian(name_, angular_unit_, longitude_) PrimeMeridian.create(name, angular_unit_, longitude_) end |
#create_projected_coordinate_system(name_, gcs_, projection_, linear_unit_, axis0_, axis1_) ⇒ Object
Create a ProjectedCoordinateSystem given a name, a GeographicCoordinateSystem, and Projection, a LinearUnit, and two AxisInfo objects. The AxisInfo objects are optional and may be set to nil.
158 159 160 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 158 def create_projected_coordinate_system(name_, gcs_, projection_, linear_unit_, axis0_, axis1_) ProjectedCoordinateSystem.create(name_, gcs_, projection_, linear_unit_, axis0_, axis1_) end |
#create_projection(name_, wkt_projection_class_, parameters_) ⇒ Object
Create a Projection given a name, a projection class, and an array of ProjectionParameter.
166 167 168 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 166 def create_projection(name_, wkt_projection_class_, parameters_) Projection.create(name_, wkt_projection_class_, parameters_) end |
#create_vertical_coordinate_system(name_, vertical_datum_, vertical_unit_, axis_) ⇒ Object
Create a VerticalCoordinateSystem given a name, a VerticalDatum, a VerticalUnit, and an AxisInfo. The AxisInfo is optional and may be nil.
175 176 177 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 175 def create_vertical_coordinate_system(name_, vertical_datum_, vertical_unit_, axis_) VerticalCoordinateSystem.create(name_, vertical_datum_, vertical_unit_, axis_) end |
#create_vertical_datum(name_, vertical_datum_type_) ⇒ Object
Create a VerticalDatum given a name ane a datum type code.
182 183 184 |
# File 'lib/rgeo/coord_sys/cs/factories.rb', line 182 def create_vertical_datum(name_, vertical_datum_type_) VerticalDatum.create(name_, vertical_datum_type_) end |