Difference between revisions of "Modules:IA FEMesh-Documentation-3.6"
(14 intermediate revisions by 4 users not shown) | |||
Line 8: | Line 8: | ||
{| | {| | ||
− | |[[Image: | + | |[[Image:IAFEmeshSlicer3Wizard.png|thumb|280px|User Interface]] |
|[[Image:IAMeshResult1.png|thumb|280px|Phalanx Bone Mesh]] | |[[Image:IAMeshResult1.png|thumb|280px|Phalanx Bone Mesh]] | ||
− | |[[Image: | + | |[[Image:IAFEMESHWithSpine.png|thumb|280px|User Interface with spine surface loaded]] |
|} | |} | ||
Line 56: | Line 56: | ||
Links to tutorials explaining how to use this module: | Links to tutorials explaining how to use this module: | ||
− | * [http://www.na-mic.org/Wiki/index.php/Iowa_Meshing_Tutorial Meshing Tutorial] | + | |
− | ** [http://www.na-mic.org/Wiki/images/5/5a/MeshTutorialExampleData.zip Tutorial Data Set] | + | '''2010''' |
+ | |||
+ | *[http://wiki.na-mic.org/Wiki/index.php/Slicer3:IAFEMesh_TutorialContestSummer2010 2010 Tutorial page containing slides, datasets, and screencasts] | ||
+ | |||
+ | |||
+ | '''2009''' | ||
+ | |||
+ | * [http://www.na-mic.org/Wiki/index.php/Iowa_Meshing_Tutorial 2009 Meshing Tutorial] | ||
+ | ** [http://www.na-mic.org/Wiki/images/5/5a/MeshTutorialExampleData.zip 2009 Tutorial Data Set] | ||
* [https://mri.radiology.uiowa.edu/downloads/IA-FEMesh_Manual_version1.pdf Users Guide] | * [https://mri.radiology.uiowa.edu/downloads/IA-FEMesh_Manual_version1.pdf Users Guide] | ||
+ | |||
+ | '''User Contributions''' | ||
+ | |||
+ | [http://school.mech.uwa.edu.au/ISML/index.php/Tutorial Tutorials] from [http://school.mech.uwa.edu.au/ISML/index.php/Main_Page University of Western Australia's Intelligent Systems for Medicine Laboratory] | ||
===Quick Tour of Features and Use=== | ===Quick Tour of Features and Use=== | ||
Line 102: | Line 114: | ||
** '''Export ABAQUS File''' | ** '''Export ABAQUS File''' | ||
** '''Save''' | ** '''Save''' | ||
− | |[[Image:MeshingTabs.png|thumb| | + | |[[Image:MeshingTabs.png|thumb|200px|IA-FEMesh Tabbed Wizard Interface]] |
+ | | [[Image:IAFEMeshBlockEdit.png|thumb|200px|Block Editing Interface. From left to right: Edit, Split, Add, Delete, Combine, Mirror, Merge]] | ||
+ | | [[Image:IAFEMeshQualityTab.png|thumb|200px|Mesh Quality Interface. Options include: Volume, Jacobian, Edge Collapse, Skew, Angle Out of Bounds]] | ||
|} | |} | ||
Line 141: | Line 155: | ||
===Known bugs=== | ===Known bugs=== | ||
− | + | MRML scene snapshots and restores are not yet supported. Please save your work using the file save dialogs in the user interface. | |
− | |||
− | |||
− | |||
===Usability issues=== | ===Usability issues=== | ||
Line 165: | Line 176: | ||
Doxygen documentation: | Doxygen documentation: | ||
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxAbaqusFileWriter.html vtkMimxAbaqusFileWriter] | + | *'''Common''' |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkAbstractIterator.html vtkAbstractIterator] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxAbaqusFileWriter.html vtkMimxAbaqusFileWriter] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkAbstractList.html vtkAbstractList] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkAbstractIterator.html vtkAbstractIterator] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkContainer.html vtkContainer] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkAbstractList.html vtkAbstractList] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkFESurfaceList.html vtkFESurfaceList] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkContainer.html vtkContainer] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkFiniteElementBuildingBlockList.html vtkFiniteElementBuildingBlockList] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkFESurfaceList.html vtkFESurfaceList] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkFiniteElementMeshList.html vtkFiniteElementMeshList] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkFiniteElementBuildingBlockList.html vtkFiniteElementBuildingBlockList] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedList.html vtkLinkedList] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkFiniteElementMeshList.html vtkFiniteElementMeshList] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedListIterator.html vtkLinkedListIterator] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedList.html vtkLinkedList] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedListWrapper.html vtkLinkedListWrapper] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedListIterator.html vtkLinkedListIterator] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedListWrapperTree.html vtkLinkedListWrapperTree] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedListWrapper.html vtkLinkedListWrapper] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLocalAxesActor.html vtkLocalAxesActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLinkedListWrapperTree.html vtkLinkedListWrapperTree] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLocalLinkedListWrapper.html vtkLocalLinkedListWrapper] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLocalAxesActor.html vtkLocalAxesActor] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMeshQualityClass.html vtkMeshQualityClass] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkLocalLinkedListWrapper.html vtkLocalLinkedListWrapper] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxActorBase.html vtkMimxActorBase] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMeshQualityClass.html vtkMeshQualityClass] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxApplyNodeElementNumbers.html vtkMimxApplyNodeElementNumbers] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxActorBase.html vtkMimxActorBase] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundaryConditionActor.html vtkMimxBoundaryConditionActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxApplyNodeElementNumbers.html vtkMimxApplyNodeElementNumbers] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundingBoxSource.html vtkMimxBoundingBoxSource] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundaryConditionActor.html vtkMimxBoundaryConditionActor] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxColorCodeMeshSeedActor.html vtkMimxColorCodeMeshSeedActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundingBoxSource.html vtkMimxBoundingBoxSource] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxCurve.html vtkMimxCurve] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxColorCodeMeshSeedActor.html vtkMimxColorCodeMeshSeedActor] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxEntryValueChangedCallback.html vtkMimxEntryValueChangedCallback] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxCurve.html vtkMimxCurve] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxErrorCallback.html vtkMimxErrorCallback] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxEntryValueChangedCallback.html vtkMimxEntryValueChangedCallback] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxImageActor.html vtkMimxImageActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxErrorCallback.html vtkMimxErrorCallback] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxInteractorStyleUser.html vtkMimxInteractorStyleUser] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxImageActor.html vtkMimxImageActor] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMergeNodesPointAndCellData.html vtkMimxMergeNodesPointAndCellData] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxInteractorStyleUser.html vtkMimxInteractorStyleUser] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMeshActor.html vtkMimxMeshActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMergeNodesPointAndCellData.html vtkMimxMergeNodesPointAndCellData] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMeshSeed.html vtkMimxMeshSeed] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMeshActor.html vtkMimxMeshActor] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPlanarStructuredGridSource.html vtkMimxPlanarStructuredGridSource] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMeshSeed.html vtkMimxMeshSeed] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSolidStructuredGridSource.html vtkMimxSolidStructuredGridSource] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPlanarStructuredGridSource.html vtkMimxPlanarStructuredGridSource] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSTLSource.html vtkMimxSTLSource] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSolidStructuredGridSource.html vtkMimxSolidStructuredGridSource] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSurfacePolyDataActor.html vtkMimxSurfacePolyDataActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSTLSource.html vtkMimxSTLSource] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxTestErrorCallback.html vtkMimxTestErrorCallback] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSurfacePolyDataActor.html vtkMimxSurfacePolyDataActor] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUGrid.html vtkMimxUGrid] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxTestErrorCallback.html vtkMimxTestErrorCallback] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUnstructuredGridActor.html vtkMimxUnstructuredGridActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUGrid.html vtkMimxUGrid] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFESurfaceNode.html vtkMRMLFESurfaceNode] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUnstructuredGridActor.html vtkMimxUnstructuredGridActor] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementBuildingBlockDisplayNode.html vtkMRMLFiniteElementBuildingBlockDisplayNode] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFESurfaceNode.html vtkMRMLFESurfaceNode] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementBuildingBlockNode.html vtkMRMLFiniteElementBuildingBlockNode] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementBuildingBlockDisplayNode.html vtkMRMLFiniteElementBuildingBlockDisplayNode] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementMeshDisplayNode.html vtkMRMLFiniteElementMeshDisplayNode] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementBuildingBlockNode.html vtkMRMLFiniteElementBuildingBlockNode] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementMeshNode.html vtkMRMLFiniteElementMeshNode] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementMeshDisplayNode.html vtkMRMLFiniteElementMeshDisplayNode] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLNullDisplayNode.html vtkMRMLNullDisplayNode] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLFiniteElementMeshNode.html vtkMRMLFiniteElementMeshNode] |
− | *[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkPVAxesActor.html vtkPVAxesActor] | + | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMRMLNullDisplayNode.html vtkMRMLNullDisplayNode] |
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkPVAxesActor.html vtkPVAxesActor] | ||
+ | |||
+ | *'''Filter''' | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkFaceHedgeHog.html vtkFaceHedgeHog] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMeshQualityExtended.html vtkMeshQualityExtended] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxAddUnstructuredHexahedronGridCell.html vtkMimxAddUnstructuredHexahedronGridCell] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxApplyImageBasedMaterialProperties.html vtkMimxApplyImageBasedMaterialProperties] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxAttachBoundingBoxMesh.html vtkMimxAttachBoundingBoxMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundingBoxFromBounds.html vtkMimxBoundingBoxFromBounds] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundingBoxFromUnstructuredGrid.html vtkMimxBoundingBoxFromUnstructuredGrid] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundingBoxSurfaceMesh.html vtkMimxBoundingBoxSurfaceMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundingBoxToStructuredGrids.html vtkMimxBoundingBoxToStructuredGrids] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxClipImageFromBox.html vtkMimxClipImageFromBox] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxComputeNormalsFromPolydataFilter.html vtkMimxComputeNormalsFromPolydataFilter] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxConstrainedSmoothPolyDataFilter.html vtkMimxConstrainedSmoothPolyDataFilter] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxCylindricalMesh.html vtkMimxCylindricalMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxDeleteUnstructuredHexahedronGridCell.html vtkMimxDeleteUnstructuredHexahedronGridCell] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxEdgeToPlanarStructuredGrid.html vtkMimxEdgeToPlanarStructuredGrid] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxEdgeToStructuredGrid.html vtkMimxEdgeToStructuredGrid] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxEditUnstructuredHexahedronGrid.html vtkMimxEditUnstructuredHexahedronGrid] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxEquivalancePoints.html vtkMimxEquivalancePoints] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractElementNumbersOfaFaceFilter.html vtkMimxExtractElementNumbersOfaFaceFilter] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractStructuredGridEdge.html vtkMimxExtractStructuredGridEdge] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractStructuredGridFace.html vtkMimxExtractStructuredGridFace] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractSurface.html vtkMimxExtractSurface] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtrudePolyData.html vtkMimxExtrudePolyData] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxFilterWin32Header.html vtkMimxFilterWin32Header] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxFourPointsToStructuredPlanarMesh.html vtkMimxFourPointsToStructuredPlanarMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxGenerateHexahedronMesh.html vtkMimxGenerateHexahedronMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxGeometryFilter.html vtkMimxGeometryFilter] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMapOriginalCellAndPointIds.html vtkMimxMapOriginalCellAndPointIds] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMergePoints.html vtkMimxMergePoints] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMeshSeed.html vtkMimxMeshSeed] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMirrorUnstructuredHexahedronGridCell.html vtkMimxMirrorUnstructuredHexahedronGridCell] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxMorphStructuredGrid.html vtkMimxMorphStructuredGrid] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPatchSurfaceMesh.html vtkMimxPatchSurfaceMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPlanarEllipticalInterpolation.html vtkMimxPlanarEllipticalInterpolation] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPlanarTransfiniteInterpolation.html vtkMimxPlanarTransfiniteInterpolation] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPlanarTrilinearInterpolation.html vtkMimxPlanarTrilinearInterpolation] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPolyDataSingleSourceShortestPath.html vtkMimxPolyDataSingleSourceShortestPath] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxRebinMaterialProperty.html vtkMimxRebinMaterialProperty] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxRecalculateInteriorNodes.html vtkMimxRecalculateInteriorNodes] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxRecalculateInteriorNodesTPS.html vtkMimxRecalculateInteriorNodesTPS] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSelectSurface.html vtkMimxSelectSurface] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSetStructuredGridEdge.html vtkMimxSetStructuredGridEdge] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSetStructuredGridFace.html vtkMimxSetStructuredGridFace] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSmoothUnstructuredGridFilter.html vtkMimxSmoothUnstructuredGridFilter] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSolidEllipticalInterpolation.html vtkMimxSolidEllipticalInterpolation] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSolidTransfiniteInterpolation.html vtkMimxSolidTransfiniteInterpolation] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSolidTrilinearInterpolation.html vtkMimxSolidTrilinearInterpolation] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSplitUnstructuredHexahedronGridCell.html vtkMimxSplitUnstructuredHexahedronGridCell] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxStructuredPlanarToStructuredSolidGrid.html vtkMimxStructuredPlanarToStructuredSolidGrid] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSubdivideBoundingBox.html vtkMimxSubdivideBoundingBox] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSubdivideCurve.html vtkMimxSubdivideCurve] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUnstructuredGridFromBoundingBox.html vtkMimxUnstructuredGridFromBoundingBox] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUnstructuredGridFromFourPoints.html vtkMimxUnstructuredGridFromFourPoints] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUnstructuredToStructuredGrid.html vtkMimxUnstructuredToStructuredGrid] | ||
+ | |||
+ | *'''IO''' | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classitk_1_1itkMimxAbaqusMeshFileWriter.html itkMimxAbaqusMeshFileWriter] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classitk_1_1ReadHistogramBinValuesFilter.html itkMimxReadHistogramBinValuesFilter] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxAbaqusFileWriter.html vtkMimxAbaqusFileWriter] | ||
+ | |||
+ | '''Adapter''' | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classitk_1_1ItkMeshToFEMMesh.html ItkMeshToFEMMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classitkMeshTovtkPolyData.html itkMeshTovtkPolyData] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classitkMeshTovtkUnstructuredGrid.html itkMeshTovtkUnstructuredGrid] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkPolyDataToitkMesh.html vtkPolyDataToitkMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkUnstructuredGridToitkMesh.html vtkUnstructuredGridToitkMesh] | ||
+ | |||
+ | *'''Widgets''' | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBoundingBoxWidget.html vtkMimxBoundingBoxWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxBWidgetPlusIPWidget.html vtkMimxBWidgetPlusIPWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxCreateBuildingBlockFromPickWidget.html vtkMimxCreateBuildingBlockFromPickWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxCreateElementSetWidgetFEMesh.html vtkMimxCreateElementSetWidgetFEMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractCellWidget.html vtkMimxExtractCellWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractEdgeWidget.html vtkMimxExtractEdgeWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractFaceWidget.html vtkMimxExtractFaceWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxExtractMultipleFaceWidget.html vtkMimxExtractMultipleFaceWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxModPointWidget.html vtkMimxModPointWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPlaceLocalAxesWidget.html vtkMimxPlaceLocalAxesWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxPolyDataWidget.html vtkMimxPolyDataWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSelectCellsWidgetFEMesh.html vtkMimxSelectCellsWidgetFEMesh] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSelectCellsWidget.html vtkMimxSelectCellsWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxSelectPointsWidget.html vtkMimxSelectPointsWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxTraceContourWidget.html vtkMimxTraceContourWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUnstructuredGridExtractWidget.html vtkMimxUnstructuredGridExtractWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxUnstructuredGridWidget.html vtkMimxUnstructuredGridWidget] | ||
+ | **[http://www.na-mic.org/Slicer/Documentation/Slicer3-doc/html/classvtkMimxViewMergePointsWidget.html vtkMimxViewMergePointsWidget] | ||
== More Information == | == More Information == |
Latest revision as of 14:12, 1 December 2011
Home < Modules:IA FEMesh-Documentation-3.6Return to Slicer 3.6 Documentation
IA_FEMesh
IA-FEMesh
General Information
Module Type & Category
Type: Interactive
Category: Wizard
Authors, Collaborators & Contact
- Nicole Grosland: The University of Iowa - Departments of Biomedical Engineering and Orthopaedic Surgery, Center for Computer Aided Design (CCAD), Musculoskeletal Imaging, Modeling, and EXperimentation (MIMX)
- Vincent Magnotta: The University of Iowa - Departments of Radiology, Biomedical Engineering, and Psychiatry, Center for Computer Aided Design (CCAD), Musculoskeletal Imaging, Modeling, and EXperimentation (MIMX)
- Kiran Shivanna: The University of Iowa - Center for Computer Aided Design (CCAD), Musculoskeletal Imaging, Modeling, and EXperimentation (MIMX)
- Austin Ramme: The University of Iowa - Department of Biomedical Engineering, Center for Computer Aided Design (CCAD), Musculoskeletal Imaging, Modeling, and EXperimentation (MIMX)
- Steve Pieper: Isomics
- Curt Lisle: KnowledgeViz
- Contact: Nicole Grosland (grosland@engineering.uiowa.edu) or Vincent Magnotta (vincent-magnotta@uiowa.edu)
Module Description
This module allows the creation and editing of volumetric meshes. Polygonal surfaces in VTK or STL format are imported to begin the process. Then a unique and intuitive bounding surface (called Building Blocks) are created interactively by the user and used to guide automated meshing algorithms. The module includes visualization and analysis reports of the quality of mesh elements. Meshes can be written out in Abaqus or VTK format for later processing.
Usage
Use Cases, Examples
The user interface for IA_FEMesh is organized as a set of tabs, with each tab corresponding to a group of related activities. Often the user will move back and forth between the tabs during the meshing process. The tabs organize related operations yet allow free movement, depending on the users needs. The tabs and associated operations are listed below:
- Surface: This tab allows input and saving of surface files used to define the object which will be meshed.
- Building Block: After a 3D object surface is input, the user interactively creates, modifies, and views a control surface used to guide meshing algorithms. Under this tab, operations for editing, copying, deleting, and splitting building blocks provide the tools for rapid building block creation. The operations can be applied to all or a selected subset of building blocks.
- Mesh Creation:This tab contains the algorithms for projecting points along the building block walls down onto the selected surface mesh. A solid mesh is created using transfinite or elliptical interploation.
- Mesh Quality: After a mesh is created, tools inside this tab allow for interactive viewing, exploration, and mesh improvement algorithms to be run if desired.
- Material Properties: Meshes are composed of multiple surface and/or volume elements. Individual elements or groups of elements are selected and given material properties with the tools inside this tab. Material properties stay with the mesh and are output when the mesh is saved as an external file.
- Boundary Conditions: Multi-step boundary conditions, including external forces, can be defined by the GUI tools defined under this tab. A user can create an Abaqus input file and visually preview if conditions have been specified correctly before beginning an external finite element simulation.
Tutorials
Links to tutorials explaining how to use this module:
2010
2009
User Contributions
Tutorials from University of Western Australia's Intelligent Systems for Medicine Laboratory
Quick Tour of Features and Use
The IA-FEMesh interface uses a wizard workflow. The wizard is implemented using a tabbed notebook with each tab corresponding to the type of data that the user will work with in that step of the meshing process. While there is a logical order where the user will work from left to right in the tabs, a strict linear ordering is not required and the user can freely go back and forth between the tabs. Described below are the tabs and the main features that each provides.
|
Development
Notes from the Developer(s)
Algorithms used, library classes depended upon, use cases, etc.
Dependencies
Tests
On the Dashboard, these tests verify that the module is working on various platforms:
- MimxitkImageToVtkUnstructuredGridTest itkImageToVtkUnstructuredGridTest.cxx
- MimxAddUnstructuredHexahedronGridCellTest MainAddUnstructuredHexahedronGridCellTest.cxx
- MimxDeleteUnstructuredHexahedronGridCellTest MainDeleteUnstructuredHexahedronGridCellTest.cxx
- MimxSplitUnstructuredHexahedronGridCellTest MainSplitUnstructuredHexahedronGridCellTest.cxx
- MimxMirrorUnstructuredHexahedronGridCellTest MainMirrorUnstructuredHexahedronGridCellTest.cxx
- MimxBoundingBoxFromUnstructuredGridTest MainBoundingBoxFromUnstructuredGridTest.cxx
- MimxEquivalancePointsTest MainEquivalancePointsTest.cxx
- MimxExtractSurfaceTest MainExtractSurfaceTest.cxx
- MimxBoundingBoxFromBoundsTest MainBoundingBoxFromBoundsTest.cxx
- MimxExtractStructuredGridEdgeTest MainExtractStructuredGridEdgeTest.cxx
- MimxExtractStructuredGridFaceTest MainExtractStructuredGridFaceTest.cxx
- MimxGeometryFilterTest MainGeometryFilterTest.cxx
- MimxBoundingBoxToStructuredGridsTest MainBoundingBoxToStructuredGridsTest.cxx
- MimxMorphStructuredGridTest MainMorphStructuredGridTest.cxx
- MimxUnstructuredToStructuredGridTest MainUnstructuredToStructuredGridTest.cxx
- MimxMergePointsTest MainMergePointsTest.cxx
- MimxRecalculateInteriorNodesTest MainRecalculateInteriorNodesTest.cxx
Known bugs
MRML scene snapshots and restores are not yet supported. Please save your work using the file save dialogs in the user interface.
Usability issues
Follow this link to the Slicer3 bug tracker. Please select the usability issue category when browsing or contributing.
Source code & documentation
IA-FEMesh Source code. It consists of several subdirectories:
- Adapter - Converts between ITK and VTK data structures
- BuildingBlock - Classes to implement the KWWidgets user interface
- Common - Custom data structures used for the meshing algorithms
- Filter - Filters to convert between custom data structures. Implements the underlying code for mesh generation.
- IA_FEMesh - Loadable module for meshing
- IO - Loading and saving of data
- Mesh - Meshing routines implemented using ITK
- Testing - Testing infrastructure
- Widgets - Custom 3D VTK widgets to support user interaction during mesh generation
Doxygen documentation:
- Common
- vtkMimxAbaqusFileWriter
- vtkAbstractIterator
- vtkAbstractList
- vtkContainer
- vtkFESurfaceList
- vtkFiniteElementBuildingBlockList
- vtkFiniteElementMeshList
- vtkLinkedList
- vtkLinkedListIterator
- vtkLinkedListWrapper
- vtkLinkedListWrapperTree
- vtkLocalAxesActor
- vtkLocalLinkedListWrapper
- vtkMeshQualityClass
- vtkMimxActorBase
- vtkMimxApplyNodeElementNumbers
- vtkMimxBoundaryConditionActor
- vtkMimxBoundingBoxSource
- vtkMimxColorCodeMeshSeedActor
- vtkMimxCurve
- vtkMimxEntryValueChangedCallback
- vtkMimxErrorCallback
- vtkMimxImageActor
- vtkMimxInteractorStyleUser
- vtkMimxMergeNodesPointAndCellData
- vtkMimxMeshActor
- vtkMimxMeshSeed
- vtkMimxPlanarStructuredGridSource
- vtkMimxSolidStructuredGridSource
- vtkMimxSTLSource
- vtkMimxSurfacePolyDataActor
- vtkMimxTestErrorCallback
- vtkMimxUGrid
- vtkMimxUnstructuredGridActor
- vtkMRMLFESurfaceNode
- vtkMRMLFiniteElementBuildingBlockDisplayNode
- vtkMRMLFiniteElementBuildingBlockNode
- vtkMRMLFiniteElementMeshDisplayNode
- vtkMRMLFiniteElementMeshNode
- vtkMRMLNullDisplayNode
- vtkPVAxesActor
- Filter
- vtkFaceHedgeHog
- vtkMeshQualityExtended
- vtkMimxAddUnstructuredHexahedronGridCell
- vtkMimxApplyImageBasedMaterialProperties
- vtkMimxAttachBoundingBoxMesh
- vtkMimxBoundingBoxFromBounds
- vtkMimxBoundingBoxFromUnstructuredGrid
- vtkMimxBoundingBoxSurfaceMesh
- vtkMimxBoundingBoxToStructuredGrids
- vtkMimxClipImageFromBox
- vtkMimxComputeNormalsFromPolydataFilter
- vtkMimxConstrainedSmoothPolyDataFilter
- vtkMimxCylindricalMesh
- vtkMimxDeleteUnstructuredHexahedronGridCell
- vtkMimxEdgeToPlanarStructuredGrid
- vtkMimxEdgeToStructuredGrid
- vtkMimxEditUnstructuredHexahedronGrid
- vtkMimxEquivalancePoints
- vtkMimxExtractElementNumbersOfaFaceFilter
- vtkMimxExtractStructuredGridEdge
- vtkMimxExtractStructuredGridFace
- vtkMimxExtractSurface
- vtkMimxExtrudePolyData
- vtkMimxFilterWin32Header
- vtkMimxFourPointsToStructuredPlanarMesh
- vtkMimxGenerateHexahedronMesh
- vtkMimxGeometryFilter
- vtkMimxMapOriginalCellAndPointIds
- vtkMimxMergePoints
- vtkMimxMeshSeed
- vtkMimxMirrorUnstructuredHexahedronGridCell
- vtkMimxMorphStructuredGrid
- vtkMimxPatchSurfaceMesh
- vtkMimxPlanarEllipticalInterpolation
- vtkMimxPlanarTransfiniteInterpolation
- vtkMimxPlanarTrilinearInterpolation
- vtkMimxPolyDataSingleSourceShortestPath
- vtkMimxRebinMaterialProperty
- vtkMimxRecalculateInteriorNodes
- vtkMimxRecalculateInteriorNodesTPS
- vtkMimxSelectSurface
- vtkMimxSetStructuredGridEdge
- vtkMimxSetStructuredGridFace
- vtkMimxSmoothUnstructuredGridFilter
- vtkMimxSolidEllipticalInterpolation
- vtkMimxSolidTransfiniteInterpolation
- vtkMimxSolidTrilinearInterpolation
- vtkMimxSplitUnstructuredHexahedronGridCell
- vtkMimxStructuredPlanarToStructuredSolidGrid
- vtkMimxSubdivideBoundingBox
- vtkMimxSubdivideCurve
- vtkMimxUnstructuredGridFromBoundingBox
- vtkMimxUnstructuredGridFromFourPoints
- vtkMimxUnstructuredToStructuredGrid
Adapter
- Widgets
- vtkMimxBoundingBoxWidget
- vtkMimxBWidgetPlusIPWidget
- vtkMimxCreateBuildingBlockFromPickWidget
- vtkMimxCreateElementSetWidgetFEMesh
- vtkMimxExtractCellWidget
- vtkMimxExtractEdgeWidget
- vtkMimxExtractFaceWidget
- vtkMimxExtractMultipleFaceWidget
- vtkMimxModPointWidget
- vtkMimxPlaceLocalAxesWidget
- vtkMimxPolyDataWidget
- vtkMimxSelectCellsWidgetFEMesh
- vtkMimxSelectCellsWidget
- vtkMimxSelectPointsWidget
- vtkMimxTraceContourWidget
- vtkMimxUnstructuredGridExtractWidget
- vtkMimxUnstructuredGridWidget
- vtkMimxViewMergePointsWidget
More Information
Acknowledgment
This work is supported in part by NIH/NIBIB awards R01EB005973 and R21EB001501.
References
- Tadepalli SC, Shivanna KH, Magnotta VA, Kallemeyn NA, Grosland NM, Toward the development of virtual surgical tools to aid orthopaedic FE analyses EURASIP Journal on Advances in Signal Processing, 2009, vol. 2010.
- Devries NA, Shivanna KH, Tadepalli SC, Magnotta VA, Grosland NM. Ia-FEMesh: anatomic fe models--a check of mesh accuracy and validity. Iowa Orthop J. 29:48-54, 2009.
- Kallemeyn NA, Tadepalli SC, Shivanna KH, Grosland NM. An interactive multiblock approach to meshing the spine. Comput Methods Programs Biomed. 95(3):227-35, 2009.
- Grosland NM, Shivanna KH, Magnotta VA, Kallemeyn NA, DeVries NA, Tadepalli SC, Lisle C. IA-FEMesh: an open-source, interactive, multiblock approach to anatomic finite element model development. Comput Methods Programs Biomed. 94(1):96-107, 2009.
- Ramme AJ, Devries N, Kallemyn NA, Magnotta VA, Grosland NM. Semi-automated Phalanx Bone Segmentation Using the Expectation Maximization Algorithm. J Digit Imaging. 2008.
- Grosland NM, Bafna R, Magnotta VA. Automated hexahedral meshing of anatomic structures using deformable registration. Comput Methods Biomech Biomed Engin. 12(1):35-43, 2009.
- DeVries NA, Gassman EE, Kallemeyn NA, Shivanna KH, Magnotta VA, Grosland NM. Validation of phalanx bone three-dimensional surface segmentation from computed tomography images using laser scanning. Skeletal Radiol. 37(1):35-42, 2008.
- Gassman EE, Powell SM, Kallemeyn NA, Devries NA, Shivanna KH, Magnotta VA, Ramme AJ, Adams BD, Grosland NM. Automated bony region identification using artificial neural networks: reliability and validation measurements. Skeletal Radiol. 37(4):313-9, 2008.
- Magnotta V, Li W, Grosland N. Comparison of Displacement-Based and Force-Based Mapped Meshing. Workshop on Computational Biomechanics for Medicine at MICCAI 2008. Insight Journal, http://hdl.handle.net/10380/1490 , 2008.
- Shivanna K, Kallemeyn N, Tadepalli S, DeVries N, Magnotta V, Grosland N. Ia-FeMesh: An Interactive All Hexahedral Mesh Generator For Discrete Anatomic Closed Surfaces. Proceedings of the 2008 Summer Bioengineering Conference, 2008.
- Grosland NM, Lisle C, Shivanna KH, Pieper S, Magnotta VA. A Check Of Mesh Quality, American Society Of Biomechanics, August 22-27, 2007.
- Pébay PP, Thompson D, Shepherd J, Knupp P, Lisle C, Magnotta VA, Grosland NM. New Applications of the Verdict Library for Standardized Mesh Verification Pre, Post, and End-to-End Processing, Proceedings of the 16th International Meshing Roundtable, 2007.
- Shivanna KH, Adams BD, Magnotta VA, Grosland NM. Towards Automating Patient-Specific Finite Element Model Development. Proceedings Computational Biomechanics For Medicine, 2006.