quickpaver 0.2.0__tar.gz → 0.3.0__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.
- quickpaver-0.3.0/CHANGELOG.rst +62 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/PKG-INFO +7 -5
- {quickpaver-0.2.0 → quickpaver-0.3.0}/pyproject.toml +9 -4
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver/__about__.py +1 -1
- quickpaver-0.3.0/quickpaver/__init__.py +177 -0
- quickpaver-0.3.0/quickpaver/_grid.py +2061 -0
- quickpaver-0.3.0/quickpaver/_tiling.py +826 -0
- quickpaver-0.3.0/quickpaver/_transfer_matrix.py +179 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver.egg-info/PKG-INFO +7 -5
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver.egg-info/SOURCES.txt +3 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver.egg-info/requires.txt +6 -4
- quickpaver-0.3.0/tests/test_data.py +11 -0
- quickpaver-0.3.0/tests/test_grid.py +1243 -0
- quickpaver-0.3.0/tests/test_tiling.py +319 -0
- quickpaver-0.3.0/tests/test_transfer_matrix.py +426 -0
- quickpaver-0.2.0/CHANGELOG.rst +0 -14
- quickpaver-0.2.0/quickpaver/__init__.py +0 -141
- quickpaver-0.2.0/quickpaver/_grid.py +0 -1157
- quickpaver-0.2.0/quickpaver/_tiling.py +0 -629
- quickpaver-0.2.0/tests/test_grid.py +0 -159
- quickpaver-0.2.0/tests/test_tiling.py +0 -69
- {quickpaver-0.2.0 → quickpaver-0.3.0}/AUTHORS.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/CONTRIBUTING.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/LICENSE +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/MANIFEST.in +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/README.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/Makefile +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/make.bat +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.HEXAGON.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.RECTANGLE.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.TRIANGLE.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.capitalize.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.casefold.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.center.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.count.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.encode.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.endswith.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.expandtabs.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.find.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.format.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.format_map.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.index.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isalnum.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isalpha.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isascii.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isdecimal.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isdigit.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isidentifier.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.islower.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isnumeric.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isprintable.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isspace.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.istitle.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.isupper.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.join.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.ljust.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.lower.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.lstrip.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.maketrans.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.partition.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.removeprefix.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.removesuffix.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.replace.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.rfind.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.rindex.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.rjust.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.rpartition.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.rsplit.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.rstrip.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.split.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.splitlines.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.startswith.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.strip.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.swapcase.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.title.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.to_list.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.translate.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.upper.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.PolygonType.zfill.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.bounding_box_vertices_coordinates.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.bounds.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.center_coords.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.center_coords_2d.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.dims.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.gamma_ij_x_m2.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.gamma_ij_y_m2.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.gamma_ij_z_m2.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.grid_cell_volume_m3.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.indices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.make_spatial_gradient_matrices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.make_spatial_permutation_matrices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.n_grid_cells.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.non_rot_center_coords.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.non_rot_center_coords_2d.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.origin.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.origin_coords.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.shape.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.total_volume_m3.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.x_extent.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.x_indices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.xmax.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.xmin.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.y_extent.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.y_indices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.ymax.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.ymin.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.z_extent.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.z_indices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.zmax.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/generated/quickpaver.RectilinearGrid.zmin.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.PolygonType.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.RectilinearGrid.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.binary_dilation.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.conservative_upsample.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.create_selections_array_2d.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.duplicative_upsample.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.extract_tiling_centers.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.extract_tiling_vertices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.gen_hexagonal_tiling.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.gen_polygon.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.gen_polygonal_tiling.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.gen_rectangular_tiling.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.gen_triangular_tiling.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.get_owner_neigh_indices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.get_polygon_selection_with_dilation_2d.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.get_polygon_selection_with_dilation_3d.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.get_rlg_perm_mat.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.get_rlg_spatial_grad_mat.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.load_corsica_contour.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.load_france_and_corsica_contour.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.load_france_contour.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.make_rlg_spatial_gradient_matrices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.make_rlg_spatial_permutation_matrices.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.resample_grid.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.rlg_idx_to_nn.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.rlg_nn_to_idx.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.span_to_node_numbers_2d.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_autosummary/quickpaver.span_to_node_numbers_3d.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_templates/autosummary/base.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_templates/autosummary/class.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/_templates/autosummary/module.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/api_reference.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/authors.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/bibliography.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/changelog.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/conf.py +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/contributing.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/index.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/installation.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/readme.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/docs/sources/usage.rst +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver/_types.py +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver/data/__init__.py +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver/data/corsica.geojson +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver/data/france.geojson +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver.egg-info/dependency_links.txt +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/quickpaver.egg-info/top_level.txt +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/setup.cfg +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/tests/__init__.py +0 -0
- {quickpaver-0.2.0 → quickpaver-0.3.0}/tests/test_types.py +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
==============
|
|
2
|
+
Changelog
|
|
3
|
+
==============
|
|
4
|
+
|
|
5
|
+
0.3.0 (2026-06-03)
|
|
6
|
+
------------------
|
|
7
|
+
|
|
8
|
+
* ENH: add ``compute_transfer_matrix`` to build conservative sparse transfer
|
|
9
|
+
* ENH: add add regular-grid indexing helpers:
|
|
10
|
+
|
|
11
|
+
* ``rlg_idx_to_nn``
|
|
12
|
+
* ``rlg_nn_to_idx``
|
|
13
|
+
* ``span_to_node_numbers_2d``
|
|
14
|
+
* ``span_to_node_numbers_3d``
|
|
15
|
+
|
|
16
|
+
* ENH: add sparse spatial operators for rectilinear grids:
|
|
17
|
+
|
|
18
|
+
* ``get_rlg_spatial_grad_mat``
|
|
19
|
+
* ``make_rlg_spatial_gradient_matrices``
|
|
20
|
+
* ``get_rlg_perm_mat``
|
|
21
|
+
* ``make_rlg_spatial_permutation_matrices``
|
|
22
|
+
|
|
23
|
+
* ENH: add polygon-to-grid selection utilities:
|
|
24
|
+
|
|
25
|
+
* ``create_selections_array_2d``
|
|
26
|
+
* ``get_polygon_selection_with_dilation_2d``
|
|
27
|
+
* ``get_polygon_selection_with_dilation_3d``
|
|
28
|
+
* ``binary_dilation``
|
|
29
|
+
|
|
30
|
+
* ENH: add grid resampling and array upsampling utilities:
|
|
31
|
+
|
|
32
|
+
* ``resample_grid``
|
|
33
|
+
* ``duplicative_upsample``
|
|
34
|
+
* ``conservative_upsample``
|
|
35
|
+
|
|
36
|
+
* ENH: add export helpers for ``RectilinearGrid``:
|
|
37
|
+
|
|
38
|
+
* ``to_shapely`` for 2D Shapely polygon export.
|
|
39
|
+
* ``to_pyvista`` for optional PyVista export using ``ImageData``,
|
|
40
|
+
``RectilinearGrid`` or ``StructuredGrid`` representations.
|
|
41
|
+
|
|
42
|
+
* ENH: add grid geometry helpers such as ``get_array_borders_selection`` and
|
|
43
|
+
owner/neighbour index pairing utilities.
|
|
44
|
+
* ENH: add input validation for rectilinear grid dimensions, cell sizes, sparse
|
|
45
|
+
operator axes, dilation masks, and upsampling factors.
|
|
46
|
+
* TEST: add extensive pytest coverage for rectilinear grids, sparse operators,
|
|
47
|
+
polygon selections, dilation, resampling, upsampling, Shapely export, and
|
|
48
|
+
optional PyVista export.
|
|
49
|
+
* DOC: improve tiling documentation.
|
|
50
|
+
* DOC: add documentation for rectilinear grid utilities.
|
|
51
|
+
* DOC: update notebooks for tiling, transfer matrices, and grid utilities.
|
|
52
|
+
|
|
53
|
+
0.2.0 (2026-03-18)
|
|
54
|
+
------------------
|
|
55
|
+
|
|
56
|
+
* ENH: ``extract_tiling_vertices`` now returns cluster indices for merged vertices.
|
|
57
|
+
* DOC: improve documentation.
|
|
58
|
+
|
|
59
|
+
0.1.0 (2026-03-14)
|
|
60
|
+
------------------
|
|
61
|
+
|
|
62
|
+
* First release on PyPI.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: quickpaver
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: A python package providing a paving toolbox.
|
|
5
5
|
Author-email: Antoine Collet <antoinecollet5@gmail.com>
|
|
6
6
|
License: BSD 3-Clause License
|
|
@@ -56,7 +56,7 @@ Requires-Dist: numpy>=1.2
|
|
|
56
56
|
Requires-Dist: shapely>=2.1
|
|
57
57
|
Requires-Dist: scipy>=1.10
|
|
58
58
|
Provides-Extra: all
|
|
59
|
-
Requires-Dist: quickpaver[docs,examples,install,lint,tests]; extra == "all"
|
|
59
|
+
Requires-Dist: quickpaver[docs,examples,install,lint,pyvista,tests]; extra == "all"
|
|
60
60
|
Provides-Extra: docs
|
|
61
61
|
Requires-Dist: quickpaver[examples]; extra == "docs"
|
|
62
62
|
Requires-Dist: sphinx<9; extra == "docs"
|
|
@@ -80,16 +80,18 @@ Provides-Extra: examples
|
|
|
80
80
|
Requires-Dist: matplotlib; extra == "examples"
|
|
81
81
|
Requires-Dist: marimo; extra == "examples"
|
|
82
82
|
Requires-Dist: nested_grid_plotter>=2.1.0; extra == "examples"
|
|
83
|
-
|
|
84
|
-
Requires-Dist: scikit-sparse<0.5.0; extra == "scikit-sparse-old"
|
|
83
|
+
Requires-Dist: pyvista[all]; extra == "examples"
|
|
85
84
|
Provides-Extra: lint
|
|
86
85
|
Requires-Dist: pre-commit; extra == "lint"
|
|
87
|
-
Requires-Dist:
|
|
86
|
+
Requires-Dist: pre-commit-hooks; extra == "lint"
|
|
87
|
+
Requires-Dist: codespell; extra == "lint"
|
|
88
88
|
Requires-Dist: ruff; extra == "lint"
|
|
89
89
|
Requires-Dist: ty; extra == "lint"
|
|
90
90
|
Provides-Extra: install
|
|
91
91
|
Requires-Dist: pip; extra == "install"
|
|
92
92
|
Requires-Dist: wheel; extra == "install"
|
|
93
|
+
Provides-Extra: pyvista
|
|
94
|
+
Requires-Dist: pyvista; extra == "pyvista"
|
|
93
95
|
|
|
94
96
|
==========
|
|
95
97
|
quickpaver
|
|
@@ -46,7 +46,7 @@ quickpaver = ["data/*.geojson"]
|
|
|
46
46
|
version = { attr = "quickpaver.__about__.__version__" }
|
|
47
47
|
|
|
48
48
|
[project.optional-dependencies]
|
|
49
|
-
all = ['quickpaver[install, lint, tests, examples, docs]']
|
|
49
|
+
all = ['quickpaver[install, lint, tests, examples, docs, pyvista]']
|
|
50
50
|
docs = [
|
|
51
51
|
"quickpaver[examples]",
|
|
52
52
|
"sphinx<9",
|
|
@@ -68,10 +68,15 @@ tests = [
|
|
|
68
68
|
"pytest-cookies",
|
|
69
69
|
"coverage",
|
|
70
70
|
]
|
|
71
|
-
examples = [
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
examples = [
|
|
72
|
+
"matplotlib",
|
|
73
|
+
"marimo",
|
|
74
|
+
"nested_grid_plotter>=2.1.0",
|
|
75
|
+
"pyvista[all]",
|
|
76
|
+
]
|
|
77
|
+
lint = ["pre-commit", "pre-commit-hooks", "codespell", "ruff", "ty"]
|
|
74
78
|
install = ["pip", "wheel"]
|
|
79
|
+
pyvista = ["pyvista"]
|
|
75
80
|
|
|
76
81
|
[tool.ruff]
|
|
77
82
|
lint.select = [
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
# Copyright (c) 2026 Antoine COLLET
|
|
3
|
+
|
|
4
|
+
"""Tools for polygonal paving, transfer matrices, and rectilinear grids.
|
|
5
|
+
|
|
6
|
+
``quickpaver`` provides utilities to generate polygonal tilings, manipulate
|
|
7
|
+
rectilinear grids, compute transfer matrices between geometries, and load simple
|
|
8
|
+
geographical test contours. The package is designed around cell-based geometry:
|
|
9
|
+
tiles, polygons, and grid cells are represented explicitly and can be combined
|
|
10
|
+
with NumPy arrays, Shapely geometries, and sparse SciPy matrices.
|
|
11
|
+
|
|
12
|
+
The public API is grouped into four main areas:
|
|
13
|
+
|
|
14
|
+
- polygon and tiling generation;
|
|
15
|
+
- transfer-matrix construction;
|
|
16
|
+
- geographical test contours;
|
|
17
|
+
- rectilinear-grid utilities.
|
|
18
|
+
|
|
19
|
+
Polygon helpers
|
|
20
|
+
^^^^^^^^^^^^^^^
|
|
21
|
+
|
|
22
|
+
Utilities for creating base polygons and describing supported tile types.
|
|
23
|
+
|
|
24
|
+
.. autosummary::
|
|
25
|
+
:toctree: _autosummary
|
|
26
|
+
|
|
27
|
+
PolygonType
|
|
28
|
+
gen_polygon
|
|
29
|
+
|
|
30
|
+
Tiling functions
|
|
31
|
+
^^^^^^^^^^^^^^^^
|
|
32
|
+
|
|
33
|
+
Functions to generate polygonal tilings over a target surface. Supported tile
|
|
34
|
+
families include rectangles, triangles, and hexagons. Tiling generators return
|
|
35
|
+
both the generated polygons and adjacency information between kept tiles.
|
|
36
|
+
|
|
37
|
+
.. autosummary::
|
|
38
|
+
:toctree: _autosummary
|
|
39
|
+
|
|
40
|
+
gen_hexagonal_tiling
|
|
41
|
+
gen_rectangular_tiling
|
|
42
|
+
gen_triangular_tiling
|
|
43
|
+
gen_polygonal_tiling
|
|
44
|
+
extract_tiling_centers
|
|
45
|
+
extract_tiling_vertices
|
|
46
|
+
|
|
47
|
+
Transfer matrices
|
|
48
|
+
^^^^^^^^^^^^^^^^^
|
|
49
|
+
|
|
50
|
+
Utilities to compute sparse transfer matrices between source and target
|
|
51
|
+
geometries.
|
|
52
|
+
|
|
53
|
+
.. autosummary::
|
|
54
|
+
:toctree: _autosummary
|
|
55
|
+
|
|
56
|
+
compute_transfer_matrix
|
|
57
|
+
|
|
58
|
+
Test data
|
|
59
|
+
^^^^^^^^^
|
|
60
|
+
|
|
61
|
+
Convenience functions providing geographical contours useful for examples,
|
|
62
|
+
tests, and demonstrations.
|
|
63
|
+
|
|
64
|
+
.. autosummary::
|
|
65
|
+
:toctree: _autosummary
|
|
66
|
+
|
|
67
|
+
load_france_contour
|
|
68
|
+
load_corsica_contour
|
|
69
|
+
load_france_and_corsica_contour
|
|
70
|
+
|
|
71
|
+
Regular grids
|
|
72
|
+
^^^^^^^^^^^^^
|
|
73
|
+
|
|
74
|
+
Classes and utilities for working with cell-based rectilinear grids. These
|
|
75
|
+
functions cover grid indexing, sparse neighbour operators, polygon selections,
|
|
76
|
+
binary dilation, resampling, and conservative or duplicative array upsampling.
|
|
77
|
+
|
|
78
|
+
.. autosummary::
|
|
79
|
+
:toctree: _autosummary
|
|
80
|
+
|
|
81
|
+
Grid
|
|
82
|
+
RectilinearGrid
|
|
83
|
+
rlg_idx_to_nn
|
|
84
|
+
rlg_nn_to_idx
|
|
85
|
+
span_to_node_numbers_2d
|
|
86
|
+
span_to_node_numbers_3d
|
|
87
|
+
get_array_borders_selection
|
|
88
|
+
get_owner_neigh_indices
|
|
89
|
+
get_rlg_spatial_grad_mat
|
|
90
|
+
make_rlg_spatial_gradient_matrices
|
|
91
|
+
get_rlg_perm_mat
|
|
92
|
+
make_rlg_spatial_permutation_matrices
|
|
93
|
+
create_selections_array_2d
|
|
94
|
+
get_polygon_selection_with_dilation_2d
|
|
95
|
+
get_polygon_selection_with_dilation_3d
|
|
96
|
+
binary_dilation
|
|
97
|
+
resample_grid
|
|
98
|
+
duplicative_upsample
|
|
99
|
+
conservative_upsample
|
|
100
|
+
|
|
101
|
+
"""
|
|
102
|
+
|
|
103
|
+
from quickpaver.__about__ import __author__, __email__, __version__
|
|
104
|
+
from quickpaver._grid import (
|
|
105
|
+
Grid,
|
|
106
|
+
RectilinearGrid,
|
|
107
|
+
binary_dilation,
|
|
108
|
+
conservative_upsample,
|
|
109
|
+
create_selections_array_2d,
|
|
110
|
+
duplicative_upsample,
|
|
111
|
+
get_array_borders_selection,
|
|
112
|
+
get_owner_neigh_indices,
|
|
113
|
+
get_polygon_selection_with_dilation_2d,
|
|
114
|
+
get_polygon_selection_with_dilation_3d,
|
|
115
|
+
get_rlg_perm_mat,
|
|
116
|
+
get_rlg_spatial_grad_mat,
|
|
117
|
+
make_rlg_spatial_gradient_matrices,
|
|
118
|
+
make_rlg_spatial_permutation_matrices,
|
|
119
|
+
resample_grid,
|
|
120
|
+
rlg_idx_to_nn,
|
|
121
|
+
rlg_nn_to_idx,
|
|
122
|
+
span_to_node_numbers_2d,
|
|
123
|
+
span_to_node_numbers_3d,
|
|
124
|
+
)
|
|
125
|
+
from quickpaver._tiling import (
|
|
126
|
+
PolygonType,
|
|
127
|
+
extract_tiling_centers,
|
|
128
|
+
extract_tiling_vertices,
|
|
129
|
+
gen_hexagonal_tiling,
|
|
130
|
+
gen_polygon,
|
|
131
|
+
gen_polygonal_tiling,
|
|
132
|
+
gen_rectangular_tiling,
|
|
133
|
+
gen_triangular_tiling,
|
|
134
|
+
)
|
|
135
|
+
from quickpaver._transfer_matrix import compute_transfer_matrix
|
|
136
|
+
from quickpaver.data import (
|
|
137
|
+
load_corsica_contour,
|
|
138
|
+
load_france_and_corsica_contour,
|
|
139
|
+
load_france_contour,
|
|
140
|
+
)
|
|
141
|
+
|
|
142
|
+
__all__ = [
|
|
143
|
+
"__author__",
|
|
144
|
+
"__email__",
|
|
145
|
+
"__version__",
|
|
146
|
+
"PolygonType",
|
|
147
|
+
"gen_hexagonal_tiling",
|
|
148
|
+
"gen_polygon",
|
|
149
|
+
"gen_rectangular_tiling",
|
|
150
|
+
"gen_triangular_tiling",
|
|
151
|
+
"gen_polygonal_tiling",
|
|
152
|
+
"Grid",
|
|
153
|
+
"RectilinearGrid",
|
|
154
|
+
"create_selections_array_2d",
|
|
155
|
+
"rlg_idx_to_nn",
|
|
156
|
+
"rlg_nn_to_idx",
|
|
157
|
+
"span_to_node_numbers_2d",
|
|
158
|
+
"span_to_node_numbers_3d",
|
|
159
|
+
"binary_dilation",
|
|
160
|
+
"get_owner_neigh_indices",
|
|
161
|
+
"get_polygon_selection_with_dilation_2d",
|
|
162
|
+
"get_polygon_selection_with_dilation_3d",
|
|
163
|
+
"get_rlg_spatial_grad_mat",
|
|
164
|
+
"make_rlg_spatial_gradient_matrices",
|
|
165
|
+
"get_rlg_perm_mat",
|
|
166
|
+
"make_rlg_spatial_permutation_matrices",
|
|
167
|
+
"resample_grid",
|
|
168
|
+
"duplicative_upsample",
|
|
169
|
+
"conservative_upsample",
|
|
170
|
+
"load_france_contour",
|
|
171
|
+
"load_corsica_contour",
|
|
172
|
+
"load_france_and_corsica_contour",
|
|
173
|
+
"extract_tiling_centers",
|
|
174
|
+
"extract_tiling_vertices",
|
|
175
|
+
"compute_transfer_matrix",
|
|
176
|
+
"get_array_borders_selection",
|
|
177
|
+
]
|