Commit bb71959
Add performant triangulation for napari shapes (#36)
* fix annotation warnings
* add code for finding edge intersection
* initial implementation for convex polygons
* move part of conde to c++
* avoid name collision
* fix bug in code
* rewrtte finding intersection to c++
* rewrite is_convex
* rewrite triangle convex polygon
* simplify code
* clang-format
* split functions and define helper functions
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* start implementing sweeping line triangulation
* implementation part 2
* reformat file
* describe steeps
* improve code structure
* fix type annotation
* add triangulate to install targets
* fix configuration and fix code
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix warning in code
* next style fixes
* refactor code for better readability
* clarify code
* Fix finding intersections
* udpate docstrings
* add comparator for left to righe edges order, start fixing finding intersections
* comment out debug build
* move between computers
* fixing intersection part 2
* use simple workaround for intersection edge case
* fix addin intersection points to polygon
* add monotone polygon triangulation
* polygon split initial
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* initial implementation of sweeping line triangulation
* fix orientation of triangles
* use c++ code for triangulation
* more verbose test run
* fix checking of point dupplication
* Fix basic bugs
* first test for triangulation
* add basic test and fix left-right detection
* add intersection points
* fix point repetition bugs
* add problematic test
* fix macos specific bug
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix intersection for colinear points
* try fix linux compilation fail
* add next test
* single place to define coordinate type
* cleanup code
* fix IDE warnings
* fix another bug
* add missed import
* fix remaining bug
* cleanup code
* more clanup
* add initial implementation of triangulating edge
* initialimplementation of edge triangulation
* add test and fix triangles
* add triangulation of edges
* addres part of remarks from code review
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* use memory view for triangulation call
* use memory view for speedup
* improve code based on review
* more fixes
* use shared pointer and weak pointer to manage memory
* fix exception message
* do not use raw pointer
* split function get_left_right_edges on two
* fix empty edge case
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>1 parent cab7b02 commit bb71959
9 files changed
Lines changed: 3065 additions & 3 deletions
File tree
- src
- PartSegCore_compiled_backend
- triangulation
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
5 | 8 | | |
6 | 9 | | |
7 | 10 | | |
| |||
103 | 106 | | |
104 | 107 | | |
105 | 108 | | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
106 | 121 | | |
107 | 122 | | |
108 | 123 | | |
| |||
113 | 128 | | |
114 | 129 | | |
115 | 130 | | |
| 131 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
| |||
139 | 140 | | |
140 | 141 | | |
141 | 142 | | |
142 | | - | |
| 143 | + | |
| 144 | + | |
143 | 145 | | |
144 | 146 | | |
145 | 147 | | |
| |||
0 commit comments