ruby-gr 0.73.6.0 → 0.73.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c49cfd6712b94567eebb2ae2b4e2f67c227acc0bce428c15d777419d4b6ba31b
4
- data.tar.gz: ecd7816d1e8f9784169ee9b917189361b18f6424958c70498279731c42c985c0
3
+ metadata.gz: 51280dfb8fb8ed2385148658651d3c4109307394f31c270cc715595097ccae3a
4
+ data.tar.gz: d6231ee72a5027eeb587f3b537568774458e07f336e4aa4363472f88b52f8aa4
5
5
  SHA512:
6
- metadata.gz: 63bcc49377529b51fbf7d8005ee75c6b3af6961fd96ffd5ae769dbf495b75fbe064f6c50a3e180e1e8030dfa97297abdd4442c89e17b0fea49865e045dbfb464
7
- data.tar.gz: 40024235f7e6599a5a9555dacac610a74e4abf1ee07332c7a82a834e3b070d9096d79408e453078014f7f59bdc58182f29a39e8e2afbf5d8b8536a3a6b86eabf
6
+ metadata.gz: 197d1aa2c250e109aae5c56973ff8ae1baa7bbdb963708763c789b286a5810c5a239f166507b72f75efc69f9b440db39a4b5df4c702a7a117ffeca6f4a8c9fc9
7
+ data.tar.gz: 50f09df9aed163d17b8f5fcea1ebb94f72abfffe28fd83bae262dcd64a706f4a4090203b38e04fc607bb6631ddb6f02c73c823363989e7f549454d110240d19d
data/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  [![Gem Version](https://img.shields.io/gem/v/ruby-gr?color=brightgreen)](https://rubygems.org/gems/ruby-gr)
4
4
  [![CI](https://github.com/red-data-tools/GR.rb/workflows/CI/badge.svg)](https://github.com/red-data-tools/GR.rb/actions)
5
- [![Gitter Chat](https://badges.gitter.im/red-data-tools/en.svg)](https://gitter.im/red-data-tools/en)
6
5
  [![Docs Latest](https://img.shields.io/badge/docs-latest-blue.svg)](https://red-data-tools.github.io/GR.rb/)
6
+ [![Lines of Code](https://img.shields.io/endpoint?url=https%3A%2F%2Ftokei.kojix2.net%2Fbadge%2Fgithub%2Fred-data-tools%2FGR.rb%2Flines)](https://tokei.kojix2.net/github/red-data-tools/GR.rb)
7
7
 
8
8
  [![rdatasets-1](https://i.imgur.com/XEQ6wKs.png)](examples/rdatasets.rb)
9
9
  [![stem](https://i.imgur.com/3w0Ejrm.png)](examples/fast_plots.rb)
data/lib/gr/ffi.rb CHANGED
@@ -125,8 +125,8 @@ module GR
125
125
  try_extern 'void gr_inqfillstyle(int *)'
126
126
  try_extern 'void gr_setfillcolorind(int)'
127
127
  try_extern 'void gr_inqfillcolorind(int *)'
128
- try_extern 'void gr_setresizebehaviour(int)'
129
- try_extern 'void gr_inqresizebehaviour(int *)'
128
+ try_extern 'void gr_setnominalsize(double)'
129
+ try_extern 'void gr_inqnominalsize(double *)'
130
130
  try_extern 'void gr_setcolorrep(int, double, double, double)'
131
131
  try_extern 'void gr_setwindow(double, double, double, double)'
132
132
  try_extern 'void gr_inqwindow(double *, double *, double *, double *)'
@@ -212,6 +212,8 @@ module GR
212
212
  try_extern 'char *gr_getgraphics(void)'
213
213
  try_extern 'int gr_drawgraphics(char *)'
214
214
  try_extern 'int gr_startlistener(void)'
215
+ try_extern 'int gr_inqgrplotport(void)'
216
+ try_extern 'int gr_setgrplotport(int)'
215
217
  try_extern 'void gr_mathtex(double, double, char *)'
216
218
  try_extern 'void gr_inqmathtex(double, double, char *, double *, double *)'
217
219
  try_extern 'void gr_mathtex3d(double, double, double, char *, int)'
@@ -223,6 +225,8 @@ module GR
223
225
  try_extern 'void gr_moveselection(double, double)'
224
226
  try_extern 'void gr_resizeselection(int, double, double)'
225
227
  try_extern 'void gr_inqbbox(double *, double *, double *, double *)'
228
+ try_extern 'void gr_setbackground(void)'
229
+ try_extern 'void gr_clearbackground(void)'
226
230
  try_extern 'double gr_precision(void)'
227
231
  try_extern 'int gr_text_maxsize(void)'
228
232
  try_extern 'void gr_setregenflags(int)'
@@ -294,6 +298,7 @@ module GR
294
298
  # typedef double (*radius_f)(const data_point3d_t *, const void *);
295
299
  typealias 'kernel_f', 'void*'
296
300
  typealias 'radius_f', 'void*'
301
+ typealias 'interp2_method_t', 'int'
297
302
  try_extern 'void gr_volume_nogrid(unsigned long, const data_point3d_t *, const void *, int, kernel_f, double *, double *, double, radius_f)'
298
303
  try_extern 'void gr_volume_interp_tri_linear_init(double, double, double)'
299
304
  try_extern 'void gr_volume_interp_gauss_init(double, double *)'
@@ -303,6 +308,8 @@ module GR
303
308
  try_extern 'void gr_inqmathfont(int *font)'
304
309
  try_extern 'void gr_setclipregion(int region)'
305
310
  try_extern 'void gr_inqclipregion(int *region)'
311
+ try_extern 'void gr_setclipsector(double start_angle, double end_angle)'
312
+ try_extern 'void gr_inqclipsector(double *start_angle, double *end_angle)'
306
313
  try_extern 'void gr_settextoffset(double xoff, double yoff)'
307
314
  try_extern 'char *gr_ftoa(char *string, double value, format_reference_t *reference)'
308
315
  try_extern 'void gr_getformat(format_reference_t *result, double origin, double min, double max, double tick_width, int major)'
data/lib/gr.rb CHANGED
@@ -137,7 +137,7 @@ module GR
137
137
  # * 371 : Gtk
138
138
  # * 380 : wxWidgets
139
139
  # * 381 : Qt4
140
- # * 382 : Scaleable Vector Graphics (SVG)
140
+ # * 382 : Scalable Vector Graphics (SVG)
141
141
  # * 390 : Windows Metafile
142
142
  # * 400 : Quartz
143
143
  # * 410 : Socket driver
@@ -519,7 +519,7 @@ module GR
519
519
  inquiry_int { |pt| super(pt) }
520
520
  end
521
521
 
522
- # Specifiy the marker type for polymarkers.
522
+ # Specify the marker type for polymarkers.
523
523
  #
524
524
  # @param style [Integer] The polymarker marker type
525
525
  # * 1 : MARKERTYPE_DOT - Smallest displayable dot
@@ -732,7 +732,7 @@ module GR
732
732
  # * 3 : TEXT_HALIGN_RIGHT - Right justify
733
733
  #
734
734
  # @param vertical [Integer] Vertical text alignment
735
- # * 0 : TEXT_VALIGN_NORMAL  
735
+ # * 0 : TEXT_VALIGN_NORMAL
736
736
  # * 1 : TEXT_VALIGN_TOP - Align with the top of the characters
737
737
  # * 2 : TEXT_VALIGN_CAP - Aligned with the cap of the characters
738
738
  # * 3 : TEXT_VALIGN_HALF - Aligned with the half line of the characters
data/lib/gr3.rb CHANGED
@@ -288,7 +288,7 @@ module GR3
288
288
  #
289
289
  # This function does not return an error code, because of its asynchronous
290
290
  # nature. If gr3_getpixmap_() returns a GR3_ERROR_OPENGL_ERR, this might be
291
- # caused by this function saving unuseable data into the draw list.
291
+ # caused by this function saving unusable data into the draw list.
292
292
  #
293
293
  # @param mesh [Integer] The mesh to be drawn
294
294
  # @param n [Integer] The number of meshes to be drawn
@@ -34,7 +34,7 @@ module GRCommons
34
34
  #
35
35
  # @note Mainly used by developers for debugging.
36
36
  #
37
- # = How it works 
37
+ # = How it works
38
38
  # It prepend a module named Inspector to the singular class of the FFI module.
39
39
  # It will inspects the GR function call of the FFI module
40
40
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GRCommons
4
- VERSION = '0.73.6.0'
4
+ VERSION = '0.73.17.0'
5
5
  end
data/lib/grm/ffi.rb CHANGED
@@ -21,7 +21,7 @@ module GRM
21
21
  # header files.
22
22
 
23
23
  # https://github.com/sciapp/gr/blob/master/lib/grm/include/grm/args.h
24
- try_extern 'grm_args_value_iterator_t *grm_arg_value_iter(const arg_t *arg)'
24
+ try_extern 'grm_args_value_iterator_t *grm_arg_value_iter(const grm_arg_t *arg)'
25
25
  try_extern 'grm_args_t *grm_args_new(void)'
26
26
  try_extern 'void grm_args_delete(grm_args_t *args)'
27
27
  try_extern 'int grm_args_push(grm_args_t *args, const char *key, const char *value_format, ...)'
@@ -39,6 +39,9 @@ module GRM
39
39
  try_extern 'void grm_dump(const grm_args_t *args, FILE *f)'
40
40
  try_extern 'void grm_dump_json(const grm_args_t *args, FILE *f)'
41
41
  try_extern 'char *grm_dump_json_str(void)'
42
+ try_extern 'char *grm_dump_html(char *plot_id)'
43
+ try_extern 'char *grm_dump_html_args(char *plot_id, grm_args_t *args)'
44
+ try_extern 'void grm_dump_bson(const grm_args_t *args, FILE *f)'
42
45
 
43
46
  # https://github.com/sciapp/gr/blob/master/lib/grm/include/grm/event.h
44
47
  typealias 'grm_event_type_t', 'int' # enum
@@ -71,7 +74,7 @@ module GRM
71
74
  try_extern 'int grm_clear(void)'
72
75
  try_extern 'void grm_dump_graphics_tree(FILE *f)'
73
76
  try_extern 'char *grm_dump_graphics_tree_str(void)'
74
- try_extern 'unsigned int grm_max_plotid(void)'
77
+ try_extern 'unsigned int grm_max_plot_id(void)'
75
78
  try_extern 'int grm_merge(const grm_args_t *args)'
76
79
  try_extern 'int grm_merge_extended(const grm_args_t *args, int hold, const char *identificator)'
77
80
  try_extern 'int grm_merge_hold(const grm_args_t *args)'
@@ -82,5 +85,17 @@ module GRM
82
85
  try_extern 'int grm_export(const char *file_path)'
83
86
  try_extern 'int grm_switch(unsigned int id)'
84
87
  try_extern 'int grm_load_graphics_tree(FILE *file)'
88
+ try_extern 'int grm_validate(void)'
89
+ # The following functions use C++ types that cannot be parsed by Fiddle
90
+ # try_extern 'std::shared_ptr<GRM::Element> grm_get_document_root(void)'
91
+ # try_extern 'std::shared_ptr<GRM::Render> grm_get_render(void)'
92
+ # try_extern 'int grm_iterate_grid(GRM::Grid *grid, const std::shared_ptr<GRM::Element> &parent_dom_element, int plot_id)'
93
+ # try_extern 'int grm_plot_helper(GRM::GridElement *grid_element, GRM::Slice *slice, const std::shared_ptr<GRM::Element> &parent_dom_element, int plot_id)'
94
+ # try_extern 'std::shared_ptr<GRM::Element> grm_get_subplot_from_ndc_point_using_dom(double x, double y)'
95
+ # try_extern 'std::shared_ptr<GRM::Element> grm_get_subplot_from_ndc_points_using_dom(unsigned int n, const double *x, const double *y)'
96
+ # try_extern 'void grm_set_attribute_on_all_subplots(std::string attribute, int value)'
97
+ # try_extern 'int grm_get_focus_and_factor_from_dom(const int x1, const int y1, const int x2, const int y2, const int keep_aspect_ratio, double *factor_x, double *factor_y, double *focus_x, double *focus_y, std::shared_ptr<GRM::Element> &subplot_element)'
98
+ # try_extern 'std::map<std::string, std::list<std::string>> grm_get_context_data()'
99
+ # try_extern 'std::shared_ptr<GRM::Document> grm_load_graphics_tree_schema(bool with_private_attributes = false)'
85
100
  end
86
101
  end
data/lib/grm.rb CHANGED
@@ -67,15 +67,13 @@ module GRM
67
67
  case value
68
68
  when Hash
69
69
  new(**value)
70
- else
71
- nil
72
70
  end
73
71
  end
74
72
  end
75
73
 
76
74
  def initialize(**args)
77
75
  @args = GRM.args_new
78
- @args.free = FFI["grm_args_delete"]
76
+ @args.free = FFI['grm_args_delete']
79
77
  @references = []
80
78
  args.each do |key, value|
81
79
  push(key, value)
@@ -86,42 +84,42 @@ module GRM
86
84
  key = key.to_s if key.is_a?(Symbol)
87
85
  case value
88
86
  when String
89
- GRM.args_push(@args, key, "s", :const_string, value)
87
+ GRM.args_push(@args, key, 's', :const_string, value)
90
88
  when Integer
91
- GRM.args_push(@args, key, "i", :int, value)
89
+ GRM.args_push(@args, key, 'i', :int, value)
92
90
  when Float
93
- GRM.args_push(@args, key, "d", :double, value)
91
+ GRM.args_push(@args, key, 'd', :double, value)
94
92
  when Args
95
- GRM.args_push(@args, key, "a", :voidp, value.address)
93
+ GRM.args_push(@args, key, 'a', :voidp, value.address)
96
94
  value.to_gr.free = nil
97
95
  when Array
98
96
  case value[0]
99
97
  when String
100
- addresses = value.collect {|v| Fiddle::Pointer[v].to_i}
101
- GRM.args_push(@args, key, "nS",
98
+ addresses = value.collect { |v| Fiddle::Pointer[v].to_i }
99
+ GRM.args_push(@args, key, 'nS',
102
100
  :int, value.size,
103
- :voidp, addresses.pack("J*"))
101
+ :voidp, addresses.pack('J*'))
104
102
  when Integer
105
- GRM.args_push(@args, key, "nI",
103
+ GRM.args_push(@args, key, 'nI',
106
104
  :int, value.size,
107
- :voidp, value.pack("i*"))
105
+ :voidp, value.pack('i*'))
108
106
  when Float
109
- GRM.args_push(@args, key, "nD",
107
+ GRM.args_push(@args, key, 'nD',
110
108
  :int, value.size,
111
- :voidp, value.pack("d*"))
109
+ :voidp, value.pack('d*'))
112
110
  when Args
113
- GRM.args_push(@args, key, "nA",
111
+ GRM.args_push(@args, key, 'nA',
114
112
  :int, value.size,
115
- :voidp, value.collect(&:address).pack("J*"))
113
+ :voidp, value.collect(&:address).pack('J*'))
116
114
  value.each do |v|
117
115
  v.to_gr.free = nil
118
116
  end
119
117
  else
120
- vs = value.collect {|v| Args.new(**v)}
118
+ vs = value.collect { |v| Args.new(**v) }
121
119
  @references.concat(vs)
122
- GRM.args_push(@args, key, "nA",
120
+ GRM.args_push(@args, key, 'nA',
123
121
  :int, value.size,
124
- :voidp, vs.collect(&:address).pack("J*"))
122
+ :voidp, vs.collect(&:address).pack('J*'))
125
123
  vs.each do |v|
126
124
  v.to_gr.free = nil
127
125
  end
@@ -129,7 +127,7 @@ module GRM
129
127
  else
130
128
  v = Args.new(**value)
131
129
  @references << v
132
- GRM.args_push(@args, key, "a", :voidp, v.address)
130
+ GRM.args_push(@args, key, 'a', :voidp, v.address)
133
131
  v.to_gr.free = nil
134
132
  end
135
133
  end
@@ -149,23 +147,23 @@ module GRM
149
147
  end
150
148
 
151
149
  class << self
152
- def merge(args=nil)
150
+ def merge(args = nil)
153
151
  super(Args.try_convert(args) || args)
154
152
  end
155
153
 
156
- def merge_extended(args=nil, hold=0, identifiator=nil)
154
+ def merge_extended(args = nil, hold = 0, _identifiator = nil)
157
155
  super(Args.try_convert(args) || args, hold, identificator)
158
156
  end
159
157
 
160
- def merge_hold(args=nil)
158
+ def merge_hold(args = nil)
161
159
  super(Args.try_convert(args) || args)
162
160
  end
163
161
 
164
- def merge_named(args=nil, identifiator=nil)
162
+ def merge_named(args = nil, _identifiator = nil)
165
163
  super(Args.try_convert(args) || args, identificator)
166
164
  end
167
165
 
168
- def plot(args=nil)
166
+ def plot(args = nil)
169
167
  super(Args.try_convert(args) || args)
170
168
  end
171
169
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-gr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.73.6.0
4
+ version: 0.73.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - kojix2
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2024-08-06 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: fiddle
@@ -99,7 +99,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  - !ruby/object:Gem::Version
100
100
  version: '0'
101
101
  requirements: []
102
- rubygems_version: 3.6.0.dev
102
+ rubygems_version: 3.7.1
103
103
  specification_version: 4
104
104
  summary: GR for Ruby
105
105
  test_files: []