voxcity 0.6.30__tar.gz → 0.6.31__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.

Potentially problematic release.


This version of voxcity might be problematic. Click here for more details.

Files changed (39) hide show
  1. {voxcity-0.6.30 → voxcity-0.6.31}/PKG-INFO +1 -1
  2. {voxcity-0.6.30 → voxcity-0.6.31}/pyproject.toml +1 -1
  3. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/geoprocessor/mesh.py +3 -1
  4. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/utils/visualization.py +3 -3
  5. {voxcity-0.6.30 → voxcity-0.6.31}/AUTHORS.rst +0 -0
  6. {voxcity-0.6.30 → voxcity-0.6.31}/LICENSE +0 -0
  7. {voxcity-0.6.30 → voxcity-0.6.31}/README.md +0 -0
  8. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/__init__.py +0 -0
  9. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/__init__.py +0 -0
  10. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/citygml.py +0 -0
  11. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/eubucco.py +0 -0
  12. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/gba.py +0 -0
  13. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/gee.py +0 -0
  14. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/mbfp.py +0 -0
  15. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/oemj.py +0 -0
  16. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/osm.py +0 -0
  17. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/overture.py +0 -0
  18. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/downloader/utils.py +0 -0
  19. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/exporter/__init__.py +0 -0
  20. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/exporter/cityles.py +0 -0
  21. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/exporter/envimet.py +0 -0
  22. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/exporter/magicavoxel.py +0 -0
  23. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/exporter/netcdf.py +0 -0
  24. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/exporter/obj.py +0 -0
  25. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/generator.py +0 -0
  26. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/geoprocessor/__init__.py +0 -0
  27. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/geoprocessor/draw.py +0 -0
  28. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/geoprocessor/grid.py +0 -0
  29. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/geoprocessor/network.py +0 -0
  30. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/geoprocessor/polygon.py +0 -0
  31. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/geoprocessor/utils.py +0 -0
  32. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/simulator/__init__.py +0 -0
  33. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/simulator/solar.py +0 -0
  34. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/simulator/utils.py +0 -0
  35. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/simulator/view.py +0 -0
  36. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/utils/__init__.py +0 -0
  37. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/utils/lc.py +0 -0
  38. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/utils/material.py +0 -0
  39. {voxcity-0.6.30 → voxcity-0.6.31}/src/voxcity/utils/weather.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: voxcity
3
- Version: 0.6.30
3
+ Version: 0.6.31
4
4
  Summary: voxcity is an easy and one-stop tool to output 3d city models for microclimate simulation by integrating multiple geospatial open-data
5
5
  License: MIT
6
6
  License-File: AUTHORS.rst
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "voxcity"
3
- version = "0.6.30"
3
+ version = "0.6.31"
4
4
  description = "voxcity is an easy and one-stop tool to output 3d city models for microclimate simulation by integrating multiple geospatial open-data"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -318,7 +318,9 @@ def create_sim_surface_mesh(sim_grid, dem_grid,
318
318
  if np.isnan(val):
319
319
  continue
320
320
 
321
- z_base = meshsize * int(dem_grid_flipped[x, y] / meshsize + 1.5) + z_offset
321
+ # Match voxel ground rounding: int(dem/mesh + 0.5) + 1 == int(dem/mesh + 1.5)
322
+ # Then lower the plane by one mesh layer as requested
323
+ z_base = meshsize * int(dem_grid_flipped[x, y] / meshsize + 1.5) + z_offset - meshsize
322
324
 
323
325
  # 4 corners in (x,y)*meshsize
324
326
  v0 = [ x * meshsize, y * meshsize, z_base ]
@@ -2804,9 +2804,9 @@ def visualize_voxcity_plotly(
2804
2804
  if meshsize is not None:
2805
2805
  try:
2806
2806
  ms = float(meshsize)
2807
- if z_off < ms:
2808
- z_off = ms
2809
- z_off = ms * math.ceil(z_off / ms)
2807
+ # Snap strictly above ground in whole mesh layers:
2808
+ # (ground_z_offset // meshsize + 1) * meshsize
2809
+ z_off = (z_off // ms + 1.0) * ms
2810
2810
  except Exception:
2811
2811
  pass
2812
2812
 
File without changes
File without changes
File without changes