libgd-gis 0.1.2 → 0.1.3
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 +4 -4
- data/README.md +78 -31
- data/examples/{a-world_peaks.rb → america-peaks.rb} +4 -4
- data/examples/asia-peaks.rb +42 -0
- data/examples/av_ramirez.rb +34 -0
- data/examples/europe-peaks.rb +42 -0
- data/examples/heladerias.json +47 -0
- data/examples/heladerias.rb +40 -0
- data/examples/ice-cream.jpg +0 -0
- data/examples/ice-cream.png +0 -0
- data/examples/output/america.png +0 -0
- data/examples/output/asia.png +0 -0
- data/examples/output/europe.png +0 -0
- data/examples/output/heladerias_parana.png +0 -0
- data/examples/output/museos_parana.png +0 -0
- data/examples/output/world_peaks-s.png +0 -0
- data/examples/parana_museos.rb +49 -0
- data/examples/street/1.osm +207517 -0
- data/examples/street/av-ramirez.osm +207517 -0
- data/examples/street/av-ramirez.png +0 -0
- data/examples/street/av_ramirez-0.1346843780815251.png +0 -0
- data/examples/street/av_ramirez-3.png +0 -0
- data/examples/street/av_ramirez.png +0 -0
- data/examples/street/av_ramirez.rb +46 -0
- data/examples/street/avramirez.geojson +9 -0
- data/examples/street/dot.png +0 -0
- data/examples/street/download.sh +18 -0
- data/examples/street/draw.rb +46 -0
- data/examples/street/map.osm +9158 -0
- data/examples/street/mark.png +0 -0
- data/examples/street/parana.json +100 -0
- data/examples/street/parana.rb +30 -0
- data/examples/street/parana_areas.png +0 -0
- data/examples/street/query.overpass +8 -0
- data/examples/street/ramirez.geojson +355 -0
- data/examples/street/ramirez_big.geojson +9959 -0
- data/examples/street/ramirez_full.geojson +76 -0
- data/examples/street/ramirez_full.png +0 -0
- data/examples/street/ramirez_gis.png +0 -0
- data/examples/street/ramirez_osm.png +0 -0
- data/examples/street/ramirez_osm_full.png +0 -0
- data/examples/street/ramirez_polyline.png +0 -0
- data/examples/street/ramirez_road.png +0 -0
- data/examples/street/test_carto_dark.png +0 -0
- data/examples/street/test_osm_fr.png +0 -0
- data/examples/street/test_polygon.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10874_19433.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10874_19434.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10874_19435.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10874_19436.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10875_19433.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10875_19434.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10875_19435.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10875_19436.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10876_19433.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10876_19434.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10876_19435.png +0 -0
- data/examples/street/tmp/tiles/carto_dark_15_10876_19436.png +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10874_19433.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10874_19434.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10874_19435.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10874_19436.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10875_19433.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10875_19434.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10875_19435.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10875_19436.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10876_19433.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10876_19434.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10876_19435.jpg +0 -0
- data/examples/street/tmp/tiles/esri_satellite_15_10876_19436.jpg +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10874_19433.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10874_19434.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10874_19435.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10874_19436.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10875_19433.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10875_19434.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10875_19435.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10875_19436.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10876_19433.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10876_19434.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10876_19435.png +0 -0
- data/examples/street/tmp/tiles/osm_fr_15_10876_19436.png +0 -0
- data/examples/tmp/tiles/15_10871_19430.png +0 -0
- data/examples/tmp/tiles/15_10871_19431.png +0 -0
- data/examples/tmp/tiles/15_10871_19432.png +0 -0
- data/examples/tmp/tiles/15_10871_19433.png +0 -0
- data/examples/tmp/tiles/15_10871_19434.png +0 -0
- data/examples/tmp/tiles/15_10871_19435.png +0 -0
- data/examples/tmp/tiles/15_10872_19430.png +0 -0
- data/examples/tmp/tiles/15_10872_19431.png +0 -0
- data/examples/tmp/tiles/15_10872_19432.png +0 -0
- data/examples/tmp/tiles/15_10872_19433.png +0 -0
- data/examples/tmp/tiles/15_10872_19434.png +0 -0
- data/examples/tmp/tiles/15_10872_19435.png +0 -0
- data/examples/tmp/tiles/15_10873_19430.png +0 -0
- data/examples/tmp/tiles/15_10873_19431.png +0 -0
- data/examples/tmp/tiles/15_10873_19432.png +0 -0
- data/examples/tmp/tiles/15_10873_19433.png +0 -0
- data/examples/tmp/tiles/15_10873_19434.png +0 -0
- data/examples/tmp/tiles/15_10873_19435.png +0 -0
- data/examples/tmp/tiles/15_10874_19430.png +0 -0
- data/examples/tmp/tiles/15_10874_19431.png +0 -0
- data/examples/tmp/tiles/15_10874_19432.png +0 -0
- data/examples/tmp/tiles/15_10874_19433.png +0 -0
- data/examples/tmp/tiles/15_10874_19434.png +0 -0
- data/examples/tmp/tiles/15_10874_19435.png +0 -0
- data/examples/tmp/tiles/15_10875_19430.png +0 -0
- data/examples/tmp/tiles/15_10875_19431.png +0 -0
- data/examples/tmp/tiles/15_10875_19432.png +0 -0
- data/examples/tmp/tiles/15_10875_19433.png +0 -0
- data/examples/tmp/tiles/15_10875_19434.png +0 -0
- data/examples/tmp/tiles/15_10875_19435.png +0 -0
- data/examples/tmp/tiles/15_10876_19430.png +0 -0
- data/examples/tmp/tiles/15_10876_19431.png +0 -0
- data/examples/tmp/tiles/15_10876_19432.png +0 -0
- data/examples/tmp/tiles/15_10876_19433.png +0 -0
- data/examples/tmp/tiles/15_10876_19434.png +0 -0
- data/examples/tmp/tiles/15_10876_19435.png +0 -0
- data/examples/tmp/tiles/15_10877_19430.png +0 -0
- data/examples/tmp/tiles/15_10877_19431.png +0 -0
- data/examples/tmp/tiles/15_10877_19432.png +0 -0
- data/examples/tmp/tiles/15_10877_19433.png +0 -0
- data/examples/tmp/tiles/15_10877_19434.png +0 -0
- data/examples/tmp/tiles/15_10877_19435.png +0 -0
- data/examples/tmp/tiles/7_27_43.png +0 -0
- data/examples/tmp/tiles/7_27_44.png +0 -0
- data/examples/tmp/tiles/7_27_45.png +0 -0
- data/examples/tmp/tiles/7_27_46.png +0 -0
- data/examples/tmp/tiles/7_27_47.png +0 -0
- data/examples/tmp/tiles/7_27_48.png +0 -0
- data/examples/tmp/tiles/7_27_49.png +0 -0
- data/examples/tmp/tiles/7_27_50.png +0 -0
- data/examples/tmp/tiles/7_28_43.png +0 -0
- data/examples/tmp/tiles/7_28_44.png +0 -0
- data/examples/tmp/tiles/7_28_45.png +0 -0
- data/examples/tmp/tiles/7_28_46.png +0 -0
- data/examples/tmp/tiles/7_28_47.png +0 -0
- data/examples/tmp/tiles/7_28_48.png +0 -0
- data/examples/tmp/tiles/7_28_49.png +0 -0
- data/examples/tmp/tiles/7_28_50.png +0 -0
- data/examples/tmp/tiles/7_29_43.png +0 -0
- data/examples/tmp/tiles/7_29_44.png +0 -0
- data/examples/tmp/tiles/7_29_45.png +0 -0
- data/examples/tmp/tiles/7_29_46.png +0 -0
- data/examples/tmp/tiles/7_29_47.png +0 -0
- data/examples/tmp/tiles/7_29_48.png +0 -0
- data/examples/tmp/tiles/7_29_49.png +0 -0
- data/examples/tmp/tiles/7_29_50.png +0 -0
- data/examples/tmp/tiles/7_30_43.png +0 -0
- data/examples/tmp/tiles/7_30_44.png +0 -0
- data/examples/tmp/tiles/7_30_45.png +0 -0
- data/examples/tmp/tiles/7_30_46.png +0 -0
- data/examples/tmp/tiles/7_30_47.png +0 -0
- data/examples/tmp/tiles/7_30_48.png +0 -0
- data/examples/tmp/tiles/7_30_49.png +0 -0
- data/examples/tmp/tiles/7_30_50.png +0 -0
- data/examples/tmp/tiles/7_31_43.png +0 -0
- data/examples/tmp/tiles/7_31_44.png +0 -0
- data/examples/tmp/tiles/7_31_45.png +0 -0
- data/examples/tmp/tiles/7_31_46.png +0 -0
- data/examples/tmp/tiles/7_31_47.png +0 -0
- data/examples/tmp/tiles/7_31_48.png +0 -0
- data/examples/tmp/tiles/7_31_49.png +0 -0
- data/examples/tmp/tiles/7_31_50.png +0 -0
- data/examples/tmp/tiles/7_32_43.png +0 -0
- data/examples/tmp/tiles/7_32_44.png +0 -0
- data/examples/tmp/tiles/7_32_45.png +0 -0
- data/examples/tmp/tiles/7_32_46.png +0 -0
- data/examples/tmp/tiles/7_32_47.png +0 -0
- data/examples/tmp/tiles/7_32_48.png +0 -0
- data/examples/tmp/tiles/7_32_49.png +0 -0
- data/examples/tmp/tiles/7_32_50.png +0 -0
- data/examples/tmp/tiles/7_37_71.png +0 -0
- data/examples/tmp/tiles/7_37_72.png +0 -0
- data/examples/tmp/tiles/7_37_73.png +0 -0
- data/examples/tmp/tiles/7_37_74.png +0 -0
- data/examples/tmp/tiles/7_37_75.png +0 -0
- data/examples/tmp/tiles/7_37_76.png +0 -0
- data/examples/tmp/tiles/7_37_77.png +0 -0
- data/examples/tmp/tiles/7_37_78.png +0 -0
- data/examples/tmp/tiles/7_37_79.png +0 -0
- data/examples/tmp/tiles/7_37_80.png +0 -0
- data/examples/tmp/tiles/7_37_81.png +0 -0
- data/examples/tmp/tiles/7_37_82.png +0 -0
- data/examples/tmp/tiles/7_37_83.png +0 -0
- data/examples/tmp/tiles/7_37_84.png +0 -0
- data/examples/tmp/tiles/7_37_85.png +0 -0
- data/examples/tmp/tiles/7_37_86.png +0 -0
- data/examples/tmp/tiles/7_37_87.png +0 -0
- data/examples/tmp/tiles/7_38_71.png +0 -0
- data/examples/tmp/tiles/7_38_72.png +0 -0
- data/examples/tmp/tiles/7_38_73.png +0 -0
- data/examples/tmp/tiles/7_38_74.png +0 -0
- data/examples/tmp/tiles/7_38_75.png +0 -0
- data/examples/tmp/tiles/7_38_76.png +0 -0
- data/examples/tmp/tiles/7_38_77.png +0 -0
- data/examples/tmp/tiles/7_38_78.png +0 -0
- data/examples/tmp/tiles/7_38_79.png +0 -0
- data/examples/tmp/tiles/7_38_80.png +0 -0
- data/examples/tmp/tiles/7_38_81.png +0 -0
- data/examples/tmp/tiles/7_38_82.png +0 -0
- data/examples/tmp/tiles/7_38_83.png +0 -0
- data/examples/tmp/tiles/7_38_84.png +0 -0
- data/examples/tmp/tiles/7_38_85.png +0 -0
- data/examples/tmp/tiles/7_38_86.png +0 -0
- data/examples/tmp/tiles/7_38_87.png +0 -0
- data/examples/tmp/tiles/7_39_71.png +0 -0
- data/examples/tmp/tiles/7_39_72.png +0 -0
- data/examples/tmp/tiles/7_39_73.png +0 -0
- data/examples/tmp/tiles/7_39_74.png +0 -0
- data/examples/tmp/tiles/7_39_75.png +0 -0
- data/examples/tmp/tiles/7_39_76.png +0 -0
- data/examples/tmp/tiles/7_39_77.png +0 -0
- data/examples/tmp/tiles/7_39_78.png +0 -0
- data/examples/tmp/tiles/7_39_79.png +0 -0
- data/examples/tmp/tiles/7_39_80.png +0 -0
- data/examples/tmp/tiles/7_39_81.png +0 -0
- data/examples/tmp/tiles/7_39_82.png +0 -0
- data/examples/tmp/tiles/7_39_83.png +0 -0
- data/examples/tmp/tiles/7_39_84.png +0 -0
- data/examples/tmp/tiles/7_39_85.png +0 -0
- data/examples/tmp/tiles/7_39_86.png +0 -0
- data/examples/tmp/tiles/7_39_87.png +0 -0
- data/examples/tmp/tiles/7_40_71.png +0 -0
- data/examples/tmp/tiles/7_40_72.png +0 -0
- data/examples/tmp/tiles/7_40_73.png +0 -0
- data/examples/tmp/tiles/7_40_74.png +0 -0
- data/examples/tmp/tiles/7_40_75.png +0 -0
- data/examples/tmp/tiles/7_40_76.png +0 -0
- data/examples/tmp/tiles/7_40_77.png +0 -0
- data/examples/tmp/tiles/7_40_78.png +0 -0
- data/examples/tmp/tiles/7_40_79.png +0 -0
- data/examples/tmp/tiles/7_40_80.png +0 -0
- data/examples/tmp/tiles/7_40_81.png +0 -0
- data/examples/tmp/tiles/7_40_82.png +0 -0
- data/examples/tmp/tiles/7_40_83.png +0 -0
- data/examples/tmp/tiles/7_40_84.png +0 -0
- data/examples/tmp/tiles/7_40_85.png +0 -0
- data/examples/tmp/tiles/7_40_86.png +0 -0
- data/examples/tmp/tiles/7_40_87.png +0 -0
- data/examples/tmp/tiles/7_41_71.png +0 -0
- data/examples/tmp/tiles/7_41_72.png +0 -0
- data/examples/tmp/tiles/7_41_73.png +0 -0
- data/examples/tmp/tiles/7_41_74.png +0 -0
- data/examples/tmp/tiles/7_41_75.png +0 -0
- data/examples/tmp/tiles/7_41_76.png +0 -0
- data/examples/tmp/tiles/7_41_77.png +0 -0
- data/examples/tmp/tiles/7_41_78.png +0 -0
- data/examples/tmp/tiles/7_41_79.png +0 -0
- data/examples/tmp/tiles/7_41_80.png +0 -0
- data/examples/tmp/tiles/7_41_81.png +0 -0
- data/examples/tmp/tiles/7_41_82.png +0 -0
- data/examples/tmp/tiles/7_41_83.png +0 -0
- data/examples/tmp/tiles/7_41_84.png +0 -0
- data/examples/tmp/tiles/7_41_85.png +0 -0
- data/examples/tmp/tiles/7_41_86.png +0 -0
- data/examples/tmp/tiles/7_41_87.png +0 -0
- data/examples/tmp/tiles/7_42_71.png +0 -0
- data/examples/tmp/tiles/7_42_72.png +0 -0
- data/examples/tmp/tiles/7_42_73.png +0 -0
- data/examples/tmp/tiles/7_42_74.png +0 -0
- data/examples/tmp/tiles/7_42_75.png +0 -0
- data/examples/tmp/tiles/7_42_76.png +0 -0
- data/examples/tmp/tiles/7_42_77.png +0 -0
- data/examples/tmp/tiles/7_42_78.png +0 -0
- data/examples/tmp/tiles/7_42_79.png +0 -0
- data/examples/tmp/tiles/7_42_80.png +0 -0
- data/examples/tmp/tiles/7_42_81.png +0 -0
- data/examples/tmp/tiles/7_42_82.png +0 -0
- data/examples/tmp/tiles/7_42_83.png +0 -0
- data/examples/tmp/tiles/7_42_84.png +0 -0
- data/examples/tmp/tiles/7_42_85.png +0 -0
- data/examples/tmp/tiles/7_42_86.png +0 -0
- data/examples/tmp/tiles/7_42_87.png +0 -0
- data/examples/tmp/tiles/7_43_71.png +0 -0
- data/examples/tmp/tiles/7_43_72.png +0 -0
- data/examples/tmp/tiles/7_43_73.png +0 -0
- data/examples/tmp/tiles/7_43_74.png +0 -0
- data/examples/tmp/tiles/7_43_75.png +0 -0
- data/examples/tmp/tiles/7_43_76.png +0 -0
- data/examples/tmp/tiles/7_43_77.png +0 -0
- data/examples/tmp/tiles/7_43_78.png +0 -0
- data/examples/tmp/tiles/7_43_79.png +0 -0
- data/examples/tmp/tiles/7_43_80.png +0 -0
- data/examples/tmp/tiles/7_43_81.png +0 -0
- data/examples/tmp/tiles/7_43_82.png +0 -0
- data/examples/tmp/tiles/7_43_83.png +0 -0
- data/examples/tmp/tiles/7_43_84.png +0 -0
- data/examples/tmp/tiles/7_43_85.png +0 -0
- data/examples/tmp/tiles/7_43_86.png +0 -0
- data/examples/tmp/tiles/7_43_87.png +0 -0
- data/examples/tmp/tiles/7_44_71.png +0 -0
- data/examples/tmp/tiles/7_44_72.png +0 -0
- data/examples/tmp/tiles/7_44_73.png +0 -0
- data/examples/tmp/tiles/7_44_74.png +0 -0
- data/examples/tmp/tiles/7_44_75.png +0 -0
- data/examples/tmp/tiles/7_44_76.png +0 -0
- data/examples/tmp/tiles/7_44_77.png +0 -0
- data/examples/tmp/tiles/7_44_78.png +0 -0
- data/examples/tmp/tiles/7_44_79.png +0 -0
- data/examples/tmp/tiles/7_44_80.png +0 -0
- data/examples/tmp/tiles/7_44_81.png +0 -0
- data/examples/tmp/tiles/7_44_82.png +0 -0
- data/examples/tmp/tiles/7_44_83.png +0 -0
- data/examples/tmp/tiles/7_44_84.png +0 -0
- data/examples/tmp/tiles/7_44_85.png +0 -0
- data/examples/tmp/tiles/7_44_86.png +0 -0
- data/examples/tmp/tiles/7_44_87.png +0 -0
- data/examples/tmp/tiles/7_75_64.png +0 -0
- data/examples/tmp/tiles/7_75_65.png +0 -0
- data/examples/tmp/tiles/7_75_66.png +0 -0
- data/examples/tmp/tiles/7_75_67.png +0 -0
- data/examples/tmp/tiles/7_75_68.png +0 -0
- data/examples/tmp/tiles/7_76_64.png +0 -0
- data/examples/tmp/tiles/7_76_65.png +0 -0
- data/examples/tmp/tiles/7_76_66.png +0 -0
- data/examples/tmp/tiles/7_76_67.png +0 -0
- data/examples/tmp/tiles/7_76_68.png +0 -0
- data/examples/tmp/tiles/7_77_64.png +0 -0
- data/examples/tmp/tiles/7_77_65.png +0 -0
- data/examples/tmp/tiles/7_77_66.png +0 -0
- data/examples/tmp/tiles/7_77_67.png +0 -0
- data/examples/tmp/tiles/7_77_68.png +0 -0
- data/lib/gd/gis/basemap.rb +116 -9
- data/lib/gd/gis/geometry.rb +40 -0
- data/lib/gd/gis/layer_lines.rb +36 -0
- data/lib/gd/gis/layer_points.rb +31 -1
- data/lib/gd/gis/layer_polygons.rb +38 -0
- data/lib/gd/gis/map.rb +53 -33
- data/lib/gd/gis/projection.rb +14 -0
- metadata +339 -17
- /data/examples/{fonts → street/fonts}/DejaVu Fonts License.txt +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSans-Bold.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSans-BoldOblique.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSans-ExtraLight.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSans-Oblique.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSans.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSansCondensed-Bold.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSansCondensed-BoldOblique.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSansCondensed-Oblique.ttf +0 -0
- /data/examples/{fonts → street/fonts}/DejaVuSansCondensed.ttf +0 -0
data/lib/gd/gis/map.rb
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
require "gd"
|
|
2
2
|
require_relative "basemap"
|
|
3
3
|
require_relative "projection"
|
|
4
|
+
require_relative "geometry"
|
|
4
5
|
require_relative "layer_points"
|
|
6
|
+
require_relative "layer_lines"
|
|
7
|
+
require_relative "layer_polygons"
|
|
5
8
|
|
|
6
9
|
module GD
|
|
7
10
|
module GIS
|
|
@@ -13,7 +16,7 @@ module GD
|
|
|
13
16
|
@layers = []
|
|
14
17
|
end
|
|
15
18
|
|
|
16
|
-
def add_points(data, lon:, lat:, icon
|
|
19
|
+
def add_points(data, lon:, lat:, icon: nil, label: nil, font: nil, size: 12, color: [0,0,0])
|
|
17
20
|
@layers << PointsLayer.new(
|
|
18
21
|
data,
|
|
19
22
|
lon: lon,
|
|
@@ -26,44 +29,64 @@ module GD
|
|
|
26
29
|
)
|
|
27
30
|
end
|
|
28
31
|
|
|
32
|
+
def add_lines(features, stroke:, fill: nil, width:)
|
|
33
|
+
if fill
|
|
34
|
+
@layers << PolygonsLayer.from_lines(features,
|
|
35
|
+
stroke: stroke,
|
|
36
|
+
fill: fill,
|
|
37
|
+
width: width
|
|
38
|
+
)
|
|
39
|
+
else
|
|
40
|
+
@layers << LinesLayer.new(features,
|
|
41
|
+
stroke: stroke,
|
|
42
|
+
width: width
|
|
43
|
+
)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def add_polygons(polygons, fill:, stroke: nil, width: nil)
|
|
48
|
+
@layers << PolygonsLayer.new(polygons, fill: fill, stroke: stroke, width: width)
|
|
49
|
+
end
|
|
50
|
+
|
|
29
51
|
def render
|
|
30
52
|
tiles, x_min, y_min = @basemap.fetch_tiles
|
|
31
53
|
|
|
32
|
-
|
|
33
|
-
|
|
54
|
+
# 🔥 Origen REAL del canvas en WebMercator global pixels
|
|
55
|
+
origin_x = x_min * 256
|
|
56
|
+
origin_y = y_min * 256
|
|
57
|
+
|
|
58
|
+
x_vals = tiles.map { |t| t[0] }
|
|
59
|
+
y_vals = tiles.map { |t| t[1] }
|
|
34
60
|
|
|
35
|
-
cols =
|
|
36
|
-
rows =
|
|
61
|
+
cols = x_vals.max - x_vals.min + 1
|
|
62
|
+
rows = y_vals.max - y_vals.min + 1
|
|
37
63
|
|
|
38
|
-
width
|
|
64
|
+
width = cols * 256
|
|
39
65
|
height = rows * 256
|
|
40
66
|
|
|
41
|
-
@img = GD::Image.new(width,height)
|
|
67
|
+
@img = GD::Image.new(width, height)
|
|
42
68
|
@img.alpha_blending = true
|
|
43
69
|
@img.save_alpha = true
|
|
44
70
|
|
|
45
|
-
tiles
|
|
71
|
+
# Dibujar tiles en sistema LOCAL del mosaico
|
|
72
|
+
tiles.each do |x, y, path|
|
|
46
73
|
tile = GD::Image.open(path)
|
|
47
74
|
cx = x - x_min
|
|
48
75
|
cy = y - y_min
|
|
49
|
-
@img.copy(tile, cx*256, cy*256, 0,0,256,256)
|
|
76
|
+
@img.copy(tile, cx * 256, cy * 256, 0, 0, 256, 256)
|
|
50
77
|
end
|
|
51
78
|
|
|
52
|
-
#
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
min_y = Projection.mercator_y(@bbox[1])
|
|
56
|
-
max_y = Projection.mercator_y(@bbox[3])
|
|
79
|
+
# 🔥 Proyección correcta: global → local
|
|
80
|
+
projection = ->(lon, lat) do
|
|
81
|
+
gx, gy = GD::GIS::Projection.lonlat_to_global_px(lon, lat, @zoom)
|
|
57
82
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
rad = lat * Math::PI / 180.0
|
|
61
|
-
py = ((1 - Math.log(Math.tan(rad) + 1 / Math.cos(rad)) / Math::PI) / 2 * (2 ** @zoom) * 256)
|
|
83
|
+
x = gx - origin_x
|
|
84
|
+
y = gy - origin_y
|
|
62
85
|
|
|
63
|
-
[
|
|
64
|
-
|
|
86
|
+
[x.round, y.round]
|
|
87
|
+
end
|
|
65
88
|
|
|
66
|
-
@layers.each { |l| l.render!(@img,
|
|
89
|
+
@layers.each { |l| l.render!(@img, projection) }
|
|
67
90
|
end
|
|
68
91
|
|
|
69
92
|
def tile2lon(x, z)
|
|
@@ -75,15 +98,15 @@ module GD
|
|
|
75
98
|
180.0 / Math::PI * Math.atan(0.5 * (Math.exp(n) - Math.exp(-n)))
|
|
76
99
|
end
|
|
77
100
|
|
|
78
|
-
def tile_bbox(z,x,y)
|
|
101
|
+
def tile_bbox(z, x, y)
|
|
79
102
|
west = tile2lon(x, z)
|
|
80
|
-
east = tile2lon(x+1, z)
|
|
103
|
+
east = tile2lon(x + 1, z)
|
|
81
104
|
north = tile2lat(y, z)
|
|
82
|
-
south = tile2lat(y+1, z)
|
|
105
|
+
south = tile2lat(y + 1, z)
|
|
83
106
|
[west, south, east, north]
|
|
84
107
|
end
|
|
85
108
|
|
|
86
|
-
def intersect_bbox(a,b)
|
|
109
|
+
def intersect_bbox(a, b)
|
|
87
110
|
[
|
|
88
111
|
[a[0], b[0]].max,
|
|
89
112
|
[a[1], b[1]].max,
|
|
@@ -92,13 +115,12 @@ module GD
|
|
|
92
115
|
]
|
|
93
116
|
end
|
|
94
117
|
|
|
95
|
-
def tile(z,x,y)
|
|
96
|
-
tb = tile_bbox(z,x,y)
|
|
118
|
+
def tile(z, x, y)
|
|
119
|
+
tb = tile_bbox(z, x, y)
|
|
97
120
|
ib = intersect_bbox(@bbox, tb)
|
|
98
121
|
|
|
99
|
-
# Si no hay intersección, devolvemos tile vacío
|
|
100
122
|
if ib[0] >= ib[2] || ib[1] >= ib[3]
|
|
101
|
-
return GD::Image.new(256,256)
|
|
123
|
+
return GD::Image.new(256, 256)
|
|
102
124
|
end
|
|
103
125
|
|
|
104
126
|
submap = GD::GIS::Map.new(
|
|
@@ -107,16 +129,14 @@ module GD
|
|
|
107
129
|
basemap: :carto_light
|
|
108
130
|
)
|
|
109
131
|
|
|
110
|
-
# copiar capas
|
|
111
132
|
@layers.each { |l| submap.instance_variable_get(:@layers) << l }
|
|
112
133
|
|
|
113
134
|
submap.render
|
|
114
135
|
|
|
115
|
-
|
|
116
|
-
img = GD::Image.new(256,256)
|
|
136
|
+
img = GD::Image.new(256, 256)
|
|
117
137
|
img.alpha_blending = true
|
|
118
138
|
img.save_alpha = true
|
|
119
|
-
img.copy(submap.instance_variable_get(:@img), 0,0,0,0,256,256)
|
|
139
|
+
img.copy(submap.instance_variable_get(:@img), 0, 0, 0, 0, 256, 256)
|
|
120
140
|
img
|
|
121
141
|
end
|
|
122
142
|
|
data/lib/gd/gis/projection.rb
CHANGED
|
@@ -20,6 +20,20 @@ module GD
|
|
|
20
20
|
|
|
21
21
|
[px.to_i, py.to_i]
|
|
22
22
|
end
|
|
23
|
+
|
|
24
|
+
TILE_SIZE = 256
|
|
25
|
+
|
|
26
|
+
def self.lonlat_to_global_px(lon, lat, zoom)
|
|
27
|
+
lat = [[lat, 85.05112878].min, -85.05112878].max
|
|
28
|
+
n = 2.0 ** zoom
|
|
29
|
+
|
|
30
|
+
x = (lon + 180.0) / 360.0 * n * TILE_SIZE
|
|
31
|
+
|
|
32
|
+
lat_rad = lat * Math::PI / 180.0
|
|
33
|
+
y = (1.0 - Math.log(Math.tan(lat_rad) + 1.0 / Math.cos(lat_rad)) / Math::PI) / 2.0 * n * TILE_SIZE
|
|
34
|
+
|
|
35
|
+
[x, y]
|
|
36
|
+
end
|
|
23
37
|
end
|
|
24
38
|
end
|
|
25
39
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: libgd-gis
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Germán Alberto Giménez Silva
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-01-
|
|
11
|
+
date: 2026-01-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: ruby-libgd
|
|
@@ -16,20 +16,20 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 0.1.
|
|
19
|
+
version: 0.1.9
|
|
20
20
|
- - ">="
|
|
21
21
|
- !ruby/object:Gem::Version
|
|
22
|
-
version: 0.1.
|
|
22
|
+
version: 0.1.9
|
|
23
23
|
type: :runtime
|
|
24
24
|
prerelease: false
|
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
26
|
requirements:
|
|
27
27
|
- - "~>"
|
|
28
28
|
- !ruby/object:Gem::Version
|
|
29
|
-
version: 0.1.
|
|
29
|
+
version: 0.1.9
|
|
30
30
|
- - ">="
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: 0.1.
|
|
32
|
+
version: 0.1.9
|
|
33
33
|
description: A native GIS raster engine for Ruby built on libgd. Render maps, GeoJSON,
|
|
34
34
|
heatmaps and tiles.
|
|
35
35
|
email:
|
|
@@ -39,39 +39,159 @@ extensions: []
|
|
|
39
39
|
extra_rdoc_files: []
|
|
40
40
|
files:
|
|
41
41
|
- README.md
|
|
42
|
-
- examples/
|
|
42
|
+
- examples/america-peaks.rb
|
|
43
43
|
- examples/argentina.png
|
|
44
44
|
- examples/argentina.rb
|
|
45
45
|
- examples/argentina_con_localidades.rb
|
|
46
46
|
- examples/argentina_museos.rb
|
|
47
|
+
- examples/asia-peaks.rb
|
|
48
|
+
- examples/av_ramirez.rb
|
|
49
|
+
- examples/europe-peaks.rb
|
|
47
50
|
- examples/flag.png
|
|
48
|
-
- examples/
|
|
49
|
-
- examples/
|
|
50
|
-
- examples/fonts/DejaVuSans-BoldOblique.ttf
|
|
51
|
-
- examples/fonts/DejaVuSans-ExtraLight.ttf
|
|
52
|
-
- examples/fonts/DejaVuSans-Oblique.ttf
|
|
53
|
-
- examples/fonts/DejaVuSans.ttf
|
|
54
|
-
- examples/fonts/DejaVuSansCondensed-Bold.ttf
|
|
55
|
-
- examples/fonts/DejaVuSansCondensed-BoldOblique.ttf
|
|
56
|
-
- examples/fonts/DejaVuSansCondensed-Oblique.ttf
|
|
57
|
-
- examples/fonts/DejaVuSansCondensed.ttf
|
|
51
|
+
- examples/heladerias.json
|
|
52
|
+
- examples/heladerias.rb
|
|
58
53
|
- examples/hydro.png
|
|
59
54
|
- examples/hydro_plants.geojson
|
|
55
|
+
- examples/ice-cream.jpg
|
|
56
|
+
- examples/ice-cream.png
|
|
60
57
|
- examples/localidades.json
|
|
61
58
|
- examples/montanas.rb
|
|
62
59
|
- examples/museos.png
|
|
63
60
|
- examples/museos_datosabiertos.csv
|
|
61
|
+
- examples/output/america.png
|
|
64
62
|
- examples/output/argentina.png
|
|
65
63
|
- examples/output/argentina_localidades.png
|
|
66
64
|
- examples/output/argentina_museos.png
|
|
65
|
+
- examples/output/asia.png
|
|
66
|
+
- examples/output/europe.png
|
|
67
|
+
- examples/output/heladerias_parana.png
|
|
68
|
+
- examples/output/museos_parana.png
|
|
67
69
|
- examples/output/tanzania_hydro.png
|
|
68
70
|
- examples/output/world_peaks-s.png
|
|
69
71
|
- examples/output/world_peaks.png
|
|
72
|
+
- examples/parana_museos.rb
|
|
70
73
|
- examples/peak.png
|
|
71
74
|
- examples/picks.json
|
|
72
75
|
- examples/render_tile.rb
|
|
76
|
+
- examples/street/1.osm
|
|
77
|
+
- examples/street/av-ramirez.osm
|
|
78
|
+
- examples/street/av-ramirez.png
|
|
79
|
+
- examples/street/av_ramirez-0.1346843780815251.png
|
|
80
|
+
- examples/street/av_ramirez-3.png
|
|
81
|
+
- examples/street/av_ramirez.png
|
|
82
|
+
- examples/street/av_ramirez.rb
|
|
83
|
+
- examples/street/avramirez.geojson
|
|
84
|
+
- examples/street/dot.png
|
|
85
|
+
- examples/street/download.sh
|
|
86
|
+
- examples/street/draw.rb
|
|
87
|
+
- examples/street/fonts/DejaVu Fonts License.txt
|
|
88
|
+
- examples/street/fonts/DejaVuSans-Bold.ttf
|
|
89
|
+
- examples/street/fonts/DejaVuSans-BoldOblique.ttf
|
|
90
|
+
- examples/street/fonts/DejaVuSans-ExtraLight.ttf
|
|
91
|
+
- examples/street/fonts/DejaVuSans-Oblique.ttf
|
|
92
|
+
- examples/street/fonts/DejaVuSans.ttf
|
|
93
|
+
- examples/street/fonts/DejaVuSansCondensed-Bold.ttf
|
|
94
|
+
- examples/street/fonts/DejaVuSansCondensed-BoldOblique.ttf
|
|
95
|
+
- examples/street/fonts/DejaVuSansCondensed-Oblique.ttf
|
|
96
|
+
- examples/street/fonts/DejaVuSansCondensed.ttf
|
|
97
|
+
- examples/street/map.osm
|
|
98
|
+
- examples/street/mark.png
|
|
99
|
+
- examples/street/parana.json
|
|
100
|
+
- examples/street/parana.rb
|
|
101
|
+
- examples/street/parana_areas.png
|
|
102
|
+
- examples/street/query.overpass
|
|
103
|
+
- examples/street/ramirez.geojson
|
|
104
|
+
- examples/street/ramirez_big.geojson
|
|
105
|
+
- examples/street/ramirez_full.geojson
|
|
106
|
+
- examples/street/ramirez_full.png
|
|
107
|
+
- examples/street/ramirez_gis.png
|
|
108
|
+
- examples/street/ramirez_osm.png
|
|
109
|
+
- examples/street/ramirez_osm_full.png
|
|
110
|
+
- examples/street/ramirez_polyline.png
|
|
111
|
+
- examples/street/ramirez_road.png
|
|
112
|
+
- examples/street/test_carto_dark.png
|
|
113
|
+
- examples/street/test_osm_fr.png
|
|
114
|
+
- examples/street/test_polygon.png
|
|
115
|
+
- examples/street/tmp/tiles/carto_dark_15_10874_19433.png
|
|
116
|
+
- examples/street/tmp/tiles/carto_dark_15_10874_19434.png
|
|
117
|
+
- examples/street/tmp/tiles/carto_dark_15_10874_19435.png
|
|
118
|
+
- examples/street/tmp/tiles/carto_dark_15_10874_19436.png
|
|
119
|
+
- examples/street/tmp/tiles/carto_dark_15_10875_19433.png
|
|
120
|
+
- examples/street/tmp/tiles/carto_dark_15_10875_19434.png
|
|
121
|
+
- examples/street/tmp/tiles/carto_dark_15_10875_19435.png
|
|
122
|
+
- examples/street/tmp/tiles/carto_dark_15_10875_19436.png
|
|
123
|
+
- examples/street/tmp/tiles/carto_dark_15_10876_19433.png
|
|
124
|
+
- examples/street/tmp/tiles/carto_dark_15_10876_19434.png
|
|
125
|
+
- examples/street/tmp/tiles/carto_dark_15_10876_19435.png
|
|
126
|
+
- examples/street/tmp/tiles/carto_dark_15_10876_19436.png
|
|
127
|
+
- examples/street/tmp/tiles/esri_satellite_15_10874_19433.jpg
|
|
128
|
+
- examples/street/tmp/tiles/esri_satellite_15_10874_19434.jpg
|
|
129
|
+
- examples/street/tmp/tiles/esri_satellite_15_10874_19435.jpg
|
|
130
|
+
- examples/street/tmp/tiles/esri_satellite_15_10874_19436.jpg
|
|
131
|
+
- examples/street/tmp/tiles/esri_satellite_15_10875_19433.jpg
|
|
132
|
+
- examples/street/tmp/tiles/esri_satellite_15_10875_19434.jpg
|
|
133
|
+
- examples/street/tmp/tiles/esri_satellite_15_10875_19435.jpg
|
|
134
|
+
- examples/street/tmp/tiles/esri_satellite_15_10875_19436.jpg
|
|
135
|
+
- examples/street/tmp/tiles/esri_satellite_15_10876_19433.jpg
|
|
136
|
+
- examples/street/tmp/tiles/esri_satellite_15_10876_19434.jpg
|
|
137
|
+
- examples/street/tmp/tiles/esri_satellite_15_10876_19435.jpg
|
|
138
|
+
- examples/street/tmp/tiles/esri_satellite_15_10876_19436.jpg
|
|
139
|
+
- examples/street/tmp/tiles/osm_fr_15_10874_19433.png
|
|
140
|
+
- examples/street/tmp/tiles/osm_fr_15_10874_19434.png
|
|
141
|
+
- examples/street/tmp/tiles/osm_fr_15_10874_19435.png
|
|
142
|
+
- examples/street/tmp/tiles/osm_fr_15_10874_19436.png
|
|
143
|
+
- examples/street/tmp/tiles/osm_fr_15_10875_19433.png
|
|
144
|
+
- examples/street/tmp/tiles/osm_fr_15_10875_19434.png
|
|
145
|
+
- examples/street/tmp/tiles/osm_fr_15_10875_19435.png
|
|
146
|
+
- examples/street/tmp/tiles/osm_fr_15_10875_19436.png
|
|
147
|
+
- examples/street/tmp/tiles/osm_fr_15_10876_19433.png
|
|
148
|
+
- examples/street/tmp/tiles/osm_fr_15_10876_19434.png
|
|
149
|
+
- examples/street/tmp/tiles/osm_fr_15_10876_19435.png
|
|
150
|
+
- examples/street/tmp/tiles/osm_fr_15_10876_19436.png
|
|
73
151
|
- examples/tanzania.rb
|
|
74
152
|
- examples/target.rb
|
|
153
|
+
- examples/tmp/tiles/15_10871_19430.png
|
|
154
|
+
- examples/tmp/tiles/15_10871_19431.png
|
|
155
|
+
- examples/tmp/tiles/15_10871_19432.png
|
|
156
|
+
- examples/tmp/tiles/15_10871_19433.png
|
|
157
|
+
- examples/tmp/tiles/15_10871_19434.png
|
|
158
|
+
- examples/tmp/tiles/15_10871_19435.png
|
|
159
|
+
- examples/tmp/tiles/15_10872_19430.png
|
|
160
|
+
- examples/tmp/tiles/15_10872_19431.png
|
|
161
|
+
- examples/tmp/tiles/15_10872_19432.png
|
|
162
|
+
- examples/tmp/tiles/15_10872_19433.png
|
|
163
|
+
- examples/tmp/tiles/15_10872_19434.png
|
|
164
|
+
- examples/tmp/tiles/15_10872_19435.png
|
|
165
|
+
- examples/tmp/tiles/15_10873_19430.png
|
|
166
|
+
- examples/tmp/tiles/15_10873_19431.png
|
|
167
|
+
- examples/tmp/tiles/15_10873_19432.png
|
|
168
|
+
- examples/tmp/tiles/15_10873_19433.png
|
|
169
|
+
- examples/tmp/tiles/15_10873_19434.png
|
|
170
|
+
- examples/tmp/tiles/15_10873_19435.png
|
|
171
|
+
- examples/tmp/tiles/15_10874_19430.png
|
|
172
|
+
- examples/tmp/tiles/15_10874_19431.png
|
|
173
|
+
- examples/tmp/tiles/15_10874_19432.png
|
|
174
|
+
- examples/tmp/tiles/15_10874_19433.png
|
|
175
|
+
- examples/tmp/tiles/15_10874_19434.png
|
|
176
|
+
- examples/tmp/tiles/15_10874_19435.png
|
|
177
|
+
- examples/tmp/tiles/15_10875_19430.png
|
|
178
|
+
- examples/tmp/tiles/15_10875_19431.png
|
|
179
|
+
- examples/tmp/tiles/15_10875_19432.png
|
|
180
|
+
- examples/tmp/tiles/15_10875_19433.png
|
|
181
|
+
- examples/tmp/tiles/15_10875_19434.png
|
|
182
|
+
- examples/tmp/tiles/15_10875_19435.png
|
|
183
|
+
- examples/tmp/tiles/15_10876_19430.png
|
|
184
|
+
- examples/tmp/tiles/15_10876_19431.png
|
|
185
|
+
- examples/tmp/tiles/15_10876_19432.png
|
|
186
|
+
- examples/tmp/tiles/15_10876_19433.png
|
|
187
|
+
- examples/tmp/tiles/15_10876_19434.png
|
|
188
|
+
- examples/tmp/tiles/15_10876_19435.png
|
|
189
|
+
- examples/tmp/tiles/15_10877_19430.png
|
|
190
|
+
- examples/tmp/tiles/15_10877_19431.png
|
|
191
|
+
- examples/tmp/tiles/15_10877_19432.png
|
|
192
|
+
- examples/tmp/tiles/15_10877_19433.png
|
|
193
|
+
- examples/tmp/tiles/15_10877_19434.png
|
|
194
|
+
- examples/tmp/tiles/15_10877_19435.png
|
|
75
195
|
- examples/tmp/tiles/4_0_0.png
|
|
76
196
|
- examples/tmp/tiles/4_0_1.png
|
|
77
197
|
- examples/tmp/tiles/4_0_10.png
|
|
@@ -328,9 +448,211 @@ files:
|
|
|
328
448
|
- examples/tmp/tiles/4_9_7.png
|
|
329
449
|
- examples/tmp/tiles/4_9_8.png
|
|
330
450
|
- examples/tmp/tiles/4_9_9.png
|
|
451
|
+
- examples/tmp/tiles/7_27_43.png
|
|
452
|
+
- examples/tmp/tiles/7_27_44.png
|
|
453
|
+
- examples/tmp/tiles/7_27_45.png
|
|
454
|
+
- examples/tmp/tiles/7_27_46.png
|
|
455
|
+
- examples/tmp/tiles/7_27_47.png
|
|
456
|
+
- examples/tmp/tiles/7_27_48.png
|
|
457
|
+
- examples/tmp/tiles/7_27_49.png
|
|
458
|
+
- examples/tmp/tiles/7_27_50.png
|
|
459
|
+
- examples/tmp/tiles/7_28_43.png
|
|
460
|
+
- examples/tmp/tiles/7_28_44.png
|
|
461
|
+
- examples/tmp/tiles/7_28_45.png
|
|
462
|
+
- examples/tmp/tiles/7_28_46.png
|
|
463
|
+
- examples/tmp/tiles/7_28_47.png
|
|
464
|
+
- examples/tmp/tiles/7_28_48.png
|
|
465
|
+
- examples/tmp/tiles/7_28_49.png
|
|
466
|
+
- examples/tmp/tiles/7_28_50.png
|
|
467
|
+
- examples/tmp/tiles/7_29_43.png
|
|
468
|
+
- examples/tmp/tiles/7_29_44.png
|
|
469
|
+
- examples/tmp/tiles/7_29_45.png
|
|
470
|
+
- examples/tmp/tiles/7_29_46.png
|
|
471
|
+
- examples/tmp/tiles/7_29_47.png
|
|
472
|
+
- examples/tmp/tiles/7_29_48.png
|
|
473
|
+
- examples/tmp/tiles/7_29_49.png
|
|
474
|
+
- examples/tmp/tiles/7_29_50.png
|
|
475
|
+
- examples/tmp/tiles/7_30_43.png
|
|
476
|
+
- examples/tmp/tiles/7_30_44.png
|
|
477
|
+
- examples/tmp/tiles/7_30_45.png
|
|
478
|
+
- examples/tmp/tiles/7_30_46.png
|
|
479
|
+
- examples/tmp/tiles/7_30_47.png
|
|
480
|
+
- examples/tmp/tiles/7_30_48.png
|
|
481
|
+
- examples/tmp/tiles/7_30_49.png
|
|
482
|
+
- examples/tmp/tiles/7_30_50.png
|
|
483
|
+
- examples/tmp/tiles/7_31_43.png
|
|
484
|
+
- examples/tmp/tiles/7_31_44.png
|
|
485
|
+
- examples/tmp/tiles/7_31_45.png
|
|
486
|
+
- examples/tmp/tiles/7_31_46.png
|
|
487
|
+
- examples/tmp/tiles/7_31_47.png
|
|
488
|
+
- examples/tmp/tiles/7_31_48.png
|
|
489
|
+
- examples/tmp/tiles/7_31_49.png
|
|
490
|
+
- examples/tmp/tiles/7_31_50.png
|
|
491
|
+
- examples/tmp/tiles/7_32_43.png
|
|
492
|
+
- examples/tmp/tiles/7_32_44.png
|
|
493
|
+
- examples/tmp/tiles/7_32_45.png
|
|
494
|
+
- examples/tmp/tiles/7_32_46.png
|
|
495
|
+
- examples/tmp/tiles/7_32_47.png
|
|
496
|
+
- examples/tmp/tiles/7_32_48.png
|
|
497
|
+
- examples/tmp/tiles/7_32_49.png
|
|
498
|
+
- examples/tmp/tiles/7_32_50.png
|
|
499
|
+
- examples/tmp/tiles/7_37_71.png
|
|
500
|
+
- examples/tmp/tiles/7_37_72.png
|
|
501
|
+
- examples/tmp/tiles/7_37_73.png
|
|
502
|
+
- examples/tmp/tiles/7_37_74.png
|
|
503
|
+
- examples/tmp/tiles/7_37_75.png
|
|
504
|
+
- examples/tmp/tiles/7_37_76.png
|
|
505
|
+
- examples/tmp/tiles/7_37_77.png
|
|
506
|
+
- examples/tmp/tiles/7_37_78.png
|
|
507
|
+
- examples/tmp/tiles/7_37_79.png
|
|
508
|
+
- examples/tmp/tiles/7_37_80.png
|
|
509
|
+
- examples/tmp/tiles/7_37_81.png
|
|
510
|
+
- examples/tmp/tiles/7_37_82.png
|
|
511
|
+
- examples/tmp/tiles/7_37_83.png
|
|
512
|
+
- examples/tmp/tiles/7_37_84.png
|
|
513
|
+
- examples/tmp/tiles/7_37_85.png
|
|
514
|
+
- examples/tmp/tiles/7_37_86.png
|
|
515
|
+
- examples/tmp/tiles/7_37_87.png
|
|
516
|
+
- examples/tmp/tiles/7_38_71.png
|
|
517
|
+
- examples/tmp/tiles/7_38_72.png
|
|
518
|
+
- examples/tmp/tiles/7_38_73.png
|
|
519
|
+
- examples/tmp/tiles/7_38_74.png
|
|
520
|
+
- examples/tmp/tiles/7_38_75.png
|
|
521
|
+
- examples/tmp/tiles/7_38_76.png
|
|
522
|
+
- examples/tmp/tiles/7_38_77.png
|
|
523
|
+
- examples/tmp/tiles/7_38_78.png
|
|
524
|
+
- examples/tmp/tiles/7_38_79.png
|
|
525
|
+
- examples/tmp/tiles/7_38_80.png
|
|
526
|
+
- examples/tmp/tiles/7_38_81.png
|
|
527
|
+
- examples/tmp/tiles/7_38_82.png
|
|
528
|
+
- examples/tmp/tiles/7_38_83.png
|
|
529
|
+
- examples/tmp/tiles/7_38_84.png
|
|
530
|
+
- examples/tmp/tiles/7_38_85.png
|
|
531
|
+
- examples/tmp/tiles/7_38_86.png
|
|
532
|
+
- examples/tmp/tiles/7_38_87.png
|
|
533
|
+
- examples/tmp/tiles/7_39_71.png
|
|
534
|
+
- examples/tmp/tiles/7_39_72.png
|
|
535
|
+
- examples/tmp/tiles/7_39_73.png
|
|
536
|
+
- examples/tmp/tiles/7_39_74.png
|
|
537
|
+
- examples/tmp/tiles/7_39_75.png
|
|
538
|
+
- examples/tmp/tiles/7_39_76.png
|
|
539
|
+
- examples/tmp/tiles/7_39_77.png
|
|
540
|
+
- examples/tmp/tiles/7_39_78.png
|
|
541
|
+
- examples/tmp/tiles/7_39_79.png
|
|
542
|
+
- examples/tmp/tiles/7_39_80.png
|
|
543
|
+
- examples/tmp/tiles/7_39_81.png
|
|
544
|
+
- examples/tmp/tiles/7_39_82.png
|
|
545
|
+
- examples/tmp/tiles/7_39_83.png
|
|
546
|
+
- examples/tmp/tiles/7_39_84.png
|
|
547
|
+
- examples/tmp/tiles/7_39_85.png
|
|
548
|
+
- examples/tmp/tiles/7_39_86.png
|
|
549
|
+
- examples/tmp/tiles/7_39_87.png
|
|
550
|
+
- examples/tmp/tiles/7_40_71.png
|
|
551
|
+
- examples/tmp/tiles/7_40_72.png
|
|
552
|
+
- examples/tmp/tiles/7_40_73.png
|
|
553
|
+
- examples/tmp/tiles/7_40_74.png
|
|
554
|
+
- examples/tmp/tiles/7_40_75.png
|
|
555
|
+
- examples/tmp/tiles/7_40_76.png
|
|
556
|
+
- examples/tmp/tiles/7_40_77.png
|
|
557
|
+
- examples/tmp/tiles/7_40_78.png
|
|
558
|
+
- examples/tmp/tiles/7_40_79.png
|
|
559
|
+
- examples/tmp/tiles/7_40_80.png
|
|
560
|
+
- examples/tmp/tiles/7_40_81.png
|
|
561
|
+
- examples/tmp/tiles/7_40_82.png
|
|
562
|
+
- examples/tmp/tiles/7_40_83.png
|
|
563
|
+
- examples/tmp/tiles/7_40_84.png
|
|
564
|
+
- examples/tmp/tiles/7_40_85.png
|
|
565
|
+
- examples/tmp/tiles/7_40_86.png
|
|
566
|
+
- examples/tmp/tiles/7_40_87.png
|
|
567
|
+
- examples/tmp/tiles/7_41_71.png
|
|
568
|
+
- examples/tmp/tiles/7_41_72.png
|
|
569
|
+
- examples/tmp/tiles/7_41_73.png
|
|
570
|
+
- examples/tmp/tiles/7_41_74.png
|
|
571
|
+
- examples/tmp/tiles/7_41_75.png
|
|
572
|
+
- examples/tmp/tiles/7_41_76.png
|
|
573
|
+
- examples/tmp/tiles/7_41_77.png
|
|
574
|
+
- examples/tmp/tiles/7_41_78.png
|
|
575
|
+
- examples/tmp/tiles/7_41_79.png
|
|
576
|
+
- examples/tmp/tiles/7_41_80.png
|
|
577
|
+
- examples/tmp/tiles/7_41_81.png
|
|
578
|
+
- examples/tmp/tiles/7_41_82.png
|
|
579
|
+
- examples/tmp/tiles/7_41_83.png
|
|
580
|
+
- examples/tmp/tiles/7_41_84.png
|
|
581
|
+
- examples/tmp/tiles/7_41_85.png
|
|
582
|
+
- examples/tmp/tiles/7_41_86.png
|
|
583
|
+
- examples/tmp/tiles/7_41_87.png
|
|
584
|
+
- examples/tmp/tiles/7_42_71.png
|
|
585
|
+
- examples/tmp/tiles/7_42_72.png
|
|
586
|
+
- examples/tmp/tiles/7_42_73.png
|
|
587
|
+
- examples/tmp/tiles/7_42_74.png
|
|
588
|
+
- examples/tmp/tiles/7_42_75.png
|
|
589
|
+
- examples/tmp/tiles/7_42_76.png
|
|
590
|
+
- examples/tmp/tiles/7_42_77.png
|
|
591
|
+
- examples/tmp/tiles/7_42_78.png
|
|
592
|
+
- examples/tmp/tiles/7_42_79.png
|
|
593
|
+
- examples/tmp/tiles/7_42_80.png
|
|
594
|
+
- examples/tmp/tiles/7_42_81.png
|
|
595
|
+
- examples/tmp/tiles/7_42_82.png
|
|
596
|
+
- examples/tmp/tiles/7_42_83.png
|
|
597
|
+
- examples/tmp/tiles/7_42_84.png
|
|
598
|
+
- examples/tmp/tiles/7_42_85.png
|
|
599
|
+
- examples/tmp/tiles/7_42_86.png
|
|
600
|
+
- examples/tmp/tiles/7_42_87.png
|
|
601
|
+
- examples/tmp/tiles/7_43_71.png
|
|
602
|
+
- examples/tmp/tiles/7_43_72.png
|
|
603
|
+
- examples/tmp/tiles/7_43_73.png
|
|
604
|
+
- examples/tmp/tiles/7_43_74.png
|
|
605
|
+
- examples/tmp/tiles/7_43_75.png
|
|
606
|
+
- examples/tmp/tiles/7_43_76.png
|
|
607
|
+
- examples/tmp/tiles/7_43_77.png
|
|
608
|
+
- examples/tmp/tiles/7_43_78.png
|
|
609
|
+
- examples/tmp/tiles/7_43_79.png
|
|
610
|
+
- examples/tmp/tiles/7_43_80.png
|
|
611
|
+
- examples/tmp/tiles/7_43_81.png
|
|
612
|
+
- examples/tmp/tiles/7_43_82.png
|
|
613
|
+
- examples/tmp/tiles/7_43_83.png
|
|
614
|
+
- examples/tmp/tiles/7_43_84.png
|
|
615
|
+
- examples/tmp/tiles/7_43_85.png
|
|
616
|
+
- examples/tmp/tiles/7_43_86.png
|
|
617
|
+
- examples/tmp/tiles/7_43_87.png
|
|
618
|
+
- examples/tmp/tiles/7_44_71.png
|
|
619
|
+
- examples/tmp/tiles/7_44_72.png
|
|
620
|
+
- examples/tmp/tiles/7_44_73.png
|
|
621
|
+
- examples/tmp/tiles/7_44_74.png
|
|
622
|
+
- examples/tmp/tiles/7_44_75.png
|
|
623
|
+
- examples/tmp/tiles/7_44_76.png
|
|
624
|
+
- examples/tmp/tiles/7_44_77.png
|
|
625
|
+
- examples/tmp/tiles/7_44_78.png
|
|
626
|
+
- examples/tmp/tiles/7_44_79.png
|
|
627
|
+
- examples/tmp/tiles/7_44_80.png
|
|
628
|
+
- examples/tmp/tiles/7_44_81.png
|
|
629
|
+
- examples/tmp/tiles/7_44_82.png
|
|
630
|
+
- examples/tmp/tiles/7_44_83.png
|
|
631
|
+
- examples/tmp/tiles/7_44_84.png
|
|
632
|
+
- examples/tmp/tiles/7_44_85.png
|
|
633
|
+
- examples/tmp/tiles/7_44_86.png
|
|
634
|
+
- examples/tmp/tiles/7_44_87.png
|
|
635
|
+
- examples/tmp/tiles/7_75_64.png
|
|
636
|
+
- examples/tmp/tiles/7_75_65.png
|
|
637
|
+
- examples/tmp/tiles/7_75_66.png
|
|
638
|
+
- examples/tmp/tiles/7_75_67.png
|
|
639
|
+
- examples/tmp/tiles/7_75_68.png
|
|
640
|
+
- examples/tmp/tiles/7_76_64.png
|
|
641
|
+
- examples/tmp/tiles/7_76_65.png
|
|
642
|
+
- examples/tmp/tiles/7_76_66.png
|
|
643
|
+
- examples/tmp/tiles/7_76_67.png
|
|
644
|
+
- examples/tmp/tiles/7_76_68.png
|
|
645
|
+
- examples/tmp/tiles/7_77_64.png
|
|
646
|
+
- examples/tmp/tiles/7_77_65.png
|
|
647
|
+
- examples/tmp/tiles/7_77_66.png
|
|
648
|
+
- examples/tmp/tiles/7_77_67.png
|
|
649
|
+
- examples/tmp/tiles/7_77_68.png
|
|
331
650
|
- lib/gd/gis.rb
|
|
332
651
|
- lib/gd/gis/basemap.rb
|
|
652
|
+
- lib/gd/gis/geometry.rb
|
|
653
|
+
- lib/gd/gis/layer_lines.rb
|
|
333
654
|
- lib/gd/gis/layer_points.rb
|
|
655
|
+
- lib/gd/gis/layer_polygons.rb
|
|
334
656
|
- lib/gd/gis/map.rb
|
|
335
657
|
- lib/gd/gis/projection.rb
|
|
336
658
|
- lib/libgd_gis.rb
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|