Class: Proj::Parameters

Inherits:
Object
  • Object
show all
Defined in:
lib/proj/parameters.rb

Instance Method Summary collapse

Constructor Details

#initializeParameters

Returns a new instance of Parameters.



11
12
13
14
# File 'lib/proj/parameters.rb', line 11

def initialize
  @params = Api.proj_get_crs_list_parameters_create
  ObjectSpace.define_finalizer(self, self.class.finalize(@params))
end

Instance Method Details

#allow_deprecatedObject



89
90
91
# File 'lib/proj/parameters.rb', line 89

def allow_deprecated
  @params[:allow_deprecated] == 1 ? true : false
end

#allow_deprecated=(value) ⇒ Object



93
94
95
# File 'lib/proj/parameters.rb', line 93

def allow_deprecated=(value)
  @params[:allow_deprecated] = value ? 1 : 0
end

#bbox_validObject



49
50
51
# File 'lib/proj/parameters.rb', line 49

def bbox_valid
  @params[:bbox_valid] == 1 ? true : false
end

#bbox_valid=(value) ⇒ Object



53
54
55
# File 'lib/proj/parameters.rb', line 53

def bbox_valid=(value)
  @params[:bbox_valid] = value ? 1 : 0
end

#celestial_body_nameObject



97
98
99
# File 'lib/proj/parameters.rb', line 97

def celestial_body_name
  @params[:celestial_body_name]
end

#celestial_body_name=(value) ⇒ Object



101
102
103
104
# File 'lib/proj/parameters.rb', line 101

def celestial_body_name=(value)
  @celestial_body_name = FFI::MemoryPointer.from_string(value)
  @params.pointer.put_pointer(@params.offset_of(:celestial_body_name), @celestial_body_name)
end

#crs_area_of_use_contains_bboxObject



41
42
43
# File 'lib/proj/parameters.rb', line 41

def crs_area_of_use_contains_bbox
  @params[:crs_area_of_use_contains_bbox]
end

#crs_area_of_use_contains_bbox=(value) ⇒ Object



45
46
47
# File 'lib/proj/parameters.rb', line 45

def crs_area_of_use_contains_bbox=(value)
  @params[:crs_area_of_use_contains_bbox] = value
end

#east_lon_degreeObject



73
74
75
# File 'lib/proj/parameters.rb', line 73

def east_lon_degree
  @params[:east_lon_degree]
end

#east_lon_degree=(value) ⇒ Object



77
78
79
# File 'lib/proj/parameters.rb', line 77

def east_lon_degree=(value)
  @params[:east_lon_degree] = value
end

#north_lat_degreeObject



81
82
83
# File 'lib/proj/parameters.rb', line 81

def north_lat_degree
  @params[:north_lat_degree]
end

#north_lat_degree=(value) ⇒ Object



85
86
87
# File 'lib/proj/parameters.rb', line 85

def north_lat_degree=(value)
  @params[:north_lat_degree] = value
end

#south_lat_degreeObject



65
66
67
# File 'lib/proj/parameters.rb', line 65

def south_lat_degree
  @params[:south_lat_degree]
end

#south_lat_degree=(value) ⇒ Object



69
70
71
# File 'lib/proj/parameters.rb', line 69

def south_lat_degree=(value)
  @params[:south_lat_degree] = value
end

#to_ptrObject



16
17
18
# File 'lib/proj/parameters.rb', line 16

def to_ptr
  @params.to_ptr
end

#typesObject



20
21
22
23
24
25
26
27
28
29
30
# File 'lib/proj/parameters.rb', line 20

def types
  result = Array.new

  unless @params[:types].null?
    ints = @params[:types].read_array_of_int(@params[:types_count])
    ints.each do |int|
      result << Api::PjType[int]
    end
  end
  result
end

#types=(values) ⇒ Object



32
33
34
35
36
37
38
39
# File 'lib/proj/parameters.rb', line 32

def types=(values)
  @types_ptr = FFI::MemoryPointer.new(:int, values.size)
  ints = values.map {|symbol| Api::PjType[symbol]}
  @types_ptr.write_array_of_int(ints)

  @params[:types] = @types_ptr
  @params[:types_count] = values.size
end

#west_lon_degreeObject



57
58
59
# File 'lib/proj/parameters.rb', line 57

def west_lon_degree
  @params[:west_lon_degree]
end

#west_lon_degree=(value) ⇒ Object



61
62
63
# File 'lib/proj/parameters.rb', line 61

def west_lon_degree=(value)
  @params[:west_lon_degree] = value
end