proj4rb 4.0.0 → 4.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/lib/proj/crs.rb CHANGED
@@ -6,13 +6,13 @@ module Proj
6
6
  class Crs < PjObject
7
7
  # Create a ProjectedCRS.
8
8
  #
9
- # @param ctx [Context] Context
9
+ # @param context [Context] Context
10
10
  # @param name [String] Name of the GeographicCRS. Default is nil.
11
- # @param geodetic_crs [CRS] Base GeodeticCRS
11
+ # @param geodetic_crs [Crs] Base GeodeticCRS
12
12
  # @param conversion [Conversion] Conversion
13
13
  # @param coordinate_system [CoordinateSystem] Cartesian coordinate system
14
14
  #
15
- # @return [CRS]
15
+ # @return [Crs]
16
16
  def self.create_projected(context, name: nil, geodetic_crs:, conversion:, coordinate_system:)
17
17
  pointer = Api.proj_create_projected_crs(context, name, geodetic_crs, conversion, coordinate_system)
18
18
 
@@ -25,12 +25,12 @@ module Proj
25
25
 
26
26
  # Returns a BoundCRS
27
27
  #
28
- # @param ctx [Context] Context
29
- # @param base_crs [CRS] Base CRS
30
- # @param hub_crs [CRS] HUB CRS
28
+ # @param context [Context] Context
29
+ # @param base_crs [Crs] Base CRS
30
+ # @param hub_crs [Crs] HUB CRS
31
31
  # @param transformation [Transformation]
32
32
  #
33
- # @return [CRS]
33
+ # @return [Crs]
34
34
  def self.create_bound(context, base_crs:, hub_crs:, transformation:)
35
35
  pointer = Api.proj_crs_create_bound_crs(context, base_crs, hub_crs, transformation)
36
36
 
@@ -43,8 +43,8 @@ module Proj
43
43
 
44
44
  # Returns a BoundCRS with a transformation to EPSG:4326 wrapping it
45
45
  #
46
- # @param ctx [Context] Context
47
- # @param crs [CRS] CRS to wrap
46
+ # @param context [Context] Context
47
+ # @param crs [Crs] CRS to wrap
48
48
  # @param allow_intermediate_crs [String] Specifies if an intermediate CRS may be considered when
49
49
  # computing the possible transformations. Allowed values are:
50
50
  # * ALWAYS
@@ -53,7 +53,7 @@ module Proj
53
53
  #
54
54
  # Default is NEVER
55
55
  #
56
- # @return [CRS]
56
+ # @return [Crs]
57
57
  def self.create_bound_to_wgs84(context, crs:, allow_intermediate_crs: "NEVER")
58
58
  options = {"ALLOW_INTERMEDIATE_CRS": allow_intermediate_crs}
59
59
  options_ptr = create_options_pointer(options)
@@ -69,10 +69,10 @@ module Proj
69
69
 
70
70
  # Create a a EngineeringCRS
71
71
  #
72
- # @param ctx [Context] Context
72
+ # @param context [Context] Context
73
73
  # @param name [String] Name of the CRS. Default is nil.
74
74
  #
75
- # @return [CRS]
75
+ # @return [Crs]
76
76
  def self.create_engineering(context, name:)
77
77
  pointer = Api.proj_create_engineering_crs(context, name)
78
78
 
@@ -85,13 +85,13 @@ module Proj
85
85
 
86
86
  # Create a VerticalCRS. For additional functionality see Crs#create_vertical_ex
87
87
  #
88
- # @param ctx [Context] Context
88
+ # @param context [Context] Context
89
89
  # @param name [String] Name of the GeographicCRS. Default is nil.
90
90
  # @param datum_name [String] Name of the GeodeticReferenceFrame. Default is nil.
91
91
  # @param linear_units [String] Name of the angular units. Or nil for meters.
92
- # @param linear_units_conv [Double] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
92
+ # @param linear_units_conv [Float] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
93
93
  #
94
- # @return [CRS]
94
+ # @return [Crs]
95
95
  def self.create_vertical(context, name:, datum_name:, linear_units:, linear_units_conv:)
96
96
  pointer = Api.proj_create_vertical_crs(context, name, datum_name, linear_units, linear_units_conv)
97
97
 
@@ -105,12 +105,12 @@ module Proj
105
105
  # Create a Bound Vertical CRS, with a transformation to a hub geographic 3D crs, such as
106
106
  # EPSG:4979 or WGS84, using a grid
107
107
  #
108
- # @param ctx [Context] Context
109
- # @param vertical_crs [CRS] A VerticalCRS
110
- # @param hub_geographic_3d_crs [CRS] A Geographic 3D CRS
108
+ # @param context [Context] Context
109
+ # @param vertical_crs [Crs] A VerticalCRS
110
+ # @param hub_crs [Crs] A Geographic 3D CRS
111
111
  # @param grid_name [String] Grid name (typically a .gtx file)
112
112
  #
113
- # @return [CRS]
113
+ # @return [Crs]
114
114
  def self.create_bound_vertical(context, vertical_crs:, hub_crs:, grid_name:)
115
115
  pointer = Api.proj_crs_create_bound_vertical_crs(context, vertical_crs, hub_crs, grid_name)
116
116
 
@@ -124,20 +124,20 @@ module Proj
124
124
  # Create a VerticalCRS. This is an extended version of Crs#create_vertical that adds
125
125
  # the capability of defining a geoid model.
126
126
  #
127
- # @param ctx [Context] Context
127
+ # @param context [Context] Context
128
128
  # @param name [String] Name of the GeographicCRS. Default is nil.
129
129
  # @param datum_name [String] Name of the GeodeticReferenceFrame. Default is nil.
130
130
  # @param datum_auth_name [String] Authority name of the VerticalReferenceFrame. Default is nil.
131
131
  # @param datum_code [String] Code of the VerticalReferenceFrame. Default is nil.
132
132
  # @param linear_units [String] Name of the angular units. Or nil for meters.
133
- # @param linear_units_conv [Double] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
133
+ # @param linear_units_conv [Float] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
134
134
  # @param geoid_model_name [String] Geoid model name. Can be a name from the geoid_model name or a string "PROJ foo.gtx". Default is nil.
135
135
  # @param geoid_model_auth_name [String] Authority name of the transformation for the geoid model. Default is nil.
136
136
  # @param geoid_model_code [String] Code of the transformation for the geoid model. Default is nil.
137
137
  # @param geoid_geog_crs [Crs] Geographic CRS for the geoid transformation. Default is nil.
138
- # @param accuracy [Double] Accuracy in meters. Default is nil
138
+ # @param accuracy [Float] Accuracy in meters. Default is nil
139
139
  #
140
- # @return [CRS]
140
+ # @return [Crs]
141
141
  def self.create_vertical_ex(context, name: nil, datum_name: nil, datum_auth_name: nil, datum_code: nil,
142
142
  linear_units: nil, linear_units_conv: 0,
143
143
  geoid_model_name: nil, geoid_model_auth_name: nil, geoid_model_code: nil,
@@ -157,12 +157,12 @@ module Proj
157
157
 
158
158
  # Create a CompoundCRS.
159
159
  #
160
- # @param ctx [Context] Context
160
+ # @param context [Context] Context
161
161
  # @param name [String] Name of the GeographicCRS. Default is nil.
162
- # @param horizontal_crs [CRS] A horizontal CRS
163
- # @param vertical_crs [CRS] A vertical CRS
162
+ # @param horizontal_crs [Crs] A horizontal CRS
163
+ # @param vertical_crs [Crs] A vertical CRS
164
164
  #
165
- # @return [CRS]
165
+ # @return [Crs]
166
166
  def self.create_compound(context, name:, horizontal_crs:, vertical_crs:)
167
167
  pointer = Api.proj_create_compound_crs(context, name, horizontal_crs, vertical_crs)
168
168
 
@@ -175,21 +175,21 @@ module Proj
175
175
 
176
176
  # Create a GeographicCRS.
177
177
  #
178
- # @param ctx [Context] Context
178
+ # @param context [Context] Context
179
179
  # @param name [String] Name of the GeographicCRS. Default is nil.
180
180
  # @param datum_name [String] Name of the GeodeticReferenceFrame. Default is nil.
181
181
  # @param ellipsoid_name [String] Name of the Ellipsoid. Default is nil.
182
- # @param semi_major_meter [Double] Ellipsoid semi-major axis, in meters.
183
- # @param inv_flattening [Double] Ellipsoid inverse flattening. Or 0 for a sphere.
182
+ # @param semi_major_meter [Float] Ellipsoid semi-major axis, in meters.
183
+ # @param inv_flattening [Float] Ellipsoid inverse flattening. Or 0 for a sphere.
184
184
  # @param prime_meridian_name [String] Name of the PrimeMeridian. Default is nil.
185
- # @param prime_meridian_offset [Double] Offset of the prime meridian, expressed in the specified angular units.
185
+ # @param prime_meridian_offset [Float] Offset of the prime meridian, expressed in the specified angular units.
186
186
  # @param pm_angular_units [String] Name of the angular units. Or nil for degrees.
187
- # @param pm_angular_units_conv [Double] Conversion factor from the angular unit to radians. Default is 0 if pm_angular_units is nil
187
+ # @param pm_angular_units_conv [Float] Conversion factor from the angular unit to radians. Default is 0 if pm_angular_units is nil
188
188
  # @param coordinate_system [CoordinateSystem] Ellipsoidal coordinate system
189
189
  #
190
- # @return [CRS]
191
- def self.create_geographic(context, name:, datum_name:, ellps_name:, semi_major_meter:, inv_flattening:, prime_meridian_name:, prime_meridian_offset:, pm_angular_units:, pm_units_conv:, coordinate_system:)
192
- pointer = Api.proj_create_geographic_crs(context, name, datum_name, ellps_name, semi_major_meter, inv_flattening, prime_meridian_name, prime_meridian_offset, pm_angular_units, pm_units_conv, coordinate_system)
190
+ # @return [Crs]
191
+ def self.create_geographic(context, name:, datum_name:, ellipsoid_name:, semi_major_meter:, inv_flattening:, prime_meridian_name:, prime_meridian_offset:, pm_angular_units:, pm_angular_units_conv:, coordinate_system:)
192
+ pointer = Api.proj_create_geographic_crs(context, name, datum_name, ellipsoid_name, semi_major_meter, inv_flattening, prime_meridian_name, prime_meridian_offset, pm_angular_units, pm_angular_units_conv, coordinate_system)
193
193
 
194
194
  if pointer.null?
195
195
  Error.check_context(context)
@@ -200,12 +200,12 @@ module Proj
200
200
 
201
201
  # Create a GeographicCRS from a datum
202
202
  #
203
- # @param ctx [Context] Context
203
+ # @param context [Context] Context
204
204
  # @param name [String] Name of the GeographicCRS. Default is nil.
205
- # @param datum [Datum | DatumEnsemble] Datum or DatumEnsemble
205
+ # @param datum [Datum, DatumEnsemble] Datum or DatumEnsemble
206
206
  # @param coordinate_system [CoordinateSystem] Ellipsoidal coordinate system
207
207
  #
208
- # @return [CRS]
208
+ # @return [Crs]
209
209
  def self.create_geographic_from_datum(context, name:, datum:, coordinate_system:)
210
210
  pointer = Api.proj_create_geographic_crs_from_datum(context, name, datum, coordinate_system)
211
211
 
@@ -218,22 +218,22 @@ module Proj
218
218
 
219
219
  # Create a GeographicCRS.
220
220
  #
221
- # @param ctx [Context] Context
221
+ # @param context [Context] Context
222
222
  # @param name [String] Name of the GeographicCRS. Default is nil.
223
223
  # @param datum_name [String] Name of the GeodeticReferenceFrame. Default is nil.
224
224
  # @param ellipsoid_name [String] Name of the Ellipsoid. Default is nil.
225
- # @param semi_major_meter [Double] Ellipsoid semi-major axis, in meters.
226
- # @param inv_flattening [Double] Ellipsoid inverse flattening. Or 0 for a sphere.
225
+ # @param semi_major_meter [Float] Ellipsoid semi-major axis, in meters.
226
+ # @param inv_flattening [Float] Ellipsoid inverse flattening. Or 0 for a sphere.
227
227
  # @param prime_meridian_name [String] Name of the PrimeMeridian. Default is nil.
228
- # @param prime_meridian_offset [Double] Offset of the prime meridian, expressed in the specified angular units.
228
+ # @param prime_meridian_offset [Float] Offset of the prime meridian, expressed in the specified angular units.
229
229
  # @param angular_units [String] Name of the angular units. Or nil for degrees.
230
- # @param angular_units_conv [Double] Conversion factor from the angular unit to radians. Default is 0 if angular_units is nil
230
+ # @param angular_units_conv [Float] Conversion factor from the angular unit to radians. Default is 0 if angular_units is nil
231
231
  # @param linear_units [String] Name of the angular units. Or nil for meters.
232
- # @param linear_units_conv [Double] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
232
+ # @param linear_units_conv [Float] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
233
233
  #
234
- # @return [CRS]
235
- def self.create_geocentric(context, name:, datum_name:, ellps_name:, semi_major_meter:, inv_flattening:, prime_meridian_name:, prime_meridian_offset:, angular_units:, angular_units_conv:, linear_units:, linear_units_conv:)
236
- pointer = Api.proj_create_geocentric_crs(context, name, datum_name, ellps_name, semi_major_meter, inv_flattening, prime_meridian_name, prime_meridian_offset, angular_units, angular_units_conv, linear_units, linear_units_conv)
234
+ # @return [Crs]
235
+ def self.create_geocentric(context, name:, datum_name:, ellipsoid_name:, semi_major_meter:, inv_flattening:, prime_meridian_name:, prime_meridian_offset:, angular_units:, angular_units_conv:, linear_units:, linear_units_conv:)
236
+ pointer = Api.proj_create_geocentric_crs(context, name, datum_name, ellipsoid_name, semi_major_meter, inv_flattening, prime_meridian_name, prime_meridian_offset, angular_units, angular_units_conv, linear_units, linear_units_conv)
237
237
 
238
238
  if pointer.null?
239
239
  Error.check_context(context)
@@ -244,13 +244,13 @@ module Proj
244
244
 
245
245
  # Create a GeodeticCRS of geocentric type
246
246
  #
247
- # @param ctx [Context] Context
247
+ # @param context [Context] Context
248
248
  # @param name [String] Name of the GeographicCRS. Default is nil.
249
- # @param datum [Datum | DatumEnsemble] Datum or DatumEnsemble
249
+ # @param datum [Datum, DatumEnsemble] Datum or DatumEnsemble
250
250
  # @param linear_units [String] Name of the angular units. Or nil for meters.
251
- # @param linear_units_conv [Double] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
251
+ # @param linear_units_conv [Float] Conversion factor from linear units to meters. Default is 0 if linear_units is nil
252
252
  #
253
- # @return [CRS]
253
+ # @return [Crs]
254
254
  def self.create_geocentric_from_datum(context, name:, datum:, linear_units:, linear_units_conv:)
255
255
  pointer = Api.proj_create_geocentric_crs_from_datum(context, name, datum, linear_units, linear_units_conv)
256
256
 
@@ -263,13 +263,13 @@ module Proj
263
263
 
264
264
  # Create a DerivedGeograhicCRS
265
265
  #
266
- # @param ctx [Context] Context
266
+ # @param context [Context] Context
267
267
  # @param name [String] Name of the GeographicCRS. Default is nil.
268
- # @param base_geographic_crs [CRS] Base Geographic CRS
268
+ # @param base_geographic_crs [Crs] Base Geographic CRS
269
269
  # @param conversion [Conversion] Conversion from the base Geographic to the DerivedGeograhicCRS
270
270
  # @param coordinate_system [CoordinateSystem] Ellipsoidal coordinate system
271
271
  #
272
- # @return [CRS]
272
+ # @return [Crs]
273
273
  def self.create_derived_geographic(context, name: nil, base_geographic_crs:, conversion:, coordinate_system:)
274
274
  pointer = Api.proj_create_derived_geographic_crs(context, name, base_geographic_crs, conversion, coordinate_system)
275
275
 
@@ -282,8 +282,8 @@ module Proj
282
282
 
283
283
  # Find GeodeticCRSes that use the specified datum
284
284
  #
285
- # @param ctx [Context] Context
286
- # @param auth_name [string] - Authority name. Default is nil.
285
+ # @param context [Context] Context
286
+ # @param auth_name [String] - Authority name. Default is nil.
287
287
  # @param datum_auth_name [String] Datum authority name
288
288
  # @param datum_code [String] Datum code
289
289
  # @param crs_type [String] The CRS type. Default is nil. Allowed values are:
@@ -358,7 +358,7 @@ module Proj
358
358
  #
359
359
  # @see https://proj.org/development/reference/functions.html#c.proj_crs_get_geodetic_crs
360
360
  #
361
- # @return [CRS]
361
+ # @return [Crs]
362
362
  def geodetic_crs
363
363
  pointer = Api.proj_crs_get_geodetic_crs(self.context, self)
364
364
  self.class.create_object(pointer, self.context)
@@ -370,7 +370,7 @@ module Proj
370
370
  #
371
371
  # @param index [Integer] Index of the CRS component (typically 0 = horizontal, 1 = vertical)
372
372
  #
373
- # @return [CRS]
373
+ # @return [Crs]
374
374
  def sub_crs(index)
375
375
  pointer = Api.proj_crs_get_sub_crs(self.context, self, index)
376
376
  self.class.create_object(pointer, self.context)
@@ -407,7 +407,7 @@ module Proj
407
407
  #
408
408
  # @see https://proj.org/development/reference/functions.html#c.proj_crs_get_horizontal_datum
409
409
  #
410
- # @return [CRS]
410
+ # @return [Crs]
411
411
  def horizontal_datum
412
412
  pointer = Api.proj_crs_get_horizontal_datum(self.context, self)
413
413
  self.class.create_object(pointer, self.context)
@@ -473,7 +473,7 @@ module Proj
473
473
 
474
474
  # Returns a list of matching reference CRS, and the percentage (0-100) of confidence in the match.
475
475
  #
476
- # @param auth_name [string] - Authority name, or nil for all authorities
476
+ # @param auth_name [String] - Authority name, or nil for all authorities
477
477
  #
478
478
  # @return [Array] - Array of CRS objects sorted by decreasing confidence.
479
479
  def identify(auth_name)
@@ -501,7 +501,7 @@ module Proj
501
501
  #
502
502
  # @param name [String] The new name of the CRS
503
503
  #
504
- # @return [CRS]
504
+ # @return [Crs]
505
505
  def alter_name(name)
506
506
  ptr = Api.proj_alter_name(self.context, self, name)
507
507
 
@@ -514,10 +514,10 @@ module Proj
514
514
 
515
515
  # Return a copy of the CRS with its identifier changed
516
516
  #
517
- # @param name [String] The new authority name of the CRS
517
+ # @param auth_name [String] The new authority name of the CRS
518
518
  # @param code [String] The new code of the CRS
519
519
  #
520
- # @return [CRS]
520
+ # @return [Crs]
521
521
  def alter_id(auth_name, code)
522
522
  ptr = Api.proj_alter_id(self.context, self, auth_name, code)
523
523
 
@@ -535,9 +535,9 @@ module Proj
535
535
  # CRS with new_geod_crs.
536
536
  # * In other cases, it returns a clone of obj.
537
537
  #
538
- # @param new_geod_crs [CRS] A GeodeticCRS
538
+ # @param new_geod_crs [Crs] A GeodeticCRS
539
539
  #
540
- # @return [CRS]
540
+ # @return [Crs]
541
541
  def alter_geodetic_crs(new_geod_crs)
542
542
  ptr = Api.proj_crs_alter_geodetic_crs(self.context, self, new_geod_crs)
543
543
 
@@ -551,11 +551,11 @@ module Proj
551
551
  # Return a copy of the CRS with its angular units changed
552
552
  #
553
553
  # @param angular_units [String] Name of the angular units. Or nil for degrees.
554
- # @param angular_units_conv [Double] Conversion factor from the angular unit to radians. Default is 0 if angular_units is nil
554
+ # @param angular_units_conv [Float] Conversion factor from the angular unit to radians. Default is 0 if angular_units is nil
555
555
  # @param unit_auth_name [String] Unit authority name. Defaults to nil.
556
556
  # @param unit_code [String] Unit code. Defaults to nil.
557
557
  #
558
- # @return [CRS]
558
+ # @return [Crs]
559
559
  def alter_cs_angular_unit(angular_units: nil, angular_units_conv: 0, unit_auth_name: nil, unit_code: nil)
560
560
  ptr = Api.proj_crs_alter_cs_angular_unit(self.context, self, angular_units, angular_units_conv, unit_auth_name, unit_code)
561
561
 
@@ -570,11 +570,11 @@ module Proj
570
570
  # must be or contain a ProjectedCRS, VerticalCRS or a GeocentricCRS.
571
571
  #
572
572
  # @param linear_units [String] Name of the linear units. Or nil for meters.
573
- # @param linear_units_conv [Double] Conversion factor from the linear unit to meters. Default is 0 if linear_units is nil
573
+ # @param linear_units_conv [Float] Conversion factor from the linear unit to meters. Default is 0 if linear_units is nil
574
574
  # @param unit_auth_name [String] Unit authority name. Defaults to nil.
575
575
  # @param unit_code [String] Unit code. Defaults to nil.
576
576
  #
577
- # @return [CRS]
577
+ # @return [Crs]
578
578
  def alter_cs_linear_unit(linear_units: nil, linear_units_conv: 0, unit_auth_name: nil, unit_code: nil)
579
579
  ptr = Api.proj_crs_alter_cs_linear_unit(self.context, self, linear_units, linear_units_conv, unit_auth_name, unit_code)
580
580
 
@@ -589,7 +589,7 @@ module Proj
589
589
  # must be or contain a ProjectedCRS, VerticalCRS or a GeocentricCRS.
590
590
  #
591
591
  # @param linear_units [String] Name of the linear units. Or nil for meters.
592
- # @param linear_units_conv [Double] Conversion factor from the linear unit to meters. Default is 0 if linear_units is nil
592
+ # @param linear_units_conv [Float] Conversion factor from the linear unit to meters. Default is 0 if linear_units is nil
593
593
  # @param unit_auth_name [String] Unit authority name. Defaults to nil.
594
594
  # @param unit_code [String] Unit code. Defaults to nil.
595
595
  # @param convert_to_new_unit [Boolean] If true then existing values will be converted from
@@ -597,7 +597,7 @@ module Proj
597
597
  # and the unit overridden (so the resulting CRS will not be equivalent to the
598
598
  # original one for reprojection purposes).
599
599
  #
600
- # @return [CRS]
600
+ # @return [Crs]
601
601
  def alter_parameters_linear_unit(linear_units: nil, linear_units_conv: 0, unit_auth_name: nil, unit_code: nil, convert_to_new_unit:)
602
602
  ptr = Api.proj_crs_alter_parameters_linear_unit(self.context, self, linear_units, linear_units_conv,
603
603
  unit_auth_name, unit_code,
@@ -615,7 +615,7 @@ module Proj
615
615
  #
616
616
  # @param name [String] CRS name. If nil then the name of this CRS will be used.
617
617
  #
618
- # @return [CRS]
618
+ # @return [Crs]
619
619
  def promote_to_3d(name: nil)
620
620
  ptr = Api.proj_crs_promote_to_3D(self.context, name, self)
621
621
 
@@ -630,7 +630,7 @@ module Proj
630
630
  #
631
631
  # @param name [String] CRS name. If nil then the name of this CRS will be used.
632
632
  #
633
- # @return [CRS]
633
+ # @return [Crs]
634
634
  def demote_to_2d(name: nil)
635
635
  ptr = Api.proj_crs_demote_to_2D(self.context, name, self)
636
636
 
@@ -656,9 +656,9 @@ module Proj
656
656
  # This is equivalent to using Crs#promote_to_3d
657
657
  #
658
658
  # @param name [String] CRS name. If nil then the name of this CRS will be used.
659
- # @param geog_3D_crs [CRS] Base geographic 3D CRS for the new CRS. Defaults to nil.
659
+ # @param geog_3d_crs [Crs] Base geographic 3D CRS for the new CRS. Defaults to nil.
660
660
  #
661
- # @return [CRS]
661
+ # @return [Crs]
662
662
  def projected_3d(name: nil, geog_3d_crs: nil)
663
663
  ptr = Api.proj_crs_create_projected_3D_crs_from_2D(self.context, name, self, geog_3d_crs)
664
664
 
data/lib/proj/crs_info.rb CHANGED
@@ -1,23 +1,23 @@
1
1
  # encoding: UTF-8
2
2
  module Proj
3
3
  class CrsInfo
4
- attr_reader :auth_name, :code, :name, :type, :deprecated, :bbox_valid,
4
+ attr_reader :auth_name, :code, :name, :crs_type, :deprecated, :bbox_valid,
5
5
  :west_lon_degree, :south_lat_degree, :east_lon_degree, :north_lat_degree,
6
6
  :area_name, :projection_method_name, :celestial_body_name
7
7
 
8
8
  def self.from_proj_crs_info(proj_crs_info)
9
- data = {auth_name: proj_crs_info[:auth_name],
10
- code: proj_crs_info[:code],
11
- name: proj_crs_info[:name],
12
- type: proj_crs_info[:type],
13
- deprecated: proj_crs_info[:deprecated] == 1 ? true : false,
14
- bbox_valid: proj_crs_info[:bbox_valid] == 1 ? true : false,
15
- west_lon_degree: proj_crs_info[:west_lon_degree],
16
- south_lat_degree: proj_crs_info[:south_lat_degree],
17
- east_lon_degree: proj_crs_info[:east_lon_degree],
18
- north_lat_degree: proj_crs_info[:north_lat_degree],
19
- area_name: proj_crs_info[:area_name],
20
- projection_method_name: proj_crs_info[:projection_method_name]}
9
+ data = { auth_name: proj_crs_info[:auth_name],
10
+ code: proj_crs_info[:code],
11
+ name: proj_crs_info[:name],
12
+ crs_type: proj_crs_info[:type],
13
+ deprecated: proj_crs_info[:deprecated] == 1 ? true : false,
14
+ bbox_valid: proj_crs_info[:bbox_valid] == 1 ? true : false,
15
+ west_lon_degree: proj_crs_info[:west_lon_degree],
16
+ south_lat_degree: proj_crs_info[:south_lat_degree],
17
+ east_lon_degree: proj_crs_info[:east_lon_degree],
18
+ north_lat_degree: proj_crs_info[:north_lat_degree],
19
+ area_name: proj_crs_info[:area_name],
20
+ projection_method_name: proj_crs_info[:projection_method_name]}
21
21
 
22
22
  if Api::PROJ_VERSION >= Gem::Version.new('8.1.0')
23
23
  data[:celestial_body_name] = proj_crs_info[:celestial_body_name]
@@ -26,13 +26,13 @@ module Proj
26
26
  new(**data)
27
27
  end
28
28
 
29
- def initialize(auth_name:, code:, name:, type:, deprecated:, bbox_valid:,
29
+ def initialize(auth_name:, code:, name:, crs_type:, deprecated:, bbox_valid:,
30
30
  west_lon_degree:, south_lat_degree:, east_lon_degree:, north_lat_degree:,
31
31
  area_name:, projection_method_name:, celestial_body_name: nil)
32
32
  @auth_name = auth_name
33
33
  @code = code
34
34
  @name = name
35
- @type = type
35
+ @crs_type = crs_type
36
36
  @deprecated = deprecated
37
37
  @bbox_valid = bbox_valid
38
38
  @west_lon_degree = west_lon_degree
data/lib/proj/database.rb CHANGED
@@ -84,12 +84,12 @@ module Proj
84
84
  # @see https://proj.org/development/reference/functions.html#c.proj_get_codes_from_database
85
85
  #
86
86
  # @param auth_name [String] Authority name. Must not be nil.
87
- # @param type [PJ_TYPE] Object type.
87
+ # @param pj_type [PJ_TYPE] Proj Object type.
88
88
  # @param allow_deprecated [Boolean] Specifies if deprecated objects should be returned. Default is false.
89
89
  #
90
90
  # @return [Strings] Returned authority codes
91
- def codes(auth_name, type, allow_deprecated = false)
92
- ptr = Api.proj_get_codes_from_database(self.context, auth_name, type, allow_deprecated ? 1 : 0)
91
+ def codes(auth_name, pj_type, allow_deprecated = false)
92
+ ptr = Api.proj_get_codes_from_database(self.context, auth_name, pj_type, allow_deprecated ? 1 : 0)
93
93
  Strings.new(ptr)
94
94
  end
95
95
 
data/lib/proj/datum.rb CHANGED
@@ -4,7 +4,7 @@ module Proj
4
4
  #
5
5
  # @see https://proj.org/development/reference/functions.html#c.proj_dynamic_datum_get_frame_reference_epoch
6
6
  #
7
- # @return [Double] The frame reference epoch as decimal year, or -1 in case of error.
7
+ # @return [Float] The frame reference epoch as decimal year, or -1 in case of error.
8
8
  def frame_reference_epoch
9
9
  Api.proj_dynamic_datum_get_frame_reference_epoch(self.context, self)
10
10
  end
@@ -43,7 +43,7 @@ module Proj
43
43
  #
44
44
  # @see https://proj.org/development/reference/functions.html#c.proj_ellipsoid_get_parameters
45
45
  #
46
- # @return [Double]
46
+ # @return [Float]
47
47
  def semi_major_axis
48
48
  self.parameters[:semi_major_axis]
49
49
  end
@@ -52,7 +52,7 @@ module Proj
52
52
  #
53
53
  # @see https://proj.org/development/reference/functions.html#c.proj_ellipsoid_get_parameters
54
54
  #
55
- # @return [Double]
55
+ # @return [Float]
56
56
  def semi_minor_axis
57
57
  self.parameters[:semi_minor_axis]
58
58
  end
@@ -70,7 +70,7 @@ module Proj
70
70
  #
71
71
  # @see https://proj.org/development/reference/functions.html#c.proj_ellipsoid_get_parameters
72
72
  #
73
- # @return [Double]
73
+ # @return [Float]
74
74
  def inverse_flattening
75
75
  self.parameters[:inverse_flattening]
76
76
  end
data/lib/proj/grid.rb CHANGED
@@ -85,7 +85,7 @@ module Proj
85
85
  # @see https://proj.org/development/reference/functions.html#c.proj_download_file
86
86
  #
87
87
  # @param ignore_ttl [Boolean] If set to FALSE, PROJ will only check the recentness of an already downloaded file, if the delay between the last time it has been verified and the current time exceeds the TTL setting. This can save network accesses. If set to TRUE, PROJ will unconditionally check from the server the recentness of the file.
88
- # @yieldparam percent [Double] The progress downloading the file in the range of 0 to 1
88
+ # @yieldparam percent [Float] The progress downloading the file in the range of 0 to 1
89
89
  #
90
90
  # @return [Boolean] True if the download was successful or unneeded. Otherwise false
91
91
  def download(ignore_ttl = false)
@@ -3,10 +3,10 @@ module Proj
3
3
  attr_reader :id, :description
4
4
 
5
5
  def self.list
6
- pointer_to_array = FFI::Pointer.new(Api::PJ_OPERATIONS, Api.proj_list_operations)
6
+ pointer_to_array = FFI::Pointer.new(Api::PJ_LIST, Api.proj_list_operations)
7
7
  result = Array.new
8
8
  0.step do |i|
9
- operation_info = Api::PJ_OPERATIONS.new(pointer_to_array[i])
9
+ operation_info = Api::PJ_LIST.new(pointer_to_array[i])
10
10
  break result if operation_info[:id].nil?
11
11
  id = operation_info[:id]
12
12
  description = operation_info[:descr].read_pointer.read_string.force_encoding('UTF-8')
@@ -3,6 +3,7 @@ module Proj
3
3
  class OperationFactoryContext
4
4
  attr_reader :context
5
5
 
6
+ # @!visibility private
6
7
  def self.finalize(pointer)
7
8
  proc do
8
9
  Api.proj_operation_factory_context_destroy(pointer)
@@ -44,7 +45,7 @@ module Proj
44
45
 
45
46
  # Set the desired accuracy of the resulting coordinate transformations.
46
47
  #
47
- # @param value [double] - Accuracy in meters. Set to 0 to disable the filter.
48
+ # @param value [Float] - Accuracy in meters. Set to 0 to disable the filter.
48
49
  def desired_accuracy=(value)
49
50
  Api.proj_operation_factory_context_set_desired_accuracy(self.context, self, value)
50
51
  end
@@ -1,6 +1,7 @@
1
1
  # encoding: UTF-8
2
2
  module Proj
3
3
  class Parameters
4
+ # @!visibility private
4
5
  def self.finalize(pointer)
5
6
  proc do
6
7
  Api.proj_get_crs_list_parameters_destroy(pointer)
@@ -205,7 +205,7 @@ module Proj
205
205
 
206
206
  # Assign a new context to this object
207
207
  #
208
- # @param [Context] The context to assign to this object
208
+ # @param value [Context] The context to assign to this object
209
209
  def context=(value)
210
210
  Api.proj_assign_context(self, value)
211
211
  end
@@ -310,7 +310,7 @@ module Proj
310
310
  #
311
311
  # @see https://proj.org/development/reference/functions.html#c.proj_pj_info
312
312
  #
313
- # @return [Double]
313
+ # @return [Float]
314
314
  def accuracy
315
315
  self.info[:accuracy]
316
316
  end
@@ -468,7 +468,7 @@ module Proj
468
468
  # @param coord1 [Coordinate] Coordinate of first point. Must be lat/long in radians
469
469
  # @param coord2 [Coordinate] Coordinate of second point. Must be lat/long in radians
470
470
  #
471
- # @return [Double] Distance between the coordinates in meters
471
+ # @return [Float] Distance between the coordinates in meters
472
472
  def lp_distance(coord1, coord2)
473
473
  Api.proj_lp_dist(self, coord1, coord2)
474
474
  end
@@ -485,7 +485,7 @@ module Proj
485
485
  # @param coord1 [Coordinate] Coordinate of first point. Must be lat/long in radians
486
486
  # @param coord2 [Coordinate] Coordinate of second point. Must be lat/long in radians
487
487
  #
488
- # @return [Double] Distance between the coordinates in meters
488
+ # @return [Float] Distance between the coordinates in meters
489
489
  def lpz_distance(coord1, coord2)
490
490
  Api.proj_lpz_dist(self, coord1, coord2)
491
491
  end
@@ -497,7 +497,7 @@ module Proj
497
497
  # @param coord1 [Coordinate] Coordinate of first point
498
498
  # @param coord2 [Coordinate] Coordinate of second point
499
499
  #
500
- # @return [Double] Distance between the coordinates in meters
500
+ # @return [Float] Distance between the coordinates in meters
501
501
  def xy_distance(coord1, coord2)
502
502
  Api.proj_xy_dist(coord1, coord2)
503
503
  end
@@ -510,7 +510,7 @@ module Proj
510
510
  # @param coord1 [Coordinate] Coordinate of first point
511
511
  # @param coord2 [Coordinate] Coordinate of second point
512
512
  #
513
- # @return [Double] Distance between the coordinates in meters
513
+ # @return [Float] Distance between the coordinates in meters
514
514
  def xyz_distance(coord1, coord2)
515
515
  Api.proj_xyz_dist(coord1, coord2)
516
516
  end
@@ -1,6 +1,7 @@
1
1
  # encoding: UTF-8
2
2
  module Proj
3
3
  class PjObjects
4
+ # @!visibility private
4
5
  def self.finalize(pointer)
5
6
  proc do
6
7
  Api.proj_list_destroy(pointer)
@@ -40,7 +40,7 @@ module Proj
40
40
  #
41
41
  # @see https://proj.org/development/reference/functions.html#c.proj_prime_meridian_get_parameters
42
42
  #
43
- # @return [Double]
43
+ # @return [Float]
44
44
  def longitude
45
45
  self.parameters[:longitude]
46
46
  end
@@ -49,7 +49,7 @@ module Proj
49
49
  #
50
50
  # @see https://proj.org/development/reference/functions.html#c.proj_prime_meridian_get_parameters
51
51
  #
52
- # @return [Double]
52
+ # @return [Float]
53
53
  def unit_conv_factor
54
54
  self.parameters[:unit_conv_factor]
55
55
  end