voxcity 0.3.12__py3-none-any.whl → 0.3.13__py3-none-any.whl

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 (33) hide show
  1. voxcity/__init__.py +1 -1
  2. voxcity/{download → downloader}/eubucco.py +1 -1
  3. voxcity/{download → downloader}/mbfp.py +2 -2
  4. voxcity/{file → exporter}/envimet.py +2 -2
  5. voxcity/{voxcity.py → generator.py} +9 -9
  6. voxcity/{geo → geoprocessor}/__init_.py +1 -0
  7. voxcity/{geo → geoprocessor}/draw.py +2 -1
  8. voxcity/{geo → geoprocessor}/grid.py +2 -2
  9. voxcity/{geo → geoprocessor}/network.py +7 -7
  10. voxcity/{file/geojson.py → geoprocessor/polygon.py} +1 -1
  11. voxcity/{sim → simulator}/solar.py +1 -1
  12. voxcity/{sim → simulator}/view.py +2 -2
  13. voxcity/utils/visualization.py +2 -2
  14. {voxcity-0.3.12.dist-info → voxcity-0.3.13.dist-info}/METADATA +2 -2
  15. voxcity-0.3.13.dist-info/RECORD +36 -0
  16. voxcity-0.3.12.dist-info/RECORD +0 -36
  17. /voxcity/{download → downloader}/__init__.py +0 -0
  18. /voxcity/{download → downloader}/gee.py +0 -0
  19. /voxcity/{download → downloader}/oemj.py +0 -0
  20. /voxcity/{download → downloader}/omt.py +0 -0
  21. /voxcity/{download → downloader}/osm.py +0 -0
  22. /voxcity/{download → downloader}/overture.py +0 -0
  23. /voxcity/{download → downloader}/utils.py +0 -0
  24. /voxcity/{file → exporter}/__init_.py +0 -0
  25. /voxcity/{file → exporter}/magicavoxel.py +0 -0
  26. /voxcity/{file → exporter}/obj.py +0 -0
  27. /voxcity/{geo → geoprocessor}/utils.py +0 -0
  28. /voxcity/{sim → simulator}/__init_.py +0 -0
  29. /voxcity/{sim → simulator}/utils.py +0 -0
  30. {voxcity-0.3.12.dist-info → voxcity-0.3.13.dist-info}/AUTHORS.rst +0 -0
  31. {voxcity-0.3.12.dist-info → voxcity-0.3.13.dist-info}/LICENSE +0 -0
  32. {voxcity-0.3.12.dist-info → voxcity-0.3.13.dist-info}/WHEEL +0 -0
  33. {voxcity-0.3.12.dist-info → voxcity-0.3.13.dist-info}/top_level.txt +0 -0
voxcity/__init__.py CHANGED
@@ -2,7 +2,7 @@ __author__ = """Kunihiko Fujiwara"""
2
2
  __email__ = 'kunihiko@nus.edu.sg'
3
3
  __version__ = '0.1.0'
4
4
 
5
- from .voxcity import *
5
+ # from .generator import *
6
6
  # from .download import mbfp
7
7
  # # from .utils.draw import rotate_rectangle, draw_rectangle_map
8
8
  # from .geo import draw, utils
@@ -18,7 +18,7 @@ from fiona.transform import transform_geom
18
18
  import logging
19
19
  import shapely
20
20
 
21
- from ..geo.utils import get_country_name
21
+ from ..geoprocessor.utils import get_country_name
22
22
 
23
23
  # Dictionary mapping European countries to their EUBUCCO data download URLs
24
24
  country_links = {
@@ -9,8 +9,8 @@ AI. It handles downloading quadkey-based data files and converting them to GeoJS
9
9
  import pandas as pd
10
10
  import os
11
11
  from .utils import download_file
12
- from ..geo.utils import tile_from_lat_lon, quadkey_to_tile
13
- from ..file.geojson import load_geojsons_from_multiple_gz, swap_coordinates
12
+ from ..geoprocessor.utils import tile_from_lat_lon, quadkey_to_tile
13
+ from ..geoprocessor.polygon import load_geojsons_from_multiple_gz, swap_coordinates
14
14
 
15
15
  def get_geojson_links(output_dir):
16
16
  """Download and load the dataset links CSV file containing building footprint URLs.
@@ -2,8 +2,8 @@ import os
2
2
  import numpy as np
3
3
  import datetime
4
4
 
5
- from ..geo.grid import apply_operation, translate_array, group_and_label_cells, process_grid
6
- from ..geo.utils import get_city_country_name_from_rectangle, get_timezone_info
5
+ from ..geoprocessor.grid import apply_operation, translate_array, group_and_label_cells, process_grid
6
+ from ..geoprocessor.utils import get_city_country_name_from_rectangle, get_timezone_info
7
7
  from ..utils.lc import convert_land_cover
8
8
 
9
9
  def array_to_string(arr):
@@ -18,13 +18,13 @@ import numpy as np
18
18
  import os
19
19
 
20
20
  # Local application/library specific imports
21
- from .download.mbfp import get_mbfp_geojson
22
- from .download.osm import load_geojsons_from_openstreetmap, load_land_cover_geojson_from_osm
23
- from .download.oemj import save_oemj_as_geotiff
24
- from .download.omt import load_geojsons_from_openmaptiles
25
- from .download.eubucco import load_geojson_from_eubucco
26
- from .download.overture import load_geojsons_from_overture
27
- from .download.gee import (
21
+ from .downloader.mbfp import get_mbfp_geojson
22
+ from .downloader.osm import load_geojsons_from_openstreetmap, load_land_cover_geojson_from_osm
23
+ from .downloader.oemj import save_oemj_as_geotiff
24
+ from .downloader.omt import load_geojsons_from_openmaptiles
25
+ from .downloader.eubucco import load_geojson_from_eubucco
26
+ from .downloader.overture import load_geojsons_from_overture
27
+ from .downloader.gee import (
28
28
  initialize_earth_engine,
29
29
  get_roi,
30
30
  get_ee_image_collection,
@@ -36,7 +36,7 @@ from .download.gee import (
36
36
  save_geotiff_dynamic_world_v1,
37
37
  save_geotiff_open_buildings_temporal
38
38
  )
39
- from .geo.grid import (
39
+ from .geoprocessor.grid import (
40
40
  group_and_label_cells,
41
41
  process_grid,
42
42
  create_land_cover_grid_from_geotiff_polygon,
@@ -47,7 +47,7 @@ from .geo.grid import (
47
47
  create_building_height_grid_from_open_building_temporal_polygon
48
48
  )
49
49
  from .utils.lc import convert_land_cover, convert_land_cover_array
50
- from .file.geojson import get_geojson_from_gpkg, save_geojson
50
+ from .geoprocessor.polygon import get_geojson_from_gpkg, save_geojson
51
51
  from .utils.visualization import (
52
52
  get_land_cover_classes,
53
53
  visualize_land_cover_grid,
@@ -2,3 +2,4 @@ from .draw import *
2
2
  from .grid import *
3
3
  from .utils import *
4
4
  from .network import *
5
+ from .polygon import *
@@ -7,9 +7,10 @@ from pyproj import Proj, transform
7
7
  from ipyleaflet import Map, DrawControl, Rectangle, Polygon as LeafletPolygon
8
8
  import ipyleaflet
9
9
  from geopy import distance
10
- from .utils import get_coordinates_from_cityname
11
10
  import shapely.geometry as geom
12
11
 
12
+ from .utils import get_coordinates_from_cityname
13
+
13
14
  def rotate_rectangle(m, rectangle_vertices, angle):
14
15
  """
15
16
  Project rectangle to Mercator, rotate, and re-project to lat-lon.
@@ -21,7 +21,7 @@ from .utils import (
21
21
  create_building_polygons,
22
22
  convert_format_lat_lon
23
23
  )
24
- from ..file.geojson import (
24
+ from ..geoprocessor.polygon import (
25
25
  filter_buildings,
26
26
  extract_building_heights_from_geotiff,
27
27
  extract_building_heights_from_geojson,
@@ -32,7 +32,7 @@ from ..utils.lc import (
32
32
  create_land_cover_polygons,
33
33
  get_dominant_class,
34
34
  )
35
- from ..download.gee import (
35
+ from ..downloader.gee import (
36
36
  get_roi,
37
37
  save_geotiff_open_buildings_temporal
38
38
  )
@@ -165,11 +165,6 @@ def get_network_values(
165
165
 
166
166
  return G, edge_gdf
167
167
 
168
- # -------------------------------------------------------------------
169
- # Optionally import your DEM helper
170
- # -------------------------------------------------------------------
171
- from voxcity.geo.grid import grid_to_geodataframe
172
-
173
168
  # -------------------------------------------------------------------
174
169
  # 1) Functions for interpolation, parallelization, and slope
175
170
  # -------------------------------------------------------------------
@@ -511,8 +506,13 @@ def analyze_network_slopes(
511
506
  legend_kwds={'label': f"{value_name} (%)"}
512
507
  )
513
508
 
514
- # Add basemap
515
- ctx.add_basemap(ax, source=settings['basemap_style'], zoom=settings['zoom'])
509
+ # Add basemap with the same extent as the rectangle
510
+ ctx.add_basemap(
511
+ ax,
512
+ source=settings['basemap_style'],
513
+ zoom=settings['zoom'],
514
+ bounds=(minx, miny, maxx, maxy) # Explicitly set the bounds of the basemap
515
+ )
516
516
 
517
517
  # Set the plot limits to the bounding box of the rectangle
518
518
  ax.set_xlim(minx, maxx)
@@ -20,7 +20,7 @@ import rasterio
20
20
  from rasterio.mask import mask
21
21
  import copy
22
22
 
23
- from ..geo.utils import validate_polygon_coordinates
23
+ from .utils import validate_polygon_coordinates
24
24
 
25
25
  def filter_and_convert_gdf_to_geojson(gdf, rectangle_vertices):
26
26
  """
@@ -9,7 +9,7 @@ from astral.sun import elevation, azimuth
9
9
 
10
10
  from .view import trace_ray_generic, compute_vi_map_generic, get_sky_view_factor_map
11
11
  from ..utils.weather import get_nearest_epw_from_climate_onebuilding, read_epw_for_solar_simulation
12
- from ..file.obj import grid_to_obj, export_obj
12
+ from ..exporter.obj import grid_to_obj, export_obj
13
13
 
14
14
  @njit(parallel=True)
15
15
  def compute_direct_solar_irradiance_map_binary(voxel_data, sun_direction, view_point_height, hit_values, meshsize, tree_k, tree_lad, inclusion_mode):
@@ -46,8 +46,8 @@ import matplotlib.pyplot as plt
46
46
  import matplotlib.patches as mpatches
47
47
  from numba import njit, prange
48
48
 
49
- from ..file.geojson import find_building_containing_point, get_buildings_in_drawn_polygon
50
- from ..file.obj import grid_to_obj, export_obj
49
+ from ..geoprocessor.polygon import find_building_containing_point, get_buildings_in_drawn_polygon
50
+ from ..exporter.obj import grid_to_obj, export_obj
51
51
 
52
52
  @njit
53
53
  def calculate_transmittance(length, tree_k=0.6, tree_lad=1.0):
@@ -19,14 +19,14 @@ import math
19
19
 
20
20
  from .lc import get_land_cover_classes
21
21
  # from ..geo.geojson import filter_buildings
22
- from ..geo.grid import (
22
+ from ..geoprocessor.grid import (
23
23
  calculate_grid_size,
24
24
  create_coordinate_mesh,
25
25
  create_cell_polygon,
26
26
  grid_to_geodataframe
27
27
  )
28
28
 
29
- from ..geo.utils import (
29
+ from ..geoprocessor.utils import (
30
30
  initialize_geod,
31
31
  calculate_distance,
32
32
  normalize_to_one_meter,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: voxcity
3
- Version: 0.3.12
3
+ Version: 0.3.13
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
  Author-email: Kunihiko Fujiwara <kunihiko@nus.edu.sg>
6
6
  Maintainer-email: Kunihiko Fujiwara <kunihiko@nus.edu.sg>
@@ -458,7 +458,7 @@ G, edge_gdf = get_network_values(
458
458
  | Dataset | Spatial Coverage | Source/Data Acquisition |
459
459
  |---------|------------------|------------------------|
460
460
  | [OpenStreetMap](https://www.openstreetmap.org) | Worldwide (24% completeness in city centers) | Volunteered / updated continuously |
461
- | [Global ML Building Footprints](https://github.com/microsoft/GlobalMLBuildingFootprints) | North America, Europe, Australia | Prediction from satellite or aerial imagery / 2018-2019 for majority of the input imagery |
461
+ | [Microsoft Building Footprints](https://github.com/microsoft/GlobalMLBuildingFootprints) | North America, Europe, Australia | Prediction from satellite or aerial imagery / 2018-2019 for majority of the input imagery |
462
462
  | [Open Buildings 2.5D Temporal Dataset](https://sites.research.google/gr/open-buildings/temporal/) | Africa, Latin America, and South and Southeast Asia | Prediction from satellite imagery / 2016-2023 |
463
463
  | [EUBUCCO v0.1](https://eubucco.com/) | 27 EU countries and Switzerland (378 regions and 40,829 cities) | OpenStreetMap, government datasets / 2003-2021 (majority is after 2019) |
464
464
  | [UT-GLOBUS](https://zenodo.org/records/11156602) | Worldwide (more than 1200 cities or locales) | Prediction from building footprints, population, spaceborne nDSM / not provided |
@@ -0,0 +1,36 @@
1
+ voxcity/__init__.py,sha256=el9v3gfybHOF_GUYPeSOqN0-vCrTW0eU1mcvi0sEfeU,252
2
+ voxcity/generator.py,sha256=n0nSzDYddmQDHi4pLOaN2YY8xfZC0Rbl8nD7MvYSmHg,33695
3
+ voxcity/downloader/__init__.py,sha256=OgGcGxOXF4tjcEL6DhOnt13DYPTvOigUelp5xIpTqM0,171
4
+ voxcity/downloader/eubucco.py,sha256=BaaMitzPDFXjeH-F7XfDzULpq89hVNEDYpsxeStZYDM,15002
5
+ voxcity/downloader/gee.py,sha256=j7jmzp44T3M6j_4DwhU9Y8Y6gqbZo1zFIlduQPc0jvk,14339
6
+ voxcity/downloader/mbfp.py,sha256=xmITDh9mCMnLWjYfjarEr2FEwAW5812IncJxo33IC7c,3959
7
+ voxcity/downloader/oemj.py,sha256=YlCuWBQfi40gfmwQcGDeHiPOs4Pk_jLZq65d5R3IGMU,7886
8
+ voxcity/downloader/omt.py,sha256=EjzimZMFXcjWNRlUEwPIjeTmE4rPh_9bjsgZyro8_mo,8819
9
+ voxcity/downloader/osm.py,sha256=HHSuj6jiQrThrfyJMWHE2nQ0Rqkx4UsXopk8AoNZS6Q,26536
10
+ voxcity/downloader/overture.py,sha256=daOvsySC2KIcTcMJUSA7XdbMELJuyLAIM2vr1DRLGp0,7714
11
+ voxcity/downloader/utils.py,sha256=z6MdPxM96FWQVqvZW2Eg5pMewVHVysUP7F6ueeCwMfI,1375
12
+ voxcity/exporter/__init_.py,sha256=cVyNyE6axEpSd3CT5hGuMOAlOyU1p8lVP4jkF1-0Ad8,94
13
+ voxcity/exporter/envimet.py,sha256=m-y2IYw-yp45AT2wN9UIlxvMjvDvupTKzyfRJl057fE,24300
14
+ voxcity/exporter/magicavoxel.py,sha256=Fsv7yGRXeKmp82xcG3rOb0t_HtoqltNq2tHl08xVlqY,7500
15
+ voxcity/exporter/obj.py,sha256=oW-kPoZj53nfmO9tXP3Wvizq6Kkjh-QQR8UBexRuMiI,21609
16
+ voxcity/geoprocessor/__init_.py,sha256=FFJFf6idmAtmNkwfKPt3ERGSIzjb8tt35D1n9QQbCA8,112
17
+ voxcity/geoprocessor/draw.py,sha256=vhO5O8_Hc0eMOfnczz6k2ZqplTX64FA6DL-XryOxIJs,13557
18
+ voxcity/geoprocessor/grid.py,sha256=bQvcNjUZ1D124c8QYAs1Pba63bfjRorGr-9wxde9M1w,36298
19
+ voxcity/geoprocessor/network.py,sha256=opb_kpUCAxDd1qtrWPStqR5reYZtVe96XxazNSen7Lk,18851
20
+ voxcity/geoprocessor/polygon.py,sha256=1U8FYtTbOUrDmK6ZIdECXpf8FuUvT8QKgIhthypDQ54,33566
21
+ voxcity/geoprocessor/utils.py,sha256=1BRHp-DDeOA8HG8jplY7Eo75G3oXkVGL6DGONL4BA8A,19815
22
+ voxcity/simulator/__init_.py,sha256=APdkcdaovj0v_RPOaA4SBvFUKT2RM7Hxuuz3Sux4gCo,65
23
+ voxcity/simulator/solar.py,sha256=FOcHoUm4miJNyeCcGs2oL93Vu38Affyywt29dJcmIT4,31974
24
+ voxcity/simulator/utils.py,sha256=sEYBB2-hLJxTiXQps1_-Fi7t1HN3-1OPOvBCWtgIisA,130
25
+ voxcity/simulator/view.py,sha256=4H19dMrHNzLuGtkzVEdOTsF1fl_ZcRC29HIxGVJBlGE,36770
26
+ voxcity/utils/__init_.py,sha256=nLYrj2huBbDBNMqfchCwexGP8Tlt9O_XluVDG7MoFkw,98
27
+ voxcity/utils/lc.py,sha256=RwPd-VY3POV3gTrBhM7TubgGb9MCd3nVah_G8iUEF7k,11562
28
+ voxcity/utils/material.py,sha256=Vt3IID5Ft54HNJcEC4zi31BCPqi_687X3CSp7rXaRVY,5907
29
+ voxcity/utils/visualization.py,sha256=3cNjJdwIaOlzwgK08S39F1VYNf7vu-x9d4UUiKwXRVo,31943
30
+ voxcity/utils/weather.py,sha256=P6s1y_EstBL1OGP_MR_6u3vr-t6Uawg8uDckJnoI7FI,21482
31
+ voxcity-0.3.13.dist-info/AUTHORS.rst,sha256=m82vkI5QokEGdcHof2OxK39lf81w1P58kG9ZNNAKS9U,175
32
+ voxcity-0.3.13.dist-info/LICENSE,sha256=-hGliOFiwUrUSoZiB5WF90xXGqinKyqiDI2t6hrnam8,1087
33
+ voxcity-0.3.13.dist-info/METADATA,sha256=XWJTqfQEG1Qfvp9XsTMK_xUau4smVj0iUpQgjCCPlDw,25122
34
+ voxcity-0.3.13.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
35
+ voxcity-0.3.13.dist-info/top_level.txt,sha256=00b2U-LKfDllt6RL1R33MXie5MvxzUFye0NGD96t_8I,8
36
+ voxcity-0.3.13.dist-info/RECORD,,
@@ -1,36 +0,0 @@
1
- voxcity/__init__.py,sha256=HJM0D2Mv9qpk4JdVzt2SRAAk-hA1D_pCO0ezZH9F7KA,248
2
- voxcity/voxcity.py,sha256=tZOgRnyvw4ZHuuJr_QP3qeen5DxhYOkDglNDtpB0hzY,33664
3
- voxcity/download/__init__.py,sha256=OgGcGxOXF4tjcEL6DhOnt13DYPTvOigUelp5xIpTqM0,171
4
- voxcity/download/eubucco.py,sha256=u2MoAIm_ylMDr1DPqqktcC_KS0iny2IJbFzUlUSvR8o,14993
5
- voxcity/download/gee.py,sha256=j7jmzp44T3M6j_4DwhU9Y8Y6gqbZo1zFIlduQPc0jvk,14339
6
- voxcity/download/mbfp.py,sha256=aQOGKP0pV6J6MCBXG9J6kQX04_S31rMjJEVvgrgOPg4,3942
7
- voxcity/download/oemj.py,sha256=YlCuWBQfi40gfmwQcGDeHiPOs4Pk_jLZq65d5R3IGMU,7886
8
- voxcity/download/omt.py,sha256=EjzimZMFXcjWNRlUEwPIjeTmE4rPh_9bjsgZyro8_mo,8819
9
- voxcity/download/osm.py,sha256=HHSuj6jiQrThrfyJMWHE2nQ0Rqkx4UsXopk8AoNZS6Q,26536
10
- voxcity/download/overture.py,sha256=daOvsySC2KIcTcMJUSA7XdbMELJuyLAIM2vr1DRLGp0,7714
11
- voxcity/download/utils.py,sha256=z6MdPxM96FWQVqvZW2Eg5pMewVHVysUP7F6ueeCwMfI,1375
12
- voxcity/file/__init_.py,sha256=cVyNyE6axEpSd3CT5hGuMOAlOyU1p8lVP4jkF1-0Ad8,94
13
- voxcity/file/envimet.py,sha256=SPVoSyYTMNyDRDFWsI0YAsIsb6yt_SXZeDUlhyqlEqY,24282
14
- voxcity/file/geojson.py,sha256=dZTRkz4LQspWdNyfJZuwsymSeKqhx0v-bF-L9_1iudg,33571
15
- voxcity/file/magicavoxel.py,sha256=Fsv7yGRXeKmp82xcG3rOb0t_HtoqltNq2tHl08xVlqY,7500
16
- voxcity/file/obj.py,sha256=oW-kPoZj53nfmO9tXP3Wvizq6Kkjh-QQR8UBexRuMiI,21609
17
- voxcity/geo/__init_.py,sha256=AZYQxK1zY1M_mDT1HmgcdVI86OAtwK7CNo3AOScLHco,88
18
- voxcity/geo/draw.py,sha256=roljWXyqYdsWYkmb-5_WNxrJrfV5lnAt8uZblCCo_3Q,13555
19
- voxcity/geo/grid.py,sha256=_MzO-Cu2GhlP9nuCql6f1pfbU2_OAL27aQ_zCj1u_zk,36288
20
- voxcity/geo/network.py,sha256=egAHsqVYNcDIPPHv0RnVBQCLpfsdsWXf0ltrkZi2V7A,18905
21
- voxcity/geo/utils.py,sha256=1BRHp-DDeOA8HG8jplY7Eo75G3oXkVGL6DGONL4BA8A,19815
22
- voxcity/sim/__init_.py,sha256=APdkcdaovj0v_RPOaA4SBvFUKT2RM7Hxuuz3Sux4gCo,65
23
- voxcity/sim/solar.py,sha256=ddzEjN9s9zEABMPu1S0k-NXlNtIYDl12EAwiaaASJs0,31970
24
- voxcity/sim/utils.py,sha256=sEYBB2-hLJxTiXQps1_-Fi7t1HN3-1OPOvBCWtgIisA,130
25
- voxcity/sim/view.py,sha256=FoXovh406hmvL1obaIXi2MyiRnPdXHY9SWxqfqmcJnc,36758
26
- voxcity/utils/__init_.py,sha256=nLYrj2huBbDBNMqfchCwexGP8Tlt9O_XluVDG7MoFkw,98
27
- voxcity/utils/lc.py,sha256=RwPd-VY3POV3gTrBhM7TubgGb9MCd3nVah_G8iUEF7k,11562
28
- voxcity/utils/material.py,sha256=Vt3IID5Ft54HNJcEC4zi31BCPqi_687X3CSp7rXaRVY,5907
29
- voxcity/utils/visualization.py,sha256=FNBMN0V5IPuAdqvLHnqSGYqNS7jWesg0ZADEtsUtl0A,31925
30
- voxcity/utils/weather.py,sha256=P6s1y_EstBL1OGP_MR_6u3vr-t6Uawg8uDckJnoI7FI,21482
31
- voxcity-0.3.12.dist-info/AUTHORS.rst,sha256=m82vkI5QokEGdcHof2OxK39lf81w1P58kG9ZNNAKS9U,175
32
- voxcity-0.3.12.dist-info/LICENSE,sha256=-hGliOFiwUrUSoZiB5WF90xXGqinKyqiDI2t6hrnam8,1087
33
- voxcity-0.3.12.dist-info/METADATA,sha256=ASX53F7pGZnhPvOD8PSO5Sg_6TMbsdo5r9YDaNy6wV4,25122
34
- voxcity-0.3.12.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
35
- voxcity-0.3.12.dist-info/top_level.txt,sha256=00b2U-LKfDllt6RL1R33MXie5MvxzUFye0NGD96t_8I,8
36
- voxcity-0.3.12.dist-info/RECORD,,
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes