-
-
Notifications
You must be signed in to change notification settings - Fork 822
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[fuseCut] improve delaunayGraphCut #832
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dsmtE
force-pushed
the
dev/ImproveDelaunayGraphCut
branch
2 times, most recently
from
July 7, 2020 15:46
d13085f
to
4f42a60
Compare
fabiencastan
reviewed
Jul 7, 2020
dsmtE
force-pushed
the
dev/ImproveDelaunayGraphCut
branch
5 times, most recently
from
July 13, 2020 16:28
e4a358c
to
e6dd5f7
Compare
dsmtE
force-pushed
the
dev/ImproveDelaunayGraphCut
branch
from
July 16, 2020 13:41
e6dd5f7
to
a599e5e
Compare
fabiencastan
force-pushed
the
dev/ImproveDelaunayGraphCut
branch
from
July 17, 2020 13:57
da8dc2b
to
e306d5e
Compare
refactoring nearestNeighCellToTheCamOnTheRay and farestNeighCellToTheCamOnTheRay functions into a common function with a boolean parameter.
- remove unnecessary double assignment : f1.cellIndex = GEO::NO_CELL; f1.localVertexIndex = GEO::NO_VERTEX; - move 'p = outIntersectPt' assigment in a higher level in loop with 'p = lpi;' each time the functions nearestNeighbourCellToTheCamOnTheRay and farestNeighbourCellToTheCamOnTheRay are used
…nTheRay function (CRITIC) Remove the unnecessary neighborCellToTheCamOnTheRay function by using rayCellIntersection directly in loops and use mirrorFacet when it' s necessary to ensure loop recursion and get the next cell.
po -> orignPt lip -> intersectPt
Remove and rename unnecessary getFacetInFrontVertexOnTheRayToThePoint3d function using directly getFacetInFrontVertexOnTheRayToTheCam function.
about getFacetInFrontVertexOnTheRayToTheCam and getFacetBehindVertexOnTheRayToTheCam which use the same code except one boolean.
dsmtE
force-pushed
the
dev/ImproveDelaunayGraphCut
branch
from
July 21, 2020 09:46
e306d5e
to
5f85d2e
Compare
dsmtE
force-pushed
the
dev/ImproveDelaunayGraphCut
branch
from
July 28, 2020 15:45
5f85d2e
to
7aa5b7b
Compare
Delete the unnecessary pold variable and move the dist variable.
Add a new function getNeighboringCellsByVertexIndex used to loop over neighboring cells in a more meaningful way than using a loop 'for(int k = 0; true; ++k)'.
Use directly isLineInTriangle in getFacetFromVertexOnTheRayToTheCam instead of rayCellIntersection because we come directly from a vertex and only the opposite facet of an adjacent cell can be intersected. Stop the collision tests as soon as an intersection with a facet is found. The configuration with convex geometry of the adjacent cells(tetrahedrons) to a vertex means that only two intersections can be found with a ray crossing this vertex. When the intersection verifying the distance condition is found, it can be returned without iterating on the other cells.
Use directly isLineInTriangle in getFirstFacetOnTheRayFromCamToThePoint instead of rayCellIntersection .
Consider the previously intersected facet in rayCellIntersection instead of CellIndex in order to avoid later testing the collision with the previously intersected facet. (performance improvement)
- Rewrite createRandomArrayOfIntegers using stl. - Expose seed in meshing params using MultiViewParams.
variable allPoints always true
…rahedralization vote
readImageMetadata throw an error if the path does not exist.
dsmtE
force-pushed
the
dev/ImproveDelaunayGraphCut
branch
from
July 28, 2020 16:42
7aa5b7b
to
d970a82
Compare
The function "estimateDimensions" is no more called, and it was indirectly adding a small margin.
fabiencastan
approved these changes
Jul 29, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Code rewriting and cleaning.
Improvement intersection by using directly the rayCellIntersection function in few loops to avoid unnecessary computations.
Features list