PartSegCore-compiled-backend 0.15.10__tar.gz → 0.15.11__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.
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/PKG-INFO +1 -1
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/triangulation/triangulate.hpp +4 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/version.py +2 -2
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/.gitignore +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/.pre-commit-config.yaml +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/CMakeLists.txt +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/LICENSE.txt +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/MANIFEST.in +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/Readme.md +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/Makefile +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/calc_bounds.rst +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/conf.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/fast_unique.rst +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/index.rst +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/make.bat +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/napari_mapping.rst +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/sprawl_utils.rst +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/pyproject.toml +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/__init__.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/_fast_unique.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/_fast_unique.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/_napari_mapping.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/calc_bounds.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/calc_bounds.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/color_image_cython.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/color_image_cython.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/fast_unique.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/multiscale_opening/__init__.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/multiscale_opening/mso.h +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/multiscale_opening/mso_bind.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/multiscale_opening/mso_bind.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/multiscale_opening/my_queue.h +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/napari_mapping.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/__init__.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/distance_utils.pxd +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/euclidean_cython.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/euclidean_cython.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/find_split.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/find_split.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/fuzzy_distance.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/global_consts.h +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/my_queue.h +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/path_sprawl_cython.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/path_sprawl_cython.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/put_borders_in_queue.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/sprawl_utils.pyi +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/sprawl_utils/sprawl_utils.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/triangulate.pyx +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/triangulation/debug_util.hpp +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/triangulation/intersection.hpp +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/triangulation/point.hpp +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/PartSegCore_compiled_backend/utils.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/tests/test_calc_bounds.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/tests/test_coloring.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/tests/test_fast_unique.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/tests/test_napari_mapping.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/tests/test_sprawl_utils/__init__.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/tests/test_sprawl_utils/test_euclidean.py +0 -0
- {partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/src/tests/test_triangulate.py +0 -0
|
@@ -1320,6 +1320,9 @@ struct GraphNode {
|
|
|
1320
1320
|
* resulting sub-polygon contains unique edges. This operation can help to
|
|
1321
1321
|
* resolve ambiguities in complex or self-intersecting polygons.
|
|
1322
1322
|
*
|
|
1323
|
+
* Note: Polygons with exactly 2 points are treated as single line segments and
|
|
1324
|
+
* are not processed for edge deduplication between their first and last points.
|
|
1325
|
+
*
|
|
1323
1326
|
* @param polygon The input polygon represented as a list of edges.
|
|
1324
1327
|
*
|
|
1325
1328
|
* @return A vector of sub-polygons, where each sub-polygon is free of repeated
|
|
@@ -1327,6 +1330,7 @@ struct GraphNode {
|
|
|
1327
1330
|
*/
|
|
1328
1331
|
inline std::vector<std::vector<point::Point>> split_polygon_on_repeated_edges(
|
|
1329
1332
|
const std::vector<point::Point> &polygon) {
|
|
1333
|
+
if (polygon.size() < 3) return {polygon};
|
|
1330
1334
|
auto edges_dedup = calc_dedup_edges({polygon});
|
|
1331
1335
|
std::vector<std::vector<point::Point>> result;
|
|
1332
1336
|
point::Segment segment;
|
|
File without changes
|
|
File without changes
|
{partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/CMakeLists.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/calc_bounds.rst
RENAMED
|
File without changes
|
|
File without changes
|
{partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/fast_unique.rst
RENAMED
|
File without changes
|
{partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/index.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/docs/sprawl_utils.rst
RENAMED
|
File without changes
|
{partsegcore_compiled_backend-0.15.10 → partsegcore_compiled_backend-0.15.11}/pyproject.toml
RENAMED
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|