Internal:PODM 3D: Difference between revisions
Jump to navigation
Jump to search
Spyridon97 (talk | contribs) No edit summary |
Spyridon97 (talk | contribs) No edit summary |
||
| Line 26: | Line 26: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
## Podm Result of Cube image with Dimensions 110x110x110 and Sphere image with radius = 55, volume grading on and δ=10 | |||
### Cube: [[File:CubeTestSizingFunction.png|500px|CubeTestSizingFunction]] | |||
### Sphere: [[File:SphereTestSizingFunction.png|500px|SphereTestSizingFunction]] | |||
==Implement Adaptivity== | ==Implement Adaptivity== | ||
# Implement Adaptivity in 3D inside sizingFunction using Christos | # Implement Adaptivity in 3D inside sizingFunction using Christos Code✔ | ||
# Podm Result of Gagic Data image with volume grading on and δ=6, minimum Volume Size = 0.5, limit = 0.1 | |||
## 2D (Triangle): [[File:NT_X_min_0.5_limit_2e-3_interpolated.png|500px|Nt2DAdaptivity]] (Done by Christos) | |||
## 3D (PODM): [[File:NtAdaptivity.png|500px|Nt3DAdaptivity]] (Done with Christos) | |||
# Handle cases with negative weight (rescale them) | |||
# Test Adaptivity with extra images (cases) from Gagik Gavalian | |||
# Create Sizing Function pointer | |||
# Create an animated Meshing Process✔ | # Create an animated Meshing Process✔ | ||
## Produce the meshes for the Meshing Process video and the January report✔ | ## Produce the meshes for the Meshing Process video and the January report✔ | ||
Revision as of 11:51, 28 October 2019
Explore Code
- Read PODM3D paper✔
- Install all PODM3D libraries✔
- Compile PODM3D code✔
- Restructure repository of PODM3D based on Software engineering standards✔
- Execute PODM3D✔
- Read Guaranteed Quality Tetrahedral Delaunay Meshing for Medical Images paper (Sect. 9)
Adaptivity
Implementation of Sizing Function
- Create UML diagrams to understand the code and the Meshing Procedure in general✔
- Create a list of functions that need to be modified to implement the extra Rule ✔
- Modify the created list (Extra Rule sizing Function list) of functions✔
- Create a test sizing function to understand if modifications have been done correctly✔
- The test sizing function is
bool checkSizingFunction(double coordinatesOfTetrahedron**) { double volume = volume(coordinatesOfTetrahedron); double* baryCenter = baryCenter(coordinatesOfTetrahedron) // if x axis <= 55 and volume of tetrahedron > 10 if (baryCenter[0] <= 55 && volume > 10) return true; else return false }
- Podm Result of Cube image with Dimensions 110x110x110 and Sphere image with radius = 55, volume grading on and δ=10
- The test sizing function is
Implement Adaptivity
- Implement Adaptivity in 3D inside sizingFunction using Christos Code✔
- Podm Result of Gagic Data image with volume grading on and δ=6, minimum Volume Size = 0.5, limit = 0.1
- Handle cases with negative weight (rescale them)
- Test Adaptivity with extra images (cases) from Gagik Gavalian
- Create Sizing Function pointer
- Create an animated Meshing Process✔
- Produce the meshes for the Meshing Process video and the January report✔
- Animated Process:




✔ - The 3rd Image is a gif, which is visible here: https://crtc.cs.odu.edu/images/8/89/AdaptiveMeshing.gif
- Identify places in the code where δ varies with regards to background values
- Test if multiple δ work using synthetically generated image data