terraingenpy 0.2.0.dev115__tar.gz → 0.2.0.dev118__tar.gz

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 (1604) hide show
  1. terraingenpy-0.2.0.dev118/.github/workflows/ci.yml +519 -0
  2. terraingenpy-0.2.0.dev118/CHANGELOG.md +405 -0
  3. terraingenpy-0.2.0.dev118/CMakeLists.txt +150 -0
  4. terraingenpy-0.2.0.dev118/PKG-INFO +227 -0
  5. terraingenpy-0.2.0.dev118/README.md +171 -0
  6. terraingenpy-0.2.0.dev118/app/cli.cpp +359 -0
  7. terraingenpy-0.2.0.dev118/docs/_src/getting-started/installation.md +71 -0
  8. terraingenpy-0.2.0.dev118/include/terraingen/albedo/blast_zones.h +75 -0
  9. terraingenpy-0.2.0.dev118/include/terraingen/albedo/crater_albedo.h +91 -0
  10. terraingenpy-0.2.0.dev118/include/terraingen/albedo/raster_albedo.h +105 -0
  11. terraingenpy-0.2.0.dev118/include/terraingen/albedo/rock_albedo.h +75 -0
  12. terraingenpy-0.2.0.dev118/include/terraingen/albedo/slope_albedo.h +77 -0
  13. terraingenpy-0.2.0.dev118/include/terraingen/albedo/splotches.h +191 -0
  14. terraingenpy-0.2.0.dev118/include/terraingen/albedo/synthetic.h +87 -0
  15. terraingenpy-0.2.0.dev118/include/terraingen/config/config.h +65 -0
  16. terraingenpy-0.2.0.dev118/include/terraingen/config/json.h +68 -0
  17. terraingenpy-0.2.0.dev118/include/terraingen/distribution/golombek_rapp.h +41 -0
  18. terraingenpy-0.2.0.dev118/include/terraingen/distribution/log_polynomial.h +44 -0
  19. terraingenpy-0.2.0.dev118/include/terraingen/distribution/minimum.h +48 -0
  20. terraingenpy-0.2.0.dev118/include/terraingen/distribution/piecewise_power_law.h +50 -0
  21. terraingenpy-0.2.0.dev118/include/terraingen/distribution/piecewise_uniform.h +58 -0
  22. terraingenpy-0.2.0.dev118/include/terraingen/distribution/power_law.h +80 -0
  23. terraingenpy-0.2.0.dev118/include/terraingen/distribution/production_surface.h +73 -0
  24. terraingenpy-0.2.0.dev118/include/terraingen/distribution/size_frequency.h +130 -0
  25. terraingenpy-0.2.0.dev118/include/terraingen/distribution/spliced.h +54 -0
  26. terraingenpy-0.2.0.dev118/include/terraingen/distribution/summed.h +48 -0
  27. terraingenpy-0.2.0.dev118/include/terraingen/distribution/tabulated.h +52 -0
  28. terraingenpy-0.2.0.dev118/include/terraingen/geometry/cells.h +217 -0
  29. terraingenpy-0.2.0.dev118/include/terraingen/geometry/plane_fit.h +56 -0
  30. terraingenpy-0.2.0.dev118/include/terraingen/geometry/radial_shape.h +115 -0
  31. terraingenpy-0.2.0.dev118/include/terraingen/geometry/surface.h +242 -0
  32. terraingenpy-0.2.0.dev118/include/terraingen/layers/anchored_plane.h +31 -0
  33. terraingenpy-0.2.0.dev118/include/terraingen/layers/bedforms.h +118 -0
  34. terraingenpy-0.2.0.dev118/include/terraingen/layers/boulders/boulder.h +363 -0
  35. terraingenpy-0.2.0.dev118/include/terraingen/layers/boulders/boulder_abundance.h +85 -0
  36. terraingenpy-0.2.0.dev118/include/terraingen/layers/boulders/boulder_layer.h +419 -0
  37. terraingenpy-0.2.0.dev118/include/terraingen/layers/boulders/ejecta_index.h +55 -0
  38. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/ages/age_model.h +60 -0
  39. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/ages/freshness_ages.h +39 -0
  40. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/ages/steady_state.h +73 -0
  41. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/band_buckets.h +94 -0
  42. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/crater.h +247 -0
  43. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/crater_layer.h +230 -0
  44. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/degradation/degradation_model.h +69 -0
  45. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/degradation/diffusion.h +166 -0
  46. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/degradation/freshness_degradation.h +40 -0
  47. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/profiles/complex.h +107 -0
  48. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/profiles/fassett_thomson.h +44 -0
  49. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/profiles/martin_parkes_dunstan.h +38 -0
  50. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/secondaries.h +112 -0
  51. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/secondary_model.h +240 -0
  52. terraingenpy-0.2.0.dev118/include/terraingen/layers/craters/shaping/irregularity.h +190 -0
  53. terraingenpy-0.2.0.dev118/include/terraingen/layers/density_map.h +136 -0
  54. terraingenpy-0.2.0.dev118/include/terraingen/layers/dunes.h +264 -0
  55. terraingenpy-0.2.0.dev118/include/terraingen/layers/evaluation_cache.h +79 -0
  56. terraingenpy-0.2.0.dev118/include/terraingen/layers/exposure.h +123 -0
  57. terraingenpy-0.2.0.dev118/include/terraingen/layers/field.h +141 -0
  58. terraingenpy-0.2.0.dev118/include/terraingen/layers/kernels/craters.h +1392 -0
  59. terraingenpy-0.2.0.dev118/include/terraingen/layers/layer.h +162 -0
  60. terraingenpy-0.2.0.dev118/include/terraingen/layers/masked.h +167 -0
  61. terraingenpy-0.2.0.dev118/include/terraingen/layers/noise_layer.h +68 -0
  62. terraingenpy-0.2.0.dev118/include/terraingen/layers/pavement.h +140 -0
  63. terraingenpy-0.2.0.dev118/include/terraingen/layers/roughness.h +99 -0
  64. terraingenpy-0.2.0.dev118/include/terraingen/layers/sand_fill.h +80 -0
  65. terraingenpy-0.2.0.dev118/include/terraingen/layers/sand_shadow.h +109 -0
  66. terraingenpy-0.2.0.dev118/include/terraingen/layers/spectral_continuation.h +97 -0
  67. terraingenpy-0.2.0.dev118/include/terraingen/layers/strata.h +109 -0
  68. terraingenpy-0.2.0.dev118/include/terraingen/layers/transforms.h +81 -0
  69. terraingenpy-0.2.0.dev118/include/terraingen/pipeline/terrain.h +219 -0
  70. terraingenpy-0.2.0.dev118/include/terraingen/pipeline/terrain_view.h +69 -0
  71. terraingenpy-0.2.0.dev118/include/terraingen/random/stream.h +73 -0
  72. terraingenpy-0.2.0.dev118/include/terraingen/raster/geotiff/geotiff.h +210 -0
  73. terraingenpy-0.2.0.dev118/include/terraingen/raster/raster.h +205 -0
  74. terraingenpy-0.2.0.dev118/include/terraingen/sources/diamond_square.h +134 -0
  75. terraingenpy-0.2.0.dev118/include/terraingen/sources/flat_source.h +54 -0
  76. terraingenpy-0.2.0.dev118/include/terraingen/sources/geotiff_source.h +88 -0
  77. terraingenpy-0.2.0.dev118/include/terraingen/sources/raster_source.h +130 -0
  78. terraingenpy-0.2.0.dev118/include/terraingen/sources/sample_block.h +132 -0
  79. terraingenpy-0.2.0.dev118/include/terraingen/sources/shape_model_source.h +93 -0
  80. terraingenpy-0.2.0.dev118/include/terraingen/sources/source_chain.h +153 -0
  81. terraingenpy-0.2.0.dev118/include/terraingen/sources/synthetic_source.h +112 -0
  82. terraingenpy-0.2.0.dev118/include/terraingen/sources/upsampling.h +220 -0
  83. terraingenpy-0.2.0.dev118/include/terraingen/util/log.h +107 -0
  84. terraingenpy-0.2.0.dev118/include/terraingen/util/lru_cache.h +130 -0
  85. terraingenpy-0.2.0.dev118/include/terraingen/util/option_fields.h +384 -0
  86. terraingenpy-0.2.0.dev118/include/terraingen/util/span.h +130 -0
  87. terraingenpy-0.2.0.dev118/pyproject.toml +88 -0
  88. terraingenpy-0.2.0.dev118/python/src/layers.cpp +637 -0
  89. terraingenpy-0.2.0.dev118/python/src/options.h +280 -0
  90. terraingenpy-0.2.0.dev118/python/src/pipeline.cpp +611 -0
  91. terraingenpy-0.2.0.dev118/src/albedo/bands.h +80 -0
  92. terraingenpy-0.2.0.dev118/src/albedo/blast_zones.cpp +96 -0
  93. terraingenpy-0.2.0.dev118/src/albedo/crater_albedo.cpp +564 -0
  94. terraingenpy-0.2.0.dev118/src/albedo/raster_albedo.cpp +151 -0
  95. terraingenpy-0.2.0.dev118/src/albedo/rock_albedo.cpp +127 -0
  96. terraingenpy-0.2.0.dev118/src/albedo/slope_albedo.cpp +153 -0
  97. terraingenpy-0.2.0.dev118/src/albedo/splotches.cpp +426 -0
  98. terraingenpy-0.2.0.dev118/src/albedo/synthetic.cpp +72 -0
  99. terraingenpy-0.2.0.dev118/src/config/common.h +331 -0
  100. terraingenpy-0.2.0.dev118/src/config/generate.cpp +411 -0
  101. terraingenpy-0.2.0.dev118/src/config/json.cpp +224 -0
  102. terraingenpy-0.2.0.dev118/src/config/json_io.h +391 -0
  103. terraingenpy-0.2.0.dev118/src/config/schema.cpp +290 -0
  104. terraingenpy-0.2.0.dev118/src/config/terrain.cpp +133 -0
  105. terraingenpy-0.2.0.dev118/src/distribution/golombek_rapp.cpp +44 -0
  106. terraingenpy-0.2.0.dev118/src/distribution/log_polynomial.cpp +63 -0
  107. terraingenpy-0.2.0.dev118/src/distribution/minimum.cpp +46 -0
  108. terraingenpy-0.2.0.dev118/src/distribution/piecewise_power_law.cpp +64 -0
  109. terraingenpy-0.2.0.dev118/src/distribution/piecewise_uniform.cpp +107 -0
  110. terraingenpy-0.2.0.dev118/src/distribution/power_law.cpp +37 -0
  111. terraingenpy-0.2.0.dev118/src/distribution/production_surface.cpp +66 -0
  112. terraingenpy-0.2.0.dev118/src/distribution/size_frequency.cpp +142 -0
  113. terraingenpy-0.2.0.dev118/src/distribution/spliced.cpp +69 -0
  114. terraingenpy-0.2.0.dev118/src/distribution/summed.cpp +50 -0
  115. terraingenpy-0.2.0.dev118/src/distribution/tabulated.cpp +83 -0
  116. terraingenpy-0.2.0.dev118/src/geometry/cube_sphere_cells.cpp +423 -0
  117. terraingenpy-0.2.0.dev118/src/geometry/plane_fit.cpp +53 -0
  118. terraingenpy-0.2.0.dev118/src/geometry/radial_shape.cpp +146 -0
  119. terraingenpy-0.2.0.dev118/src/geometry/surface.cpp +336 -0
  120. terraingenpy-0.2.0.dev118/src/gpu/cuda.cpp +316 -0
  121. terraingenpy-0.2.0.dev118/src/gpu/cuda.h +47 -0
  122. terraingenpy-0.2.0.dev118/src/gpu/device.h +126 -0
  123. terraingenpy-0.2.0.dev118/src/gpu/metal.cpp +192 -0
  124. terraingenpy-0.2.0.dev118/src/gpu/metal.h +46 -0
  125. terraingenpy-0.2.0.dev118/src/gpu/vulkan.cpp +555 -0
  126. terraingenpy-0.2.0.dev118/src/gpu/vulkan.h +67 -0
  127. terraingenpy-0.2.0.dev118/src/io/feature_lists.cpp +464 -0
  128. terraingenpy-0.2.0.dev118/src/layers/anchored_plane.cpp +24 -0
  129. terraingenpy-0.2.0.dev118/src/layers/bedforms.cpp +178 -0
  130. terraingenpy-0.2.0.dev118/src/layers/boulders/boulder.cpp +154 -0
  131. terraingenpy-0.2.0.dev118/src/layers/boulders/boulder_abundance.cpp +182 -0
  132. terraingenpy-0.2.0.dev118/src/layers/boulders/boulder_layer.cpp +428 -0
  133. terraingenpy-0.2.0.dev118/src/layers/boulders/boulder_layer_abundance.cpp +368 -0
  134. terraingenpy-0.2.0.dev118/src/layers/boulders/boulder_pose.cpp +327 -0
  135. terraingenpy-0.2.0.dev118/src/layers/boulders/boulder_relief.cpp +466 -0
  136. terraingenpy-0.2.0.dev118/src/layers/boulders/ejecta_index.cpp +48 -0
  137. terraingenpy-0.2.0.dev118/src/layers/craters/ages/age_model.cpp +51 -0
  138. terraingenpy-0.2.0.dev118/src/layers/craters/ages/freshness_ages.cpp +41 -0
  139. terraingenpy-0.2.0.dev118/src/layers/craters/ages/steady_state.cpp +71 -0
  140. terraingenpy-0.2.0.dev118/src/layers/craters/crater.cpp +132 -0
  141. terraingenpy-0.2.0.dev118/src/layers/craters/crater_layer.cpp +384 -0
  142. terraingenpy-0.2.0.dev118/src/layers/craters/degradation/degradation_model.cpp +50 -0
  143. terraingenpy-0.2.0.dev118/src/layers/craters/degradation/diffusion.cpp +320 -0
  144. terraingenpy-0.2.0.dev118/src/layers/craters/degradation/freshness_degradation.cpp +33 -0
  145. terraingenpy-0.2.0.dev118/src/layers/craters/generation/cell_cache.cpp +82 -0
  146. terraingenpy-0.2.0.dev118/src/layers/craters/generation/cell_cache.h +70 -0
  147. terraingenpy-0.2.0.dev118/src/layers/craters/generation/population.cpp +441 -0
  148. terraingenpy-0.2.0.dev118/src/layers/craters/generation/spacing.cpp +128 -0
  149. terraingenpy-0.2.0.dev118/src/layers/craters/profiles/complex.cpp +79 -0
  150. terraingenpy-0.2.0.dev118/src/layers/craters/profiles/fassett_thomson.cpp +21 -0
  151. terraingenpy-0.2.0.dev118/src/layers/craters/profiles/martin_parkes_dunstan.cpp +22 -0
  152. terraingenpy-0.2.0.dev118/src/layers/craters/secondaries.cpp +444 -0
  153. terraingenpy-0.2.0.dev118/src/layers/craters/secondary_model.cpp +247 -0
  154. terraingenpy-0.2.0.dev118/src/layers/craters/shaping/apply.cpp +410 -0
  155. terraingenpy-0.2.0.dev118/src/layers/craters/shaping/crater_kernel.cpp +622 -0
  156. terraingenpy-0.2.0.dev118/src/layers/craters/shaping/crater_kernel.h +88 -0
  157. terraingenpy-0.2.0.dev118/src/layers/craters/shaping/datum_fit.cpp +755 -0
  158. terraingenpy-0.2.0.dev118/src/layers/craters/shaping/irregularity.cpp +372 -0
  159. terraingenpy-0.2.0.dev118/src/layers/density_map.cpp +115 -0
  160. terraingenpy-0.2.0.dev118/src/layers/dunes.cpp +609 -0
  161. terraingenpy-0.2.0.dev118/src/layers/exposure.cpp +126 -0
  162. terraingenpy-0.2.0.dev118/src/layers/field.cpp +122 -0
  163. terraingenpy-0.2.0.dev118/src/layers/kernels/crater_body_datums.slang +41 -0
  164. terraingenpy-0.2.0.dev118/src/layers/kernels/crater_datums.slang +33 -0
  165. terraingenpy-0.2.0.dev118/src/layers/kernels/craters.slang +52 -0
  166. terraingenpy-0.2.0.dev118/src/layers/masked.cpp +382 -0
  167. terraingenpy-0.2.0.dev118/src/layers/noise_layer.cpp +121 -0
  168. terraingenpy-0.2.0.dev118/src/layers/pavement.cpp +227 -0
  169. terraingenpy-0.2.0.dev118/src/layers/prefetched_ground.cpp +126 -0
  170. terraingenpy-0.2.0.dev118/src/layers/prefetched_ground.h +175 -0
  171. terraingenpy-0.2.0.dev118/src/layers/roughness.cpp +170 -0
  172. terraingenpy-0.2.0.dev118/src/layers/sand_fill.cpp +77 -0
  173. terraingenpy-0.2.0.dev118/src/layers/sand_shadow.cpp +154 -0
  174. terraingenpy-0.2.0.dev118/src/layers/source_resolved.cpp +70 -0
  175. terraingenpy-0.2.0.dev118/src/layers/spectral_continuation.cpp +234 -0
  176. terraingenpy-0.2.0.dev118/src/layers/strata.cpp +120 -0
  177. terraingenpy-0.2.0.dev118/src/layers/transforms.cpp +55 -0
  178. terraingenpy-0.2.0.dev118/src/mesh/io/gltf.cpp +335 -0
  179. terraingenpy-0.2.0.dev118/src/mesh/io/stl.cpp +137 -0
  180. terraingenpy-0.2.0.dev118/src/mesh/mesh_build.cpp +296 -0
  181. terraingenpy-0.2.0.dev118/src/mesh/shape_model.cpp +180 -0
  182. terraingenpy-0.2.0.dev118/src/pipeline/materials.cpp +128 -0
  183. terraingenpy-0.2.0.dev118/src/pipeline/terrain.cpp +433 -0
  184. terraingenpy-0.2.0.dev118/src/pipeline/terrain_view.cpp +70 -0
  185. terraingenpy-0.2.0.dev118/src/random/stream.cpp +27 -0
  186. terraingenpy-0.2.0.dev118/src/raster/geotiff/geotiff_read.cpp +776 -0
  187. terraingenpy-0.2.0.dev118/src/raster/geotiff/geotiff_write.cpp +298 -0
  188. terraingenpy-0.2.0.dev118/src/raster/geotiff/tiff_codecs.cpp +392 -0
  189. terraingenpy-0.2.0.dev118/src/sources/diamond_square.cpp +552 -0
  190. terraingenpy-0.2.0.dev118/src/sources/flat_source.cpp +33 -0
  191. terraingenpy-0.2.0.dev118/src/sources/geotiff_source.cpp +189 -0
  192. terraingenpy-0.2.0.dev118/src/sources/raster_heights.h +110 -0
  193. terraingenpy-0.2.0.dev118/src/sources/raster_source.cpp +248 -0
  194. terraingenpy-0.2.0.dev118/src/sources/sample_block.cpp +67 -0
  195. terraingenpy-0.2.0.dev118/src/sources/seam_field.cpp +713 -0
  196. terraingenpy-0.2.0.dev118/src/sources/seam_field.h +52 -0
  197. terraingenpy-0.2.0.dev118/src/sources/shape_model_source.cpp +169 -0
  198. terraingenpy-0.2.0.dev118/src/sources/source_chain.cpp +239 -0
  199. terraingenpy-0.2.0.dev118/src/sources/synthetic_source.cpp +101 -0
  200. terraingenpy-0.2.0.dev118/src/sources/upsampling.cpp +430 -0
  201. terraingenpy-0.2.0.dev118/src/util/parallel.cpp +151 -0
  202. terraingenpy-0.2.0.dev118/tests/python/test_layers.py +899 -0
  203. terraingenpy-0.2.0.dev118/tests/support/apply_crater.h +27 -0
  204. terraingenpy-0.2.0.dev118/tests/support/log_capture.h +48 -0
  205. terraingenpy-0.2.0.dev118/tests/support/referenced_source.h +38 -0
  206. terraingenpy-0.2.0.dev118/tests/unit/albedo/slope_albedo_test.cpp +159 -0
  207. terraingenpy-0.2.0.dev118/tests/unit/distribution/size_frequency_test.cpp +142 -0
  208. terraingenpy-0.2.0.dev118/tests/unit/layers/CMakeLists.txt +68 -0
  209. terraingenpy-0.2.0.dev118/tests/unit/layers/bedforms_test.cpp +180 -0
  210. terraingenpy-0.2.0.dev118/tests/unit/layers/boulders/boulder_layer_test.cpp +1517 -0
  211. terraingenpy-0.2.0.dev118/tests/unit/layers/boulders/manual_boulder_test.cpp +477 -0
  212. terraingenpy-0.2.0.dev118/tests/unit/layers/craters/generation/population_test.cpp +725 -0
  213. terraingenpy-0.2.0.dev118/tests/unit/layers/craters/shaping/crater_kernel_test.cpp +1056 -0
  214. terraingenpy-0.2.0.dev118/tests/unit/layers/density_map_test.cpp +145 -0
  215. terraingenpy-0.2.0.dev118/tests/unit/layers/exposure_test.cpp +166 -0
  216. terraingenpy-0.2.0.dev118/tests/unit/layers/ground_reach_test.cpp +156 -0
  217. terraingenpy-0.2.0.dev118/tests/unit/layers/pavement_test.cpp +223 -0
  218. terraingenpy-0.2.0.dev118/tests/unit/layers/roughness_estimate_test.cpp +225 -0
  219. terraingenpy-0.2.0.dev118/tests/unit/layers/sand_fill_test.cpp +152 -0
  220. terraingenpy-0.2.0.dev118/tests/unit/layers/strata_test.cpp +275 -0
  221. terraingenpy-0.2.0.dev118/tests/unit/pipeline/materials_test.cpp +207 -0
  222. terraingenpy-0.2.0.dev118/tests/unit/pipeline/terrain_test.cpp +972 -0
  223. terraingenpy-0.2.0.dev118/tests/unit/sources/diamond_square_test.cpp +717 -0
  224. terraingenpy-0.2.0.dev118/tests/unit/sources/raster_source_test.cpp +373 -0
  225. terraingenpy-0.2.0.dev118/tests/unit/sources/source_chain_test.cpp +564 -0
  226. terraingenpy-0.2.0.dev118/tests/unit/sources/upsampling_test.cpp +515 -0
  227. terraingenpy-0.2.0.dev115/.github/workflows/ci.yml +0 -520
  228. terraingenpy-0.2.0.dev115/CHANGELOG.md +0 -404
  229. terraingenpy-0.2.0.dev115/CMakeLists.txt +0 -144
  230. terraingenpy-0.2.0.dev115/PKG-INFO +0 -226
  231. terraingenpy-0.2.0.dev115/README.md +0 -170
  232. terraingenpy-0.2.0.dev115/app/cli.cpp +0 -359
  233. terraingenpy-0.2.0.dev115/docs/_src/getting-started/installation.md +0 -71
  234. terraingenpy-0.2.0.dev115/include/terraingen/albedo/blast_zones.h +0 -75
  235. terraingenpy-0.2.0.dev115/include/terraingen/albedo/crater_albedo.h +0 -91
  236. terraingenpy-0.2.0.dev115/include/terraingen/albedo/raster_albedo.h +0 -105
  237. terraingenpy-0.2.0.dev115/include/terraingen/albedo/rock_albedo.h +0 -75
  238. terraingenpy-0.2.0.dev115/include/terraingen/albedo/slope_albedo.h +0 -77
  239. terraingenpy-0.2.0.dev115/include/terraingen/albedo/splotches.h +0 -191
  240. terraingenpy-0.2.0.dev115/include/terraingen/albedo/synthetic.h +0 -87
  241. terraingenpy-0.2.0.dev115/include/terraingen/config/config.h +0 -65
  242. terraingenpy-0.2.0.dev115/include/terraingen/config/json.h +0 -68
  243. terraingenpy-0.2.0.dev115/include/terraingen/distribution/golombek_rapp.h +0 -41
  244. terraingenpy-0.2.0.dev115/include/terraingen/distribution/log_polynomial.h +0 -44
  245. terraingenpy-0.2.0.dev115/include/terraingen/distribution/minimum.h +0 -48
  246. terraingenpy-0.2.0.dev115/include/terraingen/distribution/piecewise_power_law.h +0 -50
  247. terraingenpy-0.2.0.dev115/include/terraingen/distribution/piecewise_uniform.h +0 -58
  248. terraingenpy-0.2.0.dev115/include/terraingen/distribution/power_law.h +0 -80
  249. terraingenpy-0.2.0.dev115/include/terraingen/distribution/production_surface.h +0 -73
  250. terraingenpy-0.2.0.dev115/include/terraingen/distribution/size_frequency.h +0 -130
  251. terraingenpy-0.2.0.dev115/include/terraingen/distribution/spliced.h +0 -54
  252. terraingenpy-0.2.0.dev115/include/terraingen/distribution/summed.h +0 -48
  253. terraingenpy-0.2.0.dev115/include/terraingen/distribution/tabulated.h +0 -52
  254. terraingenpy-0.2.0.dev115/include/terraingen/geometry/cells.h +0 -217
  255. terraingenpy-0.2.0.dev115/include/terraingen/geometry/plane_fit.h +0 -56
  256. terraingenpy-0.2.0.dev115/include/terraingen/geometry/radial_shape.h +0 -115
  257. terraingenpy-0.2.0.dev115/include/terraingen/geometry/surface.h +0 -241
  258. terraingenpy-0.2.0.dev115/include/terraingen/layers/anchored_plane.h +0 -31
  259. terraingenpy-0.2.0.dev115/include/terraingen/layers/bedforms.h +0 -114
  260. terraingenpy-0.2.0.dev115/include/terraingen/layers/boulders/boulder.h +0 -363
  261. terraingenpy-0.2.0.dev115/include/terraingen/layers/boulders/boulder_abundance.h +0 -85
  262. terraingenpy-0.2.0.dev115/include/terraingen/layers/boulders/boulder_layer.h +0 -415
  263. terraingenpy-0.2.0.dev115/include/terraingen/layers/boulders/ejecta_index.h +0 -55
  264. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/ages/age_model.h +0 -60
  265. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/ages/freshness_ages.h +0 -39
  266. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/ages/steady_state.h +0 -73
  267. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/band_buckets.h +0 -94
  268. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/crater.h +0 -247
  269. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/crater_layer.h +0 -226
  270. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/degradation/degradation_model.h +0 -69
  271. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/degradation/diffusion.h +0 -166
  272. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/degradation/freshness_degradation.h +0 -40
  273. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/profiles/complex.h +0 -107
  274. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/profiles/fassett_thomson.h +0 -44
  275. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/profiles/martin_parkes_dunstan.h +0 -38
  276. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/secondaries.h +0 -112
  277. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/secondary_model.h +0 -240
  278. terraingenpy-0.2.0.dev115/include/terraingen/layers/craters/shaping/irregularity.h +0 -190
  279. terraingenpy-0.2.0.dev115/include/terraingen/layers/density_map.h +0 -136
  280. terraingenpy-0.2.0.dev115/include/terraingen/layers/dunes.h +0 -264
  281. terraingenpy-0.2.0.dev115/include/terraingen/layers/evaluation_cache.h +0 -79
  282. terraingenpy-0.2.0.dev115/include/terraingen/layers/exposure.h +0 -118
  283. terraingenpy-0.2.0.dev115/include/terraingen/layers/field.h +0 -141
  284. terraingenpy-0.2.0.dev115/include/terraingen/layers/kernels/craters.h +0 -1323
  285. terraingenpy-0.2.0.dev115/include/terraingen/layers/layer.h +0 -155
  286. terraingenpy-0.2.0.dev115/include/terraingen/layers/masked.h +0 -163
  287. terraingenpy-0.2.0.dev115/include/terraingen/layers/noise_layer.h +0 -67
  288. terraingenpy-0.2.0.dev115/include/terraingen/layers/pavement.h +0 -135
  289. terraingenpy-0.2.0.dev115/include/terraingen/layers/roughness.h +0 -99
  290. terraingenpy-0.2.0.dev115/include/terraingen/layers/sand_fill.h +0 -75
  291. terraingenpy-0.2.0.dev115/include/terraingen/layers/sand_shadow.h +0 -104
  292. terraingenpy-0.2.0.dev115/include/terraingen/layers/spectral_continuation.h +0 -97
  293. terraingenpy-0.2.0.dev115/include/terraingen/layers/strata.h +0 -109
  294. terraingenpy-0.2.0.dev115/include/terraingen/layers/transforms.h +0 -81
  295. terraingenpy-0.2.0.dev115/include/terraingen/pipeline/terrain.h +0 -214
  296. terraingenpy-0.2.0.dev115/include/terraingen/pipeline/terrain_view.h +0 -69
  297. terraingenpy-0.2.0.dev115/include/terraingen/random/stream.h +0 -73
  298. terraingenpy-0.2.0.dev115/include/terraingen/raster/geotiff/geotiff.h +0 -210
  299. terraingenpy-0.2.0.dev115/include/terraingen/raster/raster.h +0 -205
  300. terraingenpy-0.2.0.dev115/include/terraingen/sources/diamond_square.h +0 -134
  301. terraingenpy-0.2.0.dev115/include/terraingen/sources/flat_source.h +0 -54
  302. terraingenpy-0.2.0.dev115/include/terraingen/sources/geotiff_source.h +0 -88
  303. terraingenpy-0.2.0.dev115/include/terraingen/sources/raster_source.h +0 -130
  304. terraingenpy-0.2.0.dev115/include/terraingen/sources/sample_block.h +0 -132
  305. terraingenpy-0.2.0.dev115/include/terraingen/sources/shape_model_source.h +0 -93
  306. terraingenpy-0.2.0.dev115/include/terraingen/sources/source_chain.h +0 -153
  307. terraingenpy-0.2.0.dev115/include/terraingen/sources/synthetic_source.h +0 -112
  308. terraingenpy-0.2.0.dev115/include/terraingen/sources/upsampling.h +0 -220
  309. terraingenpy-0.2.0.dev115/include/terraingen/util/log.h +0 -107
  310. terraingenpy-0.2.0.dev115/include/terraingen/util/lru_cache.h +0 -130
  311. terraingenpy-0.2.0.dev115/include/terraingen/util/option_fields.h +0 -384
  312. terraingenpy-0.2.0.dev115/include/terraingen/util/span.h +0 -130
  313. terraingenpy-0.2.0.dev115/pyproject.toml +0 -87
  314. terraingenpy-0.2.0.dev115/python/src/layers.cpp +0 -629
  315. terraingenpy-0.2.0.dev115/python/src/options.h +0 -279
  316. terraingenpy-0.2.0.dev115/python/src/pipeline.cpp +0 -608
  317. terraingenpy-0.2.0.dev115/src/albedo/bands.h +0 -80
  318. terraingenpy-0.2.0.dev115/src/albedo/blast_zones.cpp +0 -96
  319. terraingenpy-0.2.0.dev115/src/albedo/crater_albedo.cpp +0 -564
  320. terraingenpy-0.2.0.dev115/src/albedo/raster_albedo.cpp +0 -151
  321. terraingenpy-0.2.0.dev115/src/albedo/rock_albedo.cpp +0 -127
  322. terraingenpy-0.2.0.dev115/src/albedo/slope_albedo.cpp +0 -153
  323. terraingenpy-0.2.0.dev115/src/albedo/splotches.cpp +0 -425
  324. terraingenpy-0.2.0.dev115/src/albedo/synthetic.cpp +0 -72
  325. terraingenpy-0.2.0.dev115/src/config/common.h +0 -331
  326. terraingenpy-0.2.0.dev115/src/config/generate.cpp +0 -410
  327. terraingenpy-0.2.0.dev115/src/config/json.cpp +0 -224
  328. terraingenpy-0.2.0.dev115/src/config/json_io.h +0 -391
  329. terraingenpy-0.2.0.dev115/src/config/schema.cpp +0 -290
  330. terraingenpy-0.2.0.dev115/src/config/terrain.cpp +0 -133
  331. terraingenpy-0.2.0.dev115/src/distribution/golombek_rapp.cpp +0 -44
  332. terraingenpy-0.2.0.dev115/src/distribution/log_polynomial.cpp +0 -63
  333. terraingenpy-0.2.0.dev115/src/distribution/minimum.cpp +0 -46
  334. terraingenpy-0.2.0.dev115/src/distribution/piecewise_power_law.cpp +0 -64
  335. terraingenpy-0.2.0.dev115/src/distribution/piecewise_uniform.cpp +0 -107
  336. terraingenpy-0.2.0.dev115/src/distribution/power_law.cpp +0 -37
  337. terraingenpy-0.2.0.dev115/src/distribution/production_surface.cpp +0 -66
  338. terraingenpy-0.2.0.dev115/src/distribution/size_frequency.cpp +0 -142
  339. terraingenpy-0.2.0.dev115/src/distribution/spliced.cpp +0 -69
  340. terraingenpy-0.2.0.dev115/src/distribution/summed.cpp +0 -50
  341. terraingenpy-0.2.0.dev115/src/distribution/tabulated.cpp +0 -83
  342. terraingenpy-0.2.0.dev115/src/geometry/cube_sphere_cells.cpp +0 -423
  343. terraingenpy-0.2.0.dev115/src/geometry/plane_fit.cpp +0 -53
  344. terraingenpy-0.2.0.dev115/src/geometry/radial_shape.cpp +0 -145
  345. terraingenpy-0.2.0.dev115/src/geometry/surface.cpp +0 -335
  346. terraingenpy-0.2.0.dev115/src/gpu/cuda.cpp +0 -316
  347. terraingenpy-0.2.0.dev115/src/gpu/cuda.h +0 -47
  348. terraingenpy-0.2.0.dev115/src/gpu/device.h +0 -126
  349. terraingenpy-0.2.0.dev115/src/gpu/metal.cpp +0 -181
  350. terraingenpy-0.2.0.dev115/src/gpu/metal.h +0 -46
  351. terraingenpy-0.2.0.dev115/src/gpu/vulkan.cpp +0 -555
  352. terraingenpy-0.2.0.dev115/src/gpu/vulkan.h +0 -67
  353. terraingenpy-0.2.0.dev115/src/io/feature_lists.cpp +0 -463
  354. terraingenpy-0.2.0.dev115/src/layers/anchored_plane.cpp +0 -24
  355. terraingenpy-0.2.0.dev115/src/layers/bedforms.cpp +0 -173
  356. terraingenpy-0.2.0.dev115/src/layers/boulders/boulder.cpp +0 -153
  357. terraingenpy-0.2.0.dev115/src/layers/boulders/boulder_abundance.cpp +0 -182
  358. terraingenpy-0.2.0.dev115/src/layers/boulders/boulder_layer.cpp +0 -417
  359. terraingenpy-0.2.0.dev115/src/layers/boulders/boulder_layer_abundance.cpp +0 -368
  360. terraingenpy-0.2.0.dev115/src/layers/boulders/boulder_pose.cpp +0 -327
  361. terraingenpy-0.2.0.dev115/src/layers/boulders/boulder_relief.cpp +0 -465
  362. terraingenpy-0.2.0.dev115/src/layers/boulders/ejecta_index.cpp +0 -48
  363. terraingenpy-0.2.0.dev115/src/layers/craters/ages/age_model.cpp +0 -51
  364. terraingenpy-0.2.0.dev115/src/layers/craters/ages/freshness_ages.cpp +0 -41
  365. terraingenpy-0.2.0.dev115/src/layers/craters/ages/steady_state.cpp +0 -71
  366. terraingenpy-0.2.0.dev115/src/layers/craters/crater.cpp +0 -132
  367. terraingenpy-0.2.0.dev115/src/layers/craters/crater_layer.cpp +0 -381
  368. terraingenpy-0.2.0.dev115/src/layers/craters/degradation/degradation_model.cpp +0 -50
  369. terraingenpy-0.2.0.dev115/src/layers/craters/degradation/diffusion.cpp +0 -317
  370. terraingenpy-0.2.0.dev115/src/layers/craters/degradation/freshness_degradation.cpp +0 -33
  371. terraingenpy-0.2.0.dev115/src/layers/craters/generation/cell_cache.cpp +0 -82
  372. terraingenpy-0.2.0.dev115/src/layers/craters/generation/cell_cache.h +0 -70
  373. terraingenpy-0.2.0.dev115/src/layers/craters/generation/population.cpp +0 -441
  374. terraingenpy-0.2.0.dev115/src/layers/craters/generation/spacing.cpp +0 -128
  375. terraingenpy-0.2.0.dev115/src/layers/craters/profiles/complex.cpp +0 -79
  376. terraingenpy-0.2.0.dev115/src/layers/craters/profiles/fassett_thomson.cpp +0 -21
  377. terraingenpy-0.2.0.dev115/src/layers/craters/profiles/martin_parkes_dunstan.cpp +0 -22
  378. terraingenpy-0.2.0.dev115/src/layers/craters/secondaries.cpp +0 -444
  379. terraingenpy-0.2.0.dev115/src/layers/craters/secondary_model.cpp +0 -247
  380. terraingenpy-0.2.0.dev115/src/layers/craters/shaping/apply.cpp +0 -364
  381. terraingenpy-0.2.0.dev115/src/layers/craters/shaping/crater_kernel.cpp +0 -611
  382. terraingenpy-0.2.0.dev115/src/layers/craters/shaping/crater_kernel.h +0 -94
  383. terraingenpy-0.2.0.dev115/src/layers/craters/shaping/datum_fit.cpp +0 -756
  384. terraingenpy-0.2.0.dev115/src/layers/craters/shaping/irregularity.cpp +0 -372
  385. terraingenpy-0.2.0.dev115/src/layers/density_map.cpp +0 -115
  386. terraingenpy-0.2.0.dev115/src/layers/dunes.cpp +0 -606
  387. terraingenpy-0.2.0.dev115/src/layers/exposure.cpp +0 -126
  388. terraingenpy-0.2.0.dev115/src/layers/field.cpp +0 -122
  389. terraingenpy-0.2.0.dev115/src/layers/kernels/crater_body_datums.slang +0 -42
  390. terraingenpy-0.2.0.dev115/src/layers/kernels/crater_datums.slang +0 -36
  391. terraingenpy-0.2.0.dev115/src/layers/kernels/craters.slang +0 -60
  392. terraingenpy-0.2.0.dev115/src/layers/masked.cpp +0 -382
  393. terraingenpy-0.2.0.dev115/src/layers/noise_layer.cpp +0 -120
  394. terraingenpy-0.2.0.dev115/src/layers/pavement.cpp +0 -227
  395. terraingenpy-0.2.0.dev115/src/layers/prefetched_ground.cpp +0 -126
  396. terraingenpy-0.2.0.dev115/src/layers/prefetched_ground.h +0 -175
  397. terraingenpy-0.2.0.dev115/src/layers/roughness.cpp +0 -170
  398. terraingenpy-0.2.0.dev115/src/layers/sand_fill.cpp +0 -77
  399. terraingenpy-0.2.0.dev115/src/layers/sand_shadow.cpp +0 -146
  400. terraingenpy-0.2.0.dev115/src/layers/source_resolved.cpp +0 -70
  401. terraingenpy-0.2.0.dev115/src/layers/spectral_continuation.cpp +0 -234
  402. terraingenpy-0.2.0.dev115/src/layers/strata.cpp +0 -120
  403. terraingenpy-0.2.0.dev115/src/layers/transforms.cpp +0 -55
  404. terraingenpy-0.2.0.dev115/src/mesh/io/gltf.cpp +0 -335
  405. terraingenpy-0.2.0.dev115/src/mesh/io/stl.cpp +0 -137
  406. terraingenpy-0.2.0.dev115/src/mesh/mesh_build.cpp +0 -296
  407. terraingenpy-0.2.0.dev115/src/mesh/shape_model.cpp +0 -180
  408. terraingenpy-0.2.0.dev115/src/pipeline/materials.cpp +0 -128
  409. terraingenpy-0.2.0.dev115/src/pipeline/terrain.cpp +0 -425
  410. terraingenpy-0.2.0.dev115/src/pipeline/terrain_view.cpp +0 -70
  411. terraingenpy-0.2.0.dev115/src/random/stream.cpp +0 -27
  412. terraingenpy-0.2.0.dev115/src/raster/geotiff/geotiff_read.cpp +0 -776
  413. terraingenpy-0.2.0.dev115/src/raster/geotiff/geotiff_write.cpp +0 -298
  414. terraingenpy-0.2.0.dev115/src/raster/geotiff/tiff_codecs.cpp +0 -392
  415. terraingenpy-0.2.0.dev115/src/sources/diamond_square.cpp +0 -552
  416. terraingenpy-0.2.0.dev115/src/sources/flat_source.cpp +0 -33
  417. terraingenpy-0.2.0.dev115/src/sources/geotiff_source.cpp +0 -189
  418. terraingenpy-0.2.0.dev115/src/sources/raster_heights.h +0 -110
  419. terraingenpy-0.2.0.dev115/src/sources/raster_source.cpp +0 -248
  420. terraingenpy-0.2.0.dev115/src/sources/sample_block.cpp +0 -67
  421. terraingenpy-0.2.0.dev115/src/sources/seam_field.cpp +0 -713
  422. terraingenpy-0.2.0.dev115/src/sources/seam_field.h +0 -52
  423. terraingenpy-0.2.0.dev115/src/sources/shape_model_source.cpp +0 -169
  424. terraingenpy-0.2.0.dev115/src/sources/source_chain.cpp +0 -239
  425. terraingenpy-0.2.0.dev115/src/sources/synthetic_source.cpp +0 -101
  426. terraingenpy-0.2.0.dev115/src/sources/upsampling.cpp +0 -430
  427. terraingenpy-0.2.0.dev115/src/util/parallel.cpp +0 -151
  428. terraingenpy-0.2.0.dev115/tests/python/test_layers.py +0 -883
  429. terraingenpy-0.2.0.dev115/tests/support/apply_crater.h +0 -23
  430. terraingenpy-0.2.0.dev115/tests/support/log_capture.h +0 -48
  431. terraingenpy-0.2.0.dev115/tests/support/referenced_source.h +0 -38
  432. terraingenpy-0.2.0.dev115/tests/unit/albedo/slope_albedo_test.cpp +0 -159
  433. terraingenpy-0.2.0.dev115/tests/unit/distribution/size_frequency_test.cpp +0 -142
  434. terraingenpy-0.2.0.dev115/tests/unit/layers/CMakeLists.txt +0 -67
  435. terraingenpy-0.2.0.dev115/tests/unit/layers/bedforms_test.cpp +0 -180
  436. terraingenpy-0.2.0.dev115/tests/unit/layers/boulders/boulder_layer_test.cpp +0 -1517
  437. terraingenpy-0.2.0.dev115/tests/unit/layers/boulders/manual_boulder_test.cpp +0 -477
  438. terraingenpy-0.2.0.dev115/tests/unit/layers/craters/generation/population_test.cpp +0 -725
  439. terraingenpy-0.2.0.dev115/tests/unit/layers/craters/shaping/crater_kernel_test.cpp +0 -1027
  440. terraingenpy-0.2.0.dev115/tests/unit/layers/density_map_test.cpp +0 -145
  441. terraingenpy-0.2.0.dev115/tests/unit/layers/exposure_test.cpp +0 -166
  442. terraingenpy-0.2.0.dev115/tests/unit/layers/pavement_test.cpp +0 -223
  443. terraingenpy-0.2.0.dev115/tests/unit/layers/roughness_estimate_test.cpp +0 -224
  444. terraingenpy-0.2.0.dev115/tests/unit/layers/sand_fill_test.cpp +0 -152
  445. terraingenpy-0.2.0.dev115/tests/unit/layers/strata_test.cpp +0 -275
  446. terraingenpy-0.2.0.dev115/tests/unit/pipeline/materials_test.cpp +0 -207
  447. terraingenpy-0.2.0.dev115/tests/unit/pipeline/terrain_test.cpp +0 -960
  448. terraingenpy-0.2.0.dev115/tests/unit/sources/diamond_square_test.cpp +0 -717
  449. terraingenpy-0.2.0.dev115/tests/unit/sources/raster_source_test.cpp +0 -373
  450. terraingenpy-0.2.0.dev115/tests/unit/sources/source_chain_test.cpp +0 -564
  451. terraingenpy-0.2.0.dev115/tests/unit/sources/upsampling_test.cpp +0 -515
  452. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.clang-format +0 -0
  453. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.clang-tidy +0 -0
  454. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.cmake-format.yaml +0 -0
  455. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.dockerignore +0 -0
  456. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.gitattributes +0 -0
  457. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  458. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  459. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  460. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.github/pull_request_template.md +0 -0
  461. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.github/scripts/install-lavapipe-windows.sh +0 -0
  462. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.gitignore +0 -0
  463. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/.pre-commit-config.yaml +0 -0
  464. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/CITATION.cff +0 -0
  465. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/CONTRIBUTING.md +0 -0
  466. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/Dockerfile +0 -0
  467. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/LICENSE +0 -0
  468. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/app/CMakeLists.txt +0 -0
  469. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/app/cli.h +0 -0
  470. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/app/main.cpp +0 -0
  471. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/BuildInfo.cmake +0 -0
  472. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/CoverageBadge.cmake +0 -0
  473. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/EmbedFile.cmake +0 -0
  474. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/Kernel.cpp.in +0 -0
  475. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/TerrainGenPackaging.cmake +0 -0
  476. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/TerrainGenSlang.cmake +0 -0
  477. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/TerrainGenTesting.cmake +0 -0
  478. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/terraingenConfig.cmake.in +0 -0
  479. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/benchmark.cmake +0 -0
  480. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/googletest.cmake +0 -0
  481. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/mesh_formats.cmake +0 -0
  482. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/miniz.cmake +0 -0
  483. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/nanobind.cmake +0 -0
  484. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/nvrtc.cmake +0 -0
  485. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/slang.cmake +0 -0
  486. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/volk.cmake +0 -0
  487. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/cmake/third_party/vulkan_headers.cmake +0 -0
  488. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/Makefile +0 -0
  489. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/README.md +0 -0
  490. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/api/cpp.md +0 -0
  491. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/api/python.md +0 -0
  492. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/changelog.md +0 -0
  493. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/citing.md +0 -0
  494. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/configuration.md +0 -0
  495. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/customization.md +0 -0
  496. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/evaluation.md +0 -0
  497. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/gpu.md +0 -0
  498. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/index.md +0 -0
  499. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/layers.md +0 -0
  500. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/sources.md +0 -0
  501. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/concepts/surfaces.md +0 -0
  502. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/contributing.md +0 -0
  503. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/base-maps.md +0 -0
  504. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/blast-zones.md +0 -0
  505. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/crater-rays.md +0 -0
  506. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/index.md +0 -0
  507. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/photometry.md +0 -0
  508. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/reflectance-zones.md +0 -0
  509. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/rocks.md +0 -0
  510. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/slopes.md +0 -0
  511. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/albedo/splotches.md +0 -0
  512. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/boulders/burial-and-exposure.md +0 -0
  513. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/boulders/fragmentation.md +0 -0
  514. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/boulders/index.md +0 -0
  515. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/boulders/lists-and-meshes.md +0 -0
  516. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/boulders/placement.md +0 -0
  517. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/boulders/shapes.md +0 -0
  518. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/boulders/size-distributions.md +0 -0
  519. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/ages.md +0 -0
  520. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/crater-lists.md +0 -0
  521. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/degradation.md +0 -0
  522. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/index.md +0 -0
  523. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/irregularity.md +0 -0
  524. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/placement-and-blending.md +0 -0
  525. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/populations.md +0 -0
  526. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/profiles.md +0 -0
  527. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/secondaries-and-rays.md +0 -0
  528. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/craters/texture-and-slopes.md +0 -0
  529. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/chronology.md +0 -0
  530. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/combining.md +0 -0
  531. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/equilibrium.md +0 -0
  532. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/index.md +0 -0
  533. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/production.md +0 -0
  534. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/sampling.md +0 -0
  535. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/size-frequency.md +0 -0
  536. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/distributions/value-distributions.md +0 -0
  537. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/geology/bedforms.md +0 -0
  538. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/geology/dunes.md +0 -0
  539. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/geology/index.md +0 -0
  540. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/geology/pavement.md +0 -0
  541. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/geology/sand.md +0 -0
  542. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/geology/strata.md +0 -0
  543. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/index.md +0 -0
  544. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/outputs.md +0 -0
  545. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/relief/index.md +0 -0
  546. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/relief/noise.md +0 -0
  547. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/relief/roughness.md +0 -0
  548. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/relief/spectral-continuation.md +0 -0
  549. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/features/relief/upsampling.md +0 -0
  550. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/gallery/index.md +0 -0
  551. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/getting-started/quickstart.md +0 -0
  552. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/guides/index.md +0 -0
  553. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/guides/tools/command-line.md +0 -0
  554. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/guides/tools/gui.md +0 -0
  555. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/guides/tools/index.md +0 -0
  556. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/guides/workflows/customize-terraingen.md +0 -0
  557. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/guides/workflows/index.md +0 -0
  558. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/blast_zones.jpg +0 -0
  559. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/crater_rays.jpg +0 -0
  560. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/oblique_impacts.jpg +0 -0
  561. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/reflectance_zones.jpg +0 -0
  562. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/rocks.jpg +0 -0
  563. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/slopes.jpg +0 -0
  564. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/splotches.jpg +0 -0
  565. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/albedo/synthetic_base.jpg +0 -0
  566. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/clustering.jpg +0 -0
  567. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/crater_ejecta_aging.jpg +0 -0
  568. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/crater_ejecta_coverage.jpg +0 -0
  569. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/crater_ejecta_decay.jpg +0 -0
  570. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/crater_ejecta_floor.jpg +0 -0
  571. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/crater_ejecta_profiles.jpg +0 -0
  572. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/crater_ejecta_reach.jpg +0 -0
  573. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/crater_ejecta_regolith.jpg +0 -0
  574. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/density_map.jpg +0 -0
  575. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/fillets.jpg +0 -0
  576. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_axes.jpg +0 -0
  577. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_fractures.jpg +0 -0
  578. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_fragments.jpg +0 -0
  579. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_noise.jpg +0 -0
  580. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_rounding.jpg +0 -0
  581. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_settle.jpg +0 -0
  582. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_solids.jpg +0 -0
  583. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_styles.jpg +0 -0
  584. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_variety.jpg +0 -0
  585. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/models_weathering.jpg +0 -0
  586. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/patches.jpg +0 -0
  587. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/pose_burial.jpg +0 -0
  588. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/pose_burial_by_wear.jpg +0 -0
  589. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/pose_height_ratio.jpg +0 -0
  590. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/size_distributions.jpg +0 -0
  591. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/slope_map.jpg +0 -0
  592. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/boulders/slopes.jpg +0 -0
  593. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/ages.jpg +0 -0
  594. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/aristarchus.jpg +0 -0
  595. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/blend_shapes.jpg +0 -0
  596. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/catalog_completeness.jpg +0 -0
  597. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/centimeter_population.jpg +0 -0
  598. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/complex_craters.jpg +0 -0
  599. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/complex_profiles.jpg +0 -0
  600. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/copernicus.jpg +0 -0
  601. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/datum.jpg +0 -0
  602. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/datum_profiles.jpg +0 -0
  603. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/default_field.jpg +0 -0
  604. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/degradation_by_age.jpg +0 -0
  605. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/degradation_by_diffusion.jpg +0 -0
  606. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/degradation_by_freshness.jpg +0 -0
  607. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/density_map.jpg +0 -0
  608. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/density_map_areal_fraction.jpg +0 -0
  609. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/density_map_count.jpg +0 -0
  610. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/density_map_scale.jpg +0 -0
  611. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/depth_ratio.jpg +0 -0
  612. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/elongation.jpg +0 -0
  613. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/elongation_and_roughness.jpg +0 -0
  614. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/freshness_vs_diffusion.jpg +0 -0
  615. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/freshness_vs_diffusion_maps.jpg +0 -0
  616. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/interior_replacement.jpg +0 -0
  617. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/irregularity.jpg +0 -0
  618. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/irregularity_harmonics.jpg +0 -0
  619. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/irregularity_models.jpg +0 -0
  620. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/irregularity_spectral_slope.jpg +0 -0
  621. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/manual_depth.jpg +0 -0
  622. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/max_craters.jpg +0 -0
  623. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks.jpg +0 -0
  624. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks_elongation.jpg +0 -0
  625. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks_massifs.jpg +0 -0
  626. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks_roughness.jpg +0 -0
  627. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks_seeds.jpg +0 -0
  628. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks_sharpness.jpg +0 -0
  629. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks_size.jpg +0 -0
  630. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/peaks_spread.jpg +0 -0
  631. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/populations.jpg +0 -0
  632. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/profiles.jpg +0 -0
  633. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/radial_marks.jpg +0 -0
  634. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/replacement_on_dem.jpg +0 -0
  635. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/replacement_profiles.jpg +0 -0
  636. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/resolution_fade.jpg +0 -0
  637. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/rim_models.jpg +0 -0
  638. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/rim_smoothing.jpg +0 -0
  639. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/secondaries.jpg +0 -0
  640. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/secondary_shapes.jpg +0 -0
  641. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/slope_floor_offset.jpg +0 -0
  642. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/slope_hillside.jpg +0 -0
  643. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/slope_response.jpg +0 -0
  644. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/slope_upslope_rim.jpg +0 -0
  645. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/slope_wear.jpg +0 -0
  646. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/source_resolved.jpg +0 -0
  647. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/spacing_both.jpg +0 -0
  648. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/spacing_ratio.jpg +0 -0
  649. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/spacing_separation.jpg +0 -0
  650. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces.jpg +0 -0
  651. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_arcs.jpg +0 -0
  652. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_bench_slope.jpg +0 -0
  653. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_benches.jpg +0 -0
  654. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_blocks.jpg +0 -0
  655. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_freshness.jpg +0 -0
  656. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_gaps.jpg +0 -0
  657. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_onset.jpg +0 -0
  658. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_rim_variation.jpg +0 -0
  659. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_scarps.jpg +0 -0
  660. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/terraces_seeds.jpg +0 -0
  661. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/texture_ejecta.jpg +0 -0
  662. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/texture_gullies.jpg +0 -0
  663. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/texture_mantling.jpg +0 -0
  664. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/texture_noise.jpg +0 -0
  665. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/texture_rim_noise.jpg +0 -0
  666. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/theophilus.jpg +0 -0
  667. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/craters/tycho.jpg +0 -0
  668. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/dem/craters_added.jpg +0 -0
  669. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/dem/globe.jpg +0 -0
  670. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/dem/noise_added.jpg +0 -0
  671. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/dem/upsampling.jpg +0 -0
  672. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/chronology.jpg +0 -0
  673. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/combining.jpg +0 -0
  674. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/crater_densities.jpg +0 -0
  675. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/literature_boulders.jpg +0 -0
  676. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/literature_craters.jpg +0 -0
  677. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/piecewise.jpg +0 -0
  678. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/power_laws.jpg +0 -0
  679. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/sampling.jpg +0 -0
  680. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/distributions/value_distributions.jpg +0 -0
  681. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/bedforms_ripples.jpg +0 -0
  682. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/bedforms_tars.jpg +0 -0
  683. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/dune_shapes.jpg +0 -0
  684. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/dunes_barchan_winds.jpg +0 -0
  685. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/dunes_crest_lines.jpg +0 -0
  686. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/dunes_grainflows.jpg +0 -0
  687. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/dunes_ripples.jpg +0 -0
  688. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/exposure.jpg +0 -0
  689. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/pavement.jpg +0 -0
  690. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/sand_fill.jpg +0 -0
  691. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/sand_shadows.jpg +0 -0
  692. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/geology/strata.jpg +0 -0
  693. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/layers/masked.jpg +0 -0
  694. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/layers/masked_craters_boulders.jpg +0 -0
  695. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/layers/masked_polygon.jpg +0 -0
  696. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/layers/masked_polygon_craters_boulders.jpg +0 -0
  697. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/layers/scale_and_clamp.jpg +0 -0
  698. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/outputs/materials.jpg +0 -0
  699. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/planets/ellipsoid_craters.jpg +0 -0
  700. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/planets/ellipsoid_projection.jpg +0 -0
  701. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/planets/itokawa.jpg +0 -0
  702. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/planets/mars_scene.jpg +0 -0
  703. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/planets/moon_scene.jpg +0 -0
  704. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/queries/rover_traverse.jpg +0 -0
  705. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_blending.jpg +0 -0
  706. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_gain.jpg +0 -0
  707. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_lacunarity.jpg +0 -0
  708. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_octaves.jpg +0 -0
  709. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_perlin.jpg +0 -0
  710. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_simplex.jpg +0 -0
  711. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_value.jpg +0 -0
  712. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_warp.jpg +0 -0
  713. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/noise_worley.jpg +0 -0
  714. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/roughness_lunar.jpg +0 -0
  715. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/spectral_continuation.jpg +0 -0
  716. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/upsampling.jpg +0 -0
  717. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/upsampling_diamond_square.jpg +0 -0
  718. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/relief/upsampling_synthetic.jpg +0 -0
  719. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gallery/sources/chain.jpg +0 -0
  720. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/gdomes_viper_rover.jpg +0 -0
  721. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/hero_mk1_sn101_connecting_ridge.jpg +0 -0
  722. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/hero_mk1_sn101_connecting_ridge_split.jpg +0 -0
  723. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/render_connecting_ridge_crater.jpg +0 -0
  724. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/render_connecting_ridge_ground.jpg +0 -0
  725. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/_quickstart/add-albedo.jpg +0 -0
  726. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/_quickstart/add-boulders.jpg +0 -0
  727. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/_quickstart/add-craters.jpg +0 -0
  728. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/_quickstart/add-noise.jpg +0 -0
  729. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/_quickstart/run-a-config.jpg +0 -0
  730. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/add-noise-to-a-synthetic-albedo.jpg +0 -0
  731. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/add-reflectance-zones-around-a-new-crater.jpg +0 -0
  732. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/brighten-a-lander-blast-zone.jpg +0 -0
  733. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/brighten-steep-slopes.jpg +0 -0
  734. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/brighten-the-albedo-with-rocks.jpg +0 -0
  735. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/evaluate-a-configured-albedo.jpg +0 -0
  736. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/fade-crater-rays-with-age.jpg +0 -0
  737. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/mix-hapke-photometry-from-materials.jpg +0 -0
  738. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/scatter-dark-and-bright-splotches.jpg +0 -0
  739. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/albedo/upscale-an-albedo-map.jpg +0 -0
  740. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/bodies/add-terrain-over-a-whole-body.jpg +0 -0
  741. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/bodies/upsample-a-shape-model.jpg +0 -0
  742. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/break-boulders-as-they-wear.jpg +0 -0
  743. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/choose-boulder-sizes.jpg +0 -0
  744. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/design-a-boulder-style.jpg +0 -0
  745. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/draw-boulders-as-relief-or-models.jpg +0 -0
  746. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/gather-boulders-in-patches-and-clusters.jpg +0 -0
  747. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/generate-a-boulder-shape.jpg +0 -0
  748. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/list-boulders-from-a-config.jpg +0 -0
  749. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/list-boulders-of-a-layer.jpg +0 -0
  750. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/place-boulders-by-hand.jpg +0 -0
  751. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/pose-boulders.jpg +0 -0
  752. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/split-a-boulder-shape-into-pieces.jpg +0 -0
  753. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/throw-blocks-around-craters.jpg +0 -0
  754. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/weather-boulders-with-fillets-and-ventifacts.jpg +0 -0
  755. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/boulders/write-boulder-models.jpg +0 -0
  756. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/add-craters-to-a-terrain.jpg +0 -0
  757. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/choose-a-crater-profile.jpg +0 -0
  758. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/degrade-craters-with-age.jpg +0 -0
  759. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/list-craters-from-a-config.jpg +0 -0
  760. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/list-craters-of-a-layer.jpg +0 -0
  761. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/place-craters-by-hand.jpg +0 -0
  762. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/raise-central-peaks.jpg +0 -0
  763. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/replace-a-blurred-crater.jpg +0 -0
  764. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/restamp-craters-from-a-coarser-run.jpg +0 -0
  765. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/roughen-and-stretch-crater-rims.jpg +0 -0
  766. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/skip-craters-a-dem-resolves.jpg +0 -0
  767. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/space-craters-apart.jpg +0 -0
  768. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/terrace-crater-walls.jpg +0 -0
  769. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/throw-secondary-craters-in-rays.jpg +0 -0
  770. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/use-published-crater-models.jpg +0 -0
  771. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/craters/vary-crater-density-with-a-map.jpg +0 -0
  772. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/stack-noise-fractals.jpg +0 -0
  773. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/use-rock-meshes-for-boulders.jpg +0 -0
  774. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-a-crater-age-model.jpg +0 -0
  775. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-a-crater-profile.jpg +0 -0
  776. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-a-degradation-model.jpg +0 -0
  777. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-a-layer.jpg +0 -0
  778. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-a-size-distribution.jpg +0 -0
  779. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-a-source.jpg +0 -0
  780. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-a-surface-field.jpg +0 -0
  781. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-an-albedo-layer.jpg +0 -0
  782. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-an-albedo-source.jpg +0 -0
  783. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/images/snippets/customization/write-an-upsampler.jpg +0 -0
  784. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/index.md +0 -0
  785. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/_src/reference/bibliography.md +0 -0
  786. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/blast_zones.py +0 -0
  787. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/crater_rays.py +0 -0
  788. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/oblique_impacts.py +0 -0
  789. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/reflectance_zones.py +0 -0
  790. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/rocks.py +0 -0
  791. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/slopes.py +0 -0
  792. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/splotches.py +0 -0
  793. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/albedo/synthetic_base.py +0 -0
  794. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/assets.py +0 -0
  795. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/clustering.py +0 -0
  796. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/crater_ejecta_aging.py +0 -0
  797. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/crater_ejecta_coverage.py +0 -0
  798. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/crater_ejecta_decay.py +0 -0
  799. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/crater_ejecta_floor.py +0 -0
  800. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/crater_ejecta_profiles.py +0 -0
  801. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/crater_ejecta_reach.py +0 -0
  802. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/crater_ejecta_regolith.py +0 -0
  803. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/density_map.py +0 -0
  804. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/fillets.py +0 -0
  805. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_axes.py +0 -0
  806. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_fractures.py +0 -0
  807. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_fragments.py +0 -0
  808. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_noise.py +0 -0
  809. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_rounding.py +0 -0
  810. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_settle.py +0 -0
  811. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_solids.py +0 -0
  812. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_styles.py +0 -0
  813. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_variety.py +0 -0
  814. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/models_weathering.py +0 -0
  815. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/patches.py +0 -0
  816. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/pose_burial.py +0 -0
  817. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/pose_burial_by_wear.py +0 -0
  818. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/pose_height_ratio.py +0 -0
  819. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/size_distributions.py +0 -0
  820. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/slope_map.py +0 -0
  821. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/boulders/slopes.py +0 -0
  822. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/ages.py +0 -0
  823. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/aristarchus.py +0 -0
  824. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/blend_shapes.py +0 -0
  825. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/catalog_completeness.py +0 -0
  826. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/centimeter_population.py +0 -0
  827. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/complex_craters.py +0 -0
  828. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/complex_profiles.py +0 -0
  829. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/copernicus.py +0 -0
  830. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/datum.py +0 -0
  831. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/datum_profiles.py +0 -0
  832. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/default_field.py +0 -0
  833. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/degradation_by_age.py +0 -0
  834. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/degradation_by_diffusion.py +0 -0
  835. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/degradation_by_freshness.py +0 -0
  836. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/density_map.py +0 -0
  837. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/density_map_areal_fraction.py +0 -0
  838. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/density_map_count.py +0 -0
  839. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/density_map_scale.py +0 -0
  840. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/depth_ratio.py +0 -0
  841. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/elongation.py +0 -0
  842. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/elongation_and_roughness.py +0 -0
  843. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/freshness_vs_diffusion.py +0 -0
  844. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/freshness_vs_diffusion_maps.py +0 -0
  845. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/interior_replacement.py +0 -0
  846. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/irregularity.py +0 -0
  847. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/irregularity_harmonics.py +0 -0
  848. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/irregularity_models.py +0 -0
  849. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/irregularity_spectral_slope.py +0 -0
  850. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/manual_depth.py +0 -0
  851. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/max_craters.py +0 -0
  852. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks.py +0 -0
  853. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks_elongation.py +0 -0
  854. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks_massifs.py +0 -0
  855. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks_roughness.py +0 -0
  856. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks_seeds.py +0 -0
  857. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks_sharpness.py +0 -0
  858. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks_size.py +0 -0
  859. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/peaks_spread.py +0 -0
  860. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/populations.py +0 -0
  861. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/profiles.py +0 -0
  862. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/radial_marks.py +0 -0
  863. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/replacement_on_dem.py +0 -0
  864. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/replacement_profiles.py +0 -0
  865. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/resolution_fade.py +0 -0
  866. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/rim_models.py +0 -0
  867. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/rim_smoothing.py +0 -0
  868. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/secondaries.py +0 -0
  869. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/secondary_shapes.py +0 -0
  870. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/slope_floor_offset.py +0 -0
  871. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/slope_hillside.py +0 -0
  872. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/slope_response.py +0 -0
  873. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/slope_upslope_rim.py +0 -0
  874. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/slope_wear.py +0 -0
  875. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/source_resolved.py +0 -0
  876. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/spacing_both.py +0 -0
  877. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/spacing_ratio.py +0 -0
  878. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/spacing_separation.py +0 -0
  879. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces.py +0 -0
  880. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_arcs.py +0 -0
  881. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_bench_slope.py +0 -0
  882. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_benches.py +0 -0
  883. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_blocks.py +0 -0
  884. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_freshness.py +0 -0
  885. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_gaps.py +0 -0
  886. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_onset.py +0 -0
  887. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_rim_variation.py +0 -0
  888. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_scarps.py +0 -0
  889. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/terraces_seeds.py +0 -0
  890. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/texture_ejecta.py +0 -0
  891. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/texture_gullies.py +0 -0
  892. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/texture_mantling.py +0 -0
  893. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/texture_noise.py +0 -0
  894. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/texture_rim_noise.py +0 -0
  895. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/theophilus.py +0 -0
  896. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/craters/tycho.py +0 -0
  897. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/dem/craters_added.py +0 -0
  898. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/dem/globe.py +0 -0
  899. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/dem/noise_added.py +0 -0
  900. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/dem/upsampling.py +0 -0
  901. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/chronology.py +0 -0
  902. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/combining.py +0 -0
  903. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/crater_densities.py +0 -0
  904. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/literature_boulders.py +0 -0
  905. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/literature_craters.py +0 -0
  906. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/piecewise.py +0 -0
  907. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/power_laws.py +0 -0
  908. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/sampling.py +0 -0
  909. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/distributions/value_distributions.py +0 -0
  910. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/gallery.py +0 -0
  911. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/bedforms_ripples.py +0 -0
  912. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/bedforms_tars.py +0 -0
  913. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/dune_shapes.py +0 -0
  914. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/dunes_barchan_winds.py +0 -0
  915. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/dunes_crest_lines.py +0 -0
  916. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/dunes_grainflows.py +0 -0
  917. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/dunes_ripples.py +0 -0
  918. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/exposure.py +0 -0
  919. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/pavement.py +0 -0
  920. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/sand_fill.py +0 -0
  921. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/sand_shadows.py +0 -0
  922. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/geology/strata.py +0 -0
  923. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/layers/masked.py +0 -0
  924. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/layers/masked_craters_boulders.py +0 -0
  925. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/layers/masked_polygon.py +0 -0
  926. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/layers/masked_polygon_craters_boulders.py +0 -0
  927. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/layers/scale_and_clamp.py +0 -0
  928. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/outputs/materials.py +0 -0
  929. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/planets/ellipsoid_craters.py +0 -0
  930. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/planets/ellipsoid_projection.py +0 -0
  931. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/planets/itokawa.py +0 -0
  932. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/planets/mars_scene.py +0 -0
  933. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/planets/moon_scene.py +0 -0
  934. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/queries/rover_traverse.py +0 -0
  935. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_blending.py +0 -0
  936. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_gain.py +0 -0
  937. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_lacunarity.py +0 -0
  938. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_octaves.py +0 -0
  939. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_perlin.py +0 -0
  940. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_simplex.py +0 -0
  941. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_value.py +0 -0
  942. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_warp.py +0 -0
  943. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/noise_worley.py +0 -0
  944. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/roughness_lunar.py +0 -0
  945. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/spectral_continuation.py +0 -0
  946. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/upsampling.py +0 -0
  947. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/upsampling_diamond_square.py +0 -0
  948. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/relief/upsampling_synthetic.py +0 -0
  949. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/gallery/sources/chain.py +0 -0
  950. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/overrides/css/extra.css +0 -0
  951. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/overrides/js/katex.js +0 -0
  952. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/overrides/main.html +0 -0
  953. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/overrides/partials/header.html +0 -0
  954. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/overrides/partials/languages/custom.html +0 -0
  955. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/requirements.txt +0 -0
  956. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/scripts/cli_help.py +0 -0
  957. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/scripts/cmake_options.py +0 -0
  958. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/scripts/gallery_page.py +0 -0
  959. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/scripts/generate_schema.py +0 -0
  960. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/scripts/guides.py +0 -0
  961. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-albedo.cpp +0 -0
  962. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-albedo.py +0 -0
  963. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-boulders.cpp +0 -0
  964. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-boulders.py +0 -0
  965. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-craters.cpp +0 -0
  966. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-craters.py +0 -0
  967. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-noise.cpp +0 -0
  968. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/add-noise.py +0 -0
  969. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/config.json +0 -0
  970. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/run-a-config.py +0 -0
  971. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/write-outputs.cpp +0 -0
  972. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/_quickstart/write-outputs.py +0 -0
  973. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/add-noise-to-a-synthetic-albedo.cpp +0 -0
  974. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/add-noise-to-a-synthetic-albedo.py +0 -0
  975. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/add-reflectance-zones-around-a-new-crater.cpp +0 -0
  976. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/add-reflectance-zones-around-a-new-crater.py +0 -0
  977. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/brighten-a-lander-blast-zone.cpp +0 -0
  978. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/brighten-a-lander-blast-zone.py +0 -0
  979. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/brighten-steep-slopes.cpp +0 -0
  980. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/brighten-steep-slopes.py +0 -0
  981. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/brighten-the-albedo-with-rocks.cpp +0 -0
  982. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/brighten-the-albedo-with-rocks.py +0 -0
  983. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/evaluate-a-configured-albedo.cpp +0 -0
  984. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/evaluate-a-configured-albedo.py +0 -0
  985. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/evaluate-a-synthetic-albedo.cpp +0 -0
  986. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/evaluate-a-synthetic-albedo.py +0 -0
  987. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/fade-crater-rays-with-age.cpp +0 -0
  988. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/fade-crater-rays-with-age.py +0 -0
  989. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/mix-hapke-photometry-from-materials.cpp +0 -0
  990. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/mix-hapke-photometry-from-materials.py +0 -0
  991. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/scatter-dark-and-bright-splotches.cpp +0 -0
  992. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/scatter-dark-and-bright-splotches.py +0 -0
  993. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/upscale-an-albedo-map.cpp +0 -0
  994. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/albedo/upscale-an-albedo-map.py +0 -0
  995. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/add-terrain-over-a-whole-body.cpp +0 -0
  996. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/add-terrain-over-a-whole-body.py +0 -0
  997. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/configure-a-shape-model-body.cpp +0 -0
  998. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/configure-a-shape-model-body.py +0 -0
  999. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/make-a-body-from-a-radius-function.cpp +0 -0
  1000. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/make-a-body-from-a-radius-function.py +0 -0
  1001. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/make-a-body-from-a-shape-model.cpp +0 -0
  1002. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/make-a-body-from-a-shape-model.py +0 -0
  1003. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/upsample-a-shape-model.cpp +0 -0
  1004. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/upsample-a-shape-model.py +0 -0
  1005. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/write-the-whole-body-as-a-mesh.cpp +0 -0
  1006. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/bodies/write-the-whole-body-as-a-mesh.py +0 -0
  1007. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/break-boulders-as-they-wear.cpp +0 -0
  1008. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/break-boulders-as-they-wear.py +0 -0
  1009. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/choose-boulder-sizes.cpp +0 -0
  1010. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/choose-boulder-sizes.py +0 -0
  1011. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/design-a-boulder-style.cpp +0 -0
  1012. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/design-a-boulder-style.py +0 -0
  1013. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/draw-boulders-as-relief-or-models.cpp +0 -0
  1014. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/draw-boulders-as-relief-or-models.py +0 -0
  1015. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/gather-boulders-in-patches-and-clusters.cpp +0 -0
  1016. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/gather-boulders-in-patches-and-clusters.py +0 -0
  1017. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/generate-a-boulder-shape.cpp +0 -0
  1018. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/generate-a-boulder-shape.py +0 -0
  1019. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/list-boulders-from-a-config.cpp +0 -0
  1020. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/list-boulders-from-a-config.py +0 -0
  1021. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/list-boulders-of-a-layer.cpp +0 -0
  1022. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/list-boulders-of-a-layer.py +0 -0
  1023. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/place-boulders-by-hand.cpp +0 -0
  1024. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/place-boulders-by-hand.py +0 -0
  1025. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/pose-boulders.cpp +0 -0
  1026. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/pose-boulders.py +0 -0
  1027. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/split-a-boulder-shape-into-pieces.cpp +0 -0
  1028. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/split-a-boulder-shape-into-pieces.py +0 -0
  1029. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/throw-blocks-around-craters.cpp +0 -0
  1030. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/throw-blocks-around-craters.py +0 -0
  1031. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/weather-boulders-with-fillets-and-ventifacts.cpp +0 -0
  1032. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/weather-boulders-with-fillets-and-ventifacts.py +0 -0
  1033. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/write-boulder-models.cpp +0 -0
  1034. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/boulders/write-boulder-models.py +0 -0
  1035. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/configuration/build-a-terrain-from-a-config.cpp +0 -0
  1036. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/configuration/build-a-terrain-from-a-config.py +0 -0
  1037. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/conftest.py +0 -0
  1038. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/add-craters-to-a-terrain.cpp +0 -0
  1039. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/add-craters-to-a-terrain.py +0 -0
  1040. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/choose-a-crater-profile.cpp +0 -0
  1041. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/choose-a-crater-profile.py +0 -0
  1042. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/degrade-craters-with-age.cpp +0 -0
  1043. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/degrade-craters-with-age.py +0 -0
  1044. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/list-craters-from-a-config.cpp +0 -0
  1045. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/list-craters-from-a-config.py +0 -0
  1046. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/list-craters-of-a-layer.cpp +0 -0
  1047. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/list-craters-of-a-layer.py +0 -0
  1048. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/place-craters-by-hand.cpp +0 -0
  1049. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/place-craters-by-hand.py +0 -0
  1050. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/raise-central-peaks.cpp +0 -0
  1051. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/raise-central-peaks.py +0 -0
  1052. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/replace-a-blurred-crater.cpp +0 -0
  1053. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/replace-a-blurred-crater.py +0 -0
  1054. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/restamp-craters-from-a-coarser-run.cpp +0 -0
  1055. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/restamp-craters-from-a-coarser-run.py +0 -0
  1056. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/roughen-and-stretch-crater-rims.cpp +0 -0
  1057. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/roughen-and-stretch-crater-rims.py +0 -0
  1058. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/skip-craters-a-dem-resolves.cpp +0 -0
  1059. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/skip-craters-a-dem-resolves.py +0 -0
  1060. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/space-craters-apart.cpp +0 -0
  1061. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/space-craters-apart.py +0 -0
  1062. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/terrace-crater-walls.cpp +0 -0
  1063. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/terrace-crater-walls.py +0 -0
  1064. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/throw-secondary-craters-in-rays.cpp +0 -0
  1065. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/throw-secondary-craters-in-rays.py +0 -0
  1066. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/use-published-crater-models.cpp +0 -0
  1067. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/use-published-crater-models.py +0 -0
  1068. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/vary-crater-density-with-a-map.cpp +0 -0
  1069. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/craters/vary-crater-density-with-a-map.py +0 -0
  1070. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/stack-noise-fractals.cpp +0 -0
  1071. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/stack-noise-fractals.py +0 -0
  1072. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/use-rock-meshes-for-boulders.cpp +0 -0
  1073. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/use-rock-meshes-for-boulders.py +0 -0
  1074. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-crater-age-model.cpp +0 -0
  1075. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-crater-age-model.py +0 -0
  1076. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-crater-profile.cpp +0 -0
  1077. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-crater-profile.py +0 -0
  1078. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-degradation-model.cpp +0 -0
  1079. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-degradation-model.py +0 -0
  1080. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-layer.cpp +0 -0
  1081. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-layer.py +0 -0
  1082. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-size-distribution.cpp +0 -0
  1083. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-size-distribution.py +0 -0
  1084. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-source.cpp +0 -0
  1085. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-source.py +0 -0
  1086. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-surface-field.cpp +0 -0
  1087. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-a-surface-field.py +0 -0
  1088. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-an-albedo-layer.cpp +0 -0
  1089. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-an-albedo-layer.py +0 -0
  1090. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-an-albedo-source.cpp +0 -0
  1091. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-an-albedo-source.py +0 -0
  1092. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-an-upsampler.cpp +0 -0
  1093. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/customization/write-an-upsampler.py +0 -0
  1094. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/evaluate-on-the-gpu.cpp +0 -0
  1095. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/evaluate-on-the-gpu.py +0 -0
  1096. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/fill-a-buffer-you-own.cpp +0 -0
  1097. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/fill-a-buffer-you-own.py +0 -0
  1098. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/query-heights-at-contact-points.cpp +0 -0
  1099. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/query-heights-at-contact-points.py +0 -0
  1100. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/randomize-a-terrain-each-episode.cpp +0 -0
  1101. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/randomize-a-terrain-each-episode.py +0 -0
  1102. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/read-the-ground-beneath-a-layer.cpp +0 -0
  1103. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/read-the-ground-beneath-a-layer.py +0 -0
  1104. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/update-a-terrain-between-runs.cpp +0 -0
  1105. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/simulation/update-a-terrain-between-runs.py +0 -0
  1106. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/docs/snippets/snippet_test.h +0 -0
  1107. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/albedo/albedo.h +0 -0
  1108. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/albedo/albedo_fields.h +0 -0
  1109. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/albedo/crater_albedo_options.h +0 -0
  1110. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/albedo/maturity.h +0 -0
  1111. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/albedo/photometry.h +0 -0
  1112. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/analysis/raster_stats.h +0 -0
  1113. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/analysis/spectrum.h +0 -0
  1114. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/analysis/variogram.h +0 -0
  1115. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/config/build.h +0 -0
  1116. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/config/generate.h +0 -0
  1117. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/config/validate.h +0 -0
  1118. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/distribution_fields.h +0 -0
  1119. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/equilibrium.h +0 -0
  1120. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/ivanov.h +0 -0
  1121. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/moore.h +0 -0
  1122. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/neukum.h +0 -0
  1123. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/sp8023.h +0 -0
  1124. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/synthterrain.h +0 -0
  1125. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/distribution/viper.h +0 -0
  1126. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/geometry/geometry.h +0 -0
  1127. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/geometry/geometry_fields.h +0 -0
  1128. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/gpu/backend.h +0 -0
  1129. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/gpu/program.h +0 -0
  1130. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/io/feature_lists.h +0 -0
  1131. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/io/io_fields.h +0 -0
  1132. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/io/report_json.h +0 -0
  1133. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/bedforms_fields.h +0 -0
  1134. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/boulders/boulder_fields.h +0 -0
  1135. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/boulders/boulder_fragments.h +0 -0
  1136. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/boulders/boulder_models.h +0 -0
  1137. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/boulders/boulder_options.h +0 -0
  1138. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/boulders/boulder_placer.h +0 -0
  1139. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/boulders/boulder_shape.h +0 -0
  1140. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/crater_fields.h +0 -0
  1141. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/crater_placer.h +0 -0
  1142. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/degradation/diffusivities.h +0 -0
  1143. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/degradation/state.h +0 -0
  1144. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/generation/population.h +0 -0
  1145. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/generation/spacing.h +0 -0
  1146. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/profiles/profile.h +0 -0
  1147. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/rays.h +0 -0
  1148. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/shaping/apply.h +0 -0
  1149. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/shaping/apply_options.h +0 -0
  1150. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/shaping/attributes.h +0 -0
  1151. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/shaping/datum.h +0 -0
  1152. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/shaping/morphometry.h +0 -0
  1153. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/shaping/prepared.h +0 -0
  1154. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/craters/shaping/slope.h +0 -0
  1155. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/dunes_fields.h +0 -0
  1156. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/fade.h +0 -0
  1157. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/ground.h +0 -0
  1158. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/kernels/cell.h +0 -0
  1159. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/kernels/noise_layer.h +0 -0
  1160. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/layer_fields.h +0 -0
  1161. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/material.h +0 -0
  1162. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/pavement_fields.h +0 -0
  1163. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/roughness_estimate.h +0 -0
  1164. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/source_resolved.h +0 -0
  1165. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/layers/terrain_base.h +0 -0
  1166. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/mesh/io/icq.h +0 -0
  1167. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/mesh/io/mesh_io.h +0 -0
  1168. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/mesh/mesh.h +0 -0
  1169. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/mesh/mesh_build.h +0 -0
  1170. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/mesh/polyhedra.h +0 -0
  1171. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/mesh/shape_model.h +0 -0
  1172. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/fractal.h +0 -0
  1173. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/fractals.h +0 -0
  1174. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/hash.h +0 -0
  1175. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/lattice.h +0 -0
  1176. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/noise_fields.h +0 -0
  1177. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/perlin.h +0 -0
  1178. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/simplex.h +0 -0
  1179. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/structure_function.h +0 -0
  1180. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/surface_noise.h +0 -0
  1181. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/validate.h +0 -0
  1182. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/value.h +0 -0
  1183. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/noise/worley.h +0 -0
  1184. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/pipeline/body_mesh.h +0 -0
  1185. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/pipeline/materials.h +0 -0
  1186. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/pipeline/materials_fields.h +0 -0
  1187. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/pipeline/report.h +0 -0
  1188. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/random/philox.h +0 -0
  1189. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/random/random_fields.h +0 -0
  1190. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/random/samplers.h +0 -0
  1191. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/random/streams.h +0 -0
  1192. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/random/value_distribution.h +0 -0
  1193. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/raster/cell_loops.h +0 -0
  1194. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/raster/geo_transform.h +0 -0
  1195. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/raster/grid.h +0 -0
  1196. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/raster/raster_fields.h +0 -0
  1197. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/raster/resample.h +0 -0
  1198. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/sources/source.h +0 -0
  1199. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/sources/sources_fields.h +0 -0
  1200. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/terraingen.h +0 -0
  1201. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/util/bits.h +0 -0
  1202. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/util/build_info.h +0 -0
  1203. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/util/parallel.h +0 -0
  1204. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/util/portable.h +0 -0
  1205. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/include/terraingen/util/special_functions.h +0 -0
  1206. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/mkdocs.yml +0 -0
  1207. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/CMakeLists.txt +0 -0
  1208. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/albedo.cpp +0 -0
  1209. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/arrays.h +0 -0
  1210. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/bindings.h +0 -0
  1211. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/boulders.cpp +0 -0
  1212. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/casters.h +0 -0
  1213. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/common.h +0 -0
  1214. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/crater_models.cpp +0 -0
  1215. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/craters.cpp +0 -0
  1216. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/distribution.cpp +0 -0
  1217. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/gpu.cpp +0 -0
  1218. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/materials.cpp +0 -0
  1219. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/mesh.cpp +0 -0
  1220. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/module.cpp +0 -0
  1221. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/noise.cpp +0 -0
  1222. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/objects.h +0 -0
  1223. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/random.cpp +0 -0
  1224. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/raster.cpp +0 -0
  1225. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/report.cpp +0 -0
  1226. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/sources.cpp +0 -0
  1227. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/tables.h +0 -0
  1228. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/trampolines.h +0 -0
  1229. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/src/util.cpp +0 -0
  1230. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/python/terraingen/__init__.py +0 -0
  1231. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/CMakeLists.txt +0 -0
  1232. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/CMakeLists.txt +0 -0
  1233. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/albedo.cpp +0 -0
  1234. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/bands.cpp +0 -0
  1235. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/crater_albedo_options.cpp +0 -0
  1236. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/maturity.cpp +0 -0
  1237. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/photometry.cpp +0 -0
  1238. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/zone_shadows.cpp +0 -0
  1239. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/albedo/zone_shadows.h +0 -0
  1240. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/analysis/CMakeLists.txt +0 -0
  1241. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/analysis/radial_spectrum.h +0 -0
  1242. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/analysis/raster_stats.cpp +0 -0
  1243. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/analysis/spectrum.cpp +0 -0
  1244. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/analysis/variogram.cpp +0 -0
  1245. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/CMakeLists.txt +0 -0
  1246. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/albedo.cpp +0 -0
  1247. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/albedo.h +0 -0
  1248. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/body.cpp +0 -0
  1249. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/body.h +0 -0
  1250. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/boulders.cpp +0 -0
  1251. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/boulders.h +0 -0
  1252. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/common.cpp +0 -0
  1253. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/craters.cpp +0 -0
  1254. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/craters.h +0 -0
  1255. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/layer_context.h +0 -0
  1256. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/layers.cpp +0 -0
  1257. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/layers.h +0 -0
  1258. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/materials.cpp +0 -0
  1259. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/materials.h +0 -0
  1260. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/outputs.cpp +0 -0
  1261. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/outputs.h +0 -0
  1262. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/sources.cpp +0 -0
  1263. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/sources.h +0 -0
  1264. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/terrain.h +0 -0
  1265. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/config/write_outputs.cpp +0 -0
  1266. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/CMakeLists.txt +0 -0
  1267. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/composition.cpp +0 -0
  1268. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/composition.h +0 -0
  1269. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/equilibrium.cpp +0 -0
  1270. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/ivanov.cpp +0 -0
  1271. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/moore.cpp +0 -0
  1272. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/neukum.cpp +0 -0
  1273. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/sp8023.cpp +0 -0
  1274. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/synthterrain.cpp +0 -0
  1275. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/distribution/viper.cpp +0 -0
  1276. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/geometry/CMakeLists.txt +0 -0
  1277. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/geometry/cube_faces.h +0 -0
  1278. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/geometry/planar_cells.cpp +0 -0
  1279. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/gpu/CMakeLists.txt +0 -0
  1280. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/gpu/backend.cpp +0 -0
  1281. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/gpu/kernel.cpp +0 -0
  1282. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/gpu/kernel.h +0 -0
  1283. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/gpu/kernel.slang +0 -0
  1284. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/io/CMakeLists.txt +0 -0
  1285. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/io/report_json.cpp +0 -0
  1286. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/CMakeLists.txt +0 -0
  1287. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/boulders/boulder_clusters.cpp +0 -0
  1288. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/boulders/boulder_clusters.h +0 -0
  1289. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/boulders/boulder_fragments.cpp +0 -0
  1290. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/boulders/boulder_models.cpp +0 -0
  1291. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/boulders/boulder_options.cpp +0 -0
  1292. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/boulders/boulder_shape.cpp +0 -0
  1293. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/crater_placer.cpp +0 -0
  1294. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/degradation/diffusivities.cpp +0 -0
  1295. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/rays.cpp +0 -0
  1296. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/apply_options.cpp +0 -0
  1297. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/attributes.cpp +0 -0
  1298. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/datum.cpp +0 -0
  1299. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/datum_fit.h +0 -0
  1300. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/morphometry.cpp +0 -0
  1301. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/prepared.cpp +0 -0
  1302. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/resolved_state.cpp +0 -0
  1303. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/resolved_state.h +0 -0
  1304. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/craters/shaping/slope.cpp +0 -0
  1305. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/fade.cpp +0 -0
  1306. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/ground.cpp +0 -0
  1307. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/kernel.h +0 -0
  1308. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/kernels/noise_layer.slang +0 -0
  1309. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/lattice.h +0 -0
  1310. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/layer.cpp +0 -0
  1311. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/material.cpp +0 -0
  1312. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/layers/roughness_estimate.cpp +0 -0
  1313. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/mesh/CMakeLists.txt +0 -0
  1314. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/mesh/io/formats.h +0 -0
  1315. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/mesh/io/icq.cpp +0 -0
  1316. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/mesh/io/mesh_io.cpp +0 -0
  1317. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/mesh/io/obj.cpp +0 -0
  1318. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/mesh/mesh.cpp +0 -0
  1319. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/mesh/polyhedra.cpp +0 -0
  1320. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/noise/CMakeLists.txt +0 -0
  1321. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/noise/fractal_rows.cpp +0 -0
  1322. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/noise/fractal_rows.h +0 -0
  1323. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/noise/structure_function.cpp +0 -0
  1324. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/noise/surface_noise.cpp +0 -0
  1325. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/noise/validate.cpp +0 -0
  1326. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/pipeline/CMakeLists.txt +0 -0
  1327. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/pipeline/body_mesh.cpp +0 -0
  1328. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/pipeline/report.cpp +0 -0
  1329. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/random/CMakeLists.txt +0 -0
  1330. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/random/samplers.cpp +0 -0
  1331. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/random/value_distribution.cpp +0 -0
  1332. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/CMakeLists.txt +0 -0
  1333. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/cell_loops.cpp +0 -0
  1334. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/geotiff/geotiff.cpp +0 -0
  1335. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/geotiff/tiff_codecs.h +0 -0
  1336. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/geotiff/tiff_format.cpp +0 -0
  1337. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/geotiff/tiff_format.h +0 -0
  1338. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/grid.cpp +0 -0
  1339. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/kernels.h +0 -0
  1340. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/mapped_bounds.h +0 -0
  1341. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/raster/resample.cpp +0 -0
  1342. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/sources/CMakeLists.txt +0 -0
  1343. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/sources/lattice.h +0 -0
  1344. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/sources/source.cpp +0 -0
  1345. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/CMakeLists.txt +0 -0
  1346. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/build_info.cpp.in +0 -0
  1347. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/checks.cpp +0 -0
  1348. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/checks.h +0 -0
  1349. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/fft.cpp +0 -0
  1350. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/fft.h +0 -0
  1351. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/log.cpp +0 -0
  1352. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/numerics.h +0 -0
  1353. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/option_fields.cpp +0 -0
  1354. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/overloaded.h +0 -0
  1355. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/special_functions.cpp +0 -0
  1356. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/text.cpp +0 -0
  1357. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/text.h +0 -0
  1358. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/version.cpp +0 -0
  1359. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/src/util/version.h.in +0 -0
  1360. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/CMakeLists.txt +0 -0
  1361. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/CMakeLists.txt +0 -0
  1362. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/bench_boulders.cpp +0 -0
  1363. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/bench_craters.cpp +0 -0
  1364. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/bench_grids.cpp +0 -0
  1365. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/bench_ground_reads.cpp +0 -0
  1366. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/bench_point_queries.cpp +0 -0
  1367. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/bench_python_subclasses.py +0 -0
  1368. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/bench_sources.cpp +0 -0
  1369. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/benchmark/fixtures.h +0 -0
  1370. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/golden/CMakeLists.txt +0 -0
  1371. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/golden/noise/kernels_test.cpp +0 -0
  1372. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/integration/CMakeLists.txt +0 -0
  1373. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/integration/build_info_stable.cmake +0 -0
  1374. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/integration/package/CMakeLists.txt +0 -0
  1375. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/integration/package/main.cpp +0 -0
  1376. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/integration/package/test_debian_packages.cmake +0 -0
  1377. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/CMakeLists.txt +0 -0
  1378. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/conftest.py +0 -0
  1379. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_albedo.py +0 -0
  1380. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_boulders.py +0 -0
  1381. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_config.py +0 -0
  1382. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_crater_models.py +0 -0
  1383. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_craters.py +0 -0
  1384. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_distributions.py +0 -0
  1385. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_docs_cli_help.py +0 -0
  1386. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_docs_cmake_options.py +0 -0
  1387. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_docs_gallery.py +0 -0
  1388. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_docs_guides.py +0 -0
  1389. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_gpu.py +0 -0
  1390. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_meshes.py +0 -0
  1391. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_noise.py +0 -0
  1392. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_pipeline.py +0 -0
  1393. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_random.py +0 -0
  1394. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_raster.py +0 -0
  1395. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_report.py +0 -0
  1396. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_sources.py +0 -0
  1397. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_stubs.py +0 -0
  1398. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/python/test_util.py +0 -0
  1399. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/CMakeLists.txt +0 -0
  1400. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/distribution/crater_references_test.cpp +0 -0
  1401. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/distribution/size_frequency_test.cpp +0 -0
  1402. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/layers/boulders/boulder_layer_test.cpp +0 -0
  1403. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/layers/craters/ages/ages_test.cpp +0 -0
  1404. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/layers/craters/population_test.cpp +0 -0
  1405. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/layers/roughness_test.cpp +0 -0
  1406. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/statistical/random/random_test.cpp +0 -0
  1407. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/boulder_records.h +0 -0
  1408. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/gdal_fixtures.h +0 -0
  1409. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/generate_geotiff_fixtures.py +0 -0
  1410. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/geotiff_fixtures.inc +0 -0
  1411. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/golombek_rapp.h +0 -0
  1412. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/lunar_craters.h +0 -0
  1413. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/mesh_checks.h +0 -0
  1414. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/mesh_measures.h +0 -0
  1415. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/raster_equality.h +0 -0
  1416. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/resample.h +0 -0
  1417. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/sfd_sampling.h +0 -0
  1418. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/source_agreement.h +0 -0
  1419. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/statistics.h +0 -0
  1420. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/support/temp_path.h +0 -0
  1421. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/CMakeLists.txt +0 -0
  1422. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/CMakeLists.txt +0 -0
  1423. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/albedo_test.cpp +0 -0
  1424. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/bands_test.cpp +0 -0
  1425. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/blast_zones_test.cpp +0 -0
  1426. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/crater_albedo_test.cpp +0 -0
  1427. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/photometry_test.cpp +0 -0
  1428. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/rock_albedo_test.cpp +0 -0
  1429. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/albedo/splotches_test.cpp +0 -0
  1430. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/analysis/CMakeLists.txt +0 -0
  1431. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/analysis/raster_stats_test.cpp +0 -0
  1432. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/analysis/spectrum_test.cpp +0 -0
  1433. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/analysis/variogram_test.cpp +0 -0
  1434. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/app/CMakeLists.txt +0 -0
  1435. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/app/cli_test.cpp +0 -0
  1436. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/CMakeLists.txt +0 -0
  1437. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/angles_test.cpp +0 -0
  1438. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/build_test.cpp +0 -0
  1439. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/checks_test.cpp +0 -0
  1440. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/config_test.cpp +0 -0
  1441. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/configs.h +0 -0
  1442. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/feature_lists_test.cpp +0 -0
  1443. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/generate_from_config_test.cpp +0 -0
  1444. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/json_io_test.cpp +0 -0
  1445. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/json_parse_errors_test.cpp +0 -0
  1446. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/json_read_test.cpp +0 -0
  1447. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/ranges_test.cpp +0 -0
  1448. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/schema_test.cpp +0 -0
  1449. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/validate_config_test.cpp +0 -0
  1450. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/validate_sources_test.cpp +0 -0
  1451. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/config/write_outputs_test.cpp +0 -0
  1452. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/CMakeLists.txt +0 -0
  1453. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/composition_test.cpp +0 -0
  1454. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/equilibrium_test.cpp +0 -0
  1455. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/golombek_rapp_test.cpp +0 -0
  1456. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/ivanov_test.cpp +0 -0
  1457. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/log_polynomial_test.cpp +0 -0
  1458. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/minimum_test.cpp +0 -0
  1459. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/moore_test.cpp +0 -0
  1460. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/neukum_test.cpp +0 -0
  1461. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/piecewise_power_law_test.cpp +0 -0
  1462. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/piecewise_uniform_test.cpp +0 -0
  1463. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/power_law_test.cpp +0 -0
  1464. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/production_surface_test.cpp +0 -0
  1465. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/sp8023_test.cpp +0 -0
  1466. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/spliced_test.cpp +0 -0
  1467. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/summed_test.cpp +0 -0
  1468. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/synthterrain_test.cpp +0 -0
  1469. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/tabulated_test.cpp +0 -0
  1470. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/distribution/viper_test.cpp +0 -0
  1471. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/docs/CMakeLists.txt +0 -0
  1472. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/geometry/CMakeLists.txt +0 -0
  1473. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/geometry/cells_test.cpp +0 -0
  1474. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/geometry/geometry_test.cpp +0 -0
  1475. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/geometry/plane_fit_test.cpp +0 -0
  1476. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/geometry/radial_shape_test.cpp +0 -0
  1477. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/geometry/surface_test.cpp +0 -0
  1478. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/gpu/CMakeLists.txt +0 -0
  1479. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/gpu/backend_test.cpp +0 -0
  1480. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/gpu/kernels/hash_conformance.slang +0 -0
  1481. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/gpu/kernels/noise_conformance.slang +0 -0
  1482. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/gpu/noise_test.cpp +0 -0
  1483. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/gpu/vulkan_test.cpp +0 -0
  1484. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/anchored_plane_test.cpp +0 -0
  1485. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/boulders/boulder_fragments_test.cpp +0 -0
  1486. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/boulders/boulder_list_test.cpp +0 -0
  1487. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/boulders/boulder_models_test.cpp +0 -0
  1488. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/boulders/boulder_options_test.cpp +0 -0
  1489. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/boulders/boulder_shape_test.cpp +0 -0
  1490. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/boulders/ejecta_index_test.cpp +0 -0
  1491. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/ages/age_model_test.cpp +0 -0
  1492. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/ages/freshness_ages_test.cpp +0 -0
  1493. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/ages/steady_state_test.cpp +0 -0
  1494. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/band_buckets_test.cpp +0 -0
  1495. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/crater_layer_test.cpp +0 -0
  1496. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/crater_test.cpp +0 -0
  1497. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/degradation/degradation_model_test.cpp +0 -0
  1498. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/degradation/diffusion_test.cpp +0 -0
  1499. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/degradation/freshness_degradation_test.cpp +0 -0
  1500. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/generation/cell_cache_test.cpp +0 -0
  1501. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/generation/spacing_test.cpp +0 -0
  1502. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/profiles/complex_test.cpp +0 -0
  1503. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/profiles/fassett_thomson_test.cpp +0 -0
  1504. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/profiles/martin_parkes_dunstan_test.cpp +0 -0
  1505. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/secondaries_test.cpp +0 -0
  1506. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/apply_test.cpp +0 -0
  1507. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/attributes_test.cpp +0 -0
  1508. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/datum_test.cpp +0 -0
  1509. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/irregularity_test.cpp +0 -0
  1510. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/morphometry_test.cpp +0 -0
  1511. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/replacement_test.cpp +0 -0
  1512. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/resolved_state_test.cpp +0 -0
  1513. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/shaping/slope_test.cpp +0 -0
  1514. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/craters/sphere_test.cpp +0 -0
  1515. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/dunes_test.cpp +0 -0
  1516. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/evaluation_cache_test.cpp +0 -0
  1517. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/fade_test.cpp +0 -0
  1518. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/field_test.cpp +0 -0
  1519. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/ground_test.cpp +0 -0
  1520. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/lattice_test.cpp +0 -0
  1521. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/layer_test.cpp +0 -0
  1522. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/masked_test.cpp +0 -0
  1523. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/noise_layer_test.cpp +0 -0
  1524. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/prefetched_ground_test.cpp +0 -0
  1525. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/roughness_test.cpp +0 -0
  1526. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/sample_block_test.cpp +0 -0
  1527. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/sand_shadow_test.cpp +0 -0
  1528. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/source_resolved_test.cpp +0 -0
  1529. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/spectral_continuation_test.cpp +0 -0
  1530. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/sphere_layers_test.cpp +0 -0
  1531. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/terrain_base_test.cpp +0 -0
  1532. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/layers/transforms_test.cpp +0 -0
  1533. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/mesh/CMakeLists.txt +0 -0
  1534. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/mesh/io/icq_test.cpp +0 -0
  1535. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/mesh/io/mesh_io_test.cpp +0 -0
  1536. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/mesh/mesh_build_test.cpp +0 -0
  1537. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/mesh/mesh_test.cpp +0 -0
  1538. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/mesh/polyhedra_test.cpp +0 -0
  1539. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/mesh/shape_model_test.cpp +0 -0
  1540. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/CMakeLists.txt +0 -0
  1541. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/fractal_rows_test.cpp +0 -0
  1542. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/fractal_test.cpp +0 -0
  1543. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/fractals_test.cpp +0 -0
  1544. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/hash_test.cpp +0 -0
  1545. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/noise3_test.cpp +0 -0
  1546. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/perlin_test.cpp +0 -0
  1547. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/simplex_test.cpp +0 -0
  1548. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/structure_function_test.cpp +0 -0
  1549. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/surface_noise_test.cpp +0 -0
  1550. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/validate_test.cpp +0 -0
  1551. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/value_test.cpp +0 -0
  1552. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/noise/worley_test.cpp +0 -0
  1553. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/pipeline/CMakeLists.txt +0 -0
  1554. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/pipeline/features_test.cpp +0 -0
  1555. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/pipeline/ground_reads_test.cpp +0 -0
  1556. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/pipeline/report_test.cpp +0 -0
  1557. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/pipeline/terrain_windows_test.cpp +0 -0
  1558. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/pipeline/terrains.h +0 -0
  1559. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/random/CMakeLists.txt +0 -0
  1560. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/random/philox_test.cpp +0 -0
  1561. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/random/samplers_test.cpp +0 -0
  1562. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/random/stream_test.cpp +0 -0
  1563. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/random/value_distribution_test.cpp +0 -0
  1564. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/CMakeLists.txt +0 -0
  1565. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/cell_loops_test.cpp +0 -0
  1566. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/geo_transform_test.cpp +0 -0
  1567. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/geotiff_test.cpp +0 -0
  1568. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/grid_test.cpp +0 -0
  1569. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/raster_test.cpp +0 -0
  1570. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/resample_test.cpp +0 -0
  1571. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/raster/tiff_format_test.cpp +0 -0
  1572. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/sources/CMakeLists.txt +0 -0
  1573. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/sources/flat_source_test.cpp +0 -0
  1574. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/sources/geotiff_source_test.cpp +0 -0
  1575. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/sources/shape_model_source_test.cpp +0 -0
  1576. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/sources/source_test.cpp +0 -0
  1577. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/sources/synthetic_source_test.cpp +0 -0
  1578. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/CMakeLists.txt +0 -0
  1579. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/arithmetic_test.cpp +0 -0
  1580. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/bisection_test.cpp +0 -0
  1581. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/bits_test.cpp +0 -0
  1582. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/checks_test.cpp +0 -0
  1583. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/fft_test.cpp +0 -0
  1584. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/files_test.cpp +0 -0
  1585. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/log_test.cpp +0 -0
  1586. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/lru_cache_test.cpp +0 -0
  1587. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/overloaded_test.cpp +0 -0
  1588. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/parallel_test.cpp +0 -0
  1589. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/quadrature_test.cpp +0 -0
  1590. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/span_test.cpp +0 -0
  1591. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/special_functions_test.cpp +0 -0
  1592. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/text_test.cpp +0 -0
  1593. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/tests/unit/util/version_test.cpp +0 -0
  1594. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/README.md +0 -0
  1595. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/cgltf/LICENSE +0 -0
  1596. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/cgltf/cgltf.h +0 -0
  1597. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/cgltf/cgltf_write.h +0 -0
  1598. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/miniz/LICENSE +0 -0
  1599. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/miniz/miniz.c +0 -0
  1600. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/miniz/miniz.h +0 -0
  1601. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/nlohmann/LICENSE.MIT +0 -0
  1602. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/nlohmann/json.hpp +0 -0
  1603. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/tinyobjloader/LICENSE +0 -0
  1604. {terraingenpy-0.2.0.dev115 → terraingenpy-0.2.0.dev118}/third_party/tinyobjloader/tiny_obj_loader.h +0 -0
@@ -0,0 +1,519 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ tags: ["v*"]
7
+ pull_request:
8
+ workflow_dispatch:
9
+
10
+ permissions:
11
+ contents: read
12
+
13
+ concurrency:
14
+ group: ${{ github.workflow }}-${{ github.ref }}
15
+ cancel-in-progress: true
16
+
17
+ jobs:
18
+ # The version's pre-release suffix: .devN on main (N commits since the last release tag), none on
19
+ # release tags (which must match CMakeLists.txt) or pull requests.
20
+ version:
21
+ runs-on: ubuntu-24.04
22
+ timeout-minutes: 5
23
+ outputs:
24
+ version: ${{ steps.version.outputs.version }}
25
+ suffix: ${{ steps.version.outputs.suffix }}
26
+ steps:
27
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
28
+ with:
29
+ fetch-depth: 0
30
+ - id: version
31
+ run: |
32
+ project=$(sed -nE 's/^set\(TERRAINGEN_FULL_VERSION "([0-9]+\.[0-9]+\.[0-9]+)"\)$/\1/p' CMakeLists.txt)
33
+ suffix=""
34
+ if [[ "$GITHUB_REF" == refs/tags/v* ]]; then
35
+ if [[ "${GITHUB_REF_NAME#v}" != "$project" ]]; then
36
+ echo "::error::Tag $GITHUB_REF_NAME does not match CMakeLists.txt's version $project"
37
+ exit 1
38
+ fi
39
+ elif [[ "$GITHUB_EVENT_NAME" == push && "$GITHUB_REF" == refs/heads/main ]]; then
40
+ if last=$(git describe --tags --abbrev=0 --match 'v*' 2>/dev/null); then
41
+ suffix=".dev$(git rev-list --count "$last..HEAD")"
42
+ else
43
+ suffix=".dev$(git rev-list --count HEAD)"
44
+ fi
45
+ fi
46
+ {
47
+ echo "version=$project$suffix"
48
+ echo "suffix=$suffix"
49
+ } >> "$GITHUB_OUTPUT"
50
+ echo "Version $project$suffix"
51
+
52
+ lint:
53
+ runs-on: ubuntu-24.04
54
+ timeout-minutes: 15
55
+ steps:
56
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
57
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
58
+ with:
59
+ python-version: "3.12"
60
+ - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
61
+ with:
62
+ path: ~/.cache/pre-commit
63
+ key: pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
64
+ - run: python -m pip install pre-commit
65
+ - run: pre-commit run --all-files --show-diff-on-failure
66
+ - name: Lint workflows
67
+ run: docker run --rm -v "$PWD:/repo" -w /repo rhysd/actionlint:1.7.12 -color
68
+
69
+ # Build and every test, with the GPU tests on Mesa's lavapipe, the software Vulkan driver, which
70
+ # TerrainGen uses only when TERRAINGEN_DEVICE names it. The runners have no NVIDIA GPU, so the
71
+ # CUDA kernels are compiled to PTX but not run.
72
+ test:
73
+ name: test (${{ matrix.name }})
74
+ runs-on: ${{ matrix.os }}
75
+ timeout-minutes: 60
76
+ strategy:
77
+ fail-fast: false
78
+ matrix:
79
+ include:
80
+ # The oldest supported Ubuntu, compiler and Python.
81
+ - { name: ubuntu-22.04-gcc-11, os: ubuntu-22.04, cc: gcc-11, cxx: g++-11, python: "3.10" }
82
+ - { name: ubuntu-22.04-arm-gcc-11, os: ubuntu-22.04-arm, cc: gcc-11, cxx: g++-11 }
83
+ - { name: ubuntu-24.04-clang-18, os: ubuntu-24.04, cc: clang-18, cxx: clang++-18 }
84
+ - { name: macos-26, os: macos-26 }
85
+ - { name: windows-2022-msvc, os: windows-2022 }
86
+ env:
87
+ CC: ${{ matrix.cc }}
88
+ CXX: ${{ matrix.cxx }}
89
+ CCACHE_DIR: ${{ github.workspace }}/.ccache
90
+ TERRAINGEN_DEVICE: "0"
91
+ steps:
92
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
93
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
94
+ with:
95
+ python-version: ${{ matrix.python || '3.12' }}
96
+ - run: python -m pip install numpy pytest ninja
97
+ # MSVC on the path for the Ninja generator.
98
+ - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
99
+ if: runner.os == 'Windows'
100
+ - uses: hendrikmuhs/ccache-action@f09c25b45002a07be2955cbe52e8cee55643f89d # v1.2.24
101
+ if: runner.os != 'Windows'
102
+ with:
103
+ key: ${{ matrix.name }}
104
+ max-size: 500M
105
+ - name: Install lavapipe
106
+ if: runner.os == 'Linux'
107
+ run: |
108
+ sudo apt-get update
109
+ sudo apt-get install -y --no-install-recommends mesa-vulkan-drivers libvulkan1
110
+ icd=$(find /usr/share/vulkan/icd.d -name 'lvp_icd*.json' | head -n1)
111
+ echo "VK_DRIVER_FILES=$icd" >> "$GITHUB_ENV"
112
+ echo "VK_ICD_FILENAMES=$icd" >> "$GITHUB_ENV"
113
+ - name: Install lavapipe
114
+ if: runner.os == 'Windows'
115
+ shell: bash
116
+ run: .github/scripts/install-lavapipe-windows.sh
117
+ - name: Install lavapipe
118
+ if: runner.os == 'macOS'
119
+ run: |
120
+ brew install mesa vulkan-loader
121
+ prefix=$(brew --prefix)
122
+ icd=$(find "$prefix/share/vulkan/icd.d" -name 'lvp_icd*.json' | head -n1)
123
+ {
124
+ echo "VK_DRIVER_FILES=$icd"
125
+ echo "VK_ICD_FILENAMES=$icd"
126
+ echo "DYLD_FALLBACK_LIBRARY_PATH=$prefix/lib"
127
+ } >> "$GITHUB_ENV"
128
+ - name: Configure
129
+ shell: bash
130
+ run: >
131
+ cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DTERRAINGEN_BUILD_BENCHMARKS=OFF
132
+ "-DPython_EXECUTABLE=$(python -c 'import sys; print(sys.executable)')"
133
+ ${{ runner.os != 'Windows' && '-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache' || '' }}
134
+ - name: Build
135
+ run: cmake --build build --parallel 4
136
+ - name: Backends
137
+ shell: bash
138
+ run: build/bin/terraingen backends
139
+ - name: Test
140
+ run: ctest --test-dir build --parallel 4 --output-on-failure --timeout 1200
141
+
142
+ # Line coverage of the library, from the tests on lavapipe; GitHub Pages publishes the report from
143
+ # main (pages job).
144
+ coverage:
145
+ runs-on: ubuntu-24.04
146
+ timeout-minutes: 60
147
+ env:
148
+ CCACHE_DIR: ${{ github.workspace }}/.ccache
149
+ TERRAINGEN_DEVICE: "0"
150
+ steps:
151
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
152
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
153
+ with:
154
+ python-version: "3.12"
155
+ - run: python -m pip install gcovr numpy pytest ninja
156
+ - uses: hendrikmuhs/ccache-action@f09c25b45002a07be2955cbe52e8cee55643f89d # v1.2.24
157
+ with:
158
+ key: coverage
159
+ max-size: 1G
160
+ - name: Install lavapipe
161
+ run: |
162
+ sudo apt-get update
163
+ sudo apt-get install -y --no-install-recommends mesa-vulkan-drivers libvulkan1
164
+ - name: Configure
165
+ run: >
166
+ cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug -DTERRAINGEN_COVERAGE=ON
167
+ -DTERRAINGEN_BUILD_BENCHMARKS=OFF
168
+ "-DPython_EXECUTABLE=$(python -c 'import sys; print(sys.executable)')"
169
+ -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
170
+ # Everything first: the coverage target builds only the test programs, not the command that the
171
+ # integration tests run.
172
+ - name: Build
173
+ run: cmake --build build --parallel 4
174
+ # The tests four at a time (ctest reads CTEST_PARALLEL_LEVEL), the long ones first.
175
+ - name: Test and report
176
+ env:
177
+ CTEST_PARALLEL_LEVEL: "4"
178
+ run: cmake --build build --target coverage
179
+ - name: Summary
180
+ if: always()
181
+ run: cat build/coverage/summary.md >> "$GITHUB_STEP_SUMMARY" || true
182
+ - uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
183
+ if: always()
184
+ with:
185
+ name: coverage-report
186
+ path: build/coverage/
187
+ if-no-files-found: ignore
188
+ retention-days: 7
189
+
190
+ # One job per platform and Python (pyproject.toml's [tool.cibuildwheel] has the rest), so each
191
+ # platform's wheels build side by side.
192
+ wheel:
193
+ name: wheel (${{ matrix.os }}, ${{ matrix.python }})
194
+ needs: version
195
+ runs-on: ${{ matrix.os }}
196
+ timeout-minutes: 45
197
+ strategy:
198
+ fail-fast: false
199
+ matrix:
200
+ os: [ubuntu-24.04, ubuntu-24.04-arm, macos-26, windows-2022]
201
+ python: [cp310, cp311, cp312]
202
+ steps:
203
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
204
+ - name: Version
205
+ shell: bash
206
+ run: >
207
+ sed -i.bak -E 's/^set\(TERRAINGEN_FULL_VERSION "([0-9.]+)"\)$/set(TERRAINGEN_FULL_VERSION "\1${{ needs.version.outputs.suffix }}")/'
208
+ CMakeLists.txt
209
+ - uses: pypa/cibuildwheel@b3395e271a35f73dad77f21802abe9b986dfe299 # v4.3.1
210
+ env:
211
+ CIBW_BUILD: "${{ matrix.python }}-*"
212
+ with:
213
+ output-dir: wheelhouse
214
+ - uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
215
+ with:
216
+ name: wheel-${{ matrix.os }}-${{ matrix.python }}
217
+ path: wheelhouse/*.whl
218
+
219
+ # The sdist, then a wheel built from it and imported, as pip does for platforms without wheels.
220
+ sdist:
221
+ needs: version
222
+ runs-on: ubuntu-24.04
223
+ timeout-minutes: 30
224
+ steps:
225
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
226
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
227
+ with:
228
+ python-version: "3.12"
229
+ - name: Version
230
+ run: >
231
+ sed -i -E 's/^set\(TERRAINGEN_FULL_VERSION "([0-9.]+)"\)$/set(TERRAINGEN_FULL_VERSION "\1${{ needs.version.outputs.suffix }}")/'
232
+ CMakeLists.txt
233
+ - run: python -m pip install build
234
+ - run: python -m build --sdist
235
+ - name: Install from the sdist
236
+ run: |
237
+ python -m pip install dist/*.tar.gz
238
+ cd "$RUNNER_TEMP" && python -c "import terraingen; print(terraingen.__version__)" && terraingen backends
239
+ - uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
240
+ with:
241
+ name: sdist
242
+ path: dist/*.tar.gz
243
+
244
+ # The documentation, built against the Linux wheel, for every push and pull request; another
245
+ # platform's wheel failing does not skip it.
246
+ docs:
247
+ needs: wheel
248
+ if: ${{ !cancelled() }}
249
+ runs-on: ubuntu-24.04
250
+ timeout-minutes: 20
251
+ steps:
252
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
253
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
254
+ with:
255
+ python-version: "3.12"
256
+ cache: pip
257
+ cache-dependency-path: docs/requirements.txt
258
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
259
+ with:
260
+ name: wheel-ubuntu-24.04-cp312
261
+ path: wheel
262
+ - name: Install Doxygen, TerrainGen and the docs requirements
263
+ run: |
264
+ sudo apt-get update && sudo apt-get install -y --no-install-recommends doxygen
265
+ python -m pip install wheel/*.whl -r docs/requirements.txt
266
+ - name: Build
267
+ run: make -C docs build
268
+ - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
269
+ with:
270
+ path: ~/.cache/terraingen/assets
271
+ key: gallery-assets-${{ hashFiles('docs/gallery/assets.py') }}
272
+ - name: Gallery scripts run
273
+ run: make -C docs gallery-check
274
+ - uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
275
+ with:
276
+ name: site
277
+ path: site
278
+ retention-days: 3
279
+
280
+ # The documentation with the coverage report under coverage/ (and coverage/badge.json for the
281
+ # README badge), on GitHub Pages from main. A failed coverage run leaves the report out.
282
+ pages:
283
+ needs: [docs, coverage]
284
+ if: ${{ !cancelled() && needs.docs.result == 'success' && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
285
+ runs-on: ubuntu-24.04
286
+ timeout-minutes: 10
287
+ permissions:
288
+ contents: read
289
+ pages: write
290
+ id-token: write
291
+ environment:
292
+ name: github-pages
293
+ url: ${{ steps.deployment.outputs.page_url }}
294
+ steps:
295
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
296
+ with:
297
+ name: site
298
+ path: site
299
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
300
+ continue-on-error: true
301
+ with:
302
+ name: coverage-report
303
+ path: site/coverage
304
+ - uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0
305
+ with:
306
+ path: site
307
+ - id: deployment
308
+ uses: actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 # v5.0.1
309
+
310
+ # The CLI, library, headers and CMake package for each platform as an archive, and Debian packages
311
+ # (terraingen, terraingen-dev) built on the oldest supported Ubuntu.
312
+ packages:
313
+ name: packages (${{ matrix.platform }})
314
+ needs: version
315
+ runs-on: ${{ matrix.os }}
316
+ timeout-minutes: 45
317
+ strategy:
318
+ fail-fast: false
319
+ matrix:
320
+ include:
321
+ - { platform: linux-x86_64, os: ubuntu-22.04 }
322
+ - { platform: linux-aarch64, os: ubuntu-22.04-arm }
323
+ - { platform: macos-arm64, os: macos-26 }
324
+ - { platform: windows-x86_64, os: windows-2022 }
325
+ env:
326
+ ARCHIVE: terraingen-${{ needs.version.outputs.version }}-${{ matrix.platform }}
327
+ steps:
328
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
329
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
330
+ with:
331
+ python-version: "3.12"
332
+ - run: python -m pip install ninja
333
+ - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
334
+ if: runner.os == 'Windows'
335
+ - name: Version
336
+ shell: bash
337
+ run: >
338
+ sed -i.bak -E 's/^set\(TERRAINGEN_FULL_VERSION "([0-9.]+)"\)$/set(TERRAINGEN_FULL_VERSION "\1${{ needs.version.outputs.suffix }}")/'
339
+ CMakeLists.txt
340
+ - name: Build
341
+ shell: bash
342
+ run: |
343
+ cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DTERRAINGEN_BUILD_TESTS=OFF \
344
+ -DTERRAINGEN_BUILD_BENCHMARKS=OFF \
345
+ -DTERRAINGEN_BUILD_PYTHON=OFF -DTERRAINGEN_INSTALL=ON
346
+ cmake --build build --parallel 4
347
+ cmake --install build --prefix "$ARCHIVE"
348
+ cp LICENSE README.md CHANGELOG.md "$ARCHIVE/"
349
+ - name: Archive
350
+ if: runner.os == 'Windows'
351
+ shell: pwsh
352
+ run: Compress-Archive -Path "$env:ARCHIVE" -DestinationPath "$env:ARCHIVE.zip"
353
+ - name: Archive
354
+ if: runner.os != 'Windows'
355
+ run: tar -czf "$ARCHIVE.tar.gz" "$ARCHIVE"
356
+ - name: Debian packages
357
+ if: runner.os == 'Linux'
358
+ run: cpack --config build/CPackConfig.cmake -G DEB -B debs
359
+ - uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
360
+ with:
361
+ name: packages-${{ matrix.platform }}
362
+ path: |
363
+ ${{ env.ARCHIVE }}.zip
364
+ ${{ env.ARCHIVE }}.tar.gz
365
+ debs/*.deb
366
+ if-no-files-found: error
367
+
368
+ # The Debian packages installed on clean distributions, where the program must run and list its
369
+ # backends. Only the Linux packages matter here, so another platform's failure does not skip it; a
370
+ # missing Linux package fails its download.
371
+ package-test:
372
+ name: package-test (${{ matrix.image }}, ${{ matrix.arch }})
373
+ needs: packages
374
+ if: ${{ !cancelled() }}
375
+ runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-24.04-arm' || 'ubuntu-24.04' }}
376
+ timeout-minutes: 15
377
+ strategy:
378
+ fail-fast: false
379
+ matrix:
380
+ arch: [x86_64, aarch64]
381
+ image: ["ubuntu:22.04", "ubuntu:24.04", "debian:12"]
382
+ container: ${{ matrix.image }}
383
+ steps:
384
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
385
+ with:
386
+ name: packages-linux-${{ matrix.arch }}
387
+ - name: Install
388
+ run: |
389
+ apt-get update
390
+ apt-get install -y --no-install-recommends ./debs/*.deb
391
+ - name: Run
392
+ run: |
393
+ terraingen --version
394
+ terraingen backends
395
+
396
+ # The Dockerfile's image, built and tested on the oldest supported Ubuntu; pushed to GHCR from main
397
+ # (dev) and release tags.
398
+ docker:
399
+ needs: [version, lint, test]
400
+ runs-on: ubuntu-24.04
401
+ timeout-minutes: 45
402
+ permissions:
403
+ contents: read
404
+ packages: write
405
+ steps:
406
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
407
+ - name: Build
408
+ run: docker build --target dev -t terraingen:test .
409
+ - name: Smoke test
410
+ run: |
411
+ docker run --rm terraingen:test terraingen --version
412
+ docker run --rm terraingen:test terraingen backends
413
+ docker run --rm terraingen:test python -c "import terraingen; print(terraingen.__version__)"
414
+ - name: Push
415
+ if: github.event_name == 'push'
416
+ env:
417
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
418
+ run: |
419
+ image=ghcr.io/${GITHUB_REPOSITORY,,}
420
+ echo "$GH_TOKEN" | docker login ghcr.io -u "$GITHUB_ACTOR" --password-stdin
421
+ if [[ "$GITHUB_REF" == refs/tags/v* ]]; then
422
+ version=${GITHUB_REF_NAME#v}
423
+ tags=("$version" "${version%.*}" latest)
424
+ else
425
+ tags=(dev)
426
+ fi
427
+ for tag in "${tags[@]}"; do
428
+ docker tag terraingen:test "$image:$tag"
429
+ docker push "$image:$tag"
430
+ done
431
+
432
+ # Wheels and the sdist to PyPI by Trusted Publishing (no stored token): X.Y.Z.devN from main,
433
+ # X.Y.Z from release tags, once every platform's build, tests and packages pass.
434
+ pypi:
435
+ needs: [lint, test, wheel, sdist, package-test]
436
+ if: >
437
+ github.event_name == 'push' &&
438
+ (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))
439
+ runs-on: ubuntu-24.04
440
+ timeout-minutes: 10
441
+ environment:
442
+ name: pypi
443
+ url: https://pypi.org/project/terraingenpy/
444
+ permissions:
445
+ id-token: write
446
+ steps:
447
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
448
+ with:
449
+ pattern: wheel-*
450
+ merge-multiple: true
451
+ path: dist
452
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
453
+ with:
454
+ name: sdist
455
+ path: dist
456
+ - uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # v1.14.2
457
+
458
+ # The "dev" pre-release: main's packages and their checksums, replaced on every push to main, like
459
+ # the dev Docker tag and the PyPI .devN versions. Marked as a pre-release and never as the latest
460
+ # release, so versioned releases stay the default.
461
+ dev:
462
+ needs: [lint, test, packages, package-test]
463
+ if: github.event_name == 'push' && github.ref == 'refs/heads/main'
464
+ runs-on: ubuntu-24.04
465
+ timeout-minutes: 10
466
+ permissions:
467
+ contents: write
468
+ steps:
469
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
470
+ with:
471
+ pattern: "packages-*"
472
+ merge-multiple: true
473
+ path: assets
474
+ - name: Flatten
475
+ run: find assets -mindepth 2 -type f -exec mv -t assets {} + && find assets -mindepth 1 -type d -empty -delete
476
+ - name: Checksums
477
+ run: cd assets && sha256sum -- * > SHA256SUMS
478
+ - name: Release
479
+ env:
480
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
481
+ run: |
482
+ gh release delete dev --repo "$GITHUB_REPOSITORY" --cleanup-tag --yes || true
483
+ gh release create dev assets/* --repo "$GITHUB_REPOSITORY" --target "$GITHUB_SHA" \
484
+ --prerelease --latest=false --title "Dev (main)" \
485
+ --notes "Built from main at $GITHUB_SHA. For versioned binaries, use a tagged release."
486
+
487
+ # A GitHub release for each v* tag, with every wheel, the sdist, the packages and their checksums.
488
+ release:
489
+ needs: [lint, test, wheel, sdist, package-test, docker]
490
+ if: startsWith(github.ref, 'refs/tags/v')
491
+ runs-on: ubuntu-24.04
492
+ timeout-minutes: 10
493
+ permissions:
494
+ contents: write
495
+ steps:
496
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
497
+ with:
498
+ pattern: "wheel-*"
499
+ merge-multiple: true
500
+ path: assets
501
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
502
+ with:
503
+ name: sdist
504
+ path: assets
505
+ - uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
506
+ with:
507
+ pattern: "packages-*"
508
+ merge-multiple: true
509
+ path: assets
510
+ - name: Flatten
511
+ run: find assets -mindepth 2 -type f -exec mv -t assets {} + && find assets -mindepth 1 -type d -empty -delete
512
+ - name: Checksums
513
+ run: cd assets && sha256sum -- * > SHA256SUMS
514
+ - name: Release
515
+ env:
516
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
517
+ run: >
518
+ gh release create "$GITHUB_REF_NAME" assets/*
519
+ --repo "$GITHUB_REPOSITORY" --title "TerrainGen ${GITHUB_REF_NAME#v}" --generate-notes