contrek 1.3.1 → 1.3.2

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.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/Gemfile.lock +1 -1
  4. data/README.md +3 -3
  5. data/ext/cpp_polygon_finder/PolygonFinder/src/Tests.cpp +23 -3
  6. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/bitmaps/FastPngBitmap.cpp +2 -2
  7. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/bitmaps/RawBitmap.cpp +2 -2
  8. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/bitmaps/RemoteFastPngBitmap.cpp +1 -1
  9. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/Node.h +2 -2
  10. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/NodeCluster.h +4 -2
  11. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/PolygonFinder.cpp +6 -6
  12. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Cluster.cpp +16 -10
  13. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Cluster.h +1 -1
  14. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Cursor.cpp +16 -15
  15. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Cursor.h +3 -3
  16. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Finder.cpp +1 -9
  17. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/GeoJsonStreamingMerger.h +81 -0
  18. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/InnerPolyline.cpp +9 -28
  19. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/InnerPolyline.h +10 -11
  20. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Part.h +5 -3
  21. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Polyline.cpp +4 -3
  22. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Polyline.h +7 -5
  23. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Position.cpp +1 -1
  24. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Queueable.h +2 -2
  25. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Sequence.cpp +0 -14
  26. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Sequence.h +0 -2
  27. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Shape.cpp +5 -5
  28. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/ShapePool.cpp +31 -26
  29. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/ShapePool.h +7 -7
  30. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/StreamingMerger.cpp +12 -31
  31. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/StreamingMerger.h +10 -8
  32. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/SubPool.h +47 -0
  33. data/ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/SvgStreamingMerger.h +43 -0
  34. data/ext/cpp_polygon_finder/cpp_polygon_finder.cpp +2 -1
  35. data/lib/contrek/finder/concurrent/cluster.rb +6 -5
  36. data/lib/contrek/finder/concurrent/cursor.rb +2 -1
  37. data/lib/contrek/finder/concurrent/finder.rb +1 -12
  38. data/lib/contrek/finder/concurrent/inner_polyline.rb +8 -25
  39. data/lib/contrek/finder/concurrent/sequence.rb +1 -17
  40. data/lib/contrek/version.rb +1 -1
  41. metadata +8 -5
@@ -3,13 +3,9 @@
3
3
  module Contrek
4
4
  module Concurrent
5
5
  class Sequence
6
- attr_accessor :vertical_bounds, :shape
6
+ attr_accessor :shape
7
7
  prepend Queueable
8
8
 
9
- def initialize
10
- @vertical_bounds = nil
11
- end
12
-
13
9
  def is_not_vertical
14
10
  return false if size < 2
15
11
  x0 = head.payload[:x]
@@ -21,18 +17,6 @@ module Contrek
21
17
  false
22
18
  end
23
19
 
24
- def compute_vertical_bounds!
25
- return if size == 0
26
- min_y = Float::INFINITY
27
- max_y = 0
28
- get_vector_cache.each do |pos|
29
- y = pos[:y]
30
- min_y = y if y < min_y
31
- max_y = y if y > max_y
32
- end
33
- @vertical_bounds = {min: min_y, max: max_y}
34
- end
35
-
36
20
  def get_vector_cache
37
21
  @vector_cache ||= to_a
38
22
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Contrek
4
- VERSION = "1.3.1"
4
+ VERSION = "1.3.2"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: contrek
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Emanuele Cesaroni
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-20 00:00:00.000000000 Z
11
+ date: 2026-06-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -188,6 +188,7 @@ files:
188
188
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/FakeCluster.h
189
189
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Finder.cpp
190
190
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Finder.h
191
+ - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/GeoJsonStreamingMerger.h
191
192
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/HorizontalMerger.cpp
192
193
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/HorizontalMerger.h
193
194
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Hub.cpp
@@ -218,6 +219,8 @@ files:
218
219
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/ShapePool.h
219
220
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/StreamingMerger.cpp
220
221
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/StreamingMerger.h
222
+ - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/SubPool.h
223
+ - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/SvgStreamingMerger.h
221
224
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Tile.cpp
222
225
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/Tile.h
223
226
  - ext/cpp_polygon_finder/PolygonFinder/src/polygon/finder/concurrent/VerticalMerger.cpp
@@ -307,7 +310,7 @@ metadata:
307
310
  homepage_uri: https://github.com/runout77/contrek
308
311
  documentation_uri: https://github.com/runout77/contrek#readme
309
312
  changelog_uri: https://github.com/runout77/contrek/blob/main/CHANGELOG.md
310
- post_install_message:
313
+ post_install_message:
311
314
  rdoc_options: []
312
315
  require_paths:
313
316
  - lib
@@ -323,7 +326,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
323
326
  version: '0'
324
327
  requirements: []
325
328
  rubygems_version: 3.5.22
326
- signing_key:
329
+ signing_key:
327
330
  specification_version: 4
328
331
  summary: Fast PNG contour tracing and shape detection for Ruby
329
332
  test_files: []