-
Notifications
You must be signed in to change notification settings - Fork 33
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
Fixes and optimization to the evaluation of levelset #146
Conversation
c2500d9
to
951c8c3
Compare
1f1fdfe
to
05d452d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
@marcocisternino @edoardolombardi I've updated sign evaluation, it now uses the pseudo-normal. @haysam It seems to me that function convertBarycentricToFlagPolygon was giving incorrect results when a point was on an edge, does the fix 54cc90e seems right to you? The algorithm used to evaluate the pseudo-normal depends on the location of the point within a triangle:
|
👍 New changes passed my tests. |
08508b9
to
5af17ed
Compare
…entric coordinates
…ons that search for cell neighbours
…de before setting it
… segment vertices
…ordinates of a vertex
The algorithm used to evaluate the pseudo-normal depends on the location of the point within a triangle: - if the point coincides with a vertex, the pseudo-normal is evaluated as the unlimited normal of the vertex; - if the point lies on an edge, the pseudo-normal is the average of the normals of the two segments sharing the edge; - if the point is inside the segment, the pseudo-normal is evaluated as the normal of the segment.
5af17ed
to
5bbe463
Compare
These change fixes the selection of surface segments when multiple segments are at the same distance from a cell and introduce some miscellaneous optimizations to the evaluation of the levelset.