, public Observer {
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/ShapeWorksStudioApp_8h.html b/6.5/api/Files/ShapeWorksStudioApp_8h.html
index 3279c28b3a..97d5a0b81f 100644
--- a/6.5/api/Files/ShapeWorksStudioApp_8h.html
+++ b/6.5/api/Files/ShapeWorksStudioApp_8h.html
@@ -2711,7 +2711,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/ShapeWorksStudioApp_8h.md b/6.5/api/Files/ShapeWorksStudioApp_8h.md
index 927328f711..f2f7320ecd 100644
--- a/6.5/api/Files/ShapeWorksStudioApp_8h.md
+++ b/6.5/api/Files/ShapeWorksStudioApp_8h.md
@@ -300,4 +300,4 @@ class ShapeWorksStudioApp : public QMainWindow {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/ShapeWorksWorker_8h.html b/6.5/api/Files/ShapeWorksWorker_8h.html
index 1649ad271a..18a7c8cbdb 100644
--- a/6.5/api/Files/ShapeWorksWorker_8h.html
+++ b/6.5/api/Files/ShapeWorksWorker_8h.html
@@ -2490,7 +2490,7 @@ Source code
}
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/ShapeWorksWorker_8h.md b/6.5/api/Files/ShapeWorksWorker_8h.md
index 47a7016f72..3f559262f7 100644
--- a/6.5/api/Files/ShapeWorksWorker_8h.md
+++ b/6.5/api/Files/ShapeWorksWorker_8h.md
@@ -79,4 +79,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Shape_8h.html b/6.5/api/Files/Shape_8h.html
index da6ba84ec0..82690a5fcc 100644
--- a/6.5/api/Files/Shape_8h.html
+++ b/6.5/api/Files/Shape_8h.html
@@ -2640,7 +2640,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Shape_8h.md b/6.5/api/Files/Shape_8h.md
index 30fde0560f..a649adee4b 100644
--- a/6.5/api/Files/Shape_8h.md
+++ b/6.5/api/Files/Shape_8h.md
@@ -226,4 +226,4 @@ class Shape {
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/ShapeworksUtils_8h.html b/6.5/api/Files/ShapeworksUtils_8h.html
index faf93f42f7..abd613d00a 100644
--- a/6.5/api/Files/ShapeworksUtils_8h.html
+++ b/6.5/api/Files/ShapeworksUtils_8h.html
@@ -2485,7 +2485,7 @@ Source code
} // shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/ShapeworksUtils_8h.md b/6.5/api/Files/ShapeworksUtils_8h.md
index 57181a5bb6..86339f9937 100644
--- a/6.5/api/Files/ShapeworksUtils_8h.md
+++ b/6.5/api/Files/ShapeworksUtils_8h.md
@@ -74,4 +74,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Shapeworks_8h.html b/6.5/api/Files/Shapeworks_8h.html
index 1dc01ed23d..9df0e107cf 100644
--- a/6.5/api/Files/Shapeworks_8h.html
+++ b/6.5/api/Files/Shapeworks_8h.html
@@ -2693,7 +2693,7 @@ Source code
} // shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Shapeworks_8h.md b/6.5/api/Files/Shapeworks_8h.md
index fa32906a59..a79add3c5e 100644
--- a/6.5/api/Files/Shapeworks_8h.md
+++ b/6.5/api/Files/Shapeworks_8h.md
@@ -298,4 +298,4 @@ T clamp(T value, T min, T max) {
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SharedCommandData_8h.html b/6.5/api/Files/SharedCommandData_8h.html
index dbc3a4d09d..e006c0df00 100644
--- a/6.5/api/Files/SharedCommandData_8h.html
+++ b/6.5/api/Files/SharedCommandData_8h.html
@@ -2467,7 +2467,7 @@ Source code
} // shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SharedCommandData_8h.md b/6.5/api/Files/SharedCommandData_8h.md
index 81c18c8ddd..44809c0404 100644
--- a/6.5/api/Files/SharedCommandData_8h.md
+++ b/6.5/api/Files/SharedCommandData_8h.md
@@ -56,4 +56,4 @@ struct SharedCommandData
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SliceView_8h.html b/6.5/api/Files/SliceView_8h.html
index f04140dcf2..fd13d8eb5c 100644
--- a/6.5/api/Files/SliceView_8h.html
+++ b/6.5/api/Files/SliceView_8h.html
@@ -2529,7 +2529,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SliceView_8h.md b/6.5/api/Files/SliceView_8h.md
index e7a447dec3..f013428cf7 100644
--- a/6.5/api/Files/SliceView_8h.md
+++ b/6.5/api/Files/SliceView_8h.md
@@ -118,4 +118,4 @@ class SliceView {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SplashScreen_8h.html b/6.5/api/Files/SplashScreen_8h.html
index 764f76905a..1e52d1d11b 100644
--- a/6.5/api/Files/SplashScreen_8h.html
+++ b/6.5/api/Files/SplashScreen_8h.html
@@ -2491,7 +2491,7 @@ Source code
} // end namespace
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SplashScreen_8h.md b/6.5/api/Files/SplashScreen_8h.md
index 70cfc37a0b..805ebe3498 100644
--- a/6.5/api/Files/SplashScreen_8h.md
+++ b/6.5/api/Files/SplashScreen_8h.md
@@ -80,4 +80,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StackWalker_8h.html b/6.5/api/Files/StackWalker_8h.html
index ffd636b52a..7f7fd002e5 100644
--- a/6.5/api/Files/StackWalker_8h.html
+++ b/6.5/api/Files/StackWalker_8h.html
@@ -2617,7 +2617,7 @@ Source code
#endif // win32
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StackWalker_8h.md b/6.5/api/Files/StackWalker_8h.md
index 67685af566..fa6585212d 100644
--- a/6.5/api/Files/StackWalker_8h.md
+++ b/6.5/api/Files/StackWalker_8h.md
@@ -237,4 +237,4 @@ protected:
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StatsGroupLDAJob_8h.html b/6.5/api/Files/StatsGroupLDAJob_8h.html
index 83044ecbf7..44805467fd 100644
--- a/6.5/api/Files/StatsGroupLDAJob_8h.html
+++ b/6.5/api/Files/StatsGroupLDAJob_8h.html
@@ -2469,7 +2469,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StatsGroupLDAJob_8h.md b/6.5/api/Files/StatsGroupLDAJob_8h.md
index 6353bda746..94cd2fa7c4 100644
--- a/6.5/api/Files/StatsGroupLDAJob_8h.md
+++ b/6.5/api/Files/StatsGroupLDAJob_8h.md
@@ -58,4 +58,4 @@ class StatsGroupLDAJob : public Job {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StatusBarWidget_8h.html b/6.5/api/Files/StatusBarWidget_8h.html
index f23006eddb..c0882cd35b 100644
--- a/6.5/api/Files/StatusBarWidget_8h.html
+++ b/6.5/api/Files/StatusBarWidget_8h.html
@@ -2480,7 +2480,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StatusBarWidget_8h.md b/6.5/api/Files/StatusBarWidget_8h.md
index 6907ebc220..9cacbf980d 100644
--- a/6.5/api/Files/StatusBarWidget_8h.md
+++ b/6.5/api/Files/StatusBarWidget_8h.md
@@ -69,4 +69,4 @@ class StatusBarWidget : public QWidget {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StringUtils_8h.html b/6.5/api/Files/StringUtils_8h.html
index 6d71b4b594..680b35e2c9 100644
--- a/6.5/api/Files/StringUtils_8h.html
+++ b/6.5/api/Files/StringUtils_8h.html
@@ -2467,7 +2467,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StringUtils_8h.md b/6.5/api/Files/StringUtils_8h.md
index d33227f3a4..e44d7e94b5 100644
--- a/6.5/api/Files/StringUtils_8h.md
+++ b/6.5/api/Files/StringUtils_8h.md
@@ -56,4 +56,4 @@ class StringUtils {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioEnums_8h.html b/6.5/api/Files/StudioEnums_8h.html
index c49889c29c..303e037adb 100644
--- a/6.5/api/Files/StudioEnums_8h.html
+++ b/6.5/api/Files/StudioEnums_8h.html
@@ -2435,7 +2435,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioEnums_8h.md b/6.5/api/Files/StudioEnums_8h.md
index 6704eca4a2..e03c7a787c 100644
--- a/6.5/api/Files/StudioEnums_8h.md
+++ b/6.5/api/Files/StudioEnums_8h.md
@@ -40,4 +40,4 @@ DisplayMode string_to_display_mode(std::string str);
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioHandleWidget_8h.html b/6.5/api/Files/StudioHandleWidget_8h.html
index 07477c16cd..8214856d5e 100644
--- a/6.5/api/Files/StudioHandleWidget_8h.html
+++ b/6.5/api/Files/StudioHandleWidget_8h.html
@@ -2474,7 +2474,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioHandleWidget_8h.md b/6.5/api/Files/StudioHandleWidget_8h.md
index 5becd4fd64..898928d125 100644
--- a/6.5/api/Files/StudioHandleWidget_8h.md
+++ b/6.5/api/Files/StudioHandleWidget_8h.md
@@ -63,4 +63,4 @@ class StudioHandleWidget : public vtkHandleWidget {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioInteractorStyle_8h.html b/6.5/api/Files/StudioInteractorStyle_8h.html
index c63f40fe1a..cc296468cd 100644
--- a/6.5/api/Files/StudioInteractorStyle_8h.html
+++ b/6.5/api/Files/StudioInteractorStyle_8h.html
@@ -2487,7 +2487,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioInteractorStyle_8h.md b/6.5/api/Files/StudioInteractorStyle_8h.md
index 70e159330c..8d95cfe1dd 100644
--- a/6.5/api/Files/StudioInteractorStyle_8h.md
+++ b/6.5/api/Files/StudioInteractorStyle_8h.md
@@ -76,4 +76,4 @@ class StudioInteractorStyle : public vtkInteractorStyleTrackballCamera {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioLogger_8h.html b/6.5/api/Files/StudioLogger_8h.html
index 0fe5c8d0bc..7ec3e785fd 100644
--- a/6.5/api/Files/StudioLogger_8h.html
+++ b/6.5/api/Files/StudioLogger_8h.html
@@ -2450,7 +2450,7 @@ Source code
};
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioLogger_8h.md b/6.5/api/Files/StudioLogger_8h.md
index 0b28a0d213..1944a2337a 100644
--- a/6.5/api/Files/StudioLogger_8h.md
+++ b/6.5/api/Files/StudioLogger_8h.md
@@ -53,4 +53,4 @@ class StudioLogger : public QObject {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioMesh_8h.html b/6.5/api/Files/StudioMesh_8h.html
index 3e4cef99c3..99ea12bee9 100644
--- a/6.5/api/Files/StudioMesh_8h.html
+++ b/6.5/api/Files/StudioMesh_8h.html
@@ -2563,7 +2563,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioMesh_8h.md b/6.5/api/Files/StudioMesh_8h.md
index fc5c681c31..d491039244 100644
--- a/6.5/api/Files/StudioMesh_8h.md
+++ b/6.5/api/Files/StudioMesh_8h.md
@@ -115,4 +115,4 @@ class StudioMesh {
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioSliceInteractorStyle_8h.html b/6.5/api/Files/StudioSliceInteractorStyle_8h.html
index d482279524..c0f2916cb9 100644
--- a/6.5/api/Files/StudioSliceInteractorStyle_8h.html
+++ b/6.5/api/Files/StudioSliceInteractorStyle_8h.html
@@ -2488,7 +2488,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioSliceInteractorStyle_8h.md b/6.5/api/Files/StudioSliceInteractorStyle_8h.md
index 6ebe25ee62..100655a5af 100644
--- a/6.5/api/Files/StudioSliceInteractorStyle_8h.md
+++ b/6.5/api/Files/StudioSliceInteractorStyle_8h.md
@@ -77,4 +77,4 @@ class StudioSliceInteractorStyle : public vtkInteractorStyleImage {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioUtils_8h.html b/6.5/api/Files/StudioUtils_8h.html
index d8dffba403..6413138104 100644
--- a/6.5/api/Files/StudioUtils_8h.html
+++ b/6.5/api/Files/StudioUtils_8h.html
@@ -2474,7 +2474,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioUtils_8h.md b/6.5/api/Files/StudioUtils_8h.md
index 7110bb4b84..cc499362c5 100644
--- a/6.5/api/Files/StudioUtils_8h.md
+++ b/6.5/api/Files/StudioUtils_8h.md
@@ -63,4 +63,4 @@ class StudioUtils {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioVtkOutputWindow_8h.html b/6.5/api/Files/StudioVtkOutputWindow_8h.html
index 2ebd4f302d..1911d734c2 100644
--- a/6.5/api/Files/StudioVtkOutputWindow_8h.html
+++ b/6.5/api/Files/StudioVtkOutputWindow_8h.html
@@ -2466,7 +2466,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/StudioVtkOutputWindow_8h.md b/6.5/api/Files/StudioVtkOutputWindow_8h.md
index 5f6ada0fee..d268679b45 100644
--- a/6.5/api/Files/StudioVtkOutputWindow_8h.md
+++ b/6.5/api/Files/StudioVtkOutputWindow_8h.md
@@ -55,4 +55,4 @@ class StudioVtkOutputWindow : public QObject, public vtkOutputWindow {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Style_8h.html b/6.5/api/Files/Style_8h.html
index 2926a81f24..2953776a0f 100644
--- a/6.5/api/Files/Style_8h.html
+++ b/6.5/api/Files/Style_8h.html
@@ -2458,7 +2458,7 @@ Source code
}
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Style_8h.md b/6.5/api/Files/Style_8h.md
index 0a073a4f56..ef1650b423 100644
--- a/6.5/api/Files/Style_8h.md
+++ b/6.5/api/Files/Style_8h.md
@@ -47,4 +47,4 @@ public:
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Subject_8h.html b/6.5/api/Files/Subject_8h.html
index ed07b7872b..b6f2d19823 100644
--- a/6.5/api/Files/Subject_8h.html
+++ b/6.5/api/Files/Subject_8h.html
@@ -2530,7 +2530,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Subject_8h.md b/6.5/api/Files/Subject_8h.md
index 485c5ac761..4f4bb53c85 100644
--- a/6.5/api/Files/Subject_8h.md
+++ b/6.5/api/Files/Subject_8h.md
@@ -119,4 +119,4 @@ class Subject {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SurfaceReconstructor_8h.html b/6.5/api/Files/SurfaceReconstructor_8h.html
index 1d315537d3..69c5d82166 100644
--- a/6.5/api/Files/SurfaceReconstructor_8h.html
+++ b/6.5/api/Files/SurfaceReconstructor_8h.html
@@ -2489,7 +2489,7 @@ Source code
};
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/SurfaceReconstructor_8h.md b/6.5/api/Files/SurfaceReconstructor_8h.md
index e8771d226e..796115bbca 100644
--- a/6.5/api/Files/SurfaceReconstructor_8h.md
+++ b/6.5/api/Files/SurfaceReconstructor_8h.md
@@ -88,4 +88,4 @@ class SurfaceReconstructor {
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Telemetry_8h.html b/6.5/api/Files/Telemetry_8h.html
index f8d85ef145..a6c225c714 100644
--- a/6.5/api/Files/Telemetry_8h.html
+++ b/6.5/api/Files/Telemetry_8h.html
@@ -2478,7 +2478,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Telemetry_8h.md b/6.5/api/Files/Telemetry_8h.md
index 429e23a0fe..84c6182bd4 100644
--- a/6.5/api/Files/Telemetry_8h.md
+++ b/6.5/api/Files/Telemetry_8h.md
@@ -67,4 +67,4 @@ class Telemetry : public QObject {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/UpdateChecker_8h.html b/6.5/api/Files/UpdateChecker_8h.html
index 30cd15806f..14487056c6 100644
--- a/6.5/api/Files/UpdateChecker_8h.html
+++ b/6.5/api/Files/UpdateChecker_8h.html
@@ -2483,7 +2483,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/UpdateChecker_8h.md b/6.5/api/Files/UpdateChecker_8h.md
index edcba6aa23..4bc35fbdda 100644
--- a/6.5/api/Files/UpdateChecker_8h.md
+++ b/6.5/api/Files/UpdateChecker_8h.md
@@ -70,4 +70,4 @@ class UpdateChecker : public QDialog {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Utils_8h.html b/6.5/api/Files/Utils_8h.html
index 2febcfd69e..ead3ddeae6 100644
--- a/6.5/api/Files/Utils_8h.html
+++ b/6.5/api/Files/Utils_8h.html
@@ -2683,7 +2683,7 @@ Source code
#endif // UTILS_H
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Utils_8h.md b/6.5/api/Files/Utils_8h.md
index 5aad5bd440..88ab441e4a 100644
--- a/6.5/api/Files/Utils_8h.md
+++ b/6.5/api/Files/Utils_8h.md
@@ -217,4 +217,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Variant_8h.html b/6.5/api/Files/Variant_8h.html
index 2692b1dc54..9b1ef594f8 100644
--- a/6.5/api/Files/Variant_8h.html
+++ b/6.5/api/Files/Variant_8h.html
@@ -2502,7 +2502,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Variant_8h.md b/6.5/api/Files/Variant_8h.md
index 6c8eba2f99..e0fcea4cf2 100644
--- a/6.5/api/Files/Variant_8h.md
+++ b/6.5/api/Files/Variant_8h.md
@@ -91,4 +91,4 @@ class Variant {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/VectorFunction_8h.html b/6.5/api/Files/VectorFunction_8h.html
index b3cf6a1a04..5f1cc5ad3b 100644
--- a/6.5/api/Files/VectorFunction_8h.html
+++ b/6.5/api/Files/VectorFunction_8h.html
@@ -2504,7 +2504,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/VectorFunction_8h.md b/6.5/api/Files/VectorFunction_8h.md
index c3a3afe303..64fb4beb7b 100644
--- a/6.5/api/Files/VectorFunction_8h.md
+++ b/6.5/api/Files/VectorFunction_8h.md
@@ -93,4 +93,4 @@ class VectorFunction : public itk::LightObject {
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/VectorImage_8h.html b/6.5/api/Files/VectorImage_8h.html
index 4c05e80cc7..fb1a959159 100644
--- a/6.5/api/Files/VectorImage_8h.html
+++ b/6.5/api/Files/VectorImage_8h.html
@@ -2470,7 +2470,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/VectorImage_8h.md b/6.5/api/Files/VectorImage_8h.md
index 5f6bbdcecc..7de69a0e99 100644
--- a/6.5/api/Files/VectorImage_8h.md
+++ b/6.5/api/Files/VectorImage_8h.md
@@ -59,4 +59,4 @@ class VectorImage {
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Viewer_8h.html b/6.5/api/Files/Viewer_8h.html
index e2bcd28403..d12dcedf07 100644
--- a/6.5/api/Files/Viewer_8h.html
+++ b/6.5/api/Files/Viewer_8h.html
@@ -2695,7 +2695,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Viewer_8h.md b/6.5/api/Files/Viewer_8h.md
index 553c08b8df..6337940cb2 100644
--- a/6.5/api/Files/Viewer_8h.md
+++ b/6.5/api/Files/Viewer_8h.md
@@ -281,4 +281,4 @@ class Viewer {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Visualizer_8h.html b/6.5/api/Files/Visualizer_8h.html
index cd9b4e78c0..0ee3a42d6b 100644
--- a/6.5/api/Files/Visualizer_8h.html
+++ b/6.5/api/Files/Visualizer_8h.html
@@ -2605,7 +2605,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Visualizer_8h.md b/6.5/api/Files/Visualizer_8h.md
index 93d5443339..612634fc51 100644
--- a/6.5/api/Files/Visualizer_8h.md
+++ b/6.5/api/Files/Visualizer_8h.md
@@ -194,4 +194,4 @@ class Visualizer : public QObject {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/VtkMeshWrapper_8h.html b/6.5/api/Files/VtkMeshWrapper_8h.html
index 596f0208a8..8d908c603b 100644
--- a/6.5/api/Files/VtkMeshWrapper_8h.html
+++ b/6.5/api/Files/VtkMeshWrapper_8h.html
@@ -2626,7 +2626,7 @@ Source code
}
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/VtkMeshWrapper_8h.md b/6.5/api/Files/VtkMeshWrapper_8h.md
index 44c4393d7f..b39efdcbf5 100644
--- a/6.5/api/Files/VtkMeshWrapper_8h.md
+++ b/6.5/api/Files/VtkMeshWrapper_8h.md
@@ -215,4 +215,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/WheelEventForwarder_8h.html b/6.5/api/Files/WheelEventForwarder_8h.html
index d359cfaa58..5a6d2610fb 100644
--- a/6.5/api/Files/WheelEventForwarder_8h.html
+++ b/6.5/api/Files/WheelEventForwarder_8h.html
@@ -2462,7 +2462,7 @@ Source code
}
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/WheelEventForwarder_8h.md b/6.5/api/Files/WheelEventForwarder_8h.md
index 6bce3e5a7b..7a0a019721 100644
--- a/6.5/api/Files/WheelEventForwarder_8h.md
+++ b/6.5/api/Files/WheelEventForwarder_8h.md
@@ -51,4 +51,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/WindowsCrashHandler_8h.html b/6.5/api/Files/WindowsCrashHandler_8h.html
index be58254264..ef36926525 100644
--- a/6.5/api/Files/WindowsCrashHandler_8h.html
+++ b/6.5/api/Files/WindowsCrashHandler_8h.html
@@ -2446,7 +2446,7 @@ Source code
int init_crash_handler();
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/WindowsCrashHandler_8h.md b/6.5/api/Files/WindowsCrashHandler_8h.md
index 42d83aee3e..f6a762175d 100644
--- a/6.5/api/Files/WindowsCrashHandler_8h.md
+++ b/6.5/api/Files/WindowsCrashHandler_8h.md
@@ -34,4 +34,4 @@ int init_crash_handler();
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Worker_8h.html b/6.5/api/Files/Worker_8h.html
index 3a25d11c29..1ad3cda8ba 100644
--- a/6.5/api/Files/Worker_8h.html
+++ b/6.5/api/Files/Worker_8h.html
@@ -2475,7 +2475,7 @@ Source code
} // namespace shapeworks
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/Worker_8h.md b/6.5/api/Files/Worker_8h.md
index a3f5c6cb7d..b03017a78c 100644
--- a/6.5/api/Files/Worker_8h.md
+++ b/6.5/api/Files/Worker_8h.md
@@ -64,4 +64,4 @@ class Worker : public QObject {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.html b/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.html
index 2673d66944..ea70fc00bd 100644
--- a/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.html
+++ b/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.html
@@ -2428,7 +2428,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.md b/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.md
index 7d954a0576..713a33ba19 100644
--- a/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.md
+++ b/6.5/api/Files/dir_0e4564af99249380ef1f30404400c0a3.md
@@ -26,4 +26,4 @@ title: Libs/Optimize/Function
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.html b/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.html
index b15981294c..82fdd1fcf0 100644
--- a/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.html
+++ b/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.html
@@ -2422,7 +2422,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.md b/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.md
index 0172e6a3d8..cca23c0792 100644
--- a/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.md
+++ b/6.5/api/Files/dir_18c9fb63c9ecb061d3bfcf14463b37a6.md
@@ -24,4 +24,4 @@ title: Libs/Optimize/Matrix
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.html b/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.html
index 75dfc58cac..2d50dbb9ef 100644
--- a/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.html
+++ b/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.html
@@ -2416,7 +2416,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.md b/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.md
index 5c4d8293fd..4834c5b86c 100644
--- a/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.md
+++ b/6.5/api/Files/dir_2efd803177123288b92908ec296fe578.md
@@ -22,4 +22,4 @@ title: Studio/Analysis
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.html b/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.html
index 24ceecdc3e..56bb93d2ac 100644
--- a/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.html
+++ b/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.html
@@ -2445,7 +2445,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.md b/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.md
index bf072dc367..4f2d1b630b 100644
--- a/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.md
+++ b/6.5/api/Files/dir_36d0ece48b2c599ca7cdf3fcf70a4111.md
@@ -31,4 +31,4 @@ title: Libs/Mesh
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.html b/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.html
index 3f2d02ec49..5d2b2cdba1 100644
--- a/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.html
+++ b/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.html
@@ -2422,7 +2422,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.md b/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.md
index eb9de52cf8..9c73f107d5 100644
--- a/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.md
+++ b/6.5/api/Files/dir_37dfc33913c47c48c20c22cdbf1559c0.md
@@ -24,4 +24,4 @@ title: Libs/Optimize/Neighborhood
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.html b/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.html
index 3c1a89deed..8c279ab0d9 100644
--- a/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.html
+++ b/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.html
@@ -2422,7 +2422,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.md b/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.md
index 503a859fd4..9ebd1206d5 100644
--- a/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.md
+++ b/6.5/api/Files/dir_3c387d8f52af5a1c9b80596228515621.md
@@ -24,4 +24,4 @@ title: Libs/Alignment/Transforms
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.html b/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.html
index 2f55070724..e7a6e79cde 100644
--- a/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.html
+++ b/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.html
@@ -2458,7 +2458,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.md b/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.md
index 2bfac31be8..bc33a66b44 100644
--- a/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.md
+++ b/6.5/api/Files/dir_409787ee32d93aa6a212981d92e6dc9a.md
@@ -36,4 +36,4 @@ title: Libs/Mesh/PreviewMeshQC
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.html b/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.html
index 025cc3cf12..a9a9112db6 100644
--- a/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.html
+++ b/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.html
@@ -2410,7 +2410,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.md b/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.md
index e8edf3f7d0..66ffe09ad8 100644
--- a/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.md
+++ b/6.5/api/Files/dir_4481568adb70067b4bb4b5ce096891b2.md
@@ -20,4 +20,4 @@ title: Studio/Groom
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.html b/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.html
index 9537f7144a..7ea846eff9 100644
--- a/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.html
+++ b/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.html
@@ -2410,7 +2410,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.md b/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.md
index b71ef93dc3..1717a027fa 100644
--- a/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.md
+++ b/6.5/api/Files/dir_48521012c292b6dfb1bd2f2ae5aacf6c.md
@@ -20,4 +20,4 @@ title: Studio/Python
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.html b/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.html
index d5734d8b8a..945645123f 100644
--- a/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.html
+++ b/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.html
@@ -2419,7 +2419,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.md b/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.md
index 51fee228f3..5a5404e46f 100644
--- a/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.md
+++ b/6.5/api/Files/dir_486a45e6ebc11931a27093b877e14af3.md
@@ -23,4 +23,4 @@ title: Applications/shapeworks
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.html b/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.html
index 9322aa16b3..6c5f845909 100644
--- a/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.html
+++ b/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.html
@@ -2437,7 +2437,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.md b/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.md
index ab93c1b22a..b1f8e09de8 100644
--- a/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.md
+++ b/6.5/api/Files/dir_4ea27a77bf632cd63100af8008b8abf4.md
@@ -29,4 +29,4 @@ title: Libs/Project
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.html b/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.html
index dc5f760e81..4b859a03be 100644
--- a/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.html
+++ b/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.html
@@ -2422,7 +2422,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.md b/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.md
index 2ae4076bc8..8cf8e857a9 100644
--- a/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.md
+++ b/6.5/api/Files/dir_645c19d7da098e01621cdebb663b8767.md
@@ -24,4 +24,4 @@ title: Studio/Utils
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.html b/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.html
index 75432ab47a..010dffbd6a 100644
--- a/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.html
+++ b/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.html
@@ -2413,7 +2413,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.md b/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.md
index e9707e3431..3dde7f942f 100644
--- a/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.md
+++ b/6.5/api/Files/dir_6cd87311705ab44b460cce19838a0cf5.md
@@ -21,4 +21,4 @@ title: Libs/Python
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.html b/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.html
index 6d686e0a73..a6dd2afd8c 100644
--- a/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.html
+++ b/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.html
@@ -2440,7 +2440,7 @@ Directories
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.md b/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.md
index 56aae86055..9934e01a86 100644
--- a/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.md
+++ b/6.5/api/Files/dir_6e6cb9563333489fde7459b1f95e59a5.md
@@ -30,4 +30,4 @@ title: Libs
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.html b/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.html
index eabc8506f2..14a4a192c0 100644
--- a/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.html
+++ b/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.html
@@ -2416,7 +2416,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.md b/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.md
index c5d34cbf73..c42d9838b6 100644
--- a/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.md
+++ b/6.5/api/Files/dir_73a09fceee206218e6d903b3c5deb969.md
@@ -22,4 +22,4 @@ title: Libs/Utils
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.html b/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.html
index d7edfc5ee1..a29da2c03a 100644
--- a/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.html
+++ b/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.html
@@ -2425,7 +2425,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.md b/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.md
index 0ccfd50070..79ba92cf8f 100644
--- a/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.md
+++ b/6.5/api/Files/dir_7d4dd3d8a2b1d1a0e92682acfb57f0f0.md
@@ -25,4 +25,4 @@ title: Studio/Job
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.html b/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.html
index 8ca0ef282a..0ce2e97bdd 100644
--- a/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.html
+++ b/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.html
@@ -2425,7 +2425,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.md b/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.md
index 19be1b35f9..1e2bc85372 100644
--- a/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.md
+++ b/6.5/api/Files/dir_85653c7ab6d0c0e003ea454a8b2baba9.md
@@ -25,4 +25,4 @@ title: Libs/Optimize/Utils
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.html b/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.html
index 883731b767..e2a00a2b68 100644
--- a/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.html
+++ b/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.html
@@ -2416,7 +2416,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.md b/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.md
index 0d15565665..5e022d990f 100644
--- a/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.md
+++ b/6.5/api/Files/dir_8703d550aef9c899d5cf3c4cd311a554.md
@@ -22,4 +22,4 @@ title: Libs/Optimize/Container
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.html b/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.html
index 403158a8c1..38a6b558ae 100644
--- a/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.html
+++ b/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.html
@@ -2410,7 +2410,7 @@ Directories
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.md b/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.md
index 8a7b01bcbc..802aa0e270 100644
--- a/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.md
+++ b/6.5/api/Files/dir_8c1195e4829fa17630c4278c41da729a.md
@@ -20,4 +20,4 @@ title: Applications
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.html b/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.html
index 0ebd3a9be3..8639766d7d 100644
--- a/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.html
+++ b/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.html
@@ -2419,7 +2419,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.md b/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.md
index df9cca690c..fcd5cedb27 100644
--- a/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.md
+++ b/6.5/api/Files/dir_9e4ba78685e6608cfdea07960abd189c.md
@@ -23,4 +23,4 @@ title: Libs/Image
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.html b/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.html
index 0cb440a05a..2301030854 100644
--- a/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.html
+++ b/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.html
@@ -2413,7 +2413,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.md b/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.md
index 373b973b08..45e118df15 100644
--- a/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.md
+++ b/6.5/api/Files/dir_9e99c41d3802fada2a0119d079df0956.md
@@ -21,4 +21,4 @@ title: Studio/Optimize
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.html b/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.html
index 2d9f7b60e5..58becb2019 100644
--- a/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.html
+++ b/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.html
@@ -2410,7 +2410,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.md b/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.md
index 28ce215976..dee33af430 100644
--- a/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.md
+++ b/6.5/api/Files/dir_a4bc8cdb2751c8604311dac5c98fb558.md
@@ -20,4 +20,4 @@ title: Studio/Resources
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.html b/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.html
index 8b74bbfa3d..4e0aea304f 100644
--- a/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.html
+++ b/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.html
@@ -2422,7 +2422,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.md b/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.md
index 4d53908e55..6b4278193b 100644
--- a/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.md
+++ b/6.5/api/Files/dir_aee3ea6bcd7d0f0da850c3e9fd33d5af.md
@@ -24,4 +24,4 @@ title: Libs/Optimize/Constraints
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.html b/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.html
index be683231b0..af385dc51c 100644
--- a/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.html
+++ b/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.html
@@ -2440,7 +2440,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.md b/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.md
index f63346c4b0..cf6175bc88 100644
--- a/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.md
+++ b/6.5/api/Files/dir_b0b944fd4368961b4965dd28c72a00a2.md
@@ -30,4 +30,4 @@ title: Studio/Data
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.html b/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.html
index 330e408dab..0510e70289 100644
--- a/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.html
+++ b/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.html
@@ -2382,7 +2382,7 @@
Documentation/Doxygen
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.md b/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.md
index c06a7f1a1e..582ee22950 100644
--- a/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.md
+++ b/6.5/api/Files/dir_b61e4180fa497c41c4b364a945b36efe.md
@@ -14,4 +14,4 @@ title: Documentation/Doxygen
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.html b/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.html
index a11768d289..727aa32575 100644
--- a/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.html
+++ b/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.html
@@ -2452,7 +2452,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.md b/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.md
index e61e1422c0..76db87e007 100644
--- a/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.md
+++ b/6.5/api/Files/dir_b6c1f9d4f6080dc79a7a9d2c69150815.md
@@ -34,4 +34,4 @@ title: Studio/Visualization
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.html b/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.html
index f826371031..9abc746274 100644
--- a/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.html
+++ b/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.html
@@ -2446,7 +2446,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.md b/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.md
index 0a172c00cc..67b76b564c 100644
--- a/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.md
+++ b/6.5/api/Files/dir_b92c77c85671879e4c48e03051777b7e.md
@@ -32,4 +32,4 @@ title: Libs/Optimize/Domain
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.html b/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.html
index c56593b41f..9e7528f93a 100644
--- a/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.html
+++ b/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.html
@@ -2440,7 +2440,7 @@ Directories
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.md b/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.md
index cfac37dad3..cdffdbe457 100644
--- a/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.md
+++ b/6.5/api/Files/dir_baf8d66207f3fc39faf866e67ca98ce2.md
@@ -30,4 +30,4 @@ title: Studio
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.html b/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.html
index 57676264df..26982ebda7 100644
--- a/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.html
+++ b/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.html
@@ -2422,7 +2422,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.md b/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.md
index f56a922c62..7e0907dd49 100644
--- a/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.md
+++ b/6.5/api/Files/dir_c13ed27a749775eeb2d59234813cae48.md
@@ -24,4 +24,4 @@ title: Libs/Common
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.html b/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.html
index ebac985176..0dc1a753ab 100644
--- a/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.html
+++ b/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.html
@@ -2430,7 +2430,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.md b/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.md
index 954694cdeb..b4d11ed718 100644
--- a/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.md
+++ b/6.5/api/Files/dir_c8a30dba58b805ee2d567ab327483fca.md
@@ -26,4 +26,4 @@ title: Libs/Alignment
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.html b/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.html
index 8eb74c8152..5076f9d4fd 100644
--- a/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.html
+++ b/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.html
@@ -2413,7 +2413,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.md b/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.md
index f139e58364..cef9f97464 100644
--- a/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.md
+++ b/6.5/api/Files/dir_c8ce71b7fc76205395f44c2291e69b75.md
@@ -21,4 +21,4 @@ title: Libs/Groom
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.html b/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.html
index 49a6645447..84b15e3f36 100644
--- a/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.html
+++ b/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.html
@@ -2410,7 +2410,7 @@ Directories
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.md b/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.md
index e23d145b81..145522a53b 100644
--- a/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.md
+++ b/6.5/api/Files/dir_cb8980ab440f994989990a6313097edf.md
@@ -20,4 +20,4 @@ title: Documentation
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.html b/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.html
index 46c4ea725c..bb87c31004 100644
--- a/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.html
+++ b/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.html
@@ -2464,7 +2464,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.md b/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.md
index d7e88a426c..71d62b392a 100644
--- a/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.md
+++ b/6.5/api/Files/dir_d77cc112773b74d11448b7fad9142c8e.md
@@ -38,4 +38,4 @@ title: Libs/Analyze
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.html b/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.html
index ca9992733d..a1155626e0 100644
--- a/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.html
+++ b/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.html
@@ -2416,7 +2416,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.md b/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.md
index e6425e2113..dbaf779c0e 100644
--- a/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.md
+++ b/6.5/api/Files/dir_e938d55d0d25a8e3889ca0b02966a6b3.md
@@ -22,4 +22,4 @@ title: Studio/DeepSSM
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.html b/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.html
index 13aa327cb5..a85a643f54 100644
--- a/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.html
+++ b/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.html
@@ -2475,7 +2475,7 @@ Files
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.md b/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.md
index b23a3d6e9d..a649720726 100644
--- a/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.md
+++ b/6.5/api/Files/dir_f02d5d8e81e1edd3722111e50e18938d.md
@@ -41,4 +41,4 @@ title: Libs/Optimize
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.html b/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.html
index 052ea12537..cfde51eedc 100644
--- a/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.html
+++ b/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.html
@@ -2443,7 +2443,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.md b/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.md
index e77754d699..5d855876f9 100644
--- a/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.md
+++ b/6.5/api/Files/dir_f27aadd9c7f02e71212dbf7893d91496.md
@@ -31,4 +31,4 @@ title: Studio/Interface
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.html b/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.html
index 22db6e28c6..52334e75e1 100644
--- a/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.html
+++ b/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.html
@@ -2428,7 +2428,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.md b/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.md
index dceffa6c66..3429aa83e5 100644
--- a/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.md
+++ b/6.5/api/Files/dir_f6c26397dfcef1d1f5f1786f8168e7dd.md
@@ -26,4 +26,4 @@ title: Libs/Particles
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/index_files.html b/6.5/api/Files/index_files.html
index fd74d7b568..7726e8f630 100644
--- a/6.5/api/Files/index_files.html
+++ b/6.5/api/Files/index_files.html
@@ -2705,7 +2705,7 @@ Files
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/index_files.md b/6.5/api/Files/index_files.md
index f5018689bb..db07b6275b 100644
--- a/6.5/api/Files/index_files.md
+++ b/6.5/api/Files/index_files.md
@@ -250,4 +250,4 @@ title: Files
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkAdvancedTransform_8h.html b/6.5/api/Files/itkAdvancedTransform_8h.html
index 283e6bb834..bfbdee8522 100644
--- a/6.5/api/Files/itkAdvancedTransform_8h.html
+++ b/6.5/api/Files/itkAdvancedTransform_8h.html
@@ -2628,7 +2628,7 @@ Source code
#endif
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkAdvancedTransform_8h.md b/6.5/api/Files/itkAdvancedTransform_8h.md
index 0d61428090..55480dc223 100644
--- a/6.5/api/Files/itkAdvancedTransform_8h.md
+++ b/6.5/api/Files/itkAdvancedTransform_8h.md
@@ -217,4 +217,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.html b/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.html
index 1d2dbc660d..fbbf5bd067 100644
--- a/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.html
+++ b/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.html
@@ -2528,7 +2528,7 @@ Source code
#endif // __itkCompactlySupportedRBFSparseKernelTransform_h
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.md b/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.md
index dcaba85079..768f712bff 100644
--- a/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.md
+++ b/6.5/api/Files/itkCompactlySupportedRBFSparseKernelTransform_8h.md
@@ -117,4 +117,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkKernelTransform2_8h.html b/6.5/api/Files/itkKernelTransform2_8h.html
index 906d700e34..36678a7a25 100644
--- a/6.5/api/Files/itkKernelTransform2_8h.html
+++ b/6.5/api/Files/itkKernelTransform2_8h.html
@@ -2804,7 +2804,7 @@ Source code
#endif // __itkKernelTransform2_h
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkKernelTransform2_8h.md b/6.5/api/Files/itkKernelTransform2_8h.md
index cb88bfe974..3c645905df 100644
--- a/6.5/api/Files/itkKernelTransform2_8h.md
+++ b/6.5/api/Files/itkKernelTransform2_8h.md
@@ -393,4 +393,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.html b/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.html
index e446b698f7..cd17e2eae6 100644
--- a/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.html
+++ b/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.html
@@ -2572,7 +2572,7 @@ Source code
#endif
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.md b/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.md
index 6127c51154..8d0d7ac08c 100644
--- a/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.md
+++ b/6.5/api/Files/itkMultiplyByConstantImageFilter_8h.md
@@ -156,4 +156,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkSparseKernelTransform_8h.html b/6.5/api/Files/itkSparseKernelTransform_8h.html
index 9dcc2b5eb7..7481c8524c 100644
--- a/6.5/api/Files/itkSparseKernelTransform_8h.html
+++ b/6.5/api/Files/itkSparseKernelTransform_8h.html
@@ -2683,7 +2683,7 @@ Source code
#endif // __itkSparseKernelTransform_h
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkSparseKernelTransform_8h.md b/6.5/api/Files/itkSparseKernelTransform_8h.md
index 3d8698baa0..df07035fbc 100644
--- a/6.5/api/Files/itkSparseKernelTransform_8h.md
+++ b/6.5/api/Files/itkSparseKernelTransform_8h.md
@@ -272,4 +272,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.html b/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.html
index 67c2ae5998..70662da777 100644
--- a/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.html
+++ b/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.html
@@ -2880,7 +2880,7 @@ Source code
#endif
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.md b/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.md
index a9c7da6148..a8de43d4ce 100644
--- a/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.md
+++ b/6.5/api/Files/itkTPGACLevelSetImageFilter_8h.md
@@ -438,4 +438,4 @@ TPGACLevelSetImageFilter
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.html b/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.html
index 9ce5db810c..36a9aee002 100644
--- a/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.html
+++ b/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.html
@@ -2545,7 +2545,7 @@ Source code
#endif // __itkThinPlateSplineKernelTransform2_h
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.md b/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.md
index 76d6ba86a4..da66f86600 100644
--- a/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.md
+++ b/6.5/api/Files/itkThinPlateSplineKernelTransform2_8h.md
@@ -134,4 +134,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/math3d_8h.html b/6.5/api/Files/math3d_8h.html
index 3cad73e3dc..56c13fe326 100644
--- a/6.5/api/Files/math3d_8h.html
+++ b/6.5/api/Files/math3d_8h.html
@@ -3091,7 +3091,7 @@ Source code
};
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/math3d_8h.md b/6.5/api/Files/math3d_8h.md
index ff94e41f84..31d52a3e31 100644
--- a/6.5/api/Files/math3d_8h.md
+++ b/6.5/api/Files/math3d_8h.md
@@ -614,4 +614,4 @@ public:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/meshFIM_8h.html b/6.5/api/Files/meshFIM_8h.html
index c608500dd0..aeef51b8c6 100644
--- a/6.5/api/Files/meshFIM_8h.html
+++ b/6.5/api/Files/meshFIM_8h.html
@@ -2740,7 +2740,7 @@ Source code
#endif
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/meshFIM_8h.md b/6.5/api/Files/meshFIM_8h.md
index 6a145274e5..9261ff5d61 100644
--- a/6.5/api/Files/meshFIM_8h.md
+++ b/6.5/api/Files/meshFIM_8h.md
@@ -294,4 +294,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/pybind__utils_8h.html b/6.5/api/Files/pybind__utils_8h.html
index 346be4fb20..0c3b2c4c87 100644
--- a/6.5/api/Files/pybind__utils_8h.html
+++ b/6.5/api/Files/pybind__utils_8h.html
@@ -2685,7 +2685,7 @@ Source code
}
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/pybind__utils_8h.md b/6.5/api/Files/pybind__utils_8h.md
index 80f18db5c8..7ec00779bc 100644
--- a/6.5/api/Files/pybind__utils_8h.md
+++ b/6.5/api/Files/pybind__utils_8h.md
@@ -290,4 +290,4 @@ py::array arrToPy(Array& array, ArrayTransferOptions xfer = COPY_ARRAY) {
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/resource_8h.html b/6.5/api/Files/resource_8h.html
index 33cf144db5..6447776382 100644
--- a/6.5/api/Files/resource_8h.html
+++ b/6.5/api/Files/resource_8h.html
@@ -2461,7 +2461,7 @@ Source code
#endif
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/resource_8h.md b/6.5/api/Files/resource_8h.md
index 559d7b3f9d..977dadca49 100644
--- a/6.5/api/Files/resource_8h.md
+++ b/6.5/api/Files/resource_8h.md
@@ -49,4 +49,4 @@ title: Studio/Resources/resource.h
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/stdafx_8h.html b/6.5/api/Files/stdafx_8h.html
index fe00f4c9d2..d44456576e 100644
--- a/6.5/api/Files/stdafx_8h.html
+++ b/6.5/api/Files/stdafx_8h.html
@@ -2410,7 +2410,7 @@ Source code
// TODO: reference additional headers your program requires here
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/stdafx_8h.md b/6.5/api/Files/stdafx_8h.md
index f049d431f5..8531af755e 100644
--- a/6.5/api/Files/stdafx_8h.md
+++ b/6.5/api/Files/stdafx_8h.md
@@ -29,4 +29,4 @@ title: Libs/Mesh/PreviewMeshQC/stdafx.h
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/vtkPolyDataToImageData_8h.html b/6.5/api/Files/vtkPolyDataToImageData_8h.html
index d70407242a..738689766d 100644
--- a/6.5/api/Files/vtkPolyDataToImageData_8h.html
+++ b/6.5/api/Files/vtkPolyDataToImageData_8h.html
@@ -2509,7 +2509,7 @@ Source code
#endif // ifndef __vtkPolyDataToImageData_h
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Files/vtkPolyDataToImageData_8h.md b/6.5/api/Files/vtkPolyDataToImageData_8h.md
index 2ae933cc61..6e08fbbf97 100644
--- a/6.5/api/Files/vtkPolyDataToImageData_8h.md
+++ b/6.5/api/Files/vtkPolyDataToImageData_8h.md
@@ -112,4 +112,4 @@ private:
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Modules/group__Group-Common.html b/6.5/api/Modules/group__Group-Common.html
index b24380da71..bdeeaad1a5 100644
--- a/6.5/api/Modules/group__Group-Common.html
+++ b/6.5/api/Modules/group__Group-Common.html
@@ -2412,7 +2412,7 @@ Classes
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Modules/group__Group-Common.md b/6.5/api/Modules/group__Group-Common.md
index 95f8b317d8..283c1a7ef9 100644
--- a/6.5/api/Modules/group__Group-Common.md
+++ b/6.5/api/Modules/group__Group-Common.md
@@ -20,4 +20,4 @@ title: Common Classes
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:28 +0000
\ No newline at end of file
diff --git a/6.5/api/Modules/group__Group-Constraint.html b/6.5/api/Modules/group__Group-Constraint.html
index 79f40ead1e..d063d9970f 100644
--- a/6.5/api/Modules/group__Group-Constraint.html
+++ b/6.5/api/Modules/group__Group-Constraint.html
@@ -2382,7 +2382,7 @@
Constraint Classes
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Modules/group__Group-Constraint.md b/6.5/api/Modules/group__Group-Constraint.md
index ff292cc7ae..037a268a39 100644
--- a/6.5/api/Modules/group__Group-Constraint.md
+++ b/6.5/api/Modules/group__Group-Constraint.md
@@ -14,4 +14,4 @@ title: Constraint Classes
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:28 +0000
\ No newline at end of file
diff --git a/6.5/api/Modules/group__Group-Image.html b/6.5/api/Modules/group__Group-Image.html
index c87b8c0eb3..b91121aa65 100644
--- a/6.5/api/Modules/group__Group-Image.html
+++ b/6.5/api/Modules/group__Group-Image.html
@@ -2412,7 +2412,7 @@ Classes
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Modules/group__Group-Image.md b/6.5/api/Modules/group__Group-Image.md
index f49ccff726..7750a4f7da 100644
--- a/6.5/api/Modules/group__Group-Image.md
+++ b/6.5/api/Modules/group__Group-Image.md
@@ -20,4 +20,4 @@ title: Image Classes
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:28 +0000
\ No newline at end of file
diff --git a/6.5/api/Modules/group__Group-Mesh.html b/6.5/api/Modules/group__Group-Mesh.html
index e1207b21a9..d916fc7bd4 100644
--- a/6.5/api/Modules/group__Group-Mesh.html
+++ b/6.5/api/Modules/group__Group-Mesh.html
@@ -2420,7 +2420,7 @@ Classes
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Modules/group__Group-Mesh.md b/6.5/api/Modules/group__Group-Mesh.md
index f546d2bb6b..d107dfa78c 100644
--- a/6.5/api/Modules/group__Group-Mesh.md
+++ b/6.5/api/Modules/group__Group-Mesh.md
@@ -22,4 +22,4 @@ title: Mesh Classes
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:28 +0000
\ No newline at end of file
diff --git a/6.5/api/Modules/index_groups.html b/6.5/api/Modules/index_groups.html
index 8f723ec155..a5f3949f55 100644
--- a/6.5/api/Modules/index_groups.html
+++ b/6.5/api/Modules/index_groups.html
@@ -2400,7 +2400,7 @@ Modules
group Mesh Classes
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Modules/index_groups.md b/6.5/api/Modules/index_groups.md
index d940aa07ab..c831a84696 100644
--- a/6.5/api/Modules/index_groups.md
+++ b/6.5/api/Modules/index_groups.md
@@ -17,4 +17,4 @@ title: Modules
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Namespaces/index_namespaces.html b/6.5/api/Namespaces/index_namespaces.html
index 64a294d3d3..00c2bd75fd 100644
--- a/6.5/api/Namespaces/index_namespaces.html
+++ b/6.5/api/Namespaces/index_namespaces.html
@@ -2414,7 +2414,7 @@ Namespaces
namespace utils
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Namespaces/index_namespaces.md b/6.5/api/Namespaces/index_namespaces.md
index 8f52ee565f..d3c194d689 100644
--- a/6.5/api/Namespaces/index_namespaces.md
+++ b/6.5/api/Namespaces/index_namespaces.md
@@ -25,4 +25,4 @@ title: Namespaces
-------------------------------
-Updated on 2023-10-24 at 22:16:03 +0000
+Updated on 2023-10-25 at 15:40:28 +0000
diff --git a/6.5/api/Namespaces/namespaceUi.html b/6.5/api/Namespaces/namespaceUi.html
index 9e9965f2c1..1ca250328c 100644
--- a/6.5/api/Namespaces/namespaceUi.html
+++ b/6.5/api/Namespaces/namespaceUi.html
@@ -2382,7 +2382,7 @@
Ui
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespaceUi.md b/6.5/api/Namespaces/namespaceUi.md
index 4f07f43017..515e140e48 100644
--- a/6.5/api/Namespaces/namespaceUi.md
+++ b/6.5/api/Namespaces/namespaceUi.md
@@ -14,4 +14,4 @@ title: Ui
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:27 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespacefmt.html b/6.5/api/Namespaces/namespacefmt.html
index 3b103e910b..1c035477f4 100644
--- a/6.5/api/Namespaces/namespacefmt.html
+++ b/6.5/api/Namespaces/namespacefmt.html
@@ -2412,7 +2412,7 @@ Classes
-Updated on 2023-10-24 at 22:16:01 +0000
+Updated on 2023-10-25 at 15:40:26 +0000
diff --git a/6.5/api/Namespaces/namespacefmt.md b/6.5/api/Namespaces/namespacefmt.md
index 708588dd10..9bf9a222e9 100644
--- a/6.5/api/Namespaces/namespacefmt.md
+++ b/6.5/api/Namespaces/namespacefmt.md
@@ -20,4 +20,4 @@ title: fmt
-------------------------------
-Updated on 2023-10-24 at 22:16:01 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:26 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceitk.html b/6.5/api/Namespaces/namespaceitk.html
index 827f54e785..fe05429cbd 100644
--- a/6.5/api/Namespaces/namespaceitk.html
+++ b/6.5/api/Namespaces/namespaceitk.html
@@ -2691,7 +2691,7 @@ variable nbh26Table
};
-Updated on 2023-10-24 at 22:16:01 +0000
+Updated on 2023-10-25 at 15:40:26 +0000
diff --git a/6.5/api/Namespaces/namespaceitk.md b/6.5/api/Namespaces/namespaceitk.md
index 35956cc1a5..07a3c190da 100644
--- a/6.5/api/Namespaces/namespaceitk.md
+++ b/6.5/api/Namespaces/namespaceitk.md
@@ -184,4 +184,4 @@ static int nbh26Table = {
-------------------------------
-Updated on 2023-10-24 at 22:16:01 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:26 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceitk_1_1Functor.html b/6.5/api/Namespaces/namespaceitk_1_1Functor.html
index 9f05475629..4ee4b4f0a2 100644
--- a/6.5/api/Namespaces/namespaceitk_1_1Functor.html
+++ b/6.5/api/Namespaces/namespaceitk_1_1Functor.html
@@ -2412,7 +2412,7 @@ Classes
-Updated on 2023-10-24 at 22:16:01 +0000
+Updated on 2023-10-25 at 15:40:26 +0000
diff --git a/6.5/api/Namespaces/namespaceitk_1_1Functor.md b/6.5/api/Namespaces/namespaceitk_1_1Functor.md
index a346af84ed..971229d780 100644
--- a/6.5/api/Namespaces/namespaceitk_1_1Functor.md
+++ b/6.5/api/Namespaces/namespaceitk_1_1Functor.md
@@ -20,4 +20,4 @@ title: itk::Functor
-------------------------------
-Updated on 2023-10-24 at 22:16:01 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:26 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceshapeworks.html b/6.5/api/Namespaces/namespaceshapeworks.html
index 780ae16ac9..b23f8f47e5 100644
--- a/6.5/api/Namespaces/namespaceshapeworks.html
+++ b/6.5/api/Namespaces/namespaceshapeworks.html
@@ -7114,7 +7114,7 @@ variable Pi
pi that doesn't depend on deprecated or non-std lib defines
-Updated on 2023-10-24 at 22:16:01 +0000
+Updated on 2023-10-25 at 15:40:26 +0000
diff --git a/6.5/api/Namespaces/namespaceshapeworks.md b/6.5/api/Namespaces/namespaceshapeworks.md
index 89daf00e30..edbf1c69bb 100644
--- a/6.5/api/Namespaces/namespaceshapeworks.md
+++ b/6.5/api/Namespaces/namespaceshapeworks.md
@@ -2594,4 +2594,4 @@ pi that doesn't depend on deprecated or non-std lib defines
-------------------------------
-Updated on 2023-10-24 at 22:16:01 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:26 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.html b/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.html
index 89bc65f339..d321155b4f 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.html
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.html
@@ -2444,7 +2444,7 @@ function compute_thickness
Compute the cortical thickness of a mesh and image (e.g. CT)
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.md b/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.md
index 53e8e0fb67..78eae5efe4 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.md
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1mesh.md
@@ -37,4 +37,4 @@ Compute the cortical thickness of a mesh and image (e.g. CT)
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:27 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1particles.html b/6.5/api/Namespaces/namespaceshapeworks_1_1particles.html
index 924e971b59..b28935605f 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1particles.html
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1particles.html
@@ -2488,7 +2488,7 @@ function write_particles_from_vect
)
-
Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1particles.md b/6.5/api/Namespaces/namespaceshapeworks_1_1particles.md
index 7637462267..c3ba6d121e 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1particles.md
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1particles.md
@@ -63,4 +63,4 @@ void write_particles_from_vector(
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:27 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1project.html b/6.5/api/Namespaces/namespaceshapeworks_1_1project.html
index 2a45ffeb95..7c0cf37d66 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1project.html
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1project.html
@@ -2413,7 +2413,7 @@ Namespaces
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1project.md b/6.5/api/Namespaces/namespaceshapeworks_1_1project.md
index 1866f69fe5..931297189a 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1project.md
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1project.md
@@ -21,4 +21,4 @@ title: shapeworks::project
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:27 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.html b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.html
index 63764f2a2c..4a7b57ff4e 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.html
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.html
@@ -2660,7 +2660,7 @@ variable WORLD_PARTICLES_PREFIX
static constexpr const char * WORLD_PARTICLES_PREFIX = "world_particles_";
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.md b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.md
index cd36faace9..47b985313f 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.md
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1prefixes.md
@@ -157,4 +157,4 @@ static constexpr const char * WORLD_PARTICLES_PREFIX = "world_particles_";
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:27 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.html b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.html
index a8fe72317a..282184137e 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.html
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.html
@@ -2478,7 +2478,7 @@ using StringMultiMap
using shapeworks::project::types::StringMultiMap = typedef std::map<std::string, StringMap>;
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.md b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.md
index 8864c238b8..c3bd2ac60a 100644
--- a/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.md
+++ b/6.5/api/Namespaces/namespaceshapeworks_1_1project_1_1types.md
@@ -53,4 +53,4 @@ using shapeworks::project::types::StringMultiMap = typedef std::mapstd
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespacestd.md b/6.5/api/Namespaces/namespacestd.md
index 06dafe50e6..3ee28e287a 100644
--- a/6.5/api/Namespaces/namespacestd.md
+++ b/6.5/api/Namespaces/namespacestd.md
@@ -14,4 +14,4 @@ title: std
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:27 +0000
\ No newline at end of file
diff --git a/6.5/api/Namespaces/namespaceutils.html b/6.5/api/Namespaces/namespaceutils.html
index e9c59ede0a..2b103e911b 100644
--- a/6.5/api/Namespaces/namespaceutils.html
+++ b/6.5/api/Namespaces/namespaceutils.html
@@ -2382,7 +2382,7 @@
utils
-Updated on 2023-10-24 at 22:16:02 +0000
+Updated on 2023-10-25 at 15:40:27 +0000
diff --git a/6.5/api/Namespaces/namespaceutils.md b/6.5/api/Namespaces/namespaceutils.md
index f186ff5bea..866dd477a8 100644
--- a/6.5/api/Namespaces/namespaceutils.md
+++ b/6.5/api/Namespaces/namespaceutils.md
@@ -14,4 +14,4 @@ title: utils
-------------------------------
-Updated on 2023-10-24 at 22:16:02 +0000
\ No newline at end of file
+Updated on 2023-10-25 at 15:40:27 +0000
\ No newline at end of file
diff --git a/6.5/python/python-api.html b/6.5/python/python-api.html
index 2f2b7e1314..410e779aa8 100644
--- a/6.5/python/python-api.html
+++ b/6.5/python/python-api.html
@@ -16161,7 +16161,7 @@
-
seed(seed: int = 1698185790239257) -> None
+
seed(seed: int = 1698248459365377) -> None
sets the seed for random number generation (internal use)
diff --git a/6.5/search/search_index.json b/6.5/search/search_index.json
index 5a83c9de07..7ee5ccd27c 100644
--- a/6.5/search/search_index.json
+++ b/6.5/search/search_index.json
@@ -1 +1 @@
-{"config":{"indexing":"full","lang":["en"],"min_search_length":3,"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"index.html","text":"Welcome to ShapeWorks! What is ShapeWorks? ShapeWorks is a free, open-source suite of software tools that uses a flexible method for automated construction of compact statistical landmark-based shape models of ensembles of anatomical shapes that do not rely on any specific surface parameterization. The method requires very little preprocessing or parameter tuning and applies to a wide range of shape analysis problems, including nonmanifold surfaces and arbitrary topology objects. ShapeWorks includes tools for preprocessing data, computing landmark-based shape models, and visualizing the results. Latest & Greatest Release Notes Please visit Release Notes to know about the ShapeWorks' cutting-edge features and improvements. Why use ShapeWorks? ShapeWorks is the only publicly available tool that learns a population-specific anatomical mapping in a way that respects population variability without relying on a user-defined template/atlas. It produces more detailed surface-to-surface correspondences than traditional landmark-based approaches. Its optimized approach offers increased power for testing biological hypotheses of shape and shape differences, captures subtle shape variations, and decreases observer bias for reproducible scientific results. ShapeWorks can discover the underlying mode of variation in the box-bump ensemble in comparison to existing publicly available shape modeling software packages ShapeWorks Get-Togethers Where to start? What are the latest features? How to customize existing workflows? A monthly virtual get-together meeting for ShapeWorks users is organized to demonstrate new features, discuss the customization of the shape modeling workflow to users' own use cases, and get suggestions to improve the software and documentation. If you would like to be added to the invitation list, please send an email to shireen-at-sci-dot-utah-dot-edu . ShapeWorks Workshops & Webinars ShapeWorks @SB3C 2021 Part 1: Statistical Shape Modeling & ShapeWorks Speakers: Shireen Elhabian and Alan Morris Part 2: ShapeWorks Success Stories in Orthopedics Speakers: Heath Henninger, Andrew Anderson, and Amy Lenz Part 3: Next Generation of ShapeWorks Speakers: Shireen Elhabian, Andrew Anderson, Penny Atkins, and Riddhish Bhalodia ShapeWorks in Action! The underlying scientific premise of ShapeWorks, particle-based shape modeling, is a groupwise approach to placing landmarks (i.e., correspondences) that consider variability in the entire cohort of images. ShapeWorks uses a set of interacting particle systems, one for each shape, to produce optimal sets of surface correspondences in an ensemble. Particles interact with one another via mutually repelling forces to cover and, therefore, describe surface geometry optimally. Particles are positioned on surfaces automatically by optimizing the model's information content via an entropy optimization scheme. In particular, ShapeWorks explicitly models the inherent trade-off between the model's statistical simplicity (i.e., compactness) in the shape space and the accuracy of the shape representations (i.e., good surface samplings) in the configuration space. ShapeWorks has been effective in various applications, including psychology, biological phenotyping, cardiology, and orthopedics. See relevant papers and ShapeWorks Success Stories . Now enjoy some tour videos for different recent software releases. ShapeWorks 6.4 tour - Multi-level PCA, Improved Constraints, Python Docs, and more ... ShapeWorks 6.3 tour - Landmarks, cutting planes, free form constraints in Studio, and more ... ShapeWorks 6.2 tour - DeepSSM in Studio, multi-domain alignments, shape evaluation charts, scalar and opacity controls, and more ... ShapeWorks 6.1 tour - multi-domain support, mesh grooming, improved models for complex anatomies, and more ... ShapeWorks 6.0 tour - mesh support and more in ShapeWorks Studio ShapeWorks 5.5 tour - feature support in ShapeWorks Studio Grooming segmentations, optimizing correspondences, and analyzing shape models in ShapeWorks Studio","title":"Home"},{"location":"index.html#welcome-to-shapeworks","text":"","title":"Welcome to ShapeWorks!"},{"location":"index.html#what-is-shapeworks","text":"ShapeWorks is a free, open-source suite of software tools that uses a flexible method for automated construction of compact statistical landmark-based shape models of ensembles of anatomical shapes that do not rely on any specific surface parameterization. The method requires very little preprocessing or parameter tuning and applies to a wide range of shape analysis problems, including nonmanifold surfaces and arbitrary topology objects. ShapeWorks includes tools for preprocessing data, computing landmark-based shape models, and visualizing the results.","title":"What is ShapeWorks?"},{"location":"index.html#latest-greatest","text":"Release Notes Please visit Release Notes to know about the ShapeWorks' cutting-edge features and improvements.","title":"Latest & Greatest"},{"location":"index.html#why-use-shapeworks","text":"ShapeWorks is the only publicly available tool that learns a population-specific anatomical mapping in a way that respects population variability without relying on a user-defined template/atlas. It produces more detailed surface-to-surface correspondences than traditional landmark-based approaches. Its optimized approach offers increased power for testing biological hypotheses of shape and shape differences, captures subtle shape variations, and decreases observer bias for reproducible scientific results. ShapeWorks can discover the underlying mode of variation in the box-bump ensemble in comparison to existing publicly available shape modeling software packages","title":"Why use ShapeWorks?"},{"location":"index.html#shapeworks-get-togethers","text":"Where to start? What are the latest features? How to customize existing workflows? A monthly virtual get-together meeting for ShapeWorks users is organized to demonstrate new features, discuss the customization of the shape modeling workflow to users' own use cases, and get suggestions to improve the software and documentation. If you would like to be added to the invitation list, please send an email to shireen-at-sci-dot-utah-dot-edu .","title":"ShapeWorks Get-Togethers"},{"location":"index.html#shapeworks-workshops-webinars","text":"","title":"ShapeWorks Workshops & Webinars"},{"location":"index.html#shapeworks-sb3c-2021","text":"Part 1: Statistical Shape Modeling & ShapeWorks Speakers: Shireen Elhabian and Alan Morris Part 2: ShapeWorks Success Stories in Orthopedics Speakers: Heath Henninger, Andrew Anderson, and Amy Lenz Part 3: Next Generation of ShapeWorks Speakers: Shireen Elhabian, Andrew Anderson, Penny Atkins, and Riddhish Bhalodia","title":"ShapeWorks @SB3C 2021"},{"location":"index.html#shapeworks-in-action","text":"The underlying scientific premise of ShapeWorks, particle-based shape modeling, is a groupwise approach to placing landmarks (i.e., correspondences) that consider variability in the entire cohort of images. ShapeWorks uses a set of interacting particle systems, one for each shape, to produce optimal sets of surface correspondences in an ensemble. Particles interact with one another via mutually repelling forces to cover and, therefore, describe surface geometry optimally. Particles are positioned on surfaces automatically by optimizing the model's information content via an entropy optimization scheme. In particular, ShapeWorks explicitly models the inherent trade-off between the model's statistical simplicity (i.e., compactness) in the shape space and the accuracy of the shape representations (i.e., good surface samplings) in the configuration space. ShapeWorks has been effective in various applications, including psychology, biological phenotyping, cardiology, and orthopedics. See relevant papers and ShapeWorks Success Stories . Now enjoy some tour videos for different recent software releases. ShapeWorks 6.4 tour - Multi-level PCA, Improved Constraints, Python Docs, and more ... ShapeWorks 6.3 tour - Landmarks, cutting planes, free form constraints in Studio, and more ... ShapeWorks 6.2 tour - DeepSSM in Studio, multi-domain alignments, shape evaluation charts, scalar and opacity controls, and more ... ShapeWorks 6.1 tour - multi-domain support, mesh grooming, improved models for complex anatomies, and more ... ShapeWorks 6.0 tour - mesh support and more in ShapeWorks Studio ShapeWorks 5.5 tour - feature support in ShapeWorks Studio Grooming segmentations, optimizing correspondences, and analyzing shape models in ShapeWorks Studio","title":"ShapeWorks in Action!"},{"location":"todo.html","text":"Documentation ToDo List To add/edit for docs index.md#shapeworks-in-action : Add the box bump examples and reference our benchmark study. index.md#shapeworks-in-action : Add video for illustration index.md#with-shapeworks-you-can : show case ShapeWorks in different studies (e.g., ortho and cardilogy) and cite relevant papers index.md and repo readme: Showcase our SSM benchmark study users/papers.md : Add links to the papers and update the list of papers with recent ones about/release-notes.md : Fix links in release notes about/team.md : May be some pics dev/autodoc.md : Which dir to use for autodoc for commands? Spell and grammar check all markdown files use-cases/ellipsoid.md : Add a figure showing some samples of the dataset that highlight the mode of variation Be consistent: multi-scale vs multiscale in the md files Be consistent: we vs you (e.g., in use cases) Add illustrating images to the groom steps in groom and specific use cases Update md files for groom/optimize and use cases to reflect the new workflow (icp, bounding box, crop) that does not apply explicitly resample images/segmentations beyond the isoresample step and use transforamtions as input to the optimization For groom and use cases, update the reference selection documentation to reflect any recent updates in this process (e.g., meshes, pairwise distance matrix ... etc) workflow/XX.md : Review and edit the workflow md files. Add/update the decription of single vs multiscale. use-cases/ellipsoid.md : Add video/snapshots for the optimized model and groomed data use-cases/XX.md : Update optimization parameters based on Examples/Python use-cases/XX.md : Update use cases to reflect multi-scale being integrated into the optimizer Add documentation for femur_mesh and lumps use cases use-cases/left-atrium.md :Check the left atrium use case for saving txt files to carry over images to reflect recent changes (consolidation) Consolidate docs/pdfs Consolidate docs/backlog Add to use cases how to run with prepped data Add mean and PCA visuals for ellipsoid and fixed domain ellipsoid use cases Review and edit ellipsoid use cases Review and edit femur use case Review and edit right ventricle use case Once meshes work, update the femur use case to indicate that this is optional and add femur_mesh use case Instructions on how to add videos to the documentation (thumbnails that link to youtube) Instructions to add a new use case Revise the right ventricle use case after release it. Might need more results to illustrate group differences. Instructions for Doxygen and building doxygen. dev/commands.md :How to add shapeworks commands? dev/gh-actions.md : getting started with github actions dev/python-apis.md : How to Add Python APIs? dev/tests.md : How to Add and Run Unit Tests? Remove all hard-coded links outside docs (relative paths) except for (1) web links (e.g. segmentation softwares, markdown edits ... etc) and (2) shapeworks releases, and shapeworks data portal. To investigate for docs How can we use repo_url in markdown files to link to repo files? -- not needed any more, we won't include any links outside docs except for weblinks, shapeworks releases and data portal. How to use google_analytics? For ShapeWorks repo Change the autodoc dir for commands in github action and release, see 'dev/autodoc.md' Update DocumentationUtilsPackage to generate md for mkdocs (ShapeworksCommand.md) Add mkdocs build for autodoc (deploy) to github actions and release When a use case launches Studio, does it load groomed data? It does, based on the launch function that takes in distance transforms, local, and world point files. Review and edit comments in the .py A fixed domain use case that include grooming the new samples Revisit the fixed domain use case, why do we need the path for the mean shape? why not use the mean of the fixed domains? Release and update the right ventricle use case Misc Add link to documentation http://sciinstitute.github.io/ShapeWorks/ to shapeworks.sci.utah.edu Prepped vs groomed? Be consistent in documentation, tags for RunUseCase, and output folders from running use cases","title":"Documentation ToDo List"},{"location":"todo.html#documentation-todo-list","text":"","title":"Documentation ToDo List"},{"location":"todo.html#to-addedit-for-docs","text":"index.md#shapeworks-in-action : Add the box bump examples and reference our benchmark study. index.md#shapeworks-in-action : Add video for illustration index.md#with-shapeworks-you-can : show case ShapeWorks in different studies (e.g., ortho and cardilogy) and cite relevant papers index.md and repo readme: Showcase our SSM benchmark study users/papers.md : Add links to the papers and update the list of papers with recent ones about/release-notes.md : Fix links in release notes about/team.md : May be some pics dev/autodoc.md : Which dir to use for autodoc for commands? Spell and grammar check all markdown files use-cases/ellipsoid.md : Add a figure showing some samples of the dataset that highlight the mode of variation Be consistent: multi-scale vs multiscale in the md files Be consistent: we vs you (e.g., in use cases) Add illustrating images to the groom steps in groom and specific use cases Update md files for groom/optimize and use cases to reflect the new workflow (icp, bounding box, crop) that does not apply explicitly resample images/segmentations beyond the isoresample step and use transforamtions as input to the optimization For groom and use cases, update the reference selection documentation to reflect any recent updates in this process (e.g., meshes, pairwise distance matrix ... etc) workflow/XX.md : Review and edit the workflow md files. Add/update the decription of single vs multiscale. use-cases/ellipsoid.md : Add video/snapshots for the optimized model and groomed data use-cases/XX.md : Update optimization parameters based on Examples/Python use-cases/XX.md : Update use cases to reflect multi-scale being integrated into the optimizer Add documentation for femur_mesh and lumps use cases use-cases/left-atrium.md :Check the left atrium use case for saving txt files to carry over images to reflect recent changes (consolidation) Consolidate docs/pdfs Consolidate docs/backlog Add to use cases how to run with prepped data Add mean and PCA visuals for ellipsoid and fixed domain ellipsoid use cases Review and edit ellipsoid use cases Review and edit femur use case Review and edit right ventricle use case Once meshes work, update the femur use case to indicate that this is optional and add femur_mesh use case Instructions on how to add videos to the documentation (thumbnails that link to youtube) Instructions to add a new use case Revise the right ventricle use case after release it. Might need more results to illustrate group differences. Instructions for Doxygen and building doxygen. dev/commands.md :How to add shapeworks commands? dev/gh-actions.md : getting started with github actions dev/python-apis.md : How to Add Python APIs? dev/tests.md : How to Add and Run Unit Tests? Remove all hard-coded links outside docs (relative paths) except for (1) web links (e.g. segmentation softwares, markdown edits ... etc) and (2) shapeworks releases, and shapeworks data portal.","title":"To add/edit for docs"},{"location":"todo.html#to-investigate-for-docs","text":"How can we use repo_url in markdown files to link to repo files? -- not needed any more, we won't include any links outside docs except for weblinks, shapeworks releases and data portal. How to use google_analytics?","title":"To investigate for docs"},{"location":"todo.html#for-shapeworks-repo","text":"Change the autodoc dir for commands in github action and release, see 'dev/autodoc.md' Update DocumentationUtilsPackage to generate md for mkdocs (ShapeworksCommand.md) Add mkdocs build for autodoc (deploy) to github actions and release When a use case launches Studio, does it load groomed data? It does, based on the launch function that takes in distance transforms, local, and world point files. Review and edit comments in the .py A fixed domain use case that include grooming the new samples Revisit the fixed domain use case, why do we need the path for the mean shape? why not use the mean of the fixed domains? Release and update the right ventricle use case","title":"For ShapeWorks repo"},{"location":"todo.html#misc","text":"Add link to documentation http://sciinstitute.github.io/ShapeWorks/ to shapeworks.sci.utah.edu Prepped vs groomed? Be consistent in documentation, tags for RunUseCase, and output folders from running use cases","title":"Misc"},{"location":"about/contact.html","text":"Contact Us Users Forum Our user forum is located here: ShapeWorks Discourse Group . This forum is a place for ShapeWorks users to discuss how to customize shape modeling workflows for their own use cases, troubleshoot issues end-users facing when using ShapeWorks, keep track of suggestions to improve the software and documentation, and ensure awareness of the latest ShapeWorks tools within the research community. Users Mailing List Please join our mailing list by sending a message to sympa@sci.utah.edu with the subject subscribe shapeworks-users and an empty body. You can also email any questions, bugs, or feature requests to shapeworks-users@sci.utah.edu. Developers Mailing List You can join our developer support mailing list by sending a message to sympa@sci.utah.edu with the subject subscribe shapeworks-dev-support and an empty body. As a developer, if you encounter any problems or bugs, please report them using the issue tracker on GitHub . This includes feature requests. Feel free to add improvements using git pull requests. You can also email ShapeWorkers at shapeworks-dev-support@sci.utah.edu.","title":"Contact Us"},{"location":"about/contact.html#contact-us","text":"","title":"Contact Us"},{"location":"about/contact.html#users-forum","text":"Our user forum is located here: ShapeWorks Discourse Group . This forum is a place for ShapeWorks users to discuss how to customize shape modeling workflows for their own use cases, troubleshoot issues end-users facing when using ShapeWorks, keep track of suggestions to improve the software and documentation, and ensure awareness of the latest ShapeWorks tools within the research community.","title":"Users Forum"},{"location":"about/contact.html#users-mailing-list","text":"Please join our mailing list by sending a message to sympa@sci.utah.edu with the subject subscribe shapeworks-users and an empty body. You can also email any questions, bugs, or feature requests to shapeworks-users@sci.utah.edu.","title":"Users Mailing List"},{"location":"about/contact.html#developers-mailing-list","text":"You can join our developer support mailing list by sending a message to sympa@sci.utah.edu with the subject subscribe shapeworks-dev-support and an empty body. As a developer, if you encounter any problems or bugs, please report them using the issue tracker on GitHub . This includes feature requests. Feel free to add improvements using git pull requests. You can also email ShapeWorkers at shapeworks-dev-support@sci.utah.edu.","title":"Developers Mailing List"},{"location":"about/license.html","text":"ShapeWorks License ShapeWorks is available for free and is open source under the MIT License. The MIT License Copyright (c) 2012 Scientific Computing and Imaging Institute, University of Utah. License for the specific language governing rights and limitations under Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","title":"License"},{"location":"about/license.html#shapeworks-license","text":"ShapeWorks is available for free and is open source under the MIT License. The MIT License Copyright (c) 2012 Scientific Computing and Imaging Institute, University of Utah. License for the specific language governing rights and limitations under Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","title":"ShapeWorks License"},{"location":"about/release-notes.html","text":"Release Notes ShapeWorks 6.4.2 - 2023-07-05 Fixes Fix python module versions preventing python import from working (#2104) ShapeWorks 6.4.1 - 2023-05-10 Fixes Fix grooming crash when there are free form constraints in an untitled/unsaved project (#2078) Fix update checker potentially crashing (#2079) ShapeWorks 6.4.0 - 2023-05-05 What is new? ShapeWorks Back-end New shapeworks 'analyze' command for offline analysis of shape models Improved free form constraints that now support doubly connected areas (e.g. donut-like) Data Portal migrated to new ShapeWorks Cloud and swcc (ShapeWorks Cloud Client) tool ShapeWorks can now be used as a 3rd party library ( details here ) Added support for 'save_init_splits' and 'checkpointing_interval' parameters in the project spreadsheet formats Added new JSON based file format for storing ShapeWorks projects (swproj) Added a unified logging library for ShapeWorks (spdlog) Uniform numerical computation of specificity across platforms Updated dependencies. Python now at 3.9, PyTorch 1.11.0, VTK 9.1, ITK 5.2.1 ShapeWorks Front-end Studio can now automatically check for updates and prompt the user to download them Improved progress bar in Studio is more representative and also estimates time remaining Added ability to arbitrarily scale difference arrows in Studio Added file association support for swproj file extension on Windows and Mac New multi-level analysis feature in Studio ( details here ) Added ability to hide/show particles per domain User's Support Hip Use Case: The use case uses the hip joint to demonstrate the capability of ShapeWorks to capture inter-domain correlations and interactions directly on triangular surface meshes. The use case showcases calculating the alignment options available for multiple organ anatomies. ( details here ) Added options to the incremental use case when run in --interactive mode, including sorting method, initial model size, and incremental batch size. The sorting method determines how the shapes are sorted to be added incrementally. There are three options: random, median, distribution. ( details here ) Python API documentation has been added to the ShapeWorks documentation site Fixes Fix Studio python problem causing crash on group differences (#1781) Fix Studio slow/hanging on certain free form constraints (#1817, #1801) Fix crashes on certain projects (#1800, #1815) Fix procrustes with multi-domain models (#1755) Fixed crashes in groom due to multi-threading (#1944) ShapeWorks 6.3.2 - 2022-10-04 Fixes Fix install_shapeworks.sh on Linux (#1883) ShapeWorks 6.3.1 - 2022-07-22 Fixes Fix Studio python problem causing crash on group differences (#1781) Fix Studio slow/hanging on certain free form constraints (#1817, #1801) Fix crashes on certain projects (#1800, #1815) ShapeWorks 6.3.0 - 2022-06-09 What is new? ShapeWorks Back-end Added constraints functionality for the mesh domain both clipping and augmented lagrangian together with a flag to flip between the two options. Group Difference Statistics in Python can now perform LDA. The use case also demonstrates Linear Discrimination of Variation (LDA) for analyzing shape variation between the subgroups. ShapeWorks Front-end New selectable and configurable colormap support Added new support for showing the difference to the mean for any given mesh (subjects or generated PCA mode positions) Added new support for displaying multiple image types (e.g. original vs groomed) with individual opacity settings. Also ability to show surface to surface distance. The multiple domains groom section has been upgraded to its own panel for better UI consistency. A new checkbox for applying grooming steps to all domains has been added to assist when many domains are in use A new image export dialog as been added with various export options PCA Montage and Fringe plot export. Building on the image export dialog, the PCA Montage exporter allows you to create a multi-image montage across PCA modes. Export scalar values: Addition export options have been added to export mesh scalars, particle scalars, and all subjects particle scalars. Image volume support: New support has been added for displaying 2D slices from image volumes (e.g. CT/MRI) Landmark placement UI in Studio, landmark registration, landmarks as initializers Cutting planes UI in Studio: Added new support for defining and manipulating cutting planes Free form constraints UI in Studio: Added new support for defining free form constraints Procrustes scaling only mode: New support for running procrustes in a scaling-only mode has been added. Good/bad particle display: The Particles Panel enabled the display of \"good/bad particles\" in ShapeWorks Studio. Group LDA chart in Studio: Support for the group LDA chart has been added in Studio User's Support Added grooming steps to mesh-based use cases using the mesh Python API Alignment transforms are now passed to the optimizer and used in optimization instead of being applied before optimization. This results in local particles in the original data's coordinate system, allowing for easier subsequent analysis The use cases now use project spreadsheets in optimizations instead of XML files. This format is more interpretable and allows of better integration with Studio. The project sheets support multiple domains, fixed domains, constraints The femur use case has been refactored into a single use case where alignment transforms and cutting plane constraints are passed in optimization. Grooming added for multiple domain use cases. The pipeline demonstrates alignment w.r.t domain 1 ellipsoids. DeepSSM Use Case: The DeepSSM use case has been updated to demonstrate the full pipeline, including training data generation instead of relying on the femur use case to create a training shape model. The use case now demonstrates how to optimize validation particles via fixed domain optimization where the training particles are unchanged. Image-to-image registration tools have been added to prepare DeepSSM input images without requiring corresponding segmentations or meshes. This allows for true inference with DeepSSM. Incremental Use Case: A new use case has been added, demonstrating how a shape model can be optimized incrementally on 3D supershapes. This approach is beneficial when the cohort of shapes is very large, and single optimization would be slow, and when the dataset is small but contains a large amount of shape variation. Functionality has been added to select the order of shape optimization based on the distance of each shape to all others in the cohort. This allows for particles to be fit to inlier shapes first, then outliers. Documentation has been added that explains the use case and quantitatively demonstrates the benefit of incremental optimization. Added a Studio use case for constraints and a pseudo-tutorial for it in the documentation. Fixes Studio: TabWidget rendering on MacOS 11/12 fixed Mesh::toDistanceTransform fixed Studio: Fixed optimization abort not always aborting Optimize: Fixed particle splitting for use with input transforms Studio: Fix clamping of glyph size Studio: Fix bug when groom output path is blank ShapeWorks 6.2.1 - 2022-01-07 What is new? ShapeWorks Back-end Added new isolate functionality that isolates the largest object in a segmentation Added remeshing using ACVD library Added option to save mesh file as binary (default is ASCII) Uniform transform interface added: ITK transforms can be applied to meshes and VTK transforms can be applied to images. ShapeWorks Front-end Studio: Added convert to mesh pipeline for segmentation inputs (can run both image and mesh pipelines) Studio: Added reflection, remeshing, image cropping, image resampling to grooming Studio: New UI for grooming User's Support Updated ellipsoid_mesh use case to demonstrate mesh grooming Combined the functionality of the three femur use cases - femur , femur_mesh , femur_cut into one use case. The femur_cut use case now demonstrates the process of grooming meshes and the associated images , optimization on meshes with a single cutting plane as a constraint. Fixes Studio: Fixed display names in the corner (removing long paths) Studio: Fixed recomputation of shape statistics upon re-running shape model and removing shapes ShapeWorks 6.2 - 2021-11-16 What is new? ShapeWorks Back-end New Mesh grooming tools: The following grooming tools are supported from all three different interfaces - command line, C++ and Python: curvature : computes curvature (types include principal, gaussian, and mean curvature) of a given triangular mesh and returns a field that contains a scalar value for each mesh vertex. See mesh-curvature to know about function parameters. fixElement : fixes element winding of a given triangular mesh as a quality control step for preparing meshes for shape modeling. See fix-element to know about function parameters. geodesicDistance : the computation of geodesic distances enables feature-based correspondences. Read this paper for more details. Below are exemplar usage scenarios. geodesicDistance (pointA, pointB) : computes geodesic distance between 2 points on a triangular mesh. See geodesic-distance to know about function parameters. geodesicDistance (landmark) : computes geodesic distances between all points on a triangular mesh to a given point (landmark). See geodesic-distance-landmark to know about function parameters. geodesicDistance (curve) : computes geodesic distances between all points on mesh and set of points (curve) computeMeanNormals : computes the average surface normal for each mesh vertex in a given set of triangular meshes with vertex-wise correspondences and returns a field containing a normal vector for each mesh vertex. See mean-normals to know about function parameters. New Mesh query/operator tools: The following tools are supported from all three different interfaces - command line, C++ and Python: operator+= : appends a mesh to an existing mesh. The result of this operator is a single mesh with a single vertex and face lists. closestPoint : returns the closest point on a face in the mesh to a given point in space. See closest-point to know about function parameters. closestPointId : returns closest point id in the mesh to a given point in space points : returns matrix with number of points with (x,y,z) coordinates of each point faces : returns matrix with number of faces with indices of the three points from which each face is composed getFace : return indices of the three points with which the face at the given index is composed Mesh fields: Added support for passing multi-valued fields in addition to scalar fields. Previously field operations such as getField , setField supported only single-value components. Now, these operations can be used for multi-valued components as well. This is useful for associated surface meshes with positional (i.e., spatially varying) features, e.g., application-specific features such as cortical thickness and bone density, and computationally driven features such as geodesics to anatomical landmarks, curvatures, and surface normals. Free-form constraints (FFCs): FFCs support has been added. Added a unit test for FFCs, a typical sphere unit test with a constraint that cuts the sphere like a tennis ball grove. Also added a unit test with two domains, both spheres in different locations. The first sphere has one cutting plane and 25 sphere constraints, and the second sphere has one cutting plane and one free form constraint. See Free-Form Constraints for more details. ShapeWorks Front-end Multiple domains in Studio: Support for multiple alignment strategies is now present in Studio. It allows analysis with and without articulation with a choice of reference domain or global alignment. See Multiple Domain Alignments New analysis features in Studio: Shape evaluation charts for compactness, specificity, and generalization have been added. See for Metrics Panel more details. Usability features in Studio: New usability features such as group p-value display, feature map scalar control, surface opacity controls on a per doamin basis, message history window, suppressible error dialog, narrow band optimization parameter, multiple domain expore options (combined and support) and allow initial landmark points. See New in ShapeWorks Studio 6.2 for more details. User's Support Shape cohort generation: Added segmentation and image generation for 2D contour supershapes. See this Jupyter Notebook for more details. Analyzing the group differences: A new use case has been added, demonstrating the functionality of shape statistics tools to perform hypothesis testing of group shape differences. See Femur: Group Difference Statistics in Python for more details. Sub-sampling for multiple domains: We can now perform subsampling for multiple domains data by combining the individual shapes from all the domains and generating combined shapes. We perform a clustering-based subset selection on the combined shapes so that the subset is representative of the entire dataset and all domains. The representative subset of the specified sample size will be helpful to run through the SSM pipeline so that the use case runs faster and uses less memory. API reference in Documentation: Information about different classes (e.g Image), functions (e.g Image::antialias), function parameters, function return types in C++ API has been added. Check out Groups , Classes , Namespaces , Files for more details. Deep Learning DeepSSM in Studio: The ability to run DeepSSM has been added to Studio. See DeepSSM in Studio for more details. Improvements ShapeWorks Back-end Safe construction of Image instances in Python: Images can now be safely constructed without copying and passed without copying from/to Python. In particular, passing Images for rendering using pyvista is now transparent and copy-free (note: copying is still supported if necessary). A Jupyter Notebook was added to demonstrate Image initialization and passing. Efficient data sharing between Python and C++: Added efficient sharing of large data between Python and C++ (for both Mesh fields and Image data) that enables Python tools which access Mesh fields or Image data for visualization and analysis, or wish to create an Image or add fields from NumPy to a Mesh , to do so with optimal efficiency without fear of memory leak due to mishandled transfers. Improved Python APIs: Coordsys of images in Python can now be set using setCoordsys . Fixed Python bindings and improved interactive help where necessary. More efficient conversion of shapeworks Mesh in Python to vtk mesh by creating a PolyData instead of performing IO operations. Transforms in Image and Mesh API: Separate transforms such as center of mass, rigid registration and thin plate spiline can be created. They are passed efficiently and transparently between Python and C++. These transform functions create and accept numpy arrays instead of using proprietary transform type in the Python API. A jupyter notebook was to demonstrate this for images and meshes . Optimizer exports alignment transforms: Write individual procrustes transforms. The ShapeWorks Optimizer can now export individual procrustes transform files if requested. Use the xml tag 1 to enable it. Additionally, for project spreadsheets (e.g., Studio), individual procrustes transforms will be added as additional columns in the data sheet. See Optimize for more details. Improved testing: More robust testing of Python tests was achieved by adding code to ensure that all tests are performed for all functions, whereas before the test failure was reported immediately without testing if any related functions failed. Concrete seeding of random number generators (only for testing) is utilized to ensure objective comparison of results across all platforms. Improved verification of use case testing by comparing shape statistics compactness, generalization, and specificity against a good shape model instead of checking for a file. A log file ( verify.log ) is written that contains the use case outputs and summary. User's Support Use cases: Added --mesh_mode option to image-based use cases. When running in mesh mode, after grooming segmentations, distance transforms are converted to meshes, and optimization is done directly on meshes, saving memory footprint and allowing the usage of geodesic distances for particle repulsion. This enables improved modeling for thin structures and high curvature regions. See Use Case Documentation for more details. Improved use cases documentation: Restructured use cases documentation to reduce repetition and better highlight the focus and differences of each demonstration. Added relevant documentation links for every step and parameter in use case descriptions. Reorganized use case documentation based on category (i.e., mesh-based, constraint-based, etc.). See Getting Started with Use Cases for information on running use cases and Examples for an overview of released use cases. More explanation of interpreting modes of variation in Shapes. What & From Where? . Restructured ellipsoid_evaluate use case: The computation time for calculating specificity, compactness, and generalization metrics have been dramatically reduced. A 50X speedup was experienced when calculating evaluation metrics for all modes for a dataset with 75 shapes, each with 1024 particles. We can now calculate the evaluation metrics for all the modes or query the values for a specified mode. The use case has been modified to demonstrate these functionalities. See Ellipsoid: Shape Evaluation in Python for more details. Fixes ShapeWorks Back-end Memory leak: Fixed memory leak issues in FEMesh operations ShapeWorks Front-end Fix processing of all orientation images: We have fixed ShapeWorks to handle all orientations of images. Previously, only a subset (such as RAI) was fully compatible with all tools. ShapeWorks 6.1 - 2021-06-28 What is new? ShapeWorks Back-end Improved shape models for convoluted structures: Geodesic distance-based repulsion is now supported for mesh domains. This improves results on structures with thin and/or convoluted features at the cost of increased memory and runtime. Refer to the thin_cavity_bean use case for an example. Optimizing shape models on contours: N-dimensional contour domains are now supported in ShapeWorks. Refer to the supershapes_1mode_contour use case for an example. Robust and scalable primitive-based constrained surface sampling: Constraints are now implemented by turning the problem into an unconstrained optimization using the augmented lagrangian inequality formulation. The new implementation supports both cutting planes and spheres. It also supports multiple constraints per domain/shape with different types. Consolidated library for shape statistics: The shapeworks computational library is updated to include refactored code for shape statistics, including functions to read particle files and compute eigenvectors, eigenvalues, and PCA loadings. ShapeWorks Front-end Grooming support for meshes in Studio: Multiple grooming features for mesh domains are added to Studio, including two methods for mesh smoothing, hole filling, mesh centering, and iterative closest point for rigid pre-alignment with automated reference shape selection. Multiple domains support in Studio: Multiple domains are added to Studio where shape models are optimized in the given domains' shared/joint shape spaces to capture inter-domains correlations and interactions. The way multiple domains are implemented allows for an arbitrary number of domains as long as all shape samples in a given cohort have the same domains. Furthermore, the multiple domain support enables modeling scenarios with mixed-type domains (e.g., meshes and contours). Python APIs for shape statistics: Python APIs for principal component analysis (PCA) are added for shape statistics. These APIs include reading particle files and computing eigenvectors, eigenvalues, and PCA loadings. See ellipsoid_pca for a demonstrating example. User's Support Multi-domain shape cohort generation: Ellipsoid joint generation is added to ShapeWorks' cohort generator python module. Shape cohorts with multiple domains can be generated with options to control the distance separating the domains and modes of variations (size/rotation). These cohorts can be used for troubleshooting multiple domain shape modeling workflows. New use cases: A new use case ( ellipsoid_pca ) demonstrating the usage of the new PCA tools is added. The thin_cavity_bean use case is added to demonstrate geodesic distance-based particle-to-particle interactions to demonstrate improved shape statistics and surface sampling for thin and convoluted structures. The supershapes_1mode_contour use case is added to demonstrate shape modeling using contour domains. Another two new use cases, ellipsoid_multiple_domain and ellipsoid_multiple_domain_mesh , are added to demonstrate a typical shape modeling workflow for multiple domains using binary segmentations and surface meshes, respectively. Improvements ShapeWorks Back-end Particle splitting is agnostic to constraints: Particle splitting and constraints will no longer require that no particle violates constraints. It will work even if a particle violates a constraint. Multiple unit tests are added. Mesh reconstruction for multiple meshes: The warp-mesh command is extended to work with multiple meshes at the same time with the same reference mesh and points. Improvements to the Image and Mesh libraries: Exact specification of crop regions and clip plane for both images and meshes are enabled. Better error detection and handling. More robust automated testing to ensure improvements do not break existing functionality. ShapeWorks Front-end Multiple domain support: OptimizeUtils and AnalyzeUtils are updated to handle multiple domain datasets. Restructured use cases: Depreciated GroomUtils , CommonUtils , and EvaluationUtils . All use cases are restructured to make the grooming steps more transparent and demonstrate the usage of Python APIs with inline documentation. Improved ShapeWorks Python module library coverage: The entire ShapeWorks library framework now accessible via Python bindings. Python types support in ShapeWorks Python module: ShapeWorks Python module uses generic Python types (e.g., numpy, arrays, lists) rather than opaque wrappers for parameters to/from ShapeWorks objects. It is now possible to instantiate shapeworks.Image from a numpy array. One can now request raw image data as a numpy array. Safe dot-chain operations in ShapeWorks Python module: The \u201cdot chain\u201d operations are now safely enabled (e.g., img.translate([tx, ty, tz]).rotate(45, shapeworks::Z).scale([sx, sy, sz)) ) RunUseCase improvements: RunUseCase no longer requires --use_case before the use case name. This makes it simpler to use since omitting a use case name immediately prints help, which itself shows the list of use cases as a required argument rather than listing them with the other optional args. RunUseCase no longer accepts paths to shapeworks executables or Python modules. All of these are in the user's conda environment, or set using the devenv for testing by developers. Deep Learning & Shape Modeling Refactored DeepSSM: Defined a config file for DeepSSM parameters that are used in training and testing. This will be helpful for parameter tuning, model comparison, and adding additional functionality and parameters to DeepSSM. DeepSSM with fine-tuning: A fine-tuning option has been added to DeepSSM. This allows the model to learn the mapping between the PCA space to the correspondence point space, improving accuracy. Improved DeepSSM evaluation: DeepSSM evaluation has been adapted to use ShapeWorks mesh warp function and Python binding mesh distance function. DeepSSM on both GPU and CPU: The DeepSSM use case has been adapted to run on both GPU and CPU. It is considerably faster on GPU but no longer exits when running on CPU. User's Support Improved documentation: More clear documentation both from Python, the command line, and online are added. Improved notebooks: Notebooks are significantly simplified by moving helper functions into the ShapeWorks Python module, reducing redundant information, and using only the PyVista library for visualization. Improved installation: Users no longer are required to modify PATHs or pass parameters to find executables or import the ShapeWorks Python module. Installation works even if non-standard installation directories are used and it works on all platforms. New shapeworks environments can now be created using install_shapeworks [name] : This supports multiple installations on the same platform, where users can change installation just by activating a different conda environment. Clean installation for ShapeWorks Python module: ShapeWorks Python module is now seamlessly installed as part of ShapeWorks suite installation on all platforms. The Python module no longer requires any special path modifications to import. Fixes ShapeWorks Back-end Image to Array: ShapeWorks image functionality is fixed such that an image can be successfully converted to a numpy array and back to a ShapeWorks image. ShapeWorks Front-end Notebook visualization: Volume renderings using ITK Widgets were causing notebooks to crash on some platforms. The notebooks are now updated to no longer use ITK Widgets for visualization and instead use the more robust and stable PyVista library. Use case file writing: RunUseCase.py has been updated to check that the current folder is writable before proceeding so that use case output can be saved. Deep Learning & Shape Modeling DeepSSM evaluation: The DeepSSM evaluation step in the use case is updated to use ShapeWorks mesh distance rather than the deprecated SurfaceToSurfaceDistance command. ShapeWorks 6.0 - 2021-03-30 What's New User's Support New discussion forum: We started an online discussion forum ( shapeworks.discourse.group ). This forum is a place for ShapeWorks users to discuss how to customize shape modeling workflows for their own use cases, troubleshoot issues end-users facing when using ShapeWorks, keep track of suggestions to improve the software and documentation, and ensure awareness of the latest ShapeWorks tools within the research community. Tiny tests for use cases: All use cases now have a tiny test that can be run using the --tiny_test option. When the tiny test is run, only the data necessary for the test is downloaded rather than all of the data. Running use cases on subsets: All of the use cases (mesh or segmentation based) can now be run on a subset of the data using the --use_subsample option. Note that the entire dataset is downloaded in this case so that a subset that is representative of the entire dataset can be selected. Generating shape cohorts: Example shape cohorts with analytic correspondences can now be generated using the ShapeWorks package GenerateShapeCohort . Currently, cohorts of parameterized ellipsoids or supershapes can be generated. Options are available to specify the degree to which the cohort is groomed (i.e., a cohort can be generated to be in alignment or misaligned in various ways). These cohorts can help with troubleshooting the shape modeling workflow. Notebook demonstrating cohort generation: A Jupyter notebook was added that demonstrates how to use GenerateShapeCohort. ShapeWorks Back-end Support for use_normals with meshes: Added support for surface normals when optimizing directly on meshes. This results in improved shape models on thin domains. See ShapeWorks Directly on Meshes for more details. Consolidation of mesh-based grooming tools: Updated the shapeworks API to include mesh-based grooming tools (smooth, decimate, invert normals, reflect, alignment, fill holes, probe volume at mesh vertices, clip, translate, scale, bounding box, quality control, surface to surface distance, to image and to distance transform). Added mesh-based query tools (center, center of mass, number of points, number of faces, get field names, set field, get field, set field value, get field value, get field range, get field mean, get field std and comparison). This includes a full complement of unit tests. All-in-one Studio Front-end Mesh support in Studio: Added support for mesh inputs with minimal grooming. See New in ShapeWorks Studio for more details. New and faster surface reconstruction: Added a new surface reconstruction method with support for both mesh or image inputs. This method is much faster and is the new default. See New in ShapeWorks Studio for more details. Feature maps support for meshes: Added support for loading and displaying scalar values from mesh inputs. See New in ShapeWorks Studio for more details. User help in Studio: Added user interface tooltips and Help->Keyboard shortcuts. Detailed optimization progress: Added particle count, initialization/optimization phase, and iteration count on the status bar in addition to the progress bar. (user feature request) Enabled aborting grooming: Added ability to abort grooming step. Deep Learning & Shape Modeling DeepSSM now saves both the \"best\" and \"final\" model: The final model is saved after all training epochs have run. The best model is saved after the epoch that had the lowest prediction error on the validation set. The best model makes use of early stopping to prevent overfitting. Visualization of DeepSSM errors: The error meshes that are output from running the DeepSSM use case can now be visualized in Studio. These meshes have a distance scalar field that captures the distance between the true and predicted mesh. To view in Studio simply run: ShapeWorksStudio path/to/error/mesh.vtk . Data augmentation handles modeling scenarios that need Procrustes alignment: Data augmentation can now be run on a dataset for which Procrustes was used in optimization. When both the local and world .particle files are passed as arguments for data augmentation, the translation is accounted for in the augmented data. Visualizing data augmentation: Parallel violin plots are used to compare the distribution of real and augmented data visually. Demonstrating data augmentation: A Jupyter notebook that demonstrates the data augmentation process has been added. In this notebook, parallel violin plots are used to compare the distribution of real and augmented data visually. Improvements User's Support Improved Python grooming utils: GroomUtils.py now uses Python binding rather than calling command-line tools. ShapeWorks Back-end Enable multi-threading on Mac platforms: Switched from OpenMP to TBB (thread building blocks), allowing multithreading on Mac. Performance improvements include a ~4x speedup on Mac laptop and same speed or better on Linux/Windows. Performance improvements in shapeworks optimize : ~20% faster optimization in mesh and image domains by replacing specific data structures (that were initially in place to allow interactive removal of particles during the optimization). ~50% faster optimization in mesh domain by caching nearest-triangle lookups. All-in-one Studio Front-end Improved Studio viewer: Added ability to use 2 viewers (in between 1 and 4). Added ability to choose orientation marker (medical, triad) and location (corner). Improved Studio interface: Added new checkbox for automatic glyph sizing. Added support for drag and drop of images and meshes. Scalar bar color is now opposite of background color (e.g., when the background is white, the text should be dark) (user request). Improved responsiveness: Improved particle shape statistics computation speed. Improved user interface responsiveness during optimization. Improved distance transform loading for surface reconstruction. Improved error handling: Enhanced error handling and graceful reporting of errors such as attempts to write/save to read-only directories and filesystems. Deep Learning & Shape Modeling More control on data augmentation: In data augmentation, the user can now either specify how many PCA components to retain in embedding OR what percentage of population variability to retain. For example, suppose the user specifies that 95% of population variability should be kept. In that case, the number of components will be automatically selected such that less than 5% of shape variation is lost in embedding. Fixes ShapeWorks Back-end Replaced mesh library: Replaced backend mesh library to fix bugs that caused optimizer crashing when optimizing particles directly on meshes. Gradient of normals for image domain: Corrected a long-standing bug where we used the hessian in place of the gradient of the normal. If you have an existing use case with use_normals enabled, the normal weighting may have to be adjusted. Cutting planes constraints for mesh domains: Fixed a bug in the integration of mesh domains with cutting planes constraints, where the optimization gets stuck due to the fact that constraints get violated when not being considered by geodesic walks. All-in-one Studio Front-end Fixed bugs in Data: Fixed a bug when adding and removing shapes. Studio now appends .xlsx when saving a project file. Fixed bugs in Optimize: Studio optimize default for initial relative weighting is smaller than relative weighting to enable a better surface sampling during initialization. Enable file menu when the optimization is aborted. Fixed bugs in Analyze: Limit PCA modes to the number of samples - 1. Surface reconstruction for spheres is fixed. Fixed a bug that produced blank screens and error messages on the consoles when switching out of analysis while PCA animation is running. Fixed a sample display bug that occurred when loading XML project for analysis and exploring individual samples after switching to PCA animation. ShapeWorks 5.5.0 - 2020-10-15 What's New User's Support Revamped documentation: New documentation to support both end-users and open-source developer community in one easily navigable place. This documentation includes background information about statistical shape modeling, the scientific premise of ShapeWorks, and how to get started. It also demonstrates the latest software features, exemplar use cases, and instructions to build/install ShapeWorks. Optimized shape models for use cases: All datasets on the ShapeWorks Data Portal now have the shape model output from running the use cases with a corresponding analyze.xml for launching Studio. Users can cd to where the data is extracted and call ShapeWorksStudio analyze.xml to visualize these shape models. ShapeWorks Back-end ShapeWorks directly on meshes: ShapeWorks now supports particle optimization directly on triangular surface meshes. This mesh support also enables working with open meshes without additional user inputs. See ShapeWorks Directly on Meshes for more details. For exemplar use cases, see Femur Mesh: SSM directly from meshes and Lumps: SSM directly from meshes to learn how to get started. This mesh support allows for significant memory savings (9.2GB to 53MB in the femur use case) . New ShapeWorks API: Consolidation of image-based and segmentation-based grooming tools that creates a stable and reusable API making it much easier and more flexible for users to groom their datasets. This includes a full complement of unit tests. See ShapeWorks API for more details. All-in-one Studio Front-end Feature maps support: Studio supports the integration of 3d volume feature maps to map imaging data to the optimized shape model. See New in ShapeWorks Studio for more details. New interface for group analysis: Studio supports group definitions from spreadsheets. The new interface supports multiple group sets within the same project file and categorical groups compared to the old binary groups (i.e., yes/no) setting. See New in ShapeWorks Studio for more details. User notes in Studio: Studio stores/loads a rich text notes section in the spreadsheet. Deep Learning & Shape Modeling New Python package for model-based data augmentation: A Python package for data augmentation has been added. See Data Augmentation for Deep Learning for more details. DeepSSM Python package: A Python package has been added for a deep learning framework that estimates statistical representations of shape directly from unsegmented images once trained. See SSMs Directly from Images for more details. New DeepSSM use case: We added a new use case called deep_ssm that demonstrates data augmentation and deep learning on the femur data. See Femur SSM Directly from Images for more details. Improvements User's Support Improved data/output organization for use cases: Use case organization has been updated such that downloaded data goes into one folder ( ShapeWorks/Examples/Python/Data/ ) and use case output goes into another ( ShapeWorks/Examples/Python/Output/ ). This organization will avoid re-downloading use case datasets if the user deleted the output folder. Enable only-shape data for the femur use case: Femur use case demonstrates the processing workflow starting from surface meshes and can now be run without grooming images (in case they are not available). To groom with images, use the --start_with_image_and_segmentation_data tag. If this tag is not included, images will not be used in grooming. ShapeWorks Back-end Improved constrained particle optimization: An improved implementation for cutting planes that support single and multiple cutting planes per sample has been added. This can be used in modeling scenarios where statistical modeling/analysis is needed for a region-of-interest on the anatomy/object-class at hand without having to affect the input data. See Ellipsoid: Cutting Planes and Femur with Cutting Planes for exemplar use cases. All-in-one Studio Front-end Improved interface design for Studio: User interface improvements to Studio have been added. These improvements include collapsable analysis panels to improve screen usability, a cleaner file menu, an about box that shows website information and software version, and a splash screen that enables the opening of new/recent projects. Fixes ShapeWorks Back-end Constraint-aware particles initialization and optimization: The initialization and optimization steps now respect the user-defined constraints when using signed distance transforms. Hence, at no point, particles will violate the constraints, allowing for arbitrarily defined cutting planes. Constraint-aware particles splitting: Added constraint aware particle splitting for signed distance transforms. The particle splitting only occurred towards a single quadrant. This is fixed by allowing particle splits to shift in a different direction for each particle in every domain. Constraint-aware particle projection: Projecting particles on the surface while manipulating/optimizing particle position now respects the user-defined constraints. ShapeWorks 5.4.1 - 2020-06-15 Fixes ShapeWorks Studio: Fixed crash when importing data on a new/blank project. ShapeWorks 5.4.0 - 2020-06-10 What's New New, flexible ShapeWorks project file format: New spreadsheet (XLSX) based project file format that can easily handle multiple shape modeling scenarios. It is now fully integrated into Studio. See the ellipsoid studio example in Examples/Studio/ellipsoid.xlsx for an example. Exporting shape parameters: Added PCA Raw Component Score Export to Studio. New Getting Started documentation: New Getting started documentation goes over shape modeling workflow documentation, different ShapeWorks interfaces with a video illustration for Studio. Lower memory footprint and faster optimization: ShapeWorks is now using OpenVDB , a more memory-efficient data structure, for signed distance transforms. Along with other refactoring and code optimizations, ShapeWorks now uses 85% less memory (from 57.09GB to 9.67GB in one use case). Additionally, the particle optimizer is now 2X faster . Automated development builds: We now offer up-to-date development binary builds that track the master branch, available here . Please understand that these are in-progress development builds, not official releases. Improvements Improved scalability for Studio: Files now loaded on-demand as necessary. Restructured datasets portal: Better and more consistent directory structure for use cases datasets. See datasets guidelines for more details. Visit our ShapeWorks Portal to register and download datasets to run use cases . Lower memory footprint for estimating correspondences for new shapes on existing shape models: For usage, only distance transforms for the new shapes will be loaded. Improved use case documentation: Better documentation for the RunUseCase input arguments. Documentation for running existing shape models: Added instructions on how to load a pre-trained shape model without running the full pipeline. Consistent cross-platform splitting direction: Correspondence point splits take a random direction, but are now consistent and repeatable across platforms for reproducible shape models. Fixes Mesh export in Studio: Changed exported meshes to be compatible with CloudCompare ShapeWorks 5.3.0 - 2020-02-20 What's New Use cases: Added fixed domains use case that demonstrates adding a single shape to an existing shape model Use cases: Added ellipsoid evaluation use that demonstrates the quantitative evaluation of the ellipsoid New commands: Added commands to the shapeworks executable to quantitatively evaluate shape models: read-particle-system, compactness, generalization, specificity New shapeworks executables commands: read-image, write-image, antialias, isoresample, binarize, recenter-image, pad. New build method: Separate build_dependencies script (see Documentation/Build/BUILD.md) Improvements Use cases: Updated femur use case with an interactive cutting plane selection Studio: Replaced bar chart with explained variance chart ShapeWorks 5.2.2 - 2020-01-09 Fixes Returned to superbuild.sh build process Fixed non-Qt build Fixed Windows conda_installs.bat Studio: Fixed import and processing of non-RAI image volumes Studio: Fix centering of groomed and reconstructed volumes ShapeWorks 5.2.1 - 2019-11-09 Fixes Fix examples, binaries ShapeWorks 5.2.0 - 2019-11-07 What's New Studio: Added live particle optimization updates Studio: Added \"Stop optimization\" button Use cases: Added a femur use case that demonstrates grooming surface meshes along with imaging data for shape modeling Use cases: Added a left atrium use case that demonstrates grooming images data along with shape data and build multi-scale shape models Use cases: New portal downloadable example data (ellipsoid, left atrium, and femurs) Windows installer and binary releases for Mac and Linux CMake-based superbuild with all dependencies built automatically Improvements Studio: Added support for reading View2 parameter files Studio: Added legacy (View2) surface reconstructor Studio: Replaced optimization library with same used by ShapeWorksRun Fixes Studio: Fixes crashes on exit during optimizations (clean shutdown of threads)","title":"Release Notes"},{"location":"about/release-notes.html#release-notes","text":"","title":"Release Notes"},{"location":"about/release-notes.html#shapeworks-642-2023-07-05","text":"","title":"ShapeWorks 6.4.2 - 2023-07-05"},{"location":"about/release-notes.html#fixes","text":"Fix python module versions preventing python import from working (#2104)","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-641-2023-05-10","text":"","title":"ShapeWorks 6.4.1 - 2023-05-10"},{"location":"about/release-notes.html#fixes_1","text":"Fix grooming crash when there are free form constraints in an untitled/unsaved project (#2078) Fix update checker potentially crashing (#2079)","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-640-2023-05-05","text":"","title":"ShapeWorks 6.4.0 - 2023-05-05"},{"location":"about/release-notes.html#what-is-new","text":"ShapeWorks Back-end New shapeworks 'analyze' command for offline analysis of shape models Improved free form constraints that now support doubly connected areas (e.g. donut-like) Data Portal migrated to new ShapeWorks Cloud and swcc (ShapeWorks Cloud Client) tool ShapeWorks can now be used as a 3rd party library ( details here ) Added support for 'save_init_splits' and 'checkpointing_interval' parameters in the project spreadsheet formats Added new JSON based file format for storing ShapeWorks projects (swproj) Added a unified logging library for ShapeWorks (spdlog) Uniform numerical computation of specificity across platforms Updated dependencies. Python now at 3.9, PyTorch 1.11.0, VTK 9.1, ITK 5.2.1 ShapeWorks Front-end Studio can now automatically check for updates and prompt the user to download them Improved progress bar in Studio is more representative and also estimates time remaining Added ability to arbitrarily scale difference arrows in Studio Added file association support for swproj file extension on Windows and Mac New multi-level analysis feature in Studio ( details here ) Added ability to hide/show particles per domain User's Support Hip Use Case: The use case uses the hip joint to demonstrate the capability of ShapeWorks to capture inter-domain correlations and interactions directly on triangular surface meshes. The use case showcases calculating the alignment options available for multiple organ anatomies. ( details here ) Added options to the incremental use case when run in --interactive mode, including sorting method, initial model size, and incremental batch size. The sorting method determines how the shapes are sorted to be added incrementally. There are three options: random, median, distribution. ( details here ) Python API documentation has been added to the ShapeWorks documentation site","title":"What is new?"},{"location":"about/release-notes.html#fixes_2","text":"Fix Studio python problem causing crash on group differences (#1781) Fix Studio slow/hanging on certain free form constraints (#1817, #1801) Fix crashes on certain projects (#1800, #1815) Fix procrustes with multi-domain models (#1755) Fixed crashes in groom due to multi-threading (#1944)","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-632-2022-10-04","text":"","title":"ShapeWorks 6.3.2 - 2022-10-04"},{"location":"about/release-notes.html#fixes_3","text":"Fix install_shapeworks.sh on Linux (#1883)","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-631-2022-07-22","text":"","title":"ShapeWorks 6.3.1 - 2022-07-22"},{"location":"about/release-notes.html#fixes_4","text":"Fix Studio python problem causing crash on group differences (#1781) Fix Studio slow/hanging on certain free form constraints (#1817, #1801) Fix crashes on certain projects (#1800, #1815)","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-630-2022-06-09","text":"","title":"ShapeWorks 6.3.0 - 2022-06-09"},{"location":"about/release-notes.html#what-is-new_1","text":"ShapeWorks Back-end Added constraints functionality for the mesh domain both clipping and augmented lagrangian together with a flag to flip between the two options. Group Difference Statistics in Python can now perform LDA. The use case also demonstrates Linear Discrimination of Variation (LDA) for analyzing shape variation between the subgroups. ShapeWorks Front-end New selectable and configurable colormap support Added new support for showing the difference to the mean for any given mesh (subjects or generated PCA mode positions) Added new support for displaying multiple image types (e.g. original vs groomed) with individual opacity settings. Also ability to show surface to surface distance. The multiple domains groom section has been upgraded to its own panel for better UI consistency. A new checkbox for applying grooming steps to all domains has been added to assist when many domains are in use A new image export dialog as been added with various export options PCA Montage and Fringe plot export. Building on the image export dialog, the PCA Montage exporter allows you to create a multi-image montage across PCA modes. Export scalar values: Addition export options have been added to export mesh scalars, particle scalars, and all subjects particle scalars. Image volume support: New support has been added for displaying 2D slices from image volumes (e.g. CT/MRI) Landmark placement UI in Studio, landmark registration, landmarks as initializers Cutting planes UI in Studio: Added new support for defining and manipulating cutting planes Free form constraints UI in Studio: Added new support for defining free form constraints Procrustes scaling only mode: New support for running procrustes in a scaling-only mode has been added. Good/bad particle display: The Particles Panel enabled the display of \"good/bad particles\" in ShapeWorks Studio. Group LDA chart in Studio: Support for the group LDA chart has been added in Studio User's Support Added grooming steps to mesh-based use cases using the mesh Python API Alignment transforms are now passed to the optimizer and used in optimization instead of being applied before optimization. This results in local particles in the original data's coordinate system, allowing for easier subsequent analysis The use cases now use project spreadsheets in optimizations instead of XML files. This format is more interpretable and allows of better integration with Studio. The project sheets support multiple domains, fixed domains, constraints The femur use case has been refactored into a single use case where alignment transforms and cutting plane constraints are passed in optimization. Grooming added for multiple domain use cases. The pipeline demonstrates alignment w.r.t domain 1 ellipsoids. DeepSSM Use Case: The DeepSSM use case has been updated to demonstrate the full pipeline, including training data generation instead of relying on the femur use case to create a training shape model. The use case now demonstrates how to optimize validation particles via fixed domain optimization where the training particles are unchanged. Image-to-image registration tools have been added to prepare DeepSSM input images without requiring corresponding segmentations or meshes. This allows for true inference with DeepSSM. Incremental Use Case: A new use case has been added, demonstrating how a shape model can be optimized incrementally on 3D supershapes. This approach is beneficial when the cohort of shapes is very large, and single optimization would be slow, and when the dataset is small but contains a large amount of shape variation. Functionality has been added to select the order of shape optimization based on the distance of each shape to all others in the cohort. This allows for particles to be fit to inlier shapes first, then outliers. Documentation has been added that explains the use case and quantitatively demonstrates the benefit of incremental optimization. Added a Studio use case for constraints and a pseudo-tutorial for it in the documentation.","title":"What is new?"},{"location":"about/release-notes.html#fixes_5","text":"Studio: TabWidget rendering on MacOS 11/12 fixed Mesh::toDistanceTransform fixed Studio: Fixed optimization abort not always aborting Optimize: Fixed particle splitting for use with input transforms Studio: Fix clamping of glyph size Studio: Fix bug when groom output path is blank","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-621-2022-01-07","text":"","title":"ShapeWorks 6.2.1 - 2022-01-07"},{"location":"about/release-notes.html#what-is-new_2","text":"ShapeWorks Back-end Added new isolate functionality that isolates the largest object in a segmentation Added remeshing using ACVD library Added option to save mesh file as binary (default is ASCII) Uniform transform interface added: ITK transforms can be applied to meshes and VTK transforms can be applied to images. ShapeWorks Front-end Studio: Added convert to mesh pipeline for segmentation inputs (can run both image and mesh pipelines) Studio: Added reflection, remeshing, image cropping, image resampling to grooming Studio: New UI for grooming User's Support Updated ellipsoid_mesh use case to demonstrate mesh grooming Combined the functionality of the three femur use cases - femur , femur_mesh , femur_cut into one use case. The femur_cut use case now demonstrates the process of grooming meshes and the associated images , optimization on meshes with a single cutting plane as a constraint.","title":"What is new?"},{"location":"about/release-notes.html#fixes_6","text":"Studio: Fixed display names in the corner (removing long paths) Studio: Fixed recomputation of shape statistics upon re-running shape model and removing shapes","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-62-2021-11-16","text":"","title":"ShapeWorks 6.2 - 2021-11-16"},{"location":"about/release-notes.html#what-is-new_3","text":"","title":"What is new?"},{"location":"about/release-notes.html#shapeworks-back-end","text":"New Mesh grooming tools: The following grooming tools are supported from all three different interfaces - command line, C++ and Python: curvature : computes curvature (types include principal, gaussian, and mean curvature) of a given triangular mesh and returns a field that contains a scalar value for each mesh vertex. See mesh-curvature to know about function parameters. fixElement : fixes element winding of a given triangular mesh as a quality control step for preparing meshes for shape modeling. See fix-element to know about function parameters. geodesicDistance : the computation of geodesic distances enables feature-based correspondences. Read this paper for more details. Below are exemplar usage scenarios. geodesicDistance (pointA, pointB) : computes geodesic distance between 2 points on a triangular mesh. See geodesic-distance to know about function parameters. geodesicDistance (landmark) : computes geodesic distances between all points on a triangular mesh to a given point (landmark). See geodesic-distance-landmark to know about function parameters. geodesicDistance (curve) : computes geodesic distances between all points on mesh and set of points (curve) computeMeanNormals : computes the average surface normal for each mesh vertex in a given set of triangular meshes with vertex-wise correspondences and returns a field containing a normal vector for each mesh vertex. See mean-normals to know about function parameters. New Mesh query/operator tools: The following tools are supported from all three different interfaces - command line, C++ and Python: operator+= : appends a mesh to an existing mesh. The result of this operator is a single mesh with a single vertex and face lists. closestPoint : returns the closest point on a face in the mesh to a given point in space. See closest-point to know about function parameters. closestPointId : returns closest point id in the mesh to a given point in space points : returns matrix with number of points with (x,y,z) coordinates of each point faces : returns matrix with number of faces with indices of the three points from which each face is composed getFace : return indices of the three points with which the face at the given index is composed Mesh fields: Added support for passing multi-valued fields in addition to scalar fields. Previously field operations such as getField , setField supported only single-value components. Now, these operations can be used for multi-valued components as well. This is useful for associated surface meshes with positional (i.e., spatially varying) features, e.g., application-specific features such as cortical thickness and bone density, and computationally driven features such as geodesics to anatomical landmarks, curvatures, and surface normals. Free-form constraints (FFCs): FFCs support has been added. Added a unit test for FFCs, a typical sphere unit test with a constraint that cuts the sphere like a tennis ball grove. Also added a unit test with two domains, both spheres in different locations. The first sphere has one cutting plane and 25 sphere constraints, and the second sphere has one cutting plane and one free form constraint. See Free-Form Constraints for more details.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#shapeworks-front-end","text":"Multiple domains in Studio: Support for multiple alignment strategies is now present in Studio. It allows analysis with and without articulation with a choice of reference domain or global alignment. See Multiple Domain Alignments New analysis features in Studio: Shape evaluation charts for compactness, specificity, and generalization have been added. See for Metrics Panel more details. Usability features in Studio: New usability features such as group p-value display, feature map scalar control, surface opacity controls on a per doamin basis, message history window, suppressible error dialog, narrow band optimization parameter, multiple domain expore options (combined and support) and allow initial landmark points. See New in ShapeWorks Studio 6.2 for more details.","title":"ShapeWorks Front-end"},{"location":"about/release-notes.html#users-support","text":"Shape cohort generation: Added segmentation and image generation for 2D contour supershapes. See this Jupyter Notebook for more details. Analyzing the group differences: A new use case has been added, demonstrating the functionality of shape statistics tools to perform hypothesis testing of group shape differences. See Femur: Group Difference Statistics in Python for more details. Sub-sampling for multiple domains: We can now perform subsampling for multiple domains data by combining the individual shapes from all the domains and generating combined shapes. We perform a clustering-based subset selection on the combined shapes so that the subset is representative of the entire dataset and all domains. The representative subset of the specified sample size will be helpful to run through the SSM pipeline so that the use case runs faster and uses less memory. API reference in Documentation: Information about different classes (e.g Image), functions (e.g Image::antialias), function parameters, function return types in C++ API has been added. Check out Groups , Classes , Namespaces , Files for more details.","title":"User's Support"},{"location":"about/release-notes.html#deep-learning","text":"DeepSSM in Studio: The ability to run DeepSSM has been added to Studio. See DeepSSM in Studio for more details.","title":"Deep Learning"},{"location":"about/release-notes.html#improvements","text":"","title":"Improvements"},{"location":"about/release-notes.html#shapeworks-back-end_1","text":"Safe construction of Image instances in Python: Images can now be safely constructed without copying and passed without copying from/to Python. In particular, passing Images for rendering using pyvista is now transparent and copy-free (note: copying is still supported if necessary). A Jupyter Notebook was added to demonstrate Image initialization and passing. Efficient data sharing between Python and C++: Added efficient sharing of large data between Python and C++ (for both Mesh fields and Image data) that enables Python tools which access Mesh fields or Image data for visualization and analysis, or wish to create an Image or add fields from NumPy to a Mesh , to do so with optimal efficiency without fear of memory leak due to mishandled transfers. Improved Python APIs: Coordsys of images in Python can now be set using setCoordsys . Fixed Python bindings and improved interactive help where necessary. More efficient conversion of shapeworks Mesh in Python to vtk mesh by creating a PolyData instead of performing IO operations. Transforms in Image and Mesh API: Separate transforms such as center of mass, rigid registration and thin plate spiline can be created. They are passed efficiently and transparently between Python and C++. These transform functions create and accept numpy arrays instead of using proprietary transform type in the Python API. A jupyter notebook was to demonstrate this for images and meshes . Optimizer exports alignment transforms: Write individual procrustes transforms. The ShapeWorks Optimizer can now export individual procrustes transform files if requested. Use the xml tag 1 to enable it. Additionally, for project spreadsheets (e.g., Studio), individual procrustes transforms will be added as additional columns in the data sheet. See Optimize for more details. Improved testing: More robust testing of Python tests was achieved by adding code to ensure that all tests are performed for all functions, whereas before the test failure was reported immediately without testing if any related functions failed. Concrete seeding of random number generators (only for testing) is utilized to ensure objective comparison of results across all platforms. Improved verification of use case testing by comparing shape statistics compactness, generalization, and specificity against a good shape model instead of checking for a file. A log file ( verify.log ) is written that contains the use case outputs and summary.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#users-support_1","text":"Use cases: Added --mesh_mode option to image-based use cases. When running in mesh mode, after grooming segmentations, distance transforms are converted to meshes, and optimization is done directly on meshes, saving memory footprint and allowing the usage of geodesic distances for particle repulsion. This enables improved modeling for thin structures and high curvature regions. See Use Case Documentation for more details. Improved use cases documentation: Restructured use cases documentation to reduce repetition and better highlight the focus and differences of each demonstration. Added relevant documentation links for every step and parameter in use case descriptions. Reorganized use case documentation based on category (i.e., mesh-based, constraint-based, etc.). See Getting Started with Use Cases for information on running use cases and Examples for an overview of released use cases. More explanation of interpreting modes of variation in Shapes. What & From Where? . Restructured ellipsoid_evaluate use case: The computation time for calculating specificity, compactness, and generalization metrics have been dramatically reduced. A 50X speedup was experienced when calculating evaluation metrics for all modes for a dataset with 75 shapes, each with 1024 particles. We can now calculate the evaluation metrics for all the modes or query the values for a specified mode. The use case has been modified to demonstrate these functionalities. See Ellipsoid: Shape Evaluation in Python for more details.","title":"User's Support"},{"location":"about/release-notes.html#fixes_7","text":"","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-back-end_2","text":"Memory leak: Fixed memory leak issues in FEMesh operations","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#shapeworks-front-end_1","text":"Fix processing of all orientation images: We have fixed ShapeWorks to handle all orientations of images. Previously, only a subset (such as RAI) was fully compatible with all tools.","title":"ShapeWorks Front-end"},{"location":"about/release-notes.html#shapeworks-61-2021-06-28","text":"","title":"ShapeWorks 6.1 - 2021-06-28"},{"location":"about/release-notes.html#what-is-new_4","text":"","title":"What is new?"},{"location":"about/release-notes.html#shapeworks-back-end_3","text":"Improved shape models for convoluted structures: Geodesic distance-based repulsion is now supported for mesh domains. This improves results on structures with thin and/or convoluted features at the cost of increased memory and runtime. Refer to the thin_cavity_bean use case for an example. Optimizing shape models on contours: N-dimensional contour domains are now supported in ShapeWorks. Refer to the supershapes_1mode_contour use case for an example. Robust and scalable primitive-based constrained surface sampling: Constraints are now implemented by turning the problem into an unconstrained optimization using the augmented lagrangian inequality formulation. The new implementation supports both cutting planes and spheres. It also supports multiple constraints per domain/shape with different types. Consolidated library for shape statistics: The shapeworks computational library is updated to include refactored code for shape statistics, including functions to read particle files and compute eigenvectors, eigenvalues, and PCA loadings.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#shapeworks-front-end_2","text":"Grooming support for meshes in Studio: Multiple grooming features for mesh domains are added to Studio, including two methods for mesh smoothing, hole filling, mesh centering, and iterative closest point for rigid pre-alignment with automated reference shape selection. Multiple domains support in Studio: Multiple domains are added to Studio where shape models are optimized in the given domains' shared/joint shape spaces to capture inter-domains correlations and interactions. The way multiple domains are implemented allows for an arbitrary number of domains as long as all shape samples in a given cohort have the same domains. Furthermore, the multiple domain support enables modeling scenarios with mixed-type domains (e.g., meshes and contours). Python APIs for shape statistics: Python APIs for principal component analysis (PCA) are added for shape statistics. These APIs include reading particle files and computing eigenvectors, eigenvalues, and PCA loadings. See ellipsoid_pca for a demonstrating example.","title":"ShapeWorks Front-end"},{"location":"about/release-notes.html#users-support_2","text":"Multi-domain shape cohort generation: Ellipsoid joint generation is added to ShapeWorks' cohort generator python module. Shape cohorts with multiple domains can be generated with options to control the distance separating the domains and modes of variations (size/rotation). These cohorts can be used for troubleshooting multiple domain shape modeling workflows. New use cases: A new use case ( ellipsoid_pca ) demonstrating the usage of the new PCA tools is added. The thin_cavity_bean use case is added to demonstrate geodesic distance-based particle-to-particle interactions to demonstrate improved shape statistics and surface sampling for thin and convoluted structures. The supershapes_1mode_contour use case is added to demonstrate shape modeling using contour domains. Another two new use cases, ellipsoid_multiple_domain and ellipsoid_multiple_domain_mesh , are added to demonstrate a typical shape modeling workflow for multiple domains using binary segmentations and surface meshes, respectively.","title":"User's Support"},{"location":"about/release-notes.html#improvements_1","text":"","title":"Improvements"},{"location":"about/release-notes.html#shapeworks-back-end_4","text":"Particle splitting is agnostic to constraints: Particle splitting and constraints will no longer require that no particle violates constraints. It will work even if a particle violates a constraint. Multiple unit tests are added. Mesh reconstruction for multiple meshes: The warp-mesh command is extended to work with multiple meshes at the same time with the same reference mesh and points. Improvements to the Image and Mesh libraries: Exact specification of crop regions and clip plane for both images and meshes are enabled. Better error detection and handling. More robust automated testing to ensure improvements do not break existing functionality.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#shapeworks-front-end_3","text":"Multiple domain support: OptimizeUtils and AnalyzeUtils are updated to handle multiple domain datasets. Restructured use cases: Depreciated GroomUtils , CommonUtils , and EvaluationUtils . All use cases are restructured to make the grooming steps more transparent and demonstrate the usage of Python APIs with inline documentation. Improved ShapeWorks Python module library coverage: The entire ShapeWorks library framework now accessible via Python bindings. Python types support in ShapeWorks Python module: ShapeWorks Python module uses generic Python types (e.g., numpy, arrays, lists) rather than opaque wrappers for parameters to/from ShapeWorks objects. It is now possible to instantiate shapeworks.Image from a numpy array. One can now request raw image data as a numpy array. Safe dot-chain operations in ShapeWorks Python module: The \u201cdot chain\u201d operations are now safely enabled (e.g., img.translate([tx, ty, tz]).rotate(45, shapeworks::Z).scale([sx, sy, sz)) ) RunUseCase improvements: RunUseCase no longer requires --use_case before the use case name. This makes it simpler to use since omitting a use case name immediately prints help, which itself shows the list of use cases as a required argument rather than listing them with the other optional args. RunUseCase no longer accepts paths to shapeworks executables or Python modules. All of these are in the user's conda environment, or set using the devenv for testing by developers.","title":"ShapeWorks Front-end"},{"location":"about/release-notes.html#deep-learning-shape-modeling","text":"Refactored DeepSSM: Defined a config file for DeepSSM parameters that are used in training and testing. This will be helpful for parameter tuning, model comparison, and adding additional functionality and parameters to DeepSSM. DeepSSM with fine-tuning: A fine-tuning option has been added to DeepSSM. This allows the model to learn the mapping between the PCA space to the correspondence point space, improving accuracy. Improved DeepSSM evaluation: DeepSSM evaluation has been adapted to use ShapeWorks mesh warp function and Python binding mesh distance function. DeepSSM on both GPU and CPU: The DeepSSM use case has been adapted to run on both GPU and CPU. It is considerably faster on GPU but no longer exits when running on CPU.","title":"Deep Learning & Shape Modeling"},{"location":"about/release-notes.html#users-support_3","text":"Improved documentation: More clear documentation both from Python, the command line, and online are added. Improved notebooks: Notebooks are significantly simplified by moving helper functions into the ShapeWorks Python module, reducing redundant information, and using only the PyVista library for visualization. Improved installation: Users no longer are required to modify PATHs or pass parameters to find executables or import the ShapeWorks Python module. Installation works even if non-standard installation directories are used and it works on all platforms. New shapeworks environments can now be created using install_shapeworks [name] : This supports multiple installations on the same platform, where users can change installation just by activating a different conda environment. Clean installation for ShapeWorks Python module: ShapeWorks Python module is now seamlessly installed as part of ShapeWorks suite installation on all platforms. The Python module no longer requires any special path modifications to import.","title":"User's Support"},{"location":"about/release-notes.html#fixes_8","text":"","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-back-end_5","text":"Image to Array: ShapeWorks image functionality is fixed such that an image can be successfully converted to a numpy array and back to a ShapeWorks image.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#shapeworks-front-end_4","text":"Notebook visualization: Volume renderings using ITK Widgets were causing notebooks to crash on some platforms. The notebooks are now updated to no longer use ITK Widgets for visualization and instead use the more robust and stable PyVista library. Use case file writing: RunUseCase.py has been updated to check that the current folder is writable before proceeding so that use case output can be saved.","title":"ShapeWorks Front-end"},{"location":"about/release-notes.html#deep-learning-shape-modeling_1","text":"DeepSSM evaluation: The DeepSSM evaluation step in the use case is updated to use ShapeWorks mesh distance rather than the deprecated SurfaceToSurfaceDistance command.","title":"Deep Learning & Shape Modeling"},{"location":"about/release-notes.html#shapeworks-60-2021-03-30","text":"","title":"ShapeWorks 6.0 - 2021-03-30"},{"location":"about/release-notes.html#whats-new","text":"","title":"What's New"},{"location":"about/release-notes.html#users-support_4","text":"New discussion forum: We started an online discussion forum ( shapeworks.discourse.group ). This forum is a place for ShapeWorks users to discuss how to customize shape modeling workflows for their own use cases, troubleshoot issues end-users facing when using ShapeWorks, keep track of suggestions to improve the software and documentation, and ensure awareness of the latest ShapeWorks tools within the research community. Tiny tests for use cases: All use cases now have a tiny test that can be run using the --tiny_test option. When the tiny test is run, only the data necessary for the test is downloaded rather than all of the data. Running use cases on subsets: All of the use cases (mesh or segmentation based) can now be run on a subset of the data using the --use_subsample option. Note that the entire dataset is downloaded in this case so that a subset that is representative of the entire dataset can be selected. Generating shape cohorts: Example shape cohorts with analytic correspondences can now be generated using the ShapeWorks package GenerateShapeCohort . Currently, cohorts of parameterized ellipsoids or supershapes can be generated. Options are available to specify the degree to which the cohort is groomed (i.e., a cohort can be generated to be in alignment or misaligned in various ways). These cohorts can help with troubleshooting the shape modeling workflow. Notebook demonstrating cohort generation: A Jupyter notebook was added that demonstrates how to use GenerateShapeCohort.","title":"User's Support"},{"location":"about/release-notes.html#shapeworks-back-end_6","text":"Support for use_normals with meshes: Added support for surface normals when optimizing directly on meshes. This results in improved shape models on thin domains. See ShapeWorks Directly on Meshes for more details. Consolidation of mesh-based grooming tools: Updated the shapeworks API to include mesh-based grooming tools (smooth, decimate, invert normals, reflect, alignment, fill holes, probe volume at mesh vertices, clip, translate, scale, bounding box, quality control, surface to surface distance, to image and to distance transform). Added mesh-based query tools (center, center of mass, number of points, number of faces, get field names, set field, get field, set field value, get field value, get field range, get field mean, get field std and comparison). This includes a full complement of unit tests.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#all-in-one-studio-front-end","text":"Mesh support in Studio: Added support for mesh inputs with minimal grooming. See New in ShapeWorks Studio for more details. New and faster surface reconstruction: Added a new surface reconstruction method with support for both mesh or image inputs. This method is much faster and is the new default. See New in ShapeWorks Studio for more details. Feature maps support for meshes: Added support for loading and displaying scalar values from mesh inputs. See New in ShapeWorks Studio for more details. User help in Studio: Added user interface tooltips and Help->Keyboard shortcuts. Detailed optimization progress: Added particle count, initialization/optimization phase, and iteration count on the status bar in addition to the progress bar. (user feature request) Enabled aborting grooming: Added ability to abort grooming step.","title":"All-in-one Studio Front-end"},{"location":"about/release-notes.html#deep-learning-shape-modeling_2","text":"DeepSSM now saves both the \"best\" and \"final\" model: The final model is saved after all training epochs have run. The best model is saved after the epoch that had the lowest prediction error on the validation set. The best model makes use of early stopping to prevent overfitting. Visualization of DeepSSM errors: The error meshes that are output from running the DeepSSM use case can now be visualized in Studio. These meshes have a distance scalar field that captures the distance between the true and predicted mesh. To view in Studio simply run: ShapeWorksStudio path/to/error/mesh.vtk . Data augmentation handles modeling scenarios that need Procrustes alignment: Data augmentation can now be run on a dataset for which Procrustes was used in optimization. When both the local and world .particle files are passed as arguments for data augmentation, the translation is accounted for in the augmented data. Visualizing data augmentation: Parallel violin plots are used to compare the distribution of real and augmented data visually. Demonstrating data augmentation: A Jupyter notebook that demonstrates the data augmentation process has been added. In this notebook, parallel violin plots are used to compare the distribution of real and augmented data visually.","title":"Deep Learning & Shape Modeling"},{"location":"about/release-notes.html#improvements_2","text":"","title":"Improvements"},{"location":"about/release-notes.html#users-support_5","text":"Improved Python grooming utils: GroomUtils.py now uses Python binding rather than calling command-line tools.","title":"User's Support"},{"location":"about/release-notes.html#shapeworks-back-end_7","text":"Enable multi-threading on Mac platforms: Switched from OpenMP to TBB (thread building blocks), allowing multithreading on Mac. Performance improvements include a ~4x speedup on Mac laptop and same speed or better on Linux/Windows. Performance improvements in shapeworks optimize : ~20% faster optimization in mesh and image domains by replacing specific data structures (that were initially in place to allow interactive removal of particles during the optimization). ~50% faster optimization in mesh domain by caching nearest-triangle lookups.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#all-in-one-studio-front-end_1","text":"Improved Studio viewer: Added ability to use 2 viewers (in between 1 and 4). Added ability to choose orientation marker (medical, triad) and location (corner). Improved Studio interface: Added new checkbox for automatic glyph sizing. Added support for drag and drop of images and meshes. Scalar bar color is now opposite of background color (e.g., when the background is white, the text should be dark) (user request). Improved responsiveness: Improved particle shape statistics computation speed. Improved user interface responsiveness during optimization. Improved distance transform loading for surface reconstruction. Improved error handling: Enhanced error handling and graceful reporting of errors such as attempts to write/save to read-only directories and filesystems.","title":"All-in-one Studio Front-end"},{"location":"about/release-notes.html#deep-learning-shape-modeling_3","text":"More control on data augmentation: In data augmentation, the user can now either specify how many PCA components to retain in embedding OR what percentage of population variability to retain. For example, suppose the user specifies that 95% of population variability should be kept. In that case, the number of components will be automatically selected such that less than 5% of shape variation is lost in embedding.","title":"Deep Learning & Shape Modeling"},{"location":"about/release-notes.html#fixes_9","text":"","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-back-end_8","text":"Replaced mesh library: Replaced backend mesh library to fix bugs that caused optimizer crashing when optimizing particles directly on meshes. Gradient of normals for image domain: Corrected a long-standing bug where we used the hessian in place of the gradient of the normal. If you have an existing use case with use_normals enabled, the normal weighting may have to be adjusted. Cutting planes constraints for mesh domains: Fixed a bug in the integration of mesh domains with cutting planes constraints, where the optimization gets stuck due to the fact that constraints get violated when not being considered by geodesic walks.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#all-in-one-studio-front-end_2","text":"Fixed bugs in Data: Fixed a bug when adding and removing shapes. Studio now appends .xlsx when saving a project file. Fixed bugs in Optimize: Studio optimize default for initial relative weighting is smaller than relative weighting to enable a better surface sampling during initialization. Enable file menu when the optimization is aborted. Fixed bugs in Analyze: Limit PCA modes to the number of samples - 1. Surface reconstruction for spheres is fixed. Fixed a bug that produced blank screens and error messages on the consoles when switching out of analysis while PCA animation is running. Fixed a sample display bug that occurred when loading XML project for analysis and exploring individual samples after switching to PCA animation.","title":"All-in-one Studio Front-end"},{"location":"about/release-notes.html#shapeworks-550-2020-10-15","text":"","title":"ShapeWorks 5.5.0 - 2020-10-15"},{"location":"about/release-notes.html#whats-new_1","text":"","title":"What's New"},{"location":"about/release-notes.html#users-support_6","text":"Revamped documentation: New documentation to support both end-users and open-source developer community in one easily navigable place. This documentation includes background information about statistical shape modeling, the scientific premise of ShapeWorks, and how to get started. It also demonstrates the latest software features, exemplar use cases, and instructions to build/install ShapeWorks. Optimized shape models for use cases: All datasets on the ShapeWorks Data Portal now have the shape model output from running the use cases with a corresponding analyze.xml for launching Studio. Users can cd to where the data is extracted and call ShapeWorksStudio analyze.xml to visualize these shape models.","title":"User's Support"},{"location":"about/release-notes.html#shapeworks-back-end_9","text":"ShapeWorks directly on meshes: ShapeWorks now supports particle optimization directly on triangular surface meshes. This mesh support also enables working with open meshes without additional user inputs. See ShapeWorks Directly on Meshes for more details. For exemplar use cases, see Femur Mesh: SSM directly from meshes and Lumps: SSM directly from meshes to learn how to get started. This mesh support allows for significant memory savings (9.2GB to 53MB in the femur use case) . New ShapeWorks API: Consolidation of image-based and segmentation-based grooming tools that creates a stable and reusable API making it much easier and more flexible for users to groom their datasets. This includes a full complement of unit tests. See ShapeWorks API for more details.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#all-in-one-studio-front-end_3","text":"Feature maps support: Studio supports the integration of 3d volume feature maps to map imaging data to the optimized shape model. See New in ShapeWorks Studio for more details. New interface for group analysis: Studio supports group definitions from spreadsheets. The new interface supports multiple group sets within the same project file and categorical groups compared to the old binary groups (i.e., yes/no) setting. See New in ShapeWorks Studio for more details. User notes in Studio: Studio stores/loads a rich text notes section in the spreadsheet.","title":"All-in-one Studio Front-end"},{"location":"about/release-notes.html#deep-learning-shape-modeling_4","text":"New Python package for model-based data augmentation: A Python package for data augmentation has been added. See Data Augmentation for Deep Learning for more details. DeepSSM Python package: A Python package has been added for a deep learning framework that estimates statistical representations of shape directly from unsegmented images once trained. See SSMs Directly from Images for more details. New DeepSSM use case: We added a new use case called deep_ssm that demonstrates data augmentation and deep learning on the femur data. See Femur SSM Directly from Images for more details.","title":"Deep Learning & Shape Modeling"},{"location":"about/release-notes.html#improvements_3","text":"","title":"Improvements"},{"location":"about/release-notes.html#users-support_7","text":"Improved data/output organization for use cases: Use case organization has been updated such that downloaded data goes into one folder ( ShapeWorks/Examples/Python/Data/ ) and use case output goes into another ( ShapeWorks/Examples/Python/Output/ ). This organization will avoid re-downloading use case datasets if the user deleted the output folder. Enable only-shape data for the femur use case: Femur use case demonstrates the processing workflow starting from surface meshes and can now be run without grooming images (in case they are not available). To groom with images, use the --start_with_image_and_segmentation_data tag. If this tag is not included, images will not be used in grooming.","title":"User's Support"},{"location":"about/release-notes.html#shapeworks-back-end_10","text":"Improved constrained particle optimization: An improved implementation for cutting planes that support single and multiple cutting planes per sample has been added. This can be used in modeling scenarios where statistical modeling/analysis is needed for a region-of-interest on the anatomy/object-class at hand without having to affect the input data. See Ellipsoid: Cutting Planes and Femur with Cutting Planes for exemplar use cases.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#all-in-one-studio-front-end_4","text":"Improved interface design for Studio: User interface improvements to Studio have been added. These improvements include collapsable analysis panels to improve screen usability, a cleaner file menu, an about box that shows website information and software version, and a splash screen that enables the opening of new/recent projects.","title":"All-in-one Studio Front-end"},{"location":"about/release-notes.html#fixes_10","text":"","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-back-end_11","text":"Constraint-aware particles initialization and optimization: The initialization and optimization steps now respect the user-defined constraints when using signed distance transforms. Hence, at no point, particles will violate the constraints, allowing for arbitrarily defined cutting planes. Constraint-aware particles splitting: Added constraint aware particle splitting for signed distance transforms. The particle splitting only occurred towards a single quadrant. This is fixed by allowing particle splits to shift in a different direction for each particle in every domain. Constraint-aware particle projection: Projecting particles on the surface while manipulating/optimizing particle position now respects the user-defined constraints.","title":"ShapeWorks Back-end"},{"location":"about/release-notes.html#shapeworks-541-2020-06-15","text":"","title":"ShapeWorks 5.4.1 - 2020-06-15"},{"location":"about/release-notes.html#fixes_11","text":"ShapeWorks Studio: Fixed crash when importing data on a new/blank project.","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-540-2020-06-10","text":"","title":"ShapeWorks 5.4.0 - 2020-06-10"},{"location":"about/release-notes.html#whats-new_2","text":"New, flexible ShapeWorks project file format: New spreadsheet (XLSX) based project file format that can easily handle multiple shape modeling scenarios. It is now fully integrated into Studio. See the ellipsoid studio example in Examples/Studio/ellipsoid.xlsx for an example. Exporting shape parameters: Added PCA Raw Component Score Export to Studio. New Getting Started documentation: New Getting started documentation goes over shape modeling workflow documentation, different ShapeWorks interfaces with a video illustration for Studio. Lower memory footprint and faster optimization: ShapeWorks is now using OpenVDB , a more memory-efficient data structure, for signed distance transforms. Along with other refactoring and code optimizations, ShapeWorks now uses 85% less memory (from 57.09GB to 9.67GB in one use case). Additionally, the particle optimizer is now 2X faster . Automated development builds: We now offer up-to-date development binary builds that track the master branch, available here . Please understand that these are in-progress development builds, not official releases.","title":"What's New"},{"location":"about/release-notes.html#improvements_4","text":"Improved scalability for Studio: Files now loaded on-demand as necessary. Restructured datasets portal: Better and more consistent directory structure for use cases datasets. See datasets guidelines for more details. Visit our ShapeWorks Portal to register and download datasets to run use cases . Lower memory footprint for estimating correspondences for new shapes on existing shape models: For usage, only distance transforms for the new shapes will be loaded. Improved use case documentation: Better documentation for the RunUseCase input arguments. Documentation for running existing shape models: Added instructions on how to load a pre-trained shape model without running the full pipeline. Consistent cross-platform splitting direction: Correspondence point splits take a random direction, but are now consistent and repeatable across platforms for reproducible shape models.","title":"Improvements"},{"location":"about/release-notes.html#fixes_12","text":"Mesh export in Studio: Changed exported meshes to be compatible with CloudCompare","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-530-2020-02-20","text":"","title":"ShapeWorks 5.3.0 - 2020-02-20"},{"location":"about/release-notes.html#whats-new_3","text":"Use cases: Added fixed domains use case that demonstrates adding a single shape to an existing shape model Use cases: Added ellipsoid evaluation use that demonstrates the quantitative evaluation of the ellipsoid New commands: Added commands to the shapeworks executable to quantitatively evaluate shape models: read-particle-system, compactness, generalization, specificity New shapeworks executables commands: read-image, write-image, antialias, isoresample, binarize, recenter-image, pad. New build method: Separate build_dependencies script (see Documentation/Build/BUILD.md)","title":"What's New"},{"location":"about/release-notes.html#improvements_5","text":"Use cases: Updated femur use case with an interactive cutting plane selection Studio: Replaced bar chart with explained variance chart","title":"Improvements"},{"location":"about/release-notes.html#shapeworks-522-2020-01-09","text":"","title":"ShapeWorks 5.2.2 - 2020-01-09"},{"location":"about/release-notes.html#fixes_13","text":"Returned to superbuild.sh build process Fixed non-Qt build Fixed Windows conda_installs.bat Studio: Fixed import and processing of non-RAI image volumes Studio: Fix centering of groomed and reconstructed volumes","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-521-2019-11-09","text":"","title":"ShapeWorks 5.2.1 - 2019-11-09"},{"location":"about/release-notes.html#fixes_14","text":"Fix examples, binaries","title":"Fixes"},{"location":"about/release-notes.html#shapeworks-520-2019-11-07","text":"","title":"ShapeWorks 5.2.0 - 2019-11-07"},{"location":"about/release-notes.html#whats-new_4","text":"Studio: Added live particle optimization updates Studio: Added \"Stop optimization\" button Use cases: Added a femur use case that demonstrates grooming surface meshes along with imaging data for shape modeling Use cases: Added a left atrium use case that demonstrates grooming images data along with shape data and build multi-scale shape models Use cases: New portal downloadable example data (ellipsoid, left atrium, and femurs) Windows installer and binary releases for Mac and Linux CMake-based superbuild with all dependencies built automatically","title":"What's New"},{"location":"about/release-notes.html#improvements_6","text":"Studio: Added support for reading View2 parameter files Studio: Added legacy (View2) surface reconstructor Studio: Replaced optimization library with same used by ShapeWorksRun","title":"Improvements"},{"location":"about/release-notes.html#fixes_15","text":"Studio: Fixes crashes on exit during optimizations (clean shutdown of threads)","title":"Fixes"},{"location":"about/team.html","text":"Meet ShapeWorkers! Principal Investigators Shireen Elhabian Ross Whitaker Software Developers Alan Morris Cameron Christensen Archanasri Subramanian Researchers Riddhish Bhalodia Jadie Adams Hong Xu Krithika Iyer Tushar Kataria Past Contributors Joshua Cates (now @Orthogrid Inc.) Manasi Datar (now @Siemens) Brig Bagley Praful Agrawal (now @Amazon Inc.) Oleks Korshak (now @Microsoft) Anupama Goparaju (now @ Galileo Financial Technologies) Atefeh Ghanaatikashani (now @ Tesla Inc.) Karthik Karanth (now @ Adobe)","title":"Meet ShapeWorkers!"},{"location":"about/team.html#meet-shapeworkers","text":"","title":"Meet ShapeWorkers!"},{"location":"about/team.html#principal-investigators","text":"Shireen Elhabian Ross Whitaker","title":"Principal Investigators"},{"location":"about/team.html#software-developers","text":"Alan Morris Cameron Christensen Archanasri Subramanian","title":"Software Developers"},{"location":"about/team.html#researchers","text":"Riddhish Bhalodia Jadie Adams Hong Xu Krithika Iyer Tushar Kataria","title":"Researchers"},{"location":"about/team.html#past-contributors","text":"Joshua Cates (now @Orthogrid Inc.) Manasi Datar (now @Siemens) Brig Bagley Praful Agrawal (now @Amazon Inc.) Oleks Korshak (now @Microsoft) Anupama Goparaju (now @ Galileo Financial Technologies) Atefeh Ghanaatikashani (now @ Tesla Inc.) Karthik Karanth (now @ Adobe)","title":"Past Contributors"},{"location":"api/Classes/classColorScheme.html","text":"ColorScheme Public Classes Name struct rgb Public Functions Name QColor background_qcolor (int alpha) QColor foreground_qcolor () QColor get_text_color () double get_text_intensity () ColorScheme () ~ColorScheme () Public Attributes Name rgb foreground rgb background rgb alt Public Functions Documentation function background_qcolor inline QColor background_qcolor ( int alpha ) function foreground_qcolor inline QColor foreground_qcolor () function get_text_color inline QColor get_text_color () function get_text_intensity inline double get_text_intensity () function ColorScheme inline ColorScheme () function ~ColorScheme inline ~ ColorScheme () Public Attributes Documentation variable foreground rgb foreground ; variable background rgb background ; variable alt rgb alt ; Updated on 2023-10-24 at 22:16:02 +0000","title":"ColorScheme"},{"location":"api/Classes/classColorScheme.html#colorscheme","text":"","title":"ColorScheme"},{"location":"api/Classes/classColorScheme.html#public-classes","text":"Name struct rgb","title":"Public Classes"},{"location":"api/Classes/classColorScheme.html#public-functions","text":"Name QColor background_qcolor (int alpha) QColor foreground_qcolor () QColor get_text_color () double get_text_intensity () ColorScheme () ~ColorScheme ()","title":"Public Functions"},{"location":"api/Classes/classColorScheme.html#public-attributes","text":"Name rgb foreground rgb background rgb alt","title":"Public Attributes"},{"location":"api/Classes/classColorScheme.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classColorScheme.html#function-background_qcolor","text":"inline QColor background_qcolor ( int alpha )","title":"function background_qcolor"},{"location":"api/Classes/classColorScheme.html#function-foreground_qcolor","text":"inline QColor foreground_qcolor ()","title":"function foreground_qcolor"},{"location":"api/Classes/classColorScheme.html#function-get_text_color","text":"inline QColor get_text_color ()","title":"function get_text_color"},{"location":"api/Classes/classColorScheme.html#function-get_text_intensity","text":"inline double get_text_intensity ()","title":"function get_text_intensity"},{"location":"api/Classes/classColorScheme.html#function-colorscheme","text":"inline ColorScheme ()","title":"function ColorScheme"},{"location":"api/Classes/classColorScheme.html#function-colorscheme_1","text":"inline ~ ColorScheme ()","title":"function ~ColorScheme"},{"location":"api/Classes/classColorScheme.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classColorScheme.html#variable-foreground","text":"rgb foreground ;","title":"variable foreground"},{"location":"api/Classes/classColorScheme.html#variable-background","text":"rgb background ;","title":"variable background"},{"location":"api/Classes/classColorScheme.html#variable-alt","text":"rgb alt ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable alt"},{"location":"api/Classes/classColorSchemes.html","text":"ColorSchemes Inherits from std::vector< ColorScheme > Public Functions Name ColorSchemes () ~ColorSchemes () Public Functions Documentation function ColorSchemes inline ColorSchemes () function ~ColorSchemes inline ~ ColorSchemes () Updated on 2023-10-24 at 22:16:02 +0000","title":"ColorSchemes"},{"location":"api/Classes/classColorSchemes.html#colorschemes","text":"Inherits from std::vector< ColorScheme >","title":"ColorSchemes"},{"location":"api/Classes/classColorSchemes.html#public-functions","text":"Name ColorSchemes () ~ColorSchemes ()","title":"Public Functions"},{"location":"api/Classes/classColorSchemes.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classColorSchemes.html#function-colorschemes","text":"inline ColorSchemes ()","title":"function ColorSchemes"},{"location":"api/Classes/classColorSchemes.html#function-colorschemes_1","text":"inline ~ ColorSchemes () Updated on 2023-10-24 at 22:16:02 +0000","title":"function ~ColorSchemes"},{"location":"api/Classes/classCustomSlider.html","text":"CustomSlider Inherits from QSlider Public Functions Name CustomSlider (Qt::Orientation orientation, QWidget * parent =nullptr) CustomSlider (QWidget * parent =nullptr) Protected Functions Name virtual void paintEvent (QPaintEvent * ev) Public Functions Documentation function CustomSlider inline explicit CustomSlider ( Qt :: Orientation orientation , QWidget * parent = nullptr ) function CustomSlider explicit CustomSlider ( QWidget * parent = nullptr ) Protected Functions Documentation function paintEvent virtual void paintEvent ( QPaintEvent * ev ) Updated on 2023-10-24 at 22:16:02 +0000","title":"CustomSlider"},{"location":"api/Classes/classCustomSlider.html#customslider","text":"Inherits from QSlider","title":"CustomSlider"},{"location":"api/Classes/classCustomSlider.html#public-functions","text":"Name CustomSlider (Qt::Orientation orientation, QWidget * parent =nullptr) CustomSlider (QWidget * parent =nullptr)","title":"Public Functions"},{"location":"api/Classes/classCustomSlider.html#protected-functions","text":"Name virtual void paintEvent (QPaintEvent * ev)","title":"Protected Functions"},{"location":"api/Classes/classCustomSlider.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classCustomSlider.html#function-customslider","text":"inline explicit CustomSlider ( Qt :: Orientation orientation , QWidget * parent = nullptr )","title":"function CustomSlider"},{"location":"api/Classes/classCustomSlider.html#function-customslider_1","text":"explicit CustomSlider ( QWidget * parent = nullptr )","title":"function CustomSlider"},{"location":"api/Classes/classCustomSlider.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classCustomSlider.html#function-paintevent","text":"virtual void paintEvent ( QPaintEvent * ev ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function paintEvent"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html","text":"CustomSurfaceReconstructionFilter Inherits from vtkImageAlgorithm Public Functions Name vtkTypeMacro ( CustomSurfaceReconstructionFilter , vtkImageAlgorithm ) void PrintSelf (ostream & os, vtkIndent indent) vtkGetMacro (NeighborhoodSize , int ) vtkSetMacro (NeighborhoodSize , int ) vtkGetMacro (SampleSpacing , double ) vtkSetMacro (SampleSpacing , double ) CustomSurfaceReconstructionFilter * New () Protected Functions Name CustomSurfaceReconstructionFilter () ~CustomSurfaceReconstructionFilter () virtual int RequestInformation (vtkInformation * , vtkInformationVector ** , vtkInformationVector * ) virtual int RequestData (vtkInformation * , vtkInformationVector ** , vtkInformationVector * ) virtual int FillInputPortInformation (int , vtkInformation * ) Protected Attributes Name int NeighborhoodSize double SampleSpacing Public Functions Documentation function vtkTypeMacro vtkTypeMacro ( CustomSurfaceReconstructionFilter , vtkImageAlgorithm ) function PrintSelf void PrintSelf ( ostream & os , vtkIndent indent ) function vtkGetMacro vtkGetMacro ( NeighborhoodSize , int ) function vtkSetMacro vtkSetMacro ( NeighborhoodSize , int ) function vtkGetMacro vtkGetMacro ( SampleSpacing , double ) function vtkSetMacro vtkSetMacro ( SampleSpacing , double ) function New static CustomSurfaceReconstructionFilter * New () Protected Functions Documentation function CustomSurfaceReconstructionFilter CustomSurfaceReconstructionFilter () function ~CustomSurfaceReconstructionFilter inline ~ CustomSurfaceReconstructionFilter () function RequestInformation virtual int RequestInformation ( vtkInformation * , vtkInformationVector ** , vtkInformationVector * ) function RequestData virtual int RequestData ( vtkInformation * , vtkInformationVector ** , vtkInformationVector * ) function FillInputPortInformation virtual int FillInputPortInformation ( int , vtkInformation * ) Protected Attributes Documentation variable NeighborhoodSize int NeighborhoodSize ; variable SampleSpacing double SampleSpacing ; Updated on 2023-10-24 at 22:16:02 +0000","title":"CustomSurfaceReconstructionFilter"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#customsurfacereconstructionfilter","text":"Inherits from vtkImageAlgorithm","title":"CustomSurfaceReconstructionFilter"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#public-functions","text":"Name vtkTypeMacro ( CustomSurfaceReconstructionFilter , vtkImageAlgorithm ) void PrintSelf (ostream & os, vtkIndent indent) vtkGetMacro (NeighborhoodSize , int ) vtkSetMacro (NeighborhoodSize , int ) vtkGetMacro (SampleSpacing , double ) vtkSetMacro (SampleSpacing , double ) CustomSurfaceReconstructionFilter * New ()","title":"Public Functions"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#protected-functions","text":"Name CustomSurfaceReconstructionFilter () ~CustomSurfaceReconstructionFilter () virtual int RequestInformation (vtkInformation * , vtkInformationVector ** , vtkInformationVector * ) virtual int RequestData (vtkInformation * , vtkInformationVector ** , vtkInformationVector * ) virtual int FillInputPortInformation (int , vtkInformation * )","title":"Protected Functions"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#protected-attributes","text":"Name int NeighborhoodSize double SampleSpacing","title":"Protected Attributes"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-vtktypemacro","text":"vtkTypeMacro ( CustomSurfaceReconstructionFilter , vtkImageAlgorithm )","title":"function vtkTypeMacro"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-printself","text":"void PrintSelf ( ostream & os , vtkIndent indent )","title":"function PrintSelf"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-vtkgetmacro","text":"vtkGetMacro ( NeighborhoodSize , int )","title":"function vtkGetMacro"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-vtksetmacro","text":"vtkSetMacro ( NeighborhoodSize , int )","title":"function vtkSetMacro"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-vtkgetmacro_1","text":"vtkGetMacro ( SampleSpacing , double )","title":"function vtkGetMacro"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-vtksetmacro_1","text":"vtkSetMacro ( SampleSpacing , double )","title":"function vtkSetMacro"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-new","text":"static CustomSurfaceReconstructionFilter * New ()","title":"function New"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-customsurfacereconstructionfilter","text":"CustomSurfaceReconstructionFilter ()","title":"function CustomSurfaceReconstructionFilter"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-customsurfacereconstructionfilter_1","text":"inline ~ CustomSurfaceReconstructionFilter ()","title":"function ~CustomSurfaceReconstructionFilter"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-requestinformation","text":"virtual int RequestInformation ( vtkInformation * , vtkInformationVector ** , vtkInformationVector * )","title":"function RequestInformation"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-requestdata","text":"virtual int RequestData ( vtkInformation * , vtkInformationVector ** , vtkInformationVector * )","title":"function RequestData"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#function-fillinputportinformation","text":"virtual int FillInputPortInformation ( int , vtkInformation * )","title":"function FillInputPortInformation"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#variable-neighborhoodsize","text":"int NeighborhoodSize ;","title":"variable NeighborhoodSize"},{"location":"api/Classes/classCustomSurfaceReconstructionFilter.html#variable-samplespacing","text":"double SampleSpacing ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable SampleSpacing"},{"location":"api/Classes/classFEAreaCoverage.html","text":"FEAreaCoverage Public Functions Name FEAreaCoverage () void SetSelection1 (vector< int > & s) void SetSelection2 (vector< int > & s) vector< double > Apply (std::shared_ptr< FEMesh > mesh1, std::shared_ptr< FEMesh > mesh2) void AllowBackIntersection (bool b) bool AllowBackIntersection () const void SetAngleThreshold (double w) double GetAngleThreshold () const void SetBackSearchRadius (double R) double GetBackSearchRadius () const Protected Functions Name void UpdateSurface (FEAreaCoverage::Surface & s) bool intersect (const vec3d & r, const vec3d & N, FEAreaCoverage::Surface & surf, Intersection & q) bool faceIntersect (FEAreaCoverage::Surface & surf, const Ray & ray, int nface, Intersection & q) Protected Attributes Name Surface m_surf1 Surface m_surf2 bool m_ballowBackIntersections double m_angleThreshold double m_backSearchRadius Public Functions Documentation function FEAreaCoverage FEAreaCoverage () function SetSelection1 inline void SetSelection1 ( vector < int > & s ) function SetSelection2 inline void SetSelection2 ( vector < int > & s ) function Apply vector < double > Apply ( std :: shared_ptr < FEMesh > mesh1 , std :: shared_ptr < FEMesh > mesh2 ) function AllowBackIntersection void AllowBackIntersection ( bool b ) function AllowBackIntersection bool AllowBackIntersection () const function SetAngleThreshold void SetAngleThreshold ( double w ) function GetAngleThreshold double GetAngleThreshold () const function SetBackSearchRadius void SetBackSearchRadius ( double R ) function GetBackSearchRadius double GetBackSearchRadius () const Protected Functions Documentation function UpdateSurface void UpdateSurface ( FEAreaCoverage :: Surface & s ) function intersect bool intersect ( const vec3d & r , const vec3d & N , FEAreaCoverage :: Surface & surf , Intersection & q ) function faceIntersect bool faceIntersect ( FEAreaCoverage :: Surface & surf , const Ray & ray , int nface , Intersection & q ) Protected Attributes Documentation variable m_surf1 Surface m_surf1 ; variable m_surf2 Surface m_surf2 ; variable m_ballowBackIntersections bool m_ballowBackIntersections ; variable m_angleThreshold double m_angleThreshold ; variable m_backSearchRadius double m_backSearchRadius ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEAreaCoverage"},{"location":"api/Classes/classFEAreaCoverage.html#feareacoverage","text":"","title":"FEAreaCoverage"},{"location":"api/Classes/classFEAreaCoverage.html#public-functions","text":"Name FEAreaCoverage () void SetSelection1 (vector< int > & s) void SetSelection2 (vector< int > & s) vector< double > Apply (std::shared_ptr< FEMesh > mesh1, std::shared_ptr< FEMesh > mesh2) void AllowBackIntersection (bool b) bool AllowBackIntersection () const void SetAngleThreshold (double w) double GetAngleThreshold () const void SetBackSearchRadius (double R) double GetBackSearchRadius () const","title":"Public Functions"},{"location":"api/Classes/classFEAreaCoverage.html#protected-functions","text":"Name void UpdateSurface (FEAreaCoverage::Surface & s) bool intersect (const vec3d & r, const vec3d & N, FEAreaCoverage::Surface & surf, Intersection & q) bool faceIntersect (FEAreaCoverage::Surface & surf, const Ray & ray, int nface, Intersection & q)","title":"Protected Functions"},{"location":"api/Classes/classFEAreaCoverage.html#protected-attributes","text":"Name Surface m_surf1 Surface m_surf2 bool m_ballowBackIntersections double m_angleThreshold double m_backSearchRadius","title":"Protected Attributes"},{"location":"api/Classes/classFEAreaCoverage.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEAreaCoverage.html#function-feareacoverage","text":"FEAreaCoverage ()","title":"function FEAreaCoverage"},{"location":"api/Classes/classFEAreaCoverage.html#function-setselection1","text":"inline void SetSelection1 ( vector < int > & s )","title":"function SetSelection1"},{"location":"api/Classes/classFEAreaCoverage.html#function-setselection2","text":"inline void SetSelection2 ( vector < int > & s )","title":"function SetSelection2"},{"location":"api/Classes/classFEAreaCoverage.html#function-apply","text":"vector < double > Apply ( std :: shared_ptr < FEMesh > mesh1 , std :: shared_ptr < FEMesh > mesh2 )","title":"function Apply"},{"location":"api/Classes/classFEAreaCoverage.html#function-allowbackintersection","text":"void AllowBackIntersection ( bool b )","title":"function AllowBackIntersection"},{"location":"api/Classes/classFEAreaCoverage.html#function-allowbackintersection_1","text":"bool AllowBackIntersection () const","title":"function AllowBackIntersection"},{"location":"api/Classes/classFEAreaCoverage.html#function-setanglethreshold","text":"void SetAngleThreshold ( double w )","title":"function SetAngleThreshold"},{"location":"api/Classes/classFEAreaCoverage.html#function-getanglethreshold","text":"double GetAngleThreshold () const","title":"function GetAngleThreshold"},{"location":"api/Classes/classFEAreaCoverage.html#function-setbacksearchradius","text":"void SetBackSearchRadius ( double R )","title":"function SetBackSearchRadius"},{"location":"api/Classes/classFEAreaCoverage.html#function-getbacksearchradius","text":"double GetBackSearchRadius () const","title":"function GetBackSearchRadius"},{"location":"api/Classes/classFEAreaCoverage.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classFEAreaCoverage.html#function-updatesurface","text":"void UpdateSurface ( FEAreaCoverage :: Surface & s )","title":"function UpdateSurface"},{"location":"api/Classes/classFEAreaCoverage.html#function-intersect","text":"bool intersect ( const vec3d & r , const vec3d & N , FEAreaCoverage :: Surface & surf , Intersection & q )","title":"function intersect"},{"location":"api/Classes/classFEAreaCoverage.html#function-faceintersect","text":"bool faceIntersect ( FEAreaCoverage :: Surface & surf , const Ray & ray , int nface , Intersection & q )","title":"function faceIntersect"},{"location":"api/Classes/classFEAreaCoverage.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFEAreaCoverage.html#variable-m_surf1","text":"Surface m_surf1 ;","title":"variable m_surf1"},{"location":"api/Classes/classFEAreaCoverage.html#variable-m_surf2","text":"Surface m_surf2 ;","title":"variable m_surf2"},{"location":"api/Classes/classFEAreaCoverage.html#variable-m_ballowbackintersections","text":"bool m_ballowBackIntersections ;","title":"variable m_ballowBackIntersections"},{"location":"api/Classes/classFEAreaCoverage.html#variable-m_anglethreshold","text":"double m_angleThreshold ;","title":"variable m_angleThreshold"},{"location":"api/Classes/classFEAreaCoverage.html#variable-m_backsearchradius","text":"double m_backSearchRadius ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_backSearchRadius"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html","text":"FEAreaCoverage::Surface Public Functions Name Surface () int Faces () void Create (std::shared_ptr< FEMesh > m) int Nodes () Public Attributes Name std::shared_ptr< FEMesh > m_mesh vector< int > m_face vector< int > m_node vector< vec3d > m_pos vector< int > m_lnode vector< vec3d > m_norm vector< vec3d > m_fnorm vector< vector< int > > m_NLT Public Functions Documentation function Surface inline Surface () function Faces inline int Faces () function Create void Create ( std :: shared_ptr < FEMesh > m ) function Nodes inline int Nodes () Public Attributes Documentation variable m_mesh std :: shared_ptr < FEMesh > m_mesh ; variable m_face vector < int > m_face ; variable m_node vector < int > m_node ; variable m_pos vector < vec3d > m_pos ; variable m_lnode vector < int > m_lnode ; variable m_norm vector < vec3d > m_norm ; variable m_fnorm vector < vec3d > m_fnorm ; variable m_NLT vector < vector < int > > m_NLT ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEAreaCoverage::Surface"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#feareacoveragesurface","text":"","title":"FEAreaCoverage::Surface"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#public-functions","text":"Name Surface () int Faces () void Create (std::shared_ptr< FEMesh > m) int Nodes ()","title":"Public Functions"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#public-attributes","text":"Name std::shared_ptr< FEMesh > m_mesh vector< int > m_face vector< int > m_node vector< vec3d > m_pos vector< int > m_lnode vector< vec3d > m_norm vector< vec3d > m_fnorm vector< vector< int > > m_NLT","title":"Public Attributes"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#function-surface","text":"inline Surface ()","title":"function Surface"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#function-faces","text":"inline int Faces ()","title":"function Faces"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#function-create","text":"void Create ( std :: shared_ptr < FEMesh > m )","title":"function Create"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#function-nodes","text":"inline int Nodes ()","title":"function Nodes"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_mesh","text":"std :: shared_ptr < FEMesh > m_mesh ;","title":"variable m_mesh"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_face","text":"vector < int > m_face ;","title":"variable m_face"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_node","text":"vector < int > m_node ;","title":"variable m_node"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_pos","text":"vector < vec3d > m_pos ;","title":"variable m_pos"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_lnode","text":"vector < int > m_lnode ;","title":"variable m_lnode"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_norm","text":"vector < vec3d > m_norm ;","title":"variable m_norm"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_fnorm","text":"vector < vec3d > m_fnorm ;","title":"variable m_fnorm"},{"location":"api/Classes/classFEAreaCoverage_1_1Surface.html#variable-m_nlt","text":"vector < vector < int > > m_NLT ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_NLT"},{"location":"api/Classes/classFEAutoMesher.html","text":"FEAutoMesher Public Functions Name FEAutoMesher () void BuildMesh ( FEMesh * pm) void AutoPartitionSurface ( FEMesh & m) void AutoPartitionEdges ( FEMesh & m) void AutoPartitionNodes ( FEMesh & m) void Repartition ( FEMesh & m) void SetSmoothingAngle (double w) double GetSmoothingAngle () Protected Functions Name void BuildFaces ( FEMesh & m) void BuildEdges ( FEMesh & m) Protected Attributes Name FEMesh * m_pm double m_wsmooth Public Functions Documentation function FEAutoMesher FEAutoMesher () function BuildMesh void BuildMesh ( FEMesh * pm ) function AutoPartitionSurface void AutoPartitionSurface ( FEMesh & m ) function AutoPartitionEdges void AutoPartitionEdges ( FEMesh & m ) function AutoPartitionNodes void AutoPartitionNodes ( FEMesh & m ) function Repartition void Repartition ( FEMesh & m ) function SetSmoothingAngle inline void SetSmoothingAngle ( double w ) function GetSmoothingAngle inline double GetSmoothingAngle () Protected Functions Documentation function BuildFaces void BuildFaces ( FEMesh & m ) function BuildEdges void BuildEdges ( FEMesh & m ) Protected Attributes Documentation variable m_pm FEMesh * m_pm ; variable m_wsmooth double m_wsmooth ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEAutoMesher"},{"location":"api/Classes/classFEAutoMesher.html#feautomesher","text":"","title":"FEAutoMesher"},{"location":"api/Classes/classFEAutoMesher.html#public-functions","text":"Name FEAutoMesher () void BuildMesh ( FEMesh * pm) void AutoPartitionSurface ( FEMesh & m) void AutoPartitionEdges ( FEMesh & m) void AutoPartitionNodes ( FEMesh & m) void Repartition ( FEMesh & m) void SetSmoothingAngle (double w) double GetSmoothingAngle ()","title":"Public Functions"},{"location":"api/Classes/classFEAutoMesher.html#protected-functions","text":"Name void BuildFaces ( FEMesh & m) void BuildEdges ( FEMesh & m)","title":"Protected Functions"},{"location":"api/Classes/classFEAutoMesher.html#protected-attributes","text":"Name FEMesh * m_pm double m_wsmooth","title":"Protected Attributes"},{"location":"api/Classes/classFEAutoMesher.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEAutoMesher.html#function-feautomesher","text":"FEAutoMesher ()","title":"function FEAutoMesher"},{"location":"api/Classes/classFEAutoMesher.html#function-buildmesh","text":"void BuildMesh ( FEMesh * pm )","title":"function BuildMesh"},{"location":"api/Classes/classFEAutoMesher.html#function-autopartitionsurface","text":"void AutoPartitionSurface ( FEMesh & m )","title":"function AutoPartitionSurface"},{"location":"api/Classes/classFEAutoMesher.html#function-autopartitionedges","text":"void AutoPartitionEdges ( FEMesh & m )","title":"function AutoPartitionEdges"},{"location":"api/Classes/classFEAutoMesher.html#function-autopartitionnodes","text":"void AutoPartitionNodes ( FEMesh & m )","title":"function AutoPartitionNodes"},{"location":"api/Classes/classFEAutoMesher.html#function-repartition","text":"void Repartition ( FEMesh & m )","title":"function Repartition"},{"location":"api/Classes/classFEAutoMesher.html#function-setsmoothingangle","text":"inline void SetSmoothingAngle ( double w )","title":"function SetSmoothingAngle"},{"location":"api/Classes/classFEAutoMesher.html#function-getsmoothingangle","text":"inline double GetSmoothingAngle ()","title":"function GetSmoothingAngle"},{"location":"api/Classes/classFEAutoMesher.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classFEAutoMesher.html#function-buildfaces","text":"void BuildFaces ( FEMesh & m )","title":"function BuildFaces"},{"location":"api/Classes/classFEAutoMesher.html#function-buildedges","text":"void BuildEdges ( FEMesh & m )","title":"function BuildEdges"},{"location":"api/Classes/classFEAutoMesher.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFEAutoMesher.html#variable-m_pm","text":"FEMesh * m_pm ;","title":"variable m_pm"},{"location":"api/Classes/classFEAutoMesher.html#variable-m_wsmooth","text":"double m_wsmooth ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_wsmooth"},{"location":"api/Classes/classFECVDDecimationModifier.html","text":"FECVDDecimationModifier More... #include Public Functions Name FECVDDecimationModifier () Constructor. FEMesh * Apply ( FEMesh * pm) Apply the decimation modifier. Public Attributes Name double m_pct percentage of target number of clusters/vertices bool m_bcvd double m_sel_pct double m_gradient Detailed Description class FECVDDecimationModifier ; This class implements a modifier that coarses a plygonal mesh using an approximated centroidal voronoi diagram. Public Functions Documentation function FECVDDecimationModifier FECVDDecimationModifier () Constructor. function Apply FEMesh * Apply ( FEMesh * pm ) Apply the decimation modifier. Public Attributes Documentation variable m_pct double m_pct ; percentage of target number of clusters/vertices variable m_bcvd bool m_bcvd ; variable m_sel_pct double m_sel_pct ; variable m_gradient double m_gradient ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FECVDDecimationModifier"},{"location":"api/Classes/classFECVDDecimationModifier.html#fecvddecimationmodifier","text":"More... #include ","title":"FECVDDecimationModifier"},{"location":"api/Classes/classFECVDDecimationModifier.html#public-functions","text":"Name FECVDDecimationModifier () Constructor. FEMesh * Apply ( FEMesh * pm) Apply the decimation modifier.","title":"Public Functions"},{"location":"api/Classes/classFECVDDecimationModifier.html#public-attributes","text":"Name double m_pct percentage of target number of clusters/vertices bool m_bcvd double m_sel_pct double m_gradient","title":"Public Attributes"},{"location":"api/Classes/classFECVDDecimationModifier.html#detailed-description","text":"class FECVDDecimationModifier ; This class implements a modifier that coarses a plygonal mesh using an approximated centroidal voronoi diagram.","title":"Detailed Description"},{"location":"api/Classes/classFECVDDecimationModifier.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFECVDDecimationModifier.html#function-fecvddecimationmodifier","text":"FECVDDecimationModifier () Constructor.","title":"function FECVDDecimationModifier"},{"location":"api/Classes/classFECVDDecimationModifier.html#function-apply","text":"FEMesh * Apply ( FEMesh * pm ) Apply the decimation modifier.","title":"function Apply"},{"location":"api/Classes/classFECVDDecimationModifier.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFECVDDecimationModifier.html#variable-m_pct","text":"double m_pct ; percentage of target number of clusters/vertices","title":"variable m_pct"},{"location":"api/Classes/classFECVDDecimationModifier.html#variable-m_bcvd","text":"bool m_bcvd ;","title":"variable m_bcvd"},{"location":"api/Classes/classFECVDDecimationModifier.html#variable-m_sel_pct","text":"double m_sel_pct ;","title":"variable m_sel_pct"},{"location":"api/Classes/classFECVDDecimationModifier.html#variable-m_gradient","text":"double m_gradient ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_gradient"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html","text":"FECVDDecimationModifier::Cluster Public Functions Name Cluster () int faces () const Public Attributes Name vec3d m_sgamma double m_srho vector< int > m_fid Public Functions Documentation function Cluster inline Cluster () function faces inline int faces () const Public Attributes Documentation variable m_sgamma vec3d m_sgamma ; variable m_srho double m_srho ; variable m_fid vector < int > m_fid ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FECVDDecimationModifier::Cluster"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#fecvddecimationmodifiercluster","text":"","title":"FECVDDecimationModifier::Cluster"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#public-functions","text":"Name Cluster () int faces () const","title":"Public Functions"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#public-attributes","text":"Name vec3d m_sgamma double m_srho vector< int > m_fid","title":"Public Attributes"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#function-cluster","text":"inline Cluster ()","title":"function Cluster"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#function-faces","text":"inline int faces () const","title":"function faces"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#variable-m_sgamma","text":"vec3d m_sgamma ;","title":"variable m_sgamma"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#variable-m_srho","text":"double m_srho ;","title":"variable m_srho"},{"location":"api/Classes/classFECVDDecimationModifier_1_1Cluster.html#variable-m_fid","text":"vector < int > m_fid ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_fid"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html","text":"FECVDDecimationModifier::NODE Public Types Name enum @0 Public Functions Name NODE () bool AttachToCluster (int n) Public Attributes Name int c int nc Public Types Documentation enum @0 Enumerator Value Description MAX_CLUSTERS =23 Public Functions Documentation function NODE inline NODE () function AttachToCluster bool AttachToCluster ( int n ) Public Attributes Documentation variable c int c ; variable nc int nc ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FECVDDecimationModifier::NODE"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#fecvddecimationmodifiernode","text":"","title":"FECVDDecimationModifier::NODE"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#public-types","text":"Name enum @0","title":"Public Types"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#public-functions","text":"Name NODE () bool AttachToCluster (int n)","title":"Public Functions"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#public-attributes","text":"Name int c int nc","title":"Public Attributes"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#enum-0","text":"Enumerator Value Description MAX_CLUSTERS =23","title":"enum @0"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#function-node","text":"inline NODE ()","title":"function NODE"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#function-attachtocluster","text":"bool AttachToCluster ( int n )","title":"function AttachToCluster"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#variable-c","text":"int c ;","title":"variable c"},{"location":"api/Classes/classFECVDDecimationModifier_1_1NODE.html#variable-nc","text":"int nc ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable nc"},{"location":"api/Classes/classFECoreMesh.html","text":"FECoreMesh More... #include Inherited by FEMesh Public Functions Name FECoreMesh () constructor virtual ~FECoreMesh () destructor virtual void Create (int nodes, int elems, int faces =0, int edges =0) =0 allocate space for mesh bool IsType (int ntype) check the type of the mesh virtual int Elements () const =0 total number of elements virtual FEElement_ & ElementRef (int n) =0 return reference to element virtual FEElement * ElementPtr (int n =0) =0 return pointer to element int Nodes () const int Edges () const int Faces () const FENode & Node (int n) FEEdge & Edge (int n) FEFace & Face (int n) FENode * NodePtr (int n =0) FEEdge * EdgePtr (int n =0) FEFace * FacePtr (int n =0) Protected Attributes Name std::vector< FENode > m_Node FE nodes. std::vector< FEEdge > m_Edge FE edges. std::vector< FEFace > m_Face FE faces. Detailed Description class FECoreMesh ; This class defines a simple mesh structure that provides basic container services for storing mesh data. Public Functions Documentation function FECoreMesh FECoreMesh () constructor function ~FECoreMesh virtual ~ FECoreMesh () destructor function Create virtual void Create ( int nodes , int elems , int faces = 0 , int edges = 0 ) = 0 allocate space for mesh Reimplemented by : FEMesh::Create function IsType bool IsType ( int ntype ) check the type of the mesh function Elements virtual int Elements () const = 0 total number of elements Reimplemented by : FEMesh::Elements function ElementRef virtual FEElement_ & ElementRef ( int n ) = 0 return reference to element Reimplemented by : FEMesh::ElementRef function ElementPtr virtual FEElement * ElementPtr ( int n = 0 ) = 0 return pointer to element Reimplemented by : FEMesh::ElementPtr function Nodes inline int Nodes () const function Edges inline int Edges () const function Faces inline int Faces () const function Node inline FENode & Node ( int n ) function Edge inline FEEdge & Edge ( int n ) function Face inline FEFace & Face ( int n ) function NodePtr inline FENode * NodePtr ( int n = 0 ) function EdgePtr inline FEEdge * EdgePtr ( int n = 0 ) function FacePtr inline FEFace * FacePtr ( int n = 0 ) Protected Attributes Documentation variable m_Node std :: vector < FENode > m_Node ; FE nodes. variable m_Edge std :: vector < FEEdge > m_Edge ; FE edges. variable m_Face std :: vector < FEFace > m_Face ; FE faces. Updated on 2023-10-24 at 22:16:02 +0000","title":"FECoreMesh"},{"location":"api/Classes/classFECoreMesh.html#fecoremesh","text":"More... #include Inherited by FEMesh","title":"FECoreMesh"},{"location":"api/Classes/classFECoreMesh.html#public-functions","text":"Name FECoreMesh () constructor virtual ~FECoreMesh () destructor virtual void Create (int nodes, int elems, int faces =0, int edges =0) =0 allocate space for mesh bool IsType (int ntype) check the type of the mesh virtual int Elements () const =0 total number of elements virtual FEElement_ & ElementRef (int n) =0 return reference to element virtual FEElement * ElementPtr (int n =0) =0 return pointer to element int Nodes () const int Edges () const int Faces () const FENode & Node (int n) FEEdge & Edge (int n) FEFace & Face (int n) FENode * NodePtr (int n =0) FEEdge * EdgePtr (int n =0) FEFace * FacePtr (int n =0)","title":"Public Functions"},{"location":"api/Classes/classFECoreMesh.html#protected-attributes","text":"Name std::vector< FENode > m_Node FE nodes. std::vector< FEEdge > m_Edge FE edges. std::vector< FEFace > m_Face FE faces.","title":"Protected Attributes"},{"location":"api/Classes/classFECoreMesh.html#detailed-description","text":"class FECoreMesh ; This class defines a simple mesh structure that provides basic container services for storing mesh data.","title":"Detailed Description"},{"location":"api/Classes/classFECoreMesh.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFECoreMesh.html#function-fecoremesh","text":"FECoreMesh () constructor","title":"function FECoreMesh"},{"location":"api/Classes/classFECoreMesh.html#function-fecoremesh_1","text":"virtual ~ FECoreMesh () destructor","title":"function ~FECoreMesh"},{"location":"api/Classes/classFECoreMesh.html#function-create","text":"virtual void Create ( int nodes , int elems , int faces = 0 , int edges = 0 ) = 0 allocate space for mesh Reimplemented by : FEMesh::Create","title":"function Create"},{"location":"api/Classes/classFECoreMesh.html#function-istype","text":"bool IsType ( int ntype ) check the type of the mesh","title":"function IsType"},{"location":"api/Classes/classFECoreMesh.html#function-elements","text":"virtual int Elements () const = 0 total number of elements Reimplemented by : FEMesh::Elements","title":"function Elements"},{"location":"api/Classes/classFECoreMesh.html#function-elementref","text":"virtual FEElement_ & ElementRef ( int n ) = 0 return reference to element Reimplemented by : FEMesh::ElementRef","title":"function ElementRef"},{"location":"api/Classes/classFECoreMesh.html#function-elementptr","text":"virtual FEElement * ElementPtr ( int n = 0 ) = 0 return pointer to element Reimplemented by : FEMesh::ElementPtr","title":"function ElementPtr"},{"location":"api/Classes/classFECoreMesh.html#function-nodes","text":"inline int Nodes () const","title":"function Nodes"},{"location":"api/Classes/classFECoreMesh.html#function-edges","text":"inline int Edges () const","title":"function Edges"},{"location":"api/Classes/classFECoreMesh.html#function-faces","text":"inline int Faces () const","title":"function Faces"},{"location":"api/Classes/classFECoreMesh.html#function-node","text":"inline FENode & Node ( int n )","title":"function Node"},{"location":"api/Classes/classFECoreMesh.html#function-edge","text":"inline FEEdge & Edge ( int n )","title":"function Edge"},{"location":"api/Classes/classFECoreMesh.html#function-face","text":"inline FEFace & Face ( int n )","title":"function Face"},{"location":"api/Classes/classFECoreMesh.html#function-nodeptr","text":"inline FENode * NodePtr ( int n = 0 )","title":"function NodePtr"},{"location":"api/Classes/classFECoreMesh.html#function-edgeptr","text":"inline FEEdge * EdgePtr ( int n = 0 )","title":"function EdgePtr"},{"location":"api/Classes/classFECoreMesh.html#function-faceptr","text":"inline FEFace * FacePtr ( int n = 0 )","title":"function FacePtr"},{"location":"api/Classes/classFECoreMesh.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFECoreMesh.html#variable-m_node","text":"std :: vector < FENode > m_Node ; FE nodes.","title":"variable m_Node"},{"location":"api/Classes/classFECoreMesh.html#variable-m_edge","text":"std :: vector < FEEdge > m_Edge ; FE edges.","title":"variable m_Edge"},{"location":"api/Classes/classFECoreMesh.html#variable-m_face","text":"std :: vector < FEFace > m_Face ; FE faces. Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_Face"},{"location":"api/Classes/classFEEdge.html","text":"FEEdge Inherits from FEItem Public Types Name enum @1 Public Functions Name FEEdge () constructor bool operator== (const FEEdge & e) edge comparison int Nodes () return number of nodes int FindNode (int node) find a node Public Attributes Name int n edge nodes int m_elem the element to which this edge belongs (used only by beams) int m_nbr the two adjacent edges (if there are more edges incident to a node, the neighbour is set to -1) Additional inherited members Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid Public Types Documentation enum @1 Enumerator Value Description MAX_NODES 3 Public Functions Documentation function FEEdge FEEdge () constructor function operator== bool operator == ( const FEEdge & e ) edge comparison function Nodes inline int Nodes () return number of nodes function FindNode int FindNode ( int node ) find a node Public Attributes Documentation variable n int n ; edge nodes variable m_elem int m_elem ; the element to which this edge belongs (used only by beams) variable m_nbr int m_nbr ; the two adjacent edges (if there are more edges incident to a node, the neighbour is set to -1) Updated on 2023-10-24 at 22:16:02 +0000","title":"FEEdge"},{"location":"api/Classes/classFEEdge.html#feedge","text":"Inherits from FEItem","title":"FEEdge"},{"location":"api/Classes/classFEEdge.html#public-types","text":"Name enum @1","title":"Public Types"},{"location":"api/Classes/classFEEdge.html#public-functions","text":"Name FEEdge () constructor bool operator== (const FEEdge & e) edge comparison int Nodes () return number of nodes int FindNode (int node) find a node","title":"Public Functions"},{"location":"api/Classes/classFEEdge.html#public-attributes","text":"Name int n edge nodes int m_elem the element to which this edge belongs (used only by beams) int m_nbr the two adjacent edges (if there are more edges incident to a node, the neighbour is set to -1)","title":"Public Attributes"},{"location":"api/Classes/classFEEdge.html#additional-inherited-members","text":"Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid","title":"Additional inherited members"},{"location":"api/Classes/classFEEdge.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classFEEdge.html#enum-1","text":"Enumerator Value Description MAX_NODES 3","title":"enum @1"},{"location":"api/Classes/classFEEdge.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEEdge.html#function-feedge","text":"FEEdge () constructor","title":"function FEEdge"},{"location":"api/Classes/classFEEdge.html#function-operator","text":"bool operator == ( const FEEdge & e ) edge comparison","title":"function operator=="},{"location":"api/Classes/classFEEdge.html#function-nodes","text":"inline int Nodes () return number of nodes","title":"function Nodes"},{"location":"api/Classes/classFEEdge.html#function-findnode","text":"int FindNode ( int node ) find a node","title":"function FindNode"},{"location":"api/Classes/classFEEdge.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEEdge.html#variable-n","text":"int n ; edge nodes","title":"variable n"},{"location":"api/Classes/classFEEdge.html#variable-m_elem","text":"int m_elem ; the element to which this edge belongs (used only by beams)","title":"variable m_elem"},{"location":"api/Classes/classFEEdge.html#variable-m_nbr","text":"int m_nbr ; the two adjacent edges (if there are more edges incident to a node, the neighbour is set to -1) Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_nbr"},{"location":"api/Classes/classFEElement.html","text":"FEElement Inherits from FEElement_ , FEItem Public Types Name enum @3 Public Functions Name FEElement () constructor FEElement (const FEElement & el) copy constructor FEElement & operator= (const FEElement & el) assignment operator void SetType (int ntype) Set the element type. Additional inherited members Public Functions inherited from FEElement_ Name FEElement_ () constructor bool is_equal ( FEElement_ & e) int GetType () const return the element type bool IsType (int ntype) const Is the element of this type. int Nodes () const number of nodes int Faces () const Number of faces (shells have no faces) int Edges () const Number of edges (solids have no edges) int GetFace (int i, int * n) Get only the nodes of face i (only solids have faces) FEFace GetFace (int i) Get the face i (only solids have faces) FEFace GetShellFace () Get the face of a shell. FEEdge GetEdge (int i) Get the edge. bool IsExterior () Is this an exterior element. bool IsSolid () bool IsShell () bool IsBeam () Protected Functions inherited from FEElement_ Name void copy (const FEElement_ & el) Public Attributes inherited from FEElement_ Name int * m_node pointer to node data int * m_nbr neighbour elements int * m_face faces (-1 for interior faces) double * m_h element thickness (only used by shells) vec3d m_fiber fiber orientation mat3d m_Q local material orientation bool m_Qactive active local material orientation double m_a0 cross-sectional area (only used by truss elements) Protected Attributes inherited from FEElement_ Name int m_ntype type of element int m_nodes nr of nodes int m_nfaces nr of faces ( 0 for shells) int m_nedges nr of edges ( 0 for solids) Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid Public Types Documentation enum @3 Enumerator Value Description MAX_NODES 27 Public Functions Documentation function FEElement FEElement () constructor function FEElement FEElement ( const FEElement & el ) copy constructor function operator= FEElement & operator = ( const FEElement & el ) assignment operator function SetType void SetType ( int ntype ) Set the element type. Updated on 2023-10-24 at 22:16:02 +0000","title":"FEElement"},{"location":"api/Classes/classFEElement.html#feelement","text":"Inherits from FEElement_ , FEItem","title":"FEElement"},{"location":"api/Classes/classFEElement.html#public-types","text":"Name enum @3","title":"Public Types"},{"location":"api/Classes/classFEElement.html#public-functions","text":"Name FEElement () constructor FEElement (const FEElement & el) copy constructor FEElement & operator= (const FEElement & el) assignment operator void SetType (int ntype) Set the element type.","title":"Public Functions"},{"location":"api/Classes/classFEElement.html#additional-inherited-members","text":"Public Functions inherited from FEElement_ Name FEElement_ () constructor bool is_equal ( FEElement_ & e) int GetType () const return the element type bool IsType (int ntype) const Is the element of this type. int Nodes () const number of nodes int Faces () const Number of faces (shells have no faces) int Edges () const Number of edges (solids have no edges) int GetFace (int i, int * n) Get only the nodes of face i (only solids have faces) FEFace GetFace (int i) Get the face i (only solids have faces) FEFace GetShellFace () Get the face of a shell. FEEdge GetEdge (int i) Get the edge. bool IsExterior () Is this an exterior element. bool IsSolid () bool IsShell () bool IsBeam () Protected Functions inherited from FEElement_ Name void copy (const FEElement_ & el) Public Attributes inherited from FEElement_ Name int * m_node pointer to node data int * m_nbr neighbour elements int * m_face faces (-1 for interior faces) double * m_h element thickness (only used by shells) vec3d m_fiber fiber orientation mat3d m_Q local material orientation bool m_Qactive active local material orientation double m_a0 cross-sectional area (only used by truss elements) Protected Attributes inherited from FEElement_ Name int m_ntype type of element int m_nodes nr of nodes int m_nfaces nr of faces ( 0 for shells) int m_nedges nr of edges ( 0 for solids) Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid","title":"Additional inherited members"},{"location":"api/Classes/classFEElement.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classFEElement.html#enum-3","text":"Enumerator Value Description MAX_NODES 27","title":"enum @3"},{"location":"api/Classes/classFEElement.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEElement.html#function-feelement","text":"FEElement () constructor","title":"function FEElement"},{"location":"api/Classes/classFEElement.html#function-feelement_1","text":"FEElement ( const FEElement & el ) copy constructor","title":"function FEElement"},{"location":"api/Classes/classFEElement.html#function-operator","text":"FEElement & operator = ( const FEElement & el ) assignment operator","title":"function operator="},{"location":"api/Classes/classFEElement.html#function-settype","text":"void SetType ( int ntype ) Set the element type. Updated on 2023-10-24 at 22:16:02 +0000","title":"function SetType"},{"location":"api/Classes/classFEElementData.html","text":"FEElementData Public Functions Name FEElementData () FEElementData (const FEElementData & d) FEElementData & operator= (const FEElementData & d) void Create ( FEMesh * pm, double v =0.0) int Size () double get (int i) void set (int i, double v) double & operator[] (int i) void SetName (const char * sz) const char * GetName () void FillRandomBox (double fmin, double fmax) Public Functions Documentation function FEElementData FEElementData () function FEElementData FEElementData ( const FEElementData & d ) function operator= FEElementData & operator = ( const FEElementData & d ) function Create void Create ( FEMesh * pm , double v = 0.0 ) function Size inline int Size () function get inline double get ( int i ) function set inline void set ( int i , double v ) function operator[] inline double & operator []( int i ) function SetName void SetName ( const char * sz ) function GetName inline const char * GetName () function FillRandomBox void FillRandomBox ( double fmin , double fmax ) Updated on 2023-10-24 at 22:16:02 +0000","title":"FEElementData"},{"location":"api/Classes/classFEElementData.html#feelementdata","text":"","title":"FEElementData"},{"location":"api/Classes/classFEElementData.html#public-functions","text":"Name FEElementData () FEElementData (const FEElementData & d) FEElementData & operator= (const FEElementData & d) void Create ( FEMesh * pm, double v =0.0) int Size () double get (int i) void set (int i, double v) double & operator[] (int i) void SetName (const char * sz) const char * GetName () void FillRandomBox (double fmin, double fmax)","title":"Public Functions"},{"location":"api/Classes/classFEElementData.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEElementData.html#function-feelementdata","text":"FEElementData ()","title":"function FEElementData"},{"location":"api/Classes/classFEElementData.html#function-feelementdata_1","text":"FEElementData ( const FEElementData & d )","title":"function FEElementData"},{"location":"api/Classes/classFEElementData.html#function-operator","text":"FEElementData & operator = ( const FEElementData & d )","title":"function operator="},{"location":"api/Classes/classFEElementData.html#function-create","text":"void Create ( FEMesh * pm , double v = 0.0 )","title":"function Create"},{"location":"api/Classes/classFEElementData.html#function-size","text":"inline int Size ()","title":"function Size"},{"location":"api/Classes/classFEElementData.html#function-get","text":"inline double get ( int i )","title":"function get"},{"location":"api/Classes/classFEElementData.html#function-set","text":"inline void set ( int i , double v )","title":"function set"},{"location":"api/Classes/classFEElementData.html#function-operator_1","text":"inline double & operator []( int i )","title":"function operator[]"},{"location":"api/Classes/classFEElementData.html#function-setname","text":"void SetName ( const char * sz )","title":"function SetName"},{"location":"api/Classes/classFEElementData.html#function-getname","text":"inline const char * GetName ()","title":"function GetName"},{"location":"api/Classes/classFEElementData.html#function-fillrandombox","text":"void FillRandomBox ( double fmin , double fmax ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function FillRandomBox"},{"location":"api/Classes/classFEElement__.html","text":"FEElement_ Inherits from FEItem Inherited by FEElement , FETri3 Public Functions Name FEElement_ () constructor bool is_equal ( FEElement_ & e) int GetType () const return the element type bool IsType (int ntype) const Is the element of this type. int Nodes () const number of nodes int Faces () const Number of faces (shells have no faces) int Edges () const Number of edges (solids have no edges) int GetFace (int i, int * n) Get only the nodes of face i (only solids have faces) FEFace GetFace (int i) Get the face i (only solids have faces) FEFace GetShellFace () Get the face of a shell. FEEdge GetEdge (int i) Get the edge. bool IsExterior () Is this an exterior element. bool IsSolid () bool IsShell () bool IsBeam () Protected Functions Name void copy (const FEElement_ & el) Public Attributes Name int * m_node pointer to node data int * m_nbr neighbour elements int * m_face faces (-1 for interior faces) double * m_h element thickness (only used by shells) vec3d m_fiber fiber orientation mat3d m_Q local material orientation bool m_Qactive active local material orientation double m_a0 cross-sectional area (only used by truss elements) Protected Attributes Name int m_ntype type of element int m_nodes nr of nodes int m_nfaces nr of faces ( 0 for shells) int m_nedges nr of edges ( 0 for solids) Additional inherited members Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid Public Functions Documentation function FEElement_ FEElement_ () constructor function is_equal bool is_equal ( FEElement_ & e ) function GetType inline int GetType () const return the element type function IsType inline bool IsType ( int ntype ) const Is the element of this type. function Nodes inline int Nodes () const number of nodes function Faces inline int Faces () const Number of faces (shells have no faces) function Edges inline int Edges () const Number of edges (solids have no edges) function GetFace int GetFace ( int i , int * n ) Get only the nodes of face i (only solids have faces) function GetFace FEFace GetFace ( int i ) Get the face i (only solids have faces) function GetShellFace FEFace GetShellFace () Get the face of a shell. function GetEdge FEEdge GetEdge ( int i ) Get the edge. function IsExterior bool IsExterior () Is this an exterior element. function IsSolid inline bool IsSolid () function IsShell inline bool IsShell () function IsBeam inline bool IsBeam () Protected Functions Documentation function copy void copy ( const FEElement_ & el ) Public Attributes Documentation variable m_node int * m_node ; pointer to node data variable m_nbr int * m_nbr ; neighbour elements variable m_face int * m_face ; faces (-1 for interior faces) variable m_h double * m_h ; element thickness (only used by shells) variable m_fiber vec3d m_fiber ; fiber orientation Todo : maybe I can add an element attribute section variable m_Q mat3d m_Q ; local material orientation variable m_Qactive bool m_Qactive ; active local material orientation variable m_a0 double m_a0 ; cross-sectional area (only used by truss elements) Protected Attributes Documentation variable m_ntype int m_ntype ; type of element variable m_nodes int m_nodes ; nr of nodes variable m_nfaces int m_nfaces ; nr of faces ( 0 for shells) variable m_nedges int m_nedges ; nr of edges ( 0 for solids) Updated on 2023-10-24 at 22:16:02 +0000","title":"FEElement_"},{"location":"api/Classes/classFEElement__.html#feelement_","text":"Inherits from FEItem Inherited by FEElement , FETri3","title":"FEElement_"},{"location":"api/Classes/classFEElement__.html#public-functions","text":"Name FEElement_ () constructor bool is_equal ( FEElement_ & e) int GetType () const return the element type bool IsType (int ntype) const Is the element of this type. int Nodes () const number of nodes int Faces () const Number of faces (shells have no faces) int Edges () const Number of edges (solids have no edges) int GetFace (int i, int * n) Get only the nodes of face i (only solids have faces) FEFace GetFace (int i) Get the face i (only solids have faces) FEFace GetShellFace () Get the face of a shell. FEEdge GetEdge (int i) Get the edge. bool IsExterior () Is this an exterior element. bool IsSolid () bool IsShell () bool IsBeam ()","title":"Public Functions"},{"location":"api/Classes/classFEElement__.html#protected-functions","text":"Name void copy (const FEElement_ & el)","title":"Protected Functions"},{"location":"api/Classes/classFEElement__.html#public-attributes","text":"Name int * m_node pointer to node data int * m_nbr neighbour elements int * m_face faces (-1 for interior faces) double * m_h element thickness (only used by shells) vec3d m_fiber fiber orientation mat3d m_Q local material orientation bool m_Qactive active local material orientation double m_a0 cross-sectional area (only used by truss elements)","title":"Public Attributes"},{"location":"api/Classes/classFEElement__.html#protected-attributes","text":"Name int m_ntype type of element int m_nodes nr of nodes int m_nfaces nr of faces ( 0 for shells) int m_nedges nr of edges ( 0 for solids)","title":"Protected Attributes"},{"location":"api/Classes/classFEElement__.html#additional-inherited-members","text":"Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid","title":"Additional inherited members"},{"location":"api/Classes/classFEElement__.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEElement__.html#function-feelement_","text":"FEElement_ () constructor","title":"function FEElement_"},{"location":"api/Classes/classFEElement__.html#function-is_equal","text":"bool is_equal ( FEElement_ & e )","title":"function is_equal"},{"location":"api/Classes/classFEElement__.html#function-gettype","text":"inline int GetType () const return the element type","title":"function GetType"},{"location":"api/Classes/classFEElement__.html#function-istype","text":"inline bool IsType ( int ntype ) const Is the element of this type.","title":"function IsType"},{"location":"api/Classes/classFEElement__.html#function-nodes","text":"inline int Nodes () const number of nodes","title":"function Nodes"},{"location":"api/Classes/classFEElement__.html#function-faces","text":"inline int Faces () const Number of faces (shells have no faces)","title":"function Faces"},{"location":"api/Classes/classFEElement__.html#function-edges","text":"inline int Edges () const Number of edges (solids have no edges)","title":"function Edges"},{"location":"api/Classes/classFEElement__.html#function-getface","text":"int GetFace ( int i , int * n ) Get only the nodes of face i (only solids have faces)","title":"function GetFace"},{"location":"api/Classes/classFEElement__.html#function-getface_1","text":"FEFace GetFace ( int i ) Get the face i (only solids have faces)","title":"function GetFace"},{"location":"api/Classes/classFEElement__.html#function-getshellface","text":"FEFace GetShellFace () Get the face of a shell.","title":"function GetShellFace"},{"location":"api/Classes/classFEElement__.html#function-getedge","text":"FEEdge GetEdge ( int i ) Get the edge.","title":"function GetEdge"},{"location":"api/Classes/classFEElement__.html#function-isexterior","text":"bool IsExterior () Is this an exterior element.","title":"function IsExterior"},{"location":"api/Classes/classFEElement__.html#function-issolid","text":"inline bool IsSolid ()","title":"function IsSolid"},{"location":"api/Classes/classFEElement__.html#function-isshell","text":"inline bool IsShell ()","title":"function IsShell"},{"location":"api/Classes/classFEElement__.html#function-isbeam","text":"inline bool IsBeam ()","title":"function IsBeam"},{"location":"api/Classes/classFEElement__.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classFEElement__.html#function-copy","text":"void copy ( const FEElement_ & el )","title":"function copy"},{"location":"api/Classes/classFEElement__.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEElement__.html#variable-m_node","text":"int * m_node ; pointer to node data","title":"variable m_node"},{"location":"api/Classes/classFEElement__.html#variable-m_nbr","text":"int * m_nbr ; neighbour elements","title":"variable m_nbr"},{"location":"api/Classes/classFEElement__.html#variable-m_face","text":"int * m_face ; faces (-1 for interior faces)","title":"variable m_face"},{"location":"api/Classes/classFEElement__.html#variable-m_h","text":"double * m_h ; element thickness (only used by shells)","title":"variable m_h"},{"location":"api/Classes/classFEElement__.html#variable-m_fiber","text":"vec3d m_fiber ; fiber orientation Todo : maybe I can add an element attribute section","title":"variable m_fiber"},{"location":"api/Classes/classFEElement__.html#variable-m_q","text":"mat3d m_Q ; local material orientation","title":"variable m_Q"},{"location":"api/Classes/classFEElement__.html#variable-m_qactive","text":"bool m_Qactive ; active local material orientation","title":"variable m_Qactive"},{"location":"api/Classes/classFEElement__.html#variable-m_a0","text":"double m_a0 ; cross-sectional area (only used by truss elements)","title":"variable m_a0"},{"location":"api/Classes/classFEElement__.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFEElement__.html#variable-m_ntype","text":"int m_ntype ; type of element","title":"variable m_ntype"},{"location":"api/Classes/classFEElement__.html#variable-m_nodes","text":"int m_nodes ; nr of nodes","title":"variable m_nodes"},{"location":"api/Classes/classFEElement__.html#variable-m_nfaces","text":"int m_nfaces ; nr of faces ( 0 for shells)","title":"variable m_nfaces"},{"location":"api/Classes/classFEElement__.html#variable-m_nedges","text":"int m_nedges ; nr of edges ( 0 for solids) Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_nedges"},{"location":"api/Classes/classFEFace.html","text":"FEFace Inherits from FEItem Public Types Name enum @2 Public Functions Name FEFace () constructor bool operator== (const FEFace & f) comparison operator int Nodes () return number of nodes int Edges () return number of edges void GetEdgeNodes (int i, int * n) get the edge node numbers bool HasEdge (int n1, int n2) See if this face has an edge. bool HasNode (int i) See if this face has node with ID i. int FindNode (int i) Fine the array index of node with ID i. bool IsExternal () Is this face internal or external. Public Attributes Name int n nodal ID's int m_nodes number of nodes int m_nbr neighbour faces vec3d m_fn face normal vec3d m_nn node normals int m_sid smoothing ID int m_elem the elements to which this face belongs Additional inherited members Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid Public Types Documentation enum @2 Enumerator Value Description MAX_NODES 9 Public Functions Documentation function FEFace FEFace () constructor function operator== bool operator == ( const FEFace & f ) comparison operator function Nodes inline int Nodes () return number of nodes function Edges int Edges () return number of edges function GetEdgeNodes void GetEdgeNodes ( int i , int * n ) get the edge node numbers function HasEdge bool HasEdge ( int n1 , int n2 ) See if this face has an edge. function HasNode bool HasNode ( int i ) See if this face has node with ID i. function FindNode int FindNode ( int i ) Fine the array index of node with ID i. function IsExternal inline bool IsExternal () Is this face internal or external. Public Attributes Documentation variable n int n ; nodal ID's variable m_nodes int m_nodes ; number of nodes variable m_nbr int m_nbr ; neighbour faces variable m_fn vec3d m_fn ; face normal variable m_nn vec3d m_nn ; node normals variable m_sid int m_sid ; smoothing ID variable m_elem int m_elem ; the elements to which this face belongs Updated on 2023-10-24 at 22:16:02 +0000","title":"FEFace"},{"location":"api/Classes/classFEFace.html#feface","text":"Inherits from FEItem","title":"FEFace"},{"location":"api/Classes/classFEFace.html#public-types","text":"Name enum @2","title":"Public Types"},{"location":"api/Classes/classFEFace.html#public-functions","text":"Name FEFace () constructor bool operator== (const FEFace & f) comparison operator int Nodes () return number of nodes int Edges () return number of edges void GetEdgeNodes (int i, int * n) get the edge node numbers bool HasEdge (int n1, int n2) See if this face has an edge. bool HasNode (int i) See if this face has node with ID i. int FindNode (int i) Fine the array index of node with ID i. bool IsExternal () Is this face internal or external.","title":"Public Functions"},{"location":"api/Classes/classFEFace.html#public-attributes","text":"Name int n nodal ID's int m_nodes number of nodes int m_nbr neighbour faces vec3d m_fn face normal vec3d m_nn node normals int m_sid smoothing ID int m_elem the elements to which this face belongs","title":"Public Attributes"},{"location":"api/Classes/classFEFace.html#additional-inherited-members","text":"Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid","title":"Additional inherited members"},{"location":"api/Classes/classFEFace.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classFEFace.html#enum-2","text":"Enumerator Value Description MAX_NODES 9","title":"enum @2"},{"location":"api/Classes/classFEFace.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEFace.html#function-feface","text":"FEFace () constructor","title":"function FEFace"},{"location":"api/Classes/classFEFace.html#function-operator","text":"bool operator == ( const FEFace & f ) comparison operator","title":"function operator=="},{"location":"api/Classes/classFEFace.html#function-nodes","text":"inline int Nodes () return number of nodes","title":"function Nodes"},{"location":"api/Classes/classFEFace.html#function-edges","text":"int Edges () return number of edges","title":"function Edges"},{"location":"api/Classes/classFEFace.html#function-getedgenodes","text":"void GetEdgeNodes ( int i , int * n ) get the edge node numbers","title":"function GetEdgeNodes"},{"location":"api/Classes/classFEFace.html#function-hasedge","text":"bool HasEdge ( int n1 , int n2 ) See if this face has an edge.","title":"function HasEdge"},{"location":"api/Classes/classFEFace.html#function-hasnode","text":"bool HasNode ( int i ) See if this face has node with ID i.","title":"function HasNode"},{"location":"api/Classes/classFEFace.html#function-findnode","text":"int FindNode ( int i ) Fine the array index of node with ID i.","title":"function FindNode"},{"location":"api/Classes/classFEFace.html#function-isexternal","text":"inline bool IsExternal () Is this face internal or external.","title":"function IsExternal"},{"location":"api/Classes/classFEFace.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEFace.html#variable-n","text":"int n ; nodal ID's","title":"variable n"},{"location":"api/Classes/classFEFace.html#variable-m_nodes","text":"int m_nodes ; number of nodes","title":"variable m_nodes"},{"location":"api/Classes/classFEFace.html#variable-m_nbr","text":"int m_nbr ; neighbour faces","title":"variable m_nbr"},{"location":"api/Classes/classFEFace.html#variable-m_fn","text":"vec3d m_fn ; face normal","title":"variable m_fn"},{"location":"api/Classes/classFEFace.html#variable-m_nn","text":"vec3d m_nn ; node normals","title":"variable m_nn"},{"location":"api/Classes/classFEFace.html#variable-m_sid","text":"int m_sid ; smoothing ID","title":"variable m_sid"},{"location":"api/Classes/classFEFace.html#variable-m_elem","text":"int m_elem ; the elements to which this face belongs Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_elem"},{"location":"api/Classes/classFEFillHole.html","text":"FEFillHole Public Classes Name class EdgeRing struct FACE Public Functions Name FEFillHole () FEMesh * Apply ( FEMesh * pm) bool AFM ( FEMesh & mesh, EdgeRing & ring, vector< FACE > & tri_list, vector< vec3d > & node_list) vec3d newNode ( vec3d current_node, vec3d next_node, vec3d prev_node, vec3d node_normal, double scale, bool concave) bool DivideRing ( EdgeRing & ring, vector< FACE > & tri_list) bool DivideRing1 ( EdgeRing & ring, vector< FACE > & tri_list) void FillAllHoles ( FEMesh * pm) Public Attributes Name bool optimize bool insertNodes Public Functions Documentation function FEFillHole inline FEFillHole () function Apply FEMesh * Apply ( FEMesh * pm ) function AFM bool AFM ( FEMesh & mesh , EdgeRing & ring , vector < FACE > & tri_list , vector < vec3d > & node_list ) function newNode vec3d newNode ( vec3d current_node , vec3d next_node , vec3d prev_node , vec3d node_normal , double scale , bool concave ) function DivideRing bool DivideRing ( EdgeRing & ring , vector < FACE > & tri_list ) function DivideRing1 bool DivideRing1 ( EdgeRing & ring , vector < FACE > & tri_list ) function FillAllHoles void FillAllHoles ( FEMesh * pm ) Public Attributes Documentation variable optimize bool optimize ; variable insertNodes bool insertNodes ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEFillHole"},{"location":"api/Classes/classFEFillHole.html#fefillhole","text":"","title":"FEFillHole"},{"location":"api/Classes/classFEFillHole.html#public-classes","text":"Name class EdgeRing struct FACE","title":"Public Classes"},{"location":"api/Classes/classFEFillHole.html#public-functions","text":"Name FEFillHole () FEMesh * Apply ( FEMesh * pm) bool AFM ( FEMesh & mesh, EdgeRing & ring, vector< FACE > & tri_list, vector< vec3d > & node_list) vec3d newNode ( vec3d current_node, vec3d next_node, vec3d prev_node, vec3d node_normal, double scale, bool concave) bool DivideRing ( EdgeRing & ring, vector< FACE > & tri_list) bool DivideRing1 ( EdgeRing & ring, vector< FACE > & tri_list) void FillAllHoles ( FEMesh * pm)","title":"Public Functions"},{"location":"api/Classes/classFEFillHole.html#public-attributes","text":"Name bool optimize bool insertNodes","title":"Public Attributes"},{"location":"api/Classes/classFEFillHole.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEFillHole.html#function-fefillhole","text":"inline FEFillHole ()","title":"function FEFillHole"},{"location":"api/Classes/classFEFillHole.html#function-apply","text":"FEMesh * Apply ( FEMesh * pm )","title":"function Apply"},{"location":"api/Classes/classFEFillHole.html#function-afm","text":"bool AFM ( FEMesh & mesh , EdgeRing & ring , vector < FACE > & tri_list , vector < vec3d > & node_list )","title":"function AFM"},{"location":"api/Classes/classFEFillHole.html#function-newnode","text":"vec3d newNode ( vec3d current_node , vec3d next_node , vec3d prev_node , vec3d node_normal , double scale , bool concave )","title":"function newNode"},{"location":"api/Classes/classFEFillHole.html#function-dividering","text":"bool DivideRing ( EdgeRing & ring , vector < FACE > & tri_list )","title":"function DivideRing"},{"location":"api/Classes/classFEFillHole.html#function-dividering1","text":"bool DivideRing1 ( EdgeRing & ring , vector < FACE > & tri_list )","title":"function DivideRing1"},{"location":"api/Classes/classFEFillHole.html#function-fillallholes","text":"void FillAllHoles ( FEMesh * pm )","title":"function FillAllHoles"},{"location":"api/Classes/classFEFillHole.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEFillHole.html#variable-optimize","text":"bool optimize ;","title":"variable optimize"},{"location":"api/Classes/classFEFillHole.html#variable-insertnodes","text":"bool insertNodes ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable insertNodes"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html","text":"FEFillHole::EdgeRing Public Functions Name EdgeRing () EdgeRing (const EdgeRing & ring) void operator= (const EdgeRing & ring) bool empty () void add (int n, const vec3d & r, const vec3d & nn) void clear () int size () int operator[] (int i) void GetLeftEar (int n0, int n1, EdgeRing & ear) void GetRightEar (int n0, int n1, EdgeRing & ear) Public Attributes Name vector< vec3d > m_r vector< int > m_node int m_winding vector< vec3d > m_normal Public Functions Documentation function EdgeRing inline EdgeRing () function EdgeRing inline EdgeRing ( const EdgeRing & ring ) function operator= inline void operator = ( const EdgeRing & ring ) function empty inline bool empty () function add inline void add ( int n , const vec3d & r , const vec3d & nn ) function clear inline void clear () function size inline int size () function operator[] inline int operator []( int i ) function GetLeftEar void GetLeftEar ( int n0 , int n1 , EdgeRing & ear ) function GetRightEar void GetRightEar ( int n0 , int n1 , EdgeRing & ear ) Public Attributes Documentation variable m_r vector < vec3d > m_r ; variable m_node vector < int > m_node ; variable m_winding int m_winding ; variable m_normal vector < vec3d > m_normal ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEFillHole::EdgeRing"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#fefillholeedgering","text":"","title":"FEFillHole::EdgeRing"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#public-functions","text":"Name EdgeRing () EdgeRing (const EdgeRing & ring) void operator= (const EdgeRing & ring) bool empty () void add (int n, const vec3d & r, const vec3d & nn) void clear () int size () int operator[] (int i) void GetLeftEar (int n0, int n1, EdgeRing & ear) void GetRightEar (int n0, int n1, EdgeRing & ear)","title":"Public Functions"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#public-attributes","text":"Name vector< vec3d > m_r vector< int > m_node int m_winding vector< vec3d > m_normal","title":"Public Attributes"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-edgering","text":"inline EdgeRing ()","title":"function EdgeRing"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-edgering_1","text":"inline EdgeRing ( const EdgeRing & ring )","title":"function EdgeRing"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-operator","text":"inline void operator = ( const EdgeRing & ring )","title":"function operator="},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-empty","text":"inline bool empty ()","title":"function empty"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-add","text":"inline void add ( int n , const vec3d & r , const vec3d & nn )","title":"function add"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-clear","text":"inline void clear ()","title":"function clear"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-size","text":"inline int size ()","title":"function size"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-operator_1","text":"inline int operator []( int i )","title":"function operator[]"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-getleftear","text":"void GetLeftEar ( int n0 , int n1 , EdgeRing & ear )","title":"function GetLeftEar"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#function-getrightear","text":"void GetRightEar ( int n0 , int n1 , EdgeRing & ear )","title":"function GetRightEar"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#variable-m_r","text":"vector < vec3d > m_r ;","title":"variable m_r"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#variable-m_node","text":"vector < int > m_node ;","title":"variable m_node"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#variable-m_winding","text":"int m_winding ;","title":"variable m_winding"},{"location":"api/Classes/classFEFillHole_1_1EdgeRing.html#variable-m_normal","text":"vector < vec3d > m_normal ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_normal"},{"location":"api/Classes/classFEFixMesh.html","text":"FEFixMesh Public Functions Name FEFixMesh () FEMesh * Apply ( FEMesh * pm) void SetTask (int n) void SetThickness (double m) FEMesh * RemoveDuplicateElements ( FEMesh * pm) FEMesh * RemoveNonManifoldElements ( FEMesh * pm) FEMesh * FixElementWinding ( FEMesh * pm) FEMesh * FillAllHoles ( FEMesh * pm) FEMesh * FixinvertedElements ( FEMesh * pm) FEMesh * FixReferenceSurface ( FEMesh * pm) FEMesh * InterpolateShellThickness ( FEMesh * pm) Public Functions Documentation function FEFixMesh inline FEFixMesh () function Apply FEMesh * Apply ( FEMesh * pm ) function SetTask void SetTask ( int n ) function SetThickness void SetThickness ( double m ) function RemoveDuplicateElements FEMesh * RemoveDuplicateElements ( FEMesh * pm ) function RemoveNonManifoldElements FEMesh * RemoveNonManifoldElements ( FEMesh * pm ) function FixElementWinding FEMesh * FixElementWinding ( FEMesh * pm ) function FillAllHoles FEMesh * FillAllHoles ( FEMesh * pm ) function FixinvertedElements FEMesh * FixinvertedElements ( FEMesh * pm ) function FixReferenceSurface FEMesh * FixReferenceSurface ( FEMesh * pm ) function InterpolateShellThickness FEMesh * InterpolateShellThickness ( FEMesh * pm ) Updated on 2023-10-24 at 22:16:02 +0000","title":"FEFixMesh"},{"location":"api/Classes/classFEFixMesh.html#fefixmesh","text":"","title":"FEFixMesh"},{"location":"api/Classes/classFEFixMesh.html#public-functions","text":"Name FEFixMesh () FEMesh * Apply ( FEMesh * pm) void SetTask (int n) void SetThickness (double m) FEMesh * RemoveDuplicateElements ( FEMesh * pm) FEMesh * RemoveNonManifoldElements ( FEMesh * pm) FEMesh * FixElementWinding ( FEMesh * pm) FEMesh * FillAllHoles ( FEMesh * pm) FEMesh * FixinvertedElements ( FEMesh * pm) FEMesh * FixReferenceSurface ( FEMesh * pm) FEMesh * InterpolateShellThickness ( FEMesh * pm)","title":"Public Functions"},{"location":"api/Classes/classFEFixMesh.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEFixMesh.html#function-fefixmesh","text":"inline FEFixMesh ()","title":"function FEFixMesh"},{"location":"api/Classes/classFEFixMesh.html#function-apply","text":"FEMesh * Apply ( FEMesh * pm )","title":"function Apply"},{"location":"api/Classes/classFEFixMesh.html#function-settask","text":"void SetTask ( int n )","title":"function SetTask"},{"location":"api/Classes/classFEFixMesh.html#function-setthickness","text":"void SetThickness ( double m )","title":"function SetThickness"},{"location":"api/Classes/classFEFixMesh.html#function-removeduplicateelements","text":"FEMesh * RemoveDuplicateElements ( FEMesh * pm )","title":"function RemoveDuplicateElements"},{"location":"api/Classes/classFEFixMesh.html#function-removenonmanifoldelements","text":"FEMesh * RemoveNonManifoldElements ( FEMesh * pm )","title":"function RemoveNonManifoldElements"},{"location":"api/Classes/classFEFixMesh.html#function-fixelementwinding","text":"FEMesh * FixElementWinding ( FEMesh * pm )","title":"function FixElementWinding"},{"location":"api/Classes/classFEFixMesh.html#function-fillallholes","text":"FEMesh * FillAllHoles ( FEMesh * pm )","title":"function FillAllHoles"},{"location":"api/Classes/classFEFixMesh.html#function-fixinvertedelements","text":"FEMesh * FixinvertedElements ( FEMesh * pm )","title":"function FixinvertedElements"},{"location":"api/Classes/classFEFixMesh.html#function-fixreferencesurface","text":"FEMesh * FixReferenceSurface ( FEMesh * pm )","title":"function FixReferenceSurface"},{"location":"api/Classes/classFEFixMesh.html#function-interpolateshellthickness","text":"FEMesh * InterpolateShellThickness ( FEMesh * pm ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function InterpolateShellThickness"},{"location":"api/Classes/classFEItem.html","text":"FEItem Inherited by FEEdge , FEElement_ , FEFace , FENode Public Functions Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes Name int m_ntag int m_gid int m_nid Public Functions Documentation function FEItem inline FEItem () function IsVisible inline bool IsVisible () const function IsSelected inline bool IsSelected () const function Select inline void Select () function UnSelect inline void UnSelect () function Show inline void Show () function Hide inline void Hide () function GetFEState inline unsigned int GetFEState () const function SetFEState inline void SetFEState ( unsigned int state ) Public Attributes Documentation variable m_ntag int m_ntag ; variable m_gid int m_gid ; variable m_nid int m_nid ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEItem"},{"location":"api/Classes/classFEItem.html#feitem","text":"Inherited by FEEdge , FEElement_ , FEFace , FENode","title":"FEItem"},{"location":"api/Classes/classFEItem.html#public-functions","text":"Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state)","title":"Public Functions"},{"location":"api/Classes/classFEItem.html#public-attributes","text":"Name int m_ntag int m_gid int m_nid","title":"Public Attributes"},{"location":"api/Classes/classFEItem.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEItem.html#function-feitem","text":"inline FEItem ()","title":"function FEItem"},{"location":"api/Classes/classFEItem.html#function-isvisible","text":"inline bool IsVisible () const","title":"function IsVisible"},{"location":"api/Classes/classFEItem.html#function-isselected","text":"inline bool IsSelected () const","title":"function IsSelected"},{"location":"api/Classes/classFEItem.html#function-select","text":"inline void Select ()","title":"function Select"},{"location":"api/Classes/classFEItem.html#function-unselect","text":"inline void UnSelect ()","title":"function UnSelect"},{"location":"api/Classes/classFEItem.html#function-show","text":"inline void Show ()","title":"function Show"},{"location":"api/Classes/classFEItem.html#function-hide","text":"inline void Hide ()","title":"function Hide"},{"location":"api/Classes/classFEItem.html#function-getfestate","text":"inline unsigned int GetFEState () const","title":"function GetFEState"},{"location":"api/Classes/classFEItem.html#function-setfestate","text":"inline void SetFEState ( unsigned int state )","title":"function SetFEState"},{"location":"api/Classes/classFEItem.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEItem.html#variable-m_ntag","text":"int m_ntag ;","title":"variable m_ntag"},{"location":"api/Classes/classFEItem.html#variable-m_gid","text":"int m_gid ;","title":"variable m_gid"},{"location":"api/Classes/classFEItem.html#variable-m_nid","text":"int m_nid ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_nid"},{"location":"api/Classes/classFEMesh.html","text":"FEMesh Inherits from FECoreMesh Public Functions Name FEMesh () FEMesh ( FEMesh & m) virtual ~FEMesh () virtual void Create (int nodes, int elems, int faces =0, int edges =0) allocate space for mesh void ShallowCopy ( FEMesh * pm) void Clear () \u2014 C L E A N U P \u2014 void DeleteEdges () virtual int Elements () const return number of elements FEElement & Element (int n) return element virtual FEElement_ & ElementRef (int n) return reference to element virtual FEElement * ElementPtr (int n =0) return pointer to element int FindFace ( FEElement * pe, FEFace & f, FEFace & fe) void FindNodesFromPart (int gid, vector< int > & node) std::vector< FENode > & NodeArray () std::vector< FEFace > & FaceArray () std::vector< FEElement > & ElementArray () double GetElementValue (int n) void SetElementValue (int n, double v) void UpdateValueRange () void GetValueRange (double & vmin, double & vmax) vec3d ProjectToSurface ( vec3d r, vec3d t) vec3d ProjectToFace ( vec3d p, FEFace & f, double & r, double & s) vec3d ProjectToEdge ( vec3d e1, vec3d e2, vec3d p, double & r) bool FindIntersection ( FEFace & f, vec3d x, vec3d n, vec3d & q, double & g) void Update () void UpdateElementNeighbors () void UpdateFaces () void UpdateEdges () void UpdateNodes () void AutoSmooth (double w) void UpdateNormals () void PartitionSelection () void RemoveIsolatedNodes () void AddNode ( FENode & n) FEMesh * DetachSelectedMesh () void DetachSelectedPart () FEMesh * ExtractSelectedFaces () void DeleteTaggedElements (int tag) void DeleteTaggedFaces (int tag) void DeleteTaggedEdges (int tag) void FindDuplicateFaces (vector< int > & l) void FindDuplicateEdges (vector< int > & l) void DeleteSelectedElements () void DeleteSelectedFaces () void DeleteSelectedNodes () void InvertTaggedElements (int ntag) void InvertSelectedElements () double ShellJacobian ( FEElement & el) void RemoveDuplicateElements () void FixinvertedElements () void FixReferenceSurface () void InterpolateShellThickness (double ) void RemoveNonManifoldElements () void FixElementWinding () void FixElementWinding2 () void TagAllElements (int ntag) int DataFields () FEElementData * AddDataField (const char * szname, double v =0.0) FEElementData & GetDataField (int i) double ShortestEdge () void BuildNodeElementTable (vector< vector< int > > & NET) void BuildNodeFaceTable (vector< vector< int > > & NFT) void BuildNodeEdgeTable (vector< vector< int > > & NET) void BuildEdgeTable (vector< pair< int, int > > & ET) void BuildNodeNodeTable (vector< set< int > > & NNT) void BuildSurfaceNodeNodeTable (vector< set< int > > & NNT) void BuildElementEdgeTable (vector< vector< int > > & EET, vector< pair< int, int > > & ET) void BuildFaceTable (vector< FEFace > & FT) void BuildElementFaceTable (vector< vector< int > > & EFT, vector< FEFace > & FT) void BuildFaceEdgeTable (vector< vector< int > > & FET, vector< pair< int, int > > & ET) void BuildFaceFaceTable (vector< int > & FFT, vector< FEFace > & FT) void BuildEdgeEdgeTable (vector< int > & EET, vector< pair< int, int > > & ET) Protected Functions Name bool IntersectTri ( vec3d * y, vec3d x, vec3d n, vec3d & q, double & g) bool IntersectQuad ( vec3d * y, vec3d x, vec3d n, vec3d & q, double & g) Protected Attributes Name std::vector< FEElement > m_Elem FE elements. std::vector< double > m_data element values double m_min double m_max value range of element data vector< FEElementData > m_map Additional inherited members Public Functions inherited from FECoreMesh Name FECoreMesh () constructor virtual ~FECoreMesh () destructor bool IsType (int ntype) check the type of the mesh int Nodes () const int Edges () const int Faces () const FENode & Node (int n) FEEdge & Edge (int n) FEFace & Face (int n) FENode * NodePtr (int n =0) FEEdge * EdgePtr (int n =0) FEFace * FacePtr (int n =0) Protected Attributes inherited from FECoreMesh Name std::vector< FENode > m_Node FE nodes. std::vector< FEEdge > m_Edge FE edges. std::vector< FEFace > m_Face FE faces. Public Functions Documentation function FEMesh FEMesh () function FEMesh FEMesh ( FEMesh & m ) function ~FEMesh virtual ~ FEMesh () function Create virtual void Create ( int nodes , int elems , int faces = 0 , int edges = 0 ) allocate space for mesh Reimplements : FECoreMesh::Create function ShallowCopy void ShallowCopy ( FEMesh * pm ) function Clear void Clear () \u2014 C L E A N U P \u2014 function DeleteEdges inline void DeleteEdges () function Elements inline virtual int Elements () const return number of elements Reimplements : FECoreMesh::Elements function Element inline FEElement & Element ( int n ) return element function ElementRef inline virtual FEElement_ & ElementRef ( int n ) return reference to element Reimplements : FECoreMesh::ElementRef function ElementPtr inline virtual FEElement * ElementPtr ( int n = 0 ) return pointer to element Reimplements : FECoreMesh::ElementPtr function FindFace int FindFace ( FEElement * pe , FEFace & f , FEFace & fe ) function FindNodesFromPart void FindNodesFromPart ( int gid , vector < int > & node ) function NodeArray inline std :: vector < FENode > & NodeArray () Todo : Maybe I should delete these Get the node array function FaceArray inline std :: vector < FEFace > & FaceArray () function ElementArray inline std :: vector < FEElement > & ElementArray () function GetElementValue inline double GetElementValue ( int n ) function SetElementValue inline void SetElementValue ( int n , double v ) function UpdateValueRange void UpdateValueRange () function GetValueRange void GetValueRange ( double & vmin , double & vmax ) function ProjectToSurface vec3d ProjectToSurface ( vec3d r , vec3d t ) function ProjectToFace vec3d ProjectToFace ( vec3d p , FEFace & f , double & r , double & s ) function ProjectToEdge vec3d ProjectToEdge ( vec3d e1 , vec3d e2 , vec3d p , double & r ) function FindIntersection bool FindIntersection ( FEFace & f , vec3d x , vec3d n , vec3d & q , double & g ) function Update void Update () function UpdateElementNeighbors void UpdateElementNeighbors () function UpdateFaces void UpdateFaces () function UpdateEdges void UpdateEdges () function UpdateNodes void UpdateNodes () function AutoSmooth void AutoSmooth ( double w ) function UpdateNormals void UpdateNormals () function PartitionSelection void PartitionSelection () function RemoveIsolatedNodes void RemoveIsolatedNodes () function AddNode inline void AddNode ( FENode & n ) function DetachSelectedMesh FEMesh * DetachSelectedMesh () function DetachSelectedPart void DetachSelectedPart () function ExtractSelectedFaces FEMesh * ExtractSelectedFaces () function DeleteTaggedElements void DeleteTaggedElements ( int tag ) function DeleteTaggedFaces void DeleteTaggedFaces ( int tag ) function DeleteTaggedEdges void DeleteTaggedEdges ( int tag ) function FindDuplicateFaces void FindDuplicateFaces ( vector < int > & l ) function FindDuplicateEdges void FindDuplicateEdges ( vector < int > & l ) function DeleteSelectedElements void DeleteSelectedElements () function DeleteSelectedFaces void DeleteSelectedFaces () function DeleteSelectedNodes void DeleteSelectedNodes () function InvertTaggedElements void InvertTaggedElements ( int ntag ) function InvertSelectedElements void InvertSelectedElements () function ShellJacobian double ShellJacobian ( FEElement & el ) function RemoveDuplicateElements void RemoveDuplicateElements () function FixinvertedElements void FixinvertedElements () function FixReferenceSurface void FixReferenceSurface () function InterpolateShellThickness void InterpolateShellThickness ( double ) function RemoveNonManifoldElements void RemoveNonManifoldElements () function FixElementWinding void FixElementWinding () function FixElementWinding2 void FixElementWinding2 () function TagAllElements void TagAllElements ( int ntag ) function DataFields inline int DataFields () function AddDataField FEElementData * AddDataField ( const char * szname , double v = 0.0 ) function GetDataField inline FEElementData & GetDataField ( int i ) function ShortestEdge double ShortestEdge () function BuildNodeElementTable void BuildNodeElementTable ( vector < vector < int > > & NET ) function BuildNodeFaceTable void BuildNodeFaceTable ( vector < vector < int > > & NFT ) function BuildNodeEdgeTable void BuildNodeEdgeTable ( vector < vector < int > > & NET ) function BuildEdgeTable void BuildEdgeTable ( vector < pair < int , int > > & ET ) function BuildNodeNodeTable void BuildNodeNodeTable ( vector < set < int > > & NNT ) function BuildSurfaceNodeNodeTable void BuildSurfaceNodeNodeTable ( vector < set < int > > & NNT ) function BuildElementEdgeTable void BuildElementEdgeTable ( vector < vector < int > > & EET , vector < pair < int , int > > & ET ) function BuildFaceTable void BuildFaceTable ( vector < FEFace > & FT ) function BuildElementFaceTable void BuildElementFaceTable ( vector < vector < int > > & EFT , vector < FEFace > & FT ) function BuildFaceEdgeTable void BuildFaceEdgeTable ( vector < vector < int > > & FET , vector < pair < int , int > > & ET ) function BuildFaceFaceTable void BuildFaceFaceTable ( vector < int > & FFT , vector < FEFace > & FT ) function BuildEdgeEdgeTable void BuildEdgeEdgeTable ( vector < int > & EET , vector < pair < int , int > > & ET ) Protected Functions Documentation function IntersectTri bool IntersectTri ( vec3d * y , vec3d x , vec3d n , vec3d & q , double & g ) function IntersectQuad bool IntersectQuad ( vec3d * y , vec3d x , vec3d n , vec3d & q , double & g ) Protected Attributes Documentation variable m_Elem std :: vector < FEElement > m_Elem ; FE elements. variable m_data std :: vector < double > m_data ; element values variable m_min double m_min ; variable m_max double m_max ; value range of element data variable m_map vector < FEElementData > m_map ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEMesh"},{"location":"api/Classes/classFEMesh.html#femesh","text":"Inherits from FECoreMesh","title":"FEMesh"},{"location":"api/Classes/classFEMesh.html#public-functions","text":"Name FEMesh () FEMesh ( FEMesh & m) virtual ~FEMesh () virtual void Create (int nodes, int elems, int faces =0, int edges =0) allocate space for mesh void ShallowCopy ( FEMesh * pm) void Clear () \u2014 C L E A N U P \u2014 void DeleteEdges () virtual int Elements () const return number of elements FEElement & Element (int n) return element virtual FEElement_ & ElementRef (int n) return reference to element virtual FEElement * ElementPtr (int n =0) return pointer to element int FindFace ( FEElement * pe, FEFace & f, FEFace & fe) void FindNodesFromPart (int gid, vector< int > & node) std::vector< FENode > & NodeArray () std::vector< FEFace > & FaceArray () std::vector< FEElement > & ElementArray () double GetElementValue (int n) void SetElementValue (int n, double v) void UpdateValueRange () void GetValueRange (double & vmin, double & vmax) vec3d ProjectToSurface ( vec3d r, vec3d t) vec3d ProjectToFace ( vec3d p, FEFace & f, double & r, double & s) vec3d ProjectToEdge ( vec3d e1, vec3d e2, vec3d p, double & r) bool FindIntersection ( FEFace & f, vec3d x, vec3d n, vec3d & q, double & g) void Update () void UpdateElementNeighbors () void UpdateFaces () void UpdateEdges () void UpdateNodes () void AutoSmooth (double w) void UpdateNormals () void PartitionSelection () void RemoveIsolatedNodes () void AddNode ( FENode & n) FEMesh * DetachSelectedMesh () void DetachSelectedPart () FEMesh * ExtractSelectedFaces () void DeleteTaggedElements (int tag) void DeleteTaggedFaces (int tag) void DeleteTaggedEdges (int tag) void FindDuplicateFaces (vector< int > & l) void FindDuplicateEdges (vector< int > & l) void DeleteSelectedElements () void DeleteSelectedFaces () void DeleteSelectedNodes () void InvertTaggedElements (int ntag) void InvertSelectedElements () double ShellJacobian ( FEElement & el) void RemoveDuplicateElements () void FixinvertedElements () void FixReferenceSurface () void InterpolateShellThickness (double ) void RemoveNonManifoldElements () void FixElementWinding () void FixElementWinding2 () void TagAllElements (int ntag) int DataFields () FEElementData * AddDataField (const char * szname, double v =0.0) FEElementData & GetDataField (int i) double ShortestEdge () void BuildNodeElementTable (vector< vector< int > > & NET) void BuildNodeFaceTable (vector< vector< int > > & NFT) void BuildNodeEdgeTable (vector< vector< int > > & NET) void BuildEdgeTable (vector< pair< int, int > > & ET) void BuildNodeNodeTable (vector< set< int > > & NNT) void BuildSurfaceNodeNodeTable (vector< set< int > > & NNT) void BuildElementEdgeTable (vector< vector< int > > & EET, vector< pair< int, int > > & ET) void BuildFaceTable (vector< FEFace > & FT) void BuildElementFaceTable (vector< vector< int > > & EFT, vector< FEFace > & FT) void BuildFaceEdgeTable (vector< vector< int > > & FET, vector< pair< int, int > > & ET) void BuildFaceFaceTable (vector< int > & FFT, vector< FEFace > & FT) void BuildEdgeEdgeTable (vector< int > & EET, vector< pair< int, int > > & ET)","title":"Public Functions"},{"location":"api/Classes/classFEMesh.html#protected-functions","text":"Name bool IntersectTri ( vec3d * y, vec3d x, vec3d n, vec3d & q, double & g) bool IntersectQuad ( vec3d * y, vec3d x, vec3d n, vec3d & q, double & g)","title":"Protected Functions"},{"location":"api/Classes/classFEMesh.html#protected-attributes","text":"Name std::vector< FEElement > m_Elem FE elements. std::vector< double > m_data element values double m_min double m_max value range of element data vector< FEElementData > m_map","title":"Protected Attributes"},{"location":"api/Classes/classFEMesh.html#additional-inherited-members","text":"Public Functions inherited from FECoreMesh Name FECoreMesh () constructor virtual ~FECoreMesh () destructor bool IsType (int ntype) check the type of the mesh int Nodes () const int Edges () const int Faces () const FENode & Node (int n) FEEdge & Edge (int n) FEFace & Face (int n) FENode * NodePtr (int n =0) FEEdge * EdgePtr (int n =0) FEFace * FacePtr (int n =0) Protected Attributes inherited from FECoreMesh Name std::vector< FENode > m_Node FE nodes. std::vector< FEEdge > m_Edge FE edges. std::vector< FEFace > m_Face FE faces.","title":"Additional inherited members"},{"location":"api/Classes/classFEMesh.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEMesh.html#function-femesh","text":"FEMesh ()","title":"function FEMesh"},{"location":"api/Classes/classFEMesh.html#function-femesh_1","text":"FEMesh ( FEMesh & m )","title":"function FEMesh"},{"location":"api/Classes/classFEMesh.html#function-femesh_2","text":"virtual ~ FEMesh ()","title":"function ~FEMesh"},{"location":"api/Classes/classFEMesh.html#function-create","text":"virtual void Create ( int nodes , int elems , int faces = 0 , int edges = 0 ) allocate space for mesh Reimplements : FECoreMesh::Create","title":"function Create"},{"location":"api/Classes/classFEMesh.html#function-shallowcopy","text":"void ShallowCopy ( FEMesh * pm )","title":"function ShallowCopy"},{"location":"api/Classes/classFEMesh.html#function-clear","text":"void Clear () \u2014 C L E A N U P \u2014","title":"function Clear"},{"location":"api/Classes/classFEMesh.html#function-deleteedges","text":"inline void DeleteEdges ()","title":"function DeleteEdges"},{"location":"api/Classes/classFEMesh.html#function-elements","text":"inline virtual int Elements () const return number of elements Reimplements : FECoreMesh::Elements","title":"function Elements"},{"location":"api/Classes/classFEMesh.html#function-element","text":"inline FEElement & Element ( int n ) return element","title":"function Element"},{"location":"api/Classes/classFEMesh.html#function-elementref","text":"inline virtual FEElement_ & ElementRef ( int n ) return reference to element Reimplements : FECoreMesh::ElementRef","title":"function ElementRef"},{"location":"api/Classes/classFEMesh.html#function-elementptr","text":"inline virtual FEElement * ElementPtr ( int n = 0 ) return pointer to element Reimplements : FECoreMesh::ElementPtr","title":"function ElementPtr"},{"location":"api/Classes/classFEMesh.html#function-findface","text":"int FindFace ( FEElement * pe , FEFace & f , FEFace & fe )","title":"function FindFace"},{"location":"api/Classes/classFEMesh.html#function-findnodesfrompart","text":"void FindNodesFromPart ( int gid , vector < int > & node )","title":"function FindNodesFromPart"},{"location":"api/Classes/classFEMesh.html#function-nodearray","text":"inline std :: vector < FENode > & NodeArray () Todo : Maybe I should delete these Get the node array","title":"function NodeArray"},{"location":"api/Classes/classFEMesh.html#function-facearray","text":"inline std :: vector < FEFace > & FaceArray ()","title":"function FaceArray"},{"location":"api/Classes/classFEMesh.html#function-elementarray","text":"inline std :: vector < FEElement > & ElementArray ()","title":"function ElementArray"},{"location":"api/Classes/classFEMesh.html#function-getelementvalue","text":"inline double GetElementValue ( int n )","title":"function GetElementValue"},{"location":"api/Classes/classFEMesh.html#function-setelementvalue","text":"inline void SetElementValue ( int n , double v )","title":"function SetElementValue"},{"location":"api/Classes/classFEMesh.html#function-updatevaluerange","text":"void UpdateValueRange ()","title":"function UpdateValueRange"},{"location":"api/Classes/classFEMesh.html#function-getvaluerange","text":"void GetValueRange ( double & vmin , double & vmax )","title":"function GetValueRange"},{"location":"api/Classes/classFEMesh.html#function-projecttosurface","text":"vec3d ProjectToSurface ( vec3d r , vec3d t )","title":"function ProjectToSurface"},{"location":"api/Classes/classFEMesh.html#function-projecttoface","text":"vec3d ProjectToFace ( vec3d p , FEFace & f , double & r , double & s )","title":"function ProjectToFace"},{"location":"api/Classes/classFEMesh.html#function-projecttoedge","text":"vec3d ProjectToEdge ( vec3d e1 , vec3d e2 , vec3d p , double & r )","title":"function ProjectToEdge"},{"location":"api/Classes/classFEMesh.html#function-findintersection","text":"bool FindIntersection ( FEFace & f , vec3d x , vec3d n , vec3d & q , double & g )","title":"function FindIntersection"},{"location":"api/Classes/classFEMesh.html#function-update","text":"void Update ()","title":"function Update"},{"location":"api/Classes/classFEMesh.html#function-updateelementneighbors","text":"void UpdateElementNeighbors ()","title":"function UpdateElementNeighbors"},{"location":"api/Classes/classFEMesh.html#function-updatefaces","text":"void UpdateFaces ()","title":"function UpdateFaces"},{"location":"api/Classes/classFEMesh.html#function-updateedges","text":"void UpdateEdges ()","title":"function UpdateEdges"},{"location":"api/Classes/classFEMesh.html#function-updatenodes","text":"void UpdateNodes ()","title":"function UpdateNodes"},{"location":"api/Classes/classFEMesh.html#function-autosmooth","text":"void AutoSmooth ( double w )","title":"function AutoSmooth"},{"location":"api/Classes/classFEMesh.html#function-updatenormals","text":"void UpdateNormals ()","title":"function UpdateNormals"},{"location":"api/Classes/classFEMesh.html#function-partitionselection","text":"void PartitionSelection ()","title":"function PartitionSelection"},{"location":"api/Classes/classFEMesh.html#function-removeisolatednodes","text":"void RemoveIsolatedNodes ()","title":"function RemoveIsolatedNodes"},{"location":"api/Classes/classFEMesh.html#function-addnode","text":"inline void AddNode ( FENode & n )","title":"function AddNode"},{"location":"api/Classes/classFEMesh.html#function-detachselectedmesh","text":"FEMesh * DetachSelectedMesh ()","title":"function DetachSelectedMesh"},{"location":"api/Classes/classFEMesh.html#function-detachselectedpart","text":"void DetachSelectedPart ()","title":"function DetachSelectedPart"},{"location":"api/Classes/classFEMesh.html#function-extractselectedfaces","text":"FEMesh * ExtractSelectedFaces ()","title":"function ExtractSelectedFaces"},{"location":"api/Classes/classFEMesh.html#function-deletetaggedelements","text":"void DeleteTaggedElements ( int tag )","title":"function DeleteTaggedElements"},{"location":"api/Classes/classFEMesh.html#function-deletetaggedfaces","text":"void DeleteTaggedFaces ( int tag )","title":"function DeleteTaggedFaces"},{"location":"api/Classes/classFEMesh.html#function-deletetaggededges","text":"void DeleteTaggedEdges ( int tag )","title":"function DeleteTaggedEdges"},{"location":"api/Classes/classFEMesh.html#function-findduplicatefaces","text":"void FindDuplicateFaces ( vector < int > & l )","title":"function FindDuplicateFaces"},{"location":"api/Classes/classFEMesh.html#function-findduplicateedges","text":"void FindDuplicateEdges ( vector < int > & l )","title":"function FindDuplicateEdges"},{"location":"api/Classes/classFEMesh.html#function-deleteselectedelements","text":"void DeleteSelectedElements ()","title":"function DeleteSelectedElements"},{"location":"api/Classes/classFEMesh.html#function-deleteselectedfaces","text":"void DeleteSelectedFaces ()","title":"function DeleteSelectedFaces"},{"location":"api/Classes/classFEMesh.html#function-deleteselectednodes","text":"void DeleteSelectedNodes ()","title":"function DeleteSelectedNodes"},{"location":"api/Classes/classFEMesh.html#function-inverttaggedelements","text":"void InvertTaggedElements ( int ntag )","title":"function InvertTaggedElements"},{"location":"api/Classes/classFEMesh.html#function-invertselectedelements","text":"void InvertSelectedElements ()","title":"function InvertSelectedElements"},{"location":"api/Classes/classFEMesh.html#function-shelljacobian","text":"double ShellJacobian ( FEElement & el )","title":"function ShellJacobian"},{"location":"api/Classes/classFEMesh.html#function-removeduplicateelements","text":"void RemoveDuplicateElements ()","title":"function RemoveDuplicateElements"},{"location":"api/Classes/classFEMesh.html#function-fixinvertedelements","text":"void FixinvertedElements ()","title":"function FixinvertedElements"},{"location":"api/Classes/classFEMesh.html#function-fixreferencesurface","text":"void FixReferenceSurface ()","title":"function FixReferenceSurface"},{"location":"api/Classes/classFEMesh.html#function-interpolateshellthickness","text":"void InterpolateShellThickness ( double )","title":"function InterpolateShellThickness"},{"location":"api/Classes/classFEMesh.html#function-removenonmanifoldelements","text":"void RemoveNonManifoldElements ()","title":"function RemoveNonManifoldElements"},{"location":"api/Classes/classFEMesh.html#function-fixelementwinding","text":"void FixElementWinding ()","title":"function FixElementWinding"},{"location":"api/Classes/classFEMesh.html#function-fixelementwinding2","text":"void FixElementWinding2 ()","title":"function FixElementWinding2"},{"location":"api/Classes/classFEMesh.html#function-tagallelements","text":"void TagAllElements ( int ntag )","title":"function TagAllElements"},{"location":"api/Classes/classFEMesh.html#function-datafields","text":"inline int DataFields ()","title":"function DataFields"},{"location":"api/Classes/classFEMesh.html#function-adddatafield","text":"FEElementData * AddDataField ( const char * szname , double v = 0.0 )","title":"function AddDataField"},{"location":"api/Classes/classFEMesh.html#function-getdatafield","text":"inline FEElementData & GetDataField ( int i )","title":"function GetDataField"},{"location":"api/Classes/classFEMesh.html#function-shortestedge","text":"double ShortestEdge ()","title":"function ShortestEdge"},{"location":"api/Classes/classFEMesh.html#function-buildnodeelementtable","text":"void BuildNodeElementTable ( vector < vector < int > > & NET )","title":"function BuildNodeElementTable"},{"location":"api/Classes/classFEMesh.html#function-buildnodefacetable","text":"void BuildNodeFaceTable ( vector < vector < int > > & NFT )","title":"function BuildNodeFaceTable"},{"location":"api/Classes/classFEMesh.html#function-buildnodeedgetable","text":"void BuildNodeEdgeTable ( vector < vector < int > > & NET )","title":"function BuildNodeEdgeTable"},{"location":"api/Classes/classFEMesh.html#function-buildedgetable","text":"void BuildEdgeTable ( vector < pair < int , int > > & ET )","title":"function BuildEdgeTable"},{"location":"api/Classes/classFEMesh.html#function-buildnodenodetable","text":"void BuildNodeNodeTable ( vector < set < int > > & NNT )","title":"function BuildNodeNodeTable"},{"location":"api/Classes/classFEMesh.html#function-buildsurfacenodenodetable","text":"void BuildSurfaceNodeNodeTable ( vector < set < int > > & NNT )","title":"function BuildSurfaceNodeNodeTable"},{"location":"api/Classes/classFEMesh.html#function-buildelementedgetable","text":"void BuildElementEdgeTable ( vector < vector < int > > & EET , vector < pair < int , int > > & ET )","title":"function BuildElementEdgeTable"},{"location":"api/Classes/classFEMesh.html#function-buildfacetable","text":"void BuildFaceTable ( vector < FEFace > & FT )","title":"function BuildFaceTable"},{"location":"api/Classes/classFEMesh.html#function-buildelementfacetable","text":"void BuildElementFaceTable ( vector < vector < int > > & EFT , vector < FEFace > & FT )","title":"function BuildElementFaceTable"},{"location":"api/Classes/classFEMesh.html#function-buildfaceedgetable","text":"void BuildFaceEdgeTable ( vector < vector < int > > & FET , vector < pair < int , int > > & ET )","title":"function BuildFaceEdgeTable"},{"location":"api/Classes/classFEMesh.html#function-buildfacefacetable","text":"void BuildFaceFaceTable ( vector < int > & FFT , vector < FEFace > & FT )","title":"function BuildFaceFaceTable"},{"location":"api/Classes/classFEMesh.html#function-buildedgeedgetable","text":"void BuildEdgeEdgeTable ( vector < int > & EET , vector < pair < int , int > > & ET )","title":"function BuildEdgeEdgeTable"},{"location":"api/Classes/classFEMesh.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classFEMesh.html#function-intersecttri","text":"bool IntersectTri ( vec3d * y , vec3d x , vec3d n , vec3d & q , double & g )","title":"function IntersectTri"},{"location":"api/Classes/classFEMesh.html#function-intersectquad","text":"bool IntersectQuad ( vec3d * y , vec3d x , vec3d n , vec3d & q , double & g )","title":"function IntersectQuad"},{"location":"api/Classes/classFEMesh.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFEMesh.html#variable-m_elem","text":"std :: vector < FEElement > m_Elem ; FE elements.","title":"variable m_Elem"},{"location":"api/Classes/classFEMesh.html#variable-m_data","text":"std :: vector < double > m_data ; element values","title":"variable m_data"},{"location":"api/Classes/classFEMesh.html#variable-m_min","text":"double m_min ;","title":"variable m_min"},{"location":"api/Classes/classFEMesh.html#variable-m_max","text":"double m_max ; value range of element data","title":"variable m_max"},{"location":"api/Classes/classFEMesh.html#variable-m_map","text":"vector < FEElementData > m_map ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_map"},{"location":"api/Classes/classFEMeshSmoothingModifier.html","text":"FEMeshSmoothingModifier More... #include Public Functions Name FEMeshSmoothingModifier () Constructor. FEMesh * Apply ( FEMesh * pm) Apply the smoothing modifier. Protected Functions Name double area_triangle ( vec3d r[3]) double distance ( vec3d x, vec3d y) double random () void Laplacian_Smoothing ( FEMesh * pm, vector< int > hashmap) void Laplacian_Smoothing2 ( FEMesh * pm, vector< int > hashmap) void Taubin_Smoothing ( FEMesh * pm, vector< int > hashmap) void Crease_Enhancing_Diffusion ( FEMesh * pm, vector< int > hashmap) void Add_Noise ( FEMesh * pm, vector< int > hashmap) Public Attributes Name double m_threshold1 double m_threshold2 double m_iteration int m_method Detailed Description class FEMeshSmoothingModifier ; This class implements a modifier that coarses a plygonal mesh using an approximated centroidal voronoi diagram. Public Functions Documentation function FEMeshSmoothingModifier FEMeshSmoothingModifier () Constructor. function Apply FEMesh * Apply ( FEMesh * pm ) Apply the smoothing modifier. Protected Functions Documentation function area_triangle double area_triangle ( vec3d r [ 3 ] ) function distance double distance ( vec3d x , vec3d y ) function random double random () function Laplacian_Smoothing void Laplacian_Smoothing ( FEMesh * pm , vector < int > hashmap ) function Laplacian_Smoothing2 void Laplacian_Smoothing2 ( FEMesh * pm , vector < int > hashmap ) function Taubin_Smoothing void Taubin_Smoothing ( FEMesh * pm , vector < int > hashmap ) function Crease_Enhancing_Diffusion void Crease_Enhancing_Diffusion ( FEMesh * pm , vector < int > hashmap ) function Add_Noise void Add_Noise ( FEMesh * pm , vector < int > hashmap ) Public Attributes Documentation variable m_threshold1 double m_threshold1 ; variable m_threshold2 double m_threshold2 ; variable m_iteration double m_iteration ; variable m_method int m_method ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEMeshSmoothingModifier"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#femeshsmoothingmodifier","text":"More... #include ","title":"FEMeshSmoothingModifier"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#public-functions","text":"Name FEMeshSmoothingModifier () Constructor. FEMesh * Apply ( FEMesh * pm) Apply the smoothing modifier.","title":"Public Functions"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#protected-functions","text":"Name double area_triangle ( vec3d r[3]) double distance ( vec3d x, vec3d y) double random () void Laplacian_Smoothing ( FEMesh * pm, vector< int > hashmap) void Laplacian_Smoothing2 ( FEMesh * pm, vector< int > hashmap) void Taubin_Smoothing ( FEMesh * pm, vector< int > hashmap) void Crease_Enhancing_Diffusion ( FEMesh * pm, vector< int > hashmap) void Add_Noise ( FEMesh * pm, vector< int > hashmap)","title":"Protected Functions"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#public-attributes","text":"Name double m_threshold1 double m_threshold2 double m_iteration int m_method","title":"Public Attributes"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#detailed-description","text":"class FEMeshSmoothingModifier ; This class implements a modifier that coarses a plygonal mesh using an approximated centroidal voronoi diagram.","title":"Detailed Description"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-femeshsmoothingmodifier","text":"FEMeshSmoothingModifier () Constructor.","title":"function FEMeshSmoothingModifier"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-apply","text":"FEMesh * Apply ( FEMesh * pm ) Apply the smoothing modifier.","title":"function Apply"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-area_triangle","text":"double area_triangle ( vec3d r [ 3 ] )","title":"function area_triangle"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-distance","text":"double distance ( vec3d x , vec3d y )","title":"function distance"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-random","text":"double random ()","title":"function random"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-laplacian_smoothing","text":"void Laplacian_Smoothing ( FEMesh * pm , vector < int > hashmap )","title":"function Laplacian_Smoothing"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-laplacian_smoothing2","text":"void Laplacian_Smoothing2 ( FEMesh * pm , vector < int > hashmap )","title":"function Laplacian_Smoothing2"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-taubin_smoothing","text":"void Taubin_Smoothing ( FEMesh * pm , vector < int > hashmap )","title":"function Taubin_Smoothing"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-crease_enhancing_diffusion","text":"void Crease_Enhancing_Diffusion ( FEMesh * pm , vector < int > hashmap )","title":"function Crease_Enhancing_Diffusion"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#function-add_noise","text":"void Add_Noise ( FEMesh * pm , vector < int > hashmap )","title":"function Add_Noise"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#variable-m_threshold1","text":"double m_threshold1 ;","title":"variable m_threshold1"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#variable-m_threshold2","text":"double m_threshold2 ;","title":"variable m_threshold2"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#variable-m_iteration","text":"double m_iteration ;","title":"variable m_iteration"},{"location":"api/Classes/classFEMeshSmoothingModifier.html#variable-m_method","text":"int m_method ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_method"},{"location":"api/Classes/classFENode.html","text":"FENode Inherits from FEItem Public Functions Name FENode () Public Attributes Name vec3d r bool m_bext double m_ndata Additional inherited members Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid Public Functions Documentation function FENode inline FENode () Public Attributes Documentation variable r vec3d r ; variable m_bext bool m_bext ; variable m_ndata double m_ndata ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FENode"},{"location":"api/Classes/classFENode.html#fenode","text":"Inherits from FEItem","title":"FENode"},{"location":"api/Classes/classFENode.html#public-functions","text":"Name FENode ()","title":"Public Functions"},{"location":"api/Classes/classFENode.html#public-attributes","text":"Name vec3d r bool m_bext double m_ndata","title":"Public Attributes"},{"location":"api/Classes/classFENode.html#additional-inherited-members","text":"Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid","title":"Additional inherited members"},{"location":"api/Classes/classFENode.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFENode.html#function-fenode","text":"inline FENode ()","title":"function FENode"},{"location":"api/Classes/classFENode.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classFENode.html#variable-r","text":"vec3d r ;","title":"variable r"},{"location":"api/Classes/classFENode.html#variable-m_bext","text":"bool m_bext ;","title":"variable m_bext"},{"location":"api/Classes/classFENode.html#variable-m_ndata","text":"double m_ndata ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_ndata"},{"location":"api/Classes/classFENodeElementList.html","text":"FENodeElementList Public Functions Name FENodeElementList ( FEMesh * pm) ~FENodeElementList () void Build () int Valence (int n) FEElement * Element (int n, int j) Protected Attributes Name FEMesh * m_pm vector< int > m_val vector< int > m_off vector< FEElement * > m_pelem Public Functions Documentation function FENodeElementList FENodeElementList ( FEMesh * pm ) function ~FENodeElementList ~ FENodeElementList () function Build void Build () function Valence inline int Valence ( int n ) function Element inline FEElement * Element ( int n , int j ) Protected Attributes Documentation variable m_pm FEMesh * m_pm ; variable m_val vector < int > m_val ; variable m_off vector < int > m_off ; variable m_pelem vector < FEElement * > m_pelem ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FENodeElementList"},{"location":"api/Classes/classFENodeElementList.html#fenodeelementlist","text":"","title":"FENodeElementList"},{"location":"api/Classes/classFENodeElementList.html#public-functions","text":"Name FENodeElementList ( FEMesh * pm) ~FENodeElementList () void Build () int Valence (int n) FEElement * Element (int n, int j)","title":"Public Functions"},{"location":"api/Classes/classFENodeElementList.html#protected-attributes","text":"Name FEMesh * m_pm vector< int > m_val vector< int > m_off vector< FEElement * > m_pelem","title":"Protected Attributes"},{"location":"api/Classes/classFENodeElementList.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFENodeElementList.html#function-fenodeelementlist","text":"FENodeElementList ( FEMesh * pm )","title":"function FENodeElementList"},{"location":"api/Classes/classFENodeElementList.html#function-fenodeelementlist_1","text":"~ FENodeElementList ()","title":"function ~FENodeElementList"},{"location":"api/Classes/classFENodeElementList.html#function-build","text":"void Build ()","title":"function Build"},{"location":"api/Classes/classFENodeElementList.html#function-valence","text":"inline int Valence ( int n )","title":"function Valence"},{"location":"api/Classes/classFENodeElementList.html#function-element","text":"inline FEElement * Element ( int n , int j )","title":"function Element"},{"location":"api/Classes/classFENodeElementList.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFENodeElementList.html#variable-m_pm","text":"FEMesh * m_pm ;","title":"variable m_pm"},{"location":"api/Classes/classFENodeElementList.html#variable-m_val","text":"vector < int > m_val ;","title":"variable m_val"},{"location":"api/Classes/classFENodeElementList.html#variable-m_off","text":"vector < int > m_off ;","title":"variable m_off"},{"location":"api/Classes/classFENodeElementList.html#variable-m_pelem","text":"vector < FEElement * > m_pelem ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_pelem"},{"location":"api/Classes/classFENodeFaceList.html","text":"FENodeFaceList Public Functions Name FENodeFaceList ( FEMesh * pm) ~FENodeFaceList (void ) void Build () void BuildSorted () int Nodes () FENode & Node (int i) int Valence (int i) FEFace * Face (int n, int i) bool HasFace (int n, FEFace * pf) Protected Functions Name void Sort (int node) Protected Attributes Name FEMesh * m_pm vector< int > m_node vector< int > m_val vector< FEFace * > m_pface vector< int > m_off Public Functions Documentation function FENodeFaceList FENodeFaceList ( FEMesh * pm ) function ~FENodeFaceList ~ FENodeFaceList ( void ) function Build void Build () function BuildSorted void BuildSorted () function Nodes inline int Nodes () function Node inline FENode & Node ( int i ) function Valence inline int Valence ( int i ) function Face inline FEFace * Face ( int n , int i ) function HasFace bool HasFace ( int n , FEFace * pf ) Protected Functions Documentation function Sort void Sort ( int node ) Protected Attributes Documentation variable m_pm FEMesh * m_pm ; variable m_node vector < int > m_node ; variable m_val vector < int > m_val ; variable m_pface vector < FEFace * > m_pface ; variable m_off vector < int > m_off ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FENodeFaceList"},{"location":"api/Classes/classFENodeFaceList.html#fenodefacelist","text":"","title":"FENodeFaceList"},{"location":"api/Classes/classFENodeFaceList.html#public-functions","text":"Name FENodeFaceList ( FEMesh * pm) ~FENodeFaceList (void ) void Build () void BuildSorted () int Nodes () FENode & Node (int i) int Valence (int i) FEFace * Face (int n, int i) bool HasFace (int n, FEFace * pf)","title":"Public Functions"},{"location":"api/Classes/classFENodeFaceList.html#protected-functions","text":"Name void Sort (int node)","title":"Protected Functions"},{"location":"api/Classes/classFENodeFaceList.html#protected-attributes","text":"Name FEMesh * m_pm vector< int > m_node vector< int > m_val vector< FEFace * > m_pface vector< int > m_off","title":"Protected Attributes"},{"location":"api/Classes/classFENodeFaceList.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFENodeFaceList.html#function-fenodefacelist","text":"FENodeFaceList ( FEMesh * pm )","title":"function FENodeFaceList"},{"location":"api/Classes/classFENodeFaceList.html#function-fenodefacelist_1","text":"~ FENodeFaceList ( void )","title":"function ~FENodeFaceList"},{"location":"api/Classes/classFENodeFaceList.html#function-build","text":"void Build ()","title":"function Build"},{"location":"api/Classes/classFENodeFaceList.html#function-buildsorted","text":"void BuildSorted ()","title":"function BuildSorted"},{"location":"api/Classes/classFENodeFaceList.html#function-nodes","text":"inline int Nodes ()","title":"function Nodes"},{"location":"api/Classes/classFENodeFaceList.html#function-node","text":"inline FENode & Node ( int i )","title":"function Node"},{"location":"api/Classes/classFENodeFaceList.html#function-valence","text":"inline int Valence ( int i )","title":"function Valence"},{"location":"api/Classes/classFENodeFaceList.html#function-face","text":"inline FEFace * Face ( int n , int i )","title":"function Face"},{"location":"api/Classes/classFENodeFaceList.html#function-hasface","text":"bool HasFace ( int n , FEFace * pf )","title":"function HasFace"},{"location":"api/Classes/classFENodeFaceList.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classFENodeFaceList.html#function-sort","text":"void Sort ( int node )","title":"function Sort"},{"location":"api/Classes/classFENodeFaceList.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFENodeFaceList.html#variable-m_pm","text":"FEMesh * m_pm ;","title":"variable m_pm"},{"location":"api/Classes/classFENodeFaceList.html#variable-m_node","text":"vector < int > m_node ;","title":"variable m_node"},{"location":"api/Classes/classFENodeFaceList.html#variable-m_val","text":"vector < int > m_val ;","title":"variable m_val"},{"location":"api/Classes/classFENodeFaceList.html#variable-m_pface","text":"vector < FEFace * > m_pface ;","title":"variable m_pface"},{"location":"api/Classes/classFENodeFaceList.html#variable-m_off","text":"vector < int > m_off ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_off"},{"location":"api/Classes/classFENodeNodeList.html","text":"FENodeNodeList Public Functions Name FENodeNodeList ( FEMesh * pm) ~FENodeNodeList () void Build () int Valence (int n) int Node (int n, int j) Protected Attributes Name FEMesh * m_pm vector< int > m_val vector< int > m_off vector< int > m_node Public Functions Documentation function FENodeNodeList FENodeNodeList ( FEMesh * pm ) function ~FENodeNodeList ~ FENodeNodeList () function Build void Build () function Valence inline int Valence ( int n ) function Node inline int Node ( int n , int j ) Protected Attributes Documentation variable m_pm FEMesh * m_pm ; variable m_val vector < int > m_val ; variable m_off vector < int > m_off ; variable m_node vector < int > m_node ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FENodeNodeList"},{"location":"api/Classes/classFENodeNodeList.html#fenodenodelist","text":"","title":"FENodeNodeList"},{"location":"api/Classes/classFENodeNodeList.html#public-functions","text":"Name FENodeNodeList ( FEMesh * pm) ~FENodeNodeList () void Build () int Valence (int n) int Node (int n, int j)","title":"Public Functions"},{"location":"api/Classes/classFENodeNodeList.html#protected-attributes","text":"Name FEMesh * m_pm vector< int > m_val vector< int > m_off vector< int > m_node","title":"Protected Attributes"},{"location":"api/Classes/classFENodeNodeList.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFENodeNodeList.html#function-fenodenodelist","text":"FENodeNodeList ( FEMesh * pm )","title":"function FENodeNodeList"},{"location":"api/Classes/classFENodeNodeList.html#function-fenodenodelist_1","text":"~ FENodeNodeList ()","title":"function ~FENodeNodeList"},{"location":"api/Classes/classFENodeNodeList.html#function-build","text":"void Build ()","title":"function Build"},{"location":"api/Classes/classFENodeNodeList.html#function-valence","text":"inline int Valence ( int n )","title":"function Valence"},{"location":"api/Classes/classFENodeNodeList.html#function-node","text":"inline int Node ( int n , int j )","title":"function Node"},{"location":"api/Classes/classFENodeNodeList.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classFENodeNodeList.html#variable-m_pm","text":"FEMesh * m_pm ;","title":"variable m_pm"},{"location":"api/Classes/classFENodeNodeList.html#variable-m_val","text":"vector < int > m_val ;","title":"variable m_val"},{"location":"api/Classes/classFENodeNodeList.html#variable-m_off","text":"vector < int > m_off ;","title":"variable m_off"},{"location":"api/Classes/classFENodeNodeList.html#variable-m_node","text":"vector < int > m_node ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_node"},{"location":"api/Classes/classFETri3.html","text":"FETri3 Inherits from FEElement_ , FEItem Public Functions Name FETri3 () Constructor. FETri3 ( FETri3 & el) copy constructor FETri3 & operator= ( FETri3 & el) assignment operator Additional inherited members Public Functions inherited from FEElement_ Name FEElement_ () constructor bool is_equal ( FEElement_ & e) int GetType () const return the element type bool IsType (int ntype) const Is the element of this type. int Nodes () const number of nodes int Faces () const Number of faces (shells have no faces) int Edges () const Number of edges (solids have no edges) int GetFace (int i, int * n) Get only the nodes of face i (only solids have faces) FEFace GetFace (int i) Get the face i (only solids have faces) FEFace GetShellFace () Get the face of a shell. FEEdge GetEdge (int i) Get the edge. bool IsExterior () Is this an exterior element. bool IsSolid () bool IsShell () bool IsBeam () Protected Functions inherited from FEElement_ Name void copy (const FEElement_ & el) Public Attributes inherited from FEElement_ Name int * m_node pointer to node data int * m_nbr neighbour elements int * m_face faces (-1 for interior faces) double * m_h element thickness (only used by shells) vec3d m_fiber fiber orientation mat3d m_Q local material orientation bool m_Qactive active local material orientation double m_a0 cross-sectional area (only used by truss elements) Protected Attributes inherited from FEElement_ Name int m_ntype type of element int m_nodes nr of nodes int m_nfaces nr of faces ( 0 for shells) int m_nedges nr of edges ( 0 for solids) Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid Public Functions Documentation function FETri3 FETri3 () Constructor. function FETri3 FETri3 ( FETri3 & el ) copy constructor function operator= FETri3 & operator = ( FETri3 & el ) assignment operator Updated on 2023-10-24 at 22:16:02 +0000","title":"FETri3"},{"location":"api/Classes/classFETri3.html#fetri3","text":"Inherits from FEElement_ , FEItem","title":"FETri3"},{"location":"api/Classes/classFETri3.html#public-functions","text":"Name FETri3 () Constructor. FETri3 ( FETri3 & el) copy constructor FETri3 & operator= ( FETri3 & el) assignment operator","title":"Public Functions"},{"location":"api/Classes/classFETri3.html#additional-inherited-members","text":"Public Functions inherited from FEElement_ Name FEElement_ () constructor bool is_equal ( FEElement_ & e) int GetType () const return the element type bool IsType (int ntype) const Is the element of this type. int Nodes () const number of nodes int Faces () const Number of faces (shells have no faces) int Edges () const Number of edges (solids have no edges) int GetFace (int i, int * n) Get only the nodes of face i (only solids have faces) FEFace GetFace (int i) Get the face i (only solids have faces) FEFace GetShellFace () Get the face of a shell. FEEdge GetEdge (int i) Get the edge. bool IsExterior () Is this an exterior element. bool IsSolid () bool IsShell () bool IsBeam () Protected Functions inherited from FEElement_ Name void copy (const FEElement_ & el) Public Attributes inherited from FEElement_ Name int * m_node pointer to node data int * m_nbr neighbour elements int * m_face faces (-1 for interior faces) double * m_h element thickness (only used by shells) vec3d m_fiber fiber orientation mat3d m_Q local material orientation bool m_Qactive active local material orientation double m_a0 cross-sectional area (only used by truss elements) Protected Attributes inherited from FEElement_ Name int m_ntype type of element int m_nodes nr of nodes int m_nfaces nr of faces ( 0 for shells) int m_nedges nr of edges ( 0 for solids) Public Functions inherited from FEItem Name FEItem () bool IsVisible () const bool IsSelected () const void Select () void UnSelect () void Show () void Hide () unsigned int GetFEState () const void SetFEState (unsigned int state) Public Attributes inherited from FEItem Name int m_ntag int m_gid int m_nid","title":"Additional inherited members"},{"location":"api/Classes/classFETri3.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFETri3.html#function-fetri3","text":"FETri3 () Constructor.","title":"function FETri3"},{"location":"api/Classes/classFETri3.html#function-fetri3_1","text":"FETri3 ( FETri3 & el ) copy constructor","title":"function FETri3"},{"location":"api/Classes/classFETri3.html#function-operator","text":"FETri3 & operator = ( FETri3 & el ) assignment operator Updated on 2023-10-24 at 22:16:02 +0000","title":"function operator="},{"location":"api/Classes/classFEVTKExport.html","text":"FEVTKExport Public Functions Name FEVTKExport () ~FEVTKExport () =default bool Export ( FEMesh & mesh, const char * szfile) std::string ExportToString ( FEMesh & mesh) bool ExportToStream ( FEMesh & mesh, std::ostream & out) void SetOptions ( VTKEXPORT o) vtkSmartPointer< vtkPolyData > ExportToVTK ( FEMesh & mesh) Public Functions Documentation function FEVTKExport FEVTKExport () function ~FEVTKExport ~ FEVTKExport () = default function Export bool Export ( FEMesh & mesh , const char * szfile ) function ExportToString std :: string ExportToString ( FEMesh & mesh ) function ExportToStream bool ExportToStream ( FEMesh & mesh , std :: ostream & out ) function SetOptions inline void SetOptions ( VTKEXPORT o ) function ExportToVTK vtkSmartPointer < vtkPolyData > ExportToVTK ( FEMesh & mesh ) Updated on 2023-10-24 at 22:16:02 +0000","title":"FEVTKExport"},{"location":"api/Classes/classFEVTKExport.html#fevtkexport","text":"","title":"FEVTKExport"},{"location":"api/Classes/classFEVTKExport.html#public-functions","text":"Name FEVTKExport () ~FEVTKExport () =default bool Export ( FEMesh & mesh, const char * szfile) std::string ExportToString ( FEMesh & mesh) bool ExportToStream ( FEMesh & mesh, std::ostream & out) void SetOptions ( VTKEXPORT o) vtkSmartPointer< vtkPolyData > ExportToVTK ( FEMesh & mesh)","title":"Public Functions"},{"location":"api/Classes/classFEVTKExport.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEVTKExport.html#function-fevtkexport","text":"FEVTKExport ()","title":"function FEVTKExport"},{"location":"api/Classes/classFEVTKExport.html#function-fevtkexport_1","text":"~ FEVTKExport () = default","title":"function ~FEVTKExport"},{"location":"api/Classes/classFEVTKExport.html#function-export","text":"bool Export ( FEMesh & mesh , const char * szfile )","title":"function Export"},{"location":"api/Classes/classFEVTKExport.html#function-exporttostring","text":"std :: string ExportToString ( FEMesh & mesh )","title":"function ExportToString"},{"location":"api/Classes/classFEVTKExport.html#function-exporttostream","text":"bool ExportToStream ( FEMesh & mesh , std :: ostream & out )","title":"function ExportToStream"},{"location":"api/Classes/classFEVTKExport.html#function-setoptions","text":"inline void SetOptions ( VTKEXPORT o )","title":"function SetOptions"},{"location":"api/Classes/classFEVTKExport.html#function-exporttovtk","text":"vtkSmartPointer < vtkPolyData > ExportToVTK ( FEMesh & mesh ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function ExportToVTK"},{"location":"api/Classes/classFEVTKimport.html","text":"FEVTKimport Public Functions Name FEVTKimport () ~FEVTKimport (void ) FEMesh * Load (const char * szfile) FEMesh * Load (istream & stream) FEMesh * Load (vtkPolyData * polydata) Protected Functions Name bool BuildMesh () FEMesh * errf (const char * sz, ... ) void Close () Public Functions Documentation function FEVTKimport FEVTKimport () function ~FEVTKimport ~ FEVTKimport ( void ) function Load FEMesh * Load ( const char * szfile ) function Load FEMesh * Load ( istream & stream ) function Load FEMesh * Load ( vtkPolyData * polydata ) Protected Functions Documentation function BuildMesh bool BuildMesh () function errf FEMesh * errf ( const char * sz , ... ) function Close void Close () Updated on 2023-10-24 at 22:16:02 +0000","title":"FEVTKimport"},{"location":"api/Classes/classFEVTKimport.html#fevtkimport","text":"","title":"FEVTKimport"},{"location":"api/Classes/classFEVTKimport.html#public-functions","text":"Name FEVTKimport () ~FEVTKimport (void ) FEMesh * Load (const char * szfile) FEMesh * Load (istream & stream) FEMesh * Load (vtkPolyData * polydata)","title":"Public Functions"},{"location":"api/Classes/classFEVTKimport.html#protected-functions","text":"Name bool BuildMesh () FEMesh * errf (const char * sz, ... ) void Close ()","title":"Protected Functions"},{"location":"api/Classes/classFEVTKimport.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classFEVTKimport.html#function-fevtkimport","text":"FEVTKimport ()","title":"function FEVTKimport"},{"location":"api/Classes/classFEVTKimport.html#function-fevtkimport_1","text":"~ FEVTKimport ( void )","title":"function ~FEVTKimport"},{"location":"api/Classes/classFEVTKimport.html#function-load","text":"FEMesh * Load ( const char * szfile )","title":"function Load"},{"location":"api/Classes/classFEVTKimport.html#function-load_1","text":"FEMesh * Load ( istream & stream )","title":"function Load"},{"location":"api/Classes/classFEVTKimport.html#function-load_2","text":"FEMesh * Load ( vtkPolyData * polydata )","title":"function Load"},{"location":"api/Classes/classFEVTKimport.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classFEVTKimport.html#function-buildmesh","text":"bool BuildMesh ()","title":"function BuildMesh"},{"location":"api/Classes/classFEVTKimport.html#function-errf","text":"FEMesh * errf ( const char * sz , ... )","title":"function errf"},{"location":"api/Classes/classFEVTKimport.html#function-close","text":"void Close () Updated on 2023-10-24 at 22:16:02 +0000","title":"function Close"},{"location":"api/Classes/classGLCOLOR.html","text":"GLCOLOR Public Functions Name GLCOLOR () GLCOLOR (uchar ur, uchar ug, uchar ub, uchar ua =255) GLCOLOR operator* (double f) GLCOLOR operator+ ( GLCOLOR & c) Public Attributes Name uchar a uchar b uchar g uchar r Public Functions Documentation function GLCOLOR inline GLCOLOR () function GLCOLOR inline GLCOLOR ( uchar ur , uchar ug , uchar ub , uchar ua = 255 ) function operator* inline GLCOLOR operator * ( double f ) function operator+ inline GLCOLOR operator + ( GLCOLOR & c ) Public Attributes Documentation variable a uchar a ; variable b uchar b ; variable g uchar g ; variable r uchar r ; Updated on 2023-10-24 at 22:16:02 +0000","title":"GLCOLOR"},{"location":"api/Classes/classGLCOLOR.html#glcolor","text":"","title":"GLCOLOR"},{"location":"api/Classes/classGLCOLOR.html#public-functions","text":"Name GLCOLOR () GLCOLOR (uchar ur, uchar ug, uchar ub, uchar ua =255) GLCOLOR operator* (double f) GLCOLOR operator+ ( GLCOLOR & c)","title":"Public Functions"},{"location":"api/Classes/classGLCOLOR.html#public-attributes","text":"Name uchar a uchar b uchar g uchar r","title":"Public Attributes"},{"location":"api/Classes/classGLCOLOR.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classGLCOLOR.html#function-glcolor","text":"inline GLCOLOR ()","title":"function GLCOLOR"},{"location":"api/Classes/classGLCOLOR.html#function-glcolor_1","text":"inline GLCOLOR ( uchar ur , uchar ug , uchar ub , uchar ua = 255 )","title":"function GLCOLOR"},{"location":"api/Classes/classGLCOLOR.html#function-operator","text":"inline GLCOLOR operator * ( double f )","title":"function operator*"},{"location":"api/Classes/classGLCOLOR.html#function-operator_1","text":"inline GLCOLOR operator + ( GLCOLOR & c )","title":"function operator+"},{"location":"api/Classes/classGLCOLOR.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classGLCOLOR.html#variable-a","text":"uchar a ;","title":"variable a"},{"location":"api/Classes/classGLCOLOR.html#variable-b","text":"uchar b ;","title":"variable b"},{"location":"api/Classes/classGLCOLOR.html#variable-g","text":"uchar g ;","title":"variable g"},{"location":"api/Classes/classGLCOLOR.html#variable-r","text":"uchar r ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable r"},{"location":"api/Classes/classLegacyMeshGenerator.html","text":"LegacyMeshGenerator Public Functions Name LegacyMeshGenerator () ~LegacyMeshGenerator () void setNeighborhoodSize (int size) void setSampleSpacing (double spacing) void setUsePowerCrust (bool enabled) void setSmoothingAmount (float amount) vtkSmartPointer< vtkPolyData > buildMesh (const Eigen::VectorXd & shape) Public Functions Documentation function LegacyMeshGenerator LegacyMeshGenerator () function ~LegacyMeshGenerator ~ LegacyMeshGenerator () function setNeighborhoodSize void setNeighborhoodSize ( int size ) function setSampleSpacing void setSampleSpacing ( double spacing ) function setUsePowerCrust void setUsePowerCrust ( bool enabled ) function setSmoothingAmount void setSmoothingAmount ( float amount ) function buildMesh vtkSmartPointer < vtkPolyData > buildMesh ( const Eigen :: VectorXd & shape ) Updated on 2023-10-24 at 22:16:02 +0000","title":"LegacyMeshGenerator"},{"location":"api/Classes/classLegacyMeshGenerator.html#legacymeshgenerator","text":"","title":"LegacyMeshGenerator"},{"location":"api/Classes/classLegacyMeshGenerator.html#public-functions","text":"Name LegacyMeshGenerator () ~LegacyMeshGenerator () void setNeighborhoodSize (int size) void setSampleSpacing (double spacing) void setUsePowerCrust (bool enabled) void setSmoothingAmount (float amount) vtkSmartPointer< vtkPolyData > buildMesh (const Eigen::VectorXd & shape)","title":"Public Functions"},{"location":"api/Classes/classLegacyMeshGenerator.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classLegacyMeshGenerator.html#function-legacymeshgenerator","text":"LegacyMeshGenerator ()","title":"function LegacyMeshGenerator"},{"location":"api/Classes/classLegacyMeshGenerator.html#function-legacymeshgenerator_1","text":"~ LegacyMeshGenerator ()","title":"function ~LegacyMeshGenerator"},{"location":"api/Classes/classLegacyMeshGenerator.html#function-setneighborhoodsize","text":"void setNeighborhoodSize ( int size )","title":"function setNeighborhoodSize"},{"location":"api/Classes/classLegacyMeshGenerator.html#function-setsamplespacing","text":"void setSampleSpacing ( double spacing )","title":"function setSampleSpacing"},{"location":"api/Classes/classLegacyMeshGenerator.html#function-setusepowercrust","text":"void setUsePowerCrust ( bool enabled )","title":"function setUsePowerCrust"},{"location":"api/Classes/classLegacyMeshGenerator.html#function-setsmoothingamount","text":"void setSmoothingAmount ( float amount )","title":"function setSmoothingAmount"},{"location":"api/Classes/classLegacyMeshGenerator.html#function-buildmesh","text":"vtkSmartPointer < vtkPolyData > buildMesh ( const Eigen :: VectorXd & shape ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function buildMesh"},{"location":"api/Classes/classMeshSettings.html","text":"MeshSettings Settings for creating a mesh. More... #include Public Functions Name MeshSettings () Constructor. ~MeshSettings () Destructor. Detailed Description class MeshSettings ; Settings for creating a mesh. The MeshSettings class represents a set of settings used it creating a mesh. Public Functions Documentation function MeshSettings MeshSettings () Constructor. function ~MeshSettings ~ MeshSettings () Destructor. Updated on 2023-10-24 at 22:16:02 +0000","title":"MeshSettings"},{"location":"api/Classes/classMeshSettings.html#meshsettings","text":"Settings for creating a mesh. More... #include ","title":"MeshSettings"},{"location":"api/Classes/classMeshSettings.html#public-functions","text":"Name MeshSettings () Constructor. ~MeshSettings () Destructor.","title":"Public Functions"},{"location":"api/Classes/classMeshSettings.html#detailed-description","text":"class MeshSettings ; Settings for creating a mesh. The MeshSettings class represents a set of settings used it creating a mesh.","title":"Detailed Description"},{"location":"api/Classes/classMeshSettings.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classMeshSettings.html#function-meshsettings","text":"MeshSettings () Constructor.","title":"function MeshSettings"},{"location":"api/Classes/classMeshSettings.html#function-meshsettings_1","text":"~ MeshSettings () Destructor. Updated on 2023-10-24 at 22:16:02 +0000","title":"function ~MeshSettings"},{"location":"api/Classes/classObjectReader.html","text":"ObjectReader More... Public Types Name typedef ObjectReader Self typedef T ObjectType Public Functions Name const std::vector< ObjectType > & GetOutput () const std::vector< ObjectType > & GetOutput () void SetFileName (const char * fn) void SetFileName (const std::string & fn) const std::string & GetFileName () const void Read () void Update () ObjectReader () virtual ~ObjectReader () Detailed Description template < class T > class ObjectReader ; Public Types Documentation typedef Self typedef ObjectReader ObjectReader < T >:: Self ; Standard class typedefs typedef ObjectType typedef T ObjectReader < T >:: ObjectType ; Public Functions Documentation function GetOutput inline const std :: vector < ObjectType > & GetOutput () const Get the output of the reader. The output is a std::vector of TransformType. function GetOutput inline std :: vector < ObjectType > & GetOutput () function SetFileName inline void SetFileName ( const char * fn ) function SetFileName inline void SetFileName ( const std :: string & fn ) function GetFileName inline const std :: string & GetFileName () const function Read inline void Read () Read the file. function Update inline void Update () function ObjectReader inline ObjectReader () function ~ObjectReader inline virtual ~ ObjectReader () Updated on 2023-10-24 at 22:16:02 +0000","title":"ObjectReader"},{"location":"api/Classes/classObjectReader.html#objectreader","text":"More...","title":"ObjectReader"},{"location":"api/Classes/classObjectReader.html#public-types","text":"Name typedef ObjectReader Self typedef T ObjectType","title":"Public Types"},{"location":"api/Classes/classObjectReader.html#public-functions","text":"Name const std::vector< ObjectType > & GetOutput () const std::vector< ObjectType > & GetOutput () void SetFileName (const char * fn) void SetFileName (const std::string & fn) const std::string & GetFileName () const void Read () void Update () ObjectReader () virtual ~ObjectReader ()","title":"Public Functions"},{"location":"api/Classes/classObjectReader.html#detailed-description","text":"template < class T > class ObjectReader ;","title":"Detailed Description"},{"location":"api/Classes/classObjectReader.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classObjectReader.html#typedef-self","text":"typedef ObjectReader ObjectReader < T >:: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classObjectReader.html#typedef-objecttype","text":"typedef T ObjectReader < T >:: ObjectType ;","title":"typedef ObjectType"},{"location":"api/Classes/classObjectReader.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classObjectReader.html#function-getoutput","text":"inline const std :: vector < ObjectType > & GetOutput () const Get the output of the reader. The output is a std::vector of TransformType.","title":"function GetOutput"},{"location":"api/Classes/classObjectReader.html#function-getoutput_1","text":"inline std :: vector < ObjectType > & GetOutput ()","title":"function GetOutput"},{"location":"api/Classes/classObjectReader.html#function-setfilename","text":"inline void SetFileName ( const char * fn )","title":"function SetFileName"},{"location":"api/Classes/classObjectReader.html#function-setfilename_1","text":"inline void SetFileName ( const std :: string & fn )","title":"function SetFileName"},{"location":"api/Classes/classObjectReader.html#function-getfilename","text":"inline const std :: string & GetFileName () const","title":"function GetFileName"},{"location":"api/Classes/classObjectReader.html#function-read","text":"inline void Read () Read the file.","title":"function Read"},{"location":"api/Classes/classObjectReader.html#function-update","text":"inline void Update ()","title":"function Update"},{"location":"api/Classes/classObjectReader.html#function-objectreader","text":"inline ObjectReader ()","title":"function ObjectReader"},{"location":"api/Classes/classObjectReader.html#function-objectreader_1","text":"inline virtual ~ ObjectReader () Updated on 2023-10-24 at 22:16:02 +0000","title":"function ~ObjectReader"},{"location":"api/Classes/classObjectWriter.html","text":"ObjectWriter More... Public Types Name typedef ObjectWriter Self typedef T ObjectType Public Functions Name void SetInput (const std::vector< ObjectType > & p) void SetFileName (const char * fn) void SetFileName (const std::string & fn) const std::string & GetFileName () const void Write () void Update () ObjectWriter () virtual ~ObjectWriter () Detailed Description template < class T > class ObjectWriter ; Public Types Documentation typedef Self typedef ObjectWriter ObjectWriter < T >:: Self ; Standard class typedefs typedef ObjectType typedef T ObjectWriter < T >:: ObjectType ; Public Functions Documentation function SetInput inline void SetInput ( const std :: vector < ObjectType > & p ) Set the input vector. The input is a reference to a std::vector of ObjectType. function SetFileName inline void SetFileName ( const char * fn ) function SetFileName inline void SetFileName ( const std :: string & fn ) function GetFileName inline const std :: string & GetFileName () const function Write inline void Write () Write the file. function Update inline void Update () function ObjectWriter inline ObjectWriter () function ~ObjectWriter inline virtual ~ ObjectWriter () Updated on 2023-10-24 at 22:16:02 +0000","title":"ObjectWriter"},{"location":"api/Classes/classObjectWriter.html#objectwriter","text":"More...","title":"ObjectWriter"},{"location":"api/Classes/classObjectWriter.html#public-types","text":"Name typedef ObjectWriter Self typedef T ObjectType","title":"Public Types"},{"location":"api/Classes/classObjectWriter.html#public-functions","text":"Name void SetInput (const std::vector< ObjectType > & p) void SetFileName (const char * fn) void SetFileName (const std::string & fn) const std::string & GetFileName () const void Write () void Update () ObjectWriter () virtual ~ObjectWriter ()","title":"Public Functions"},{"location":"api/Classes/classObjectWriter.html#detailed-description","text":"template < class T > class ObjectWriter ;","title":"Detailed Description"},{"location":"api/Classes/classObjectWriter.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classObjectWriter.html#typedef-self","text":"typedef ObjectWriter ObjectWriter < T >:: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classObjectWriter.html#typedef-objecttype","text":"typedef T ObjectWriter < T >:: ObjectType ;","title":"typedef ObjectType"},{"location":"api/Classes/classObjectWriter.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classObjectWriter.html#function-setinput","text":"inline void SetInput ( const std :: vector < ObjectType > & p ) Set the input vector. The input is a reference to a std::vector of ObjectType.","title":"function SetInput"},{"location":"api/Classes/classObjectWriter.html#function-setfilename","text":"inline void SetFileName ( const char * fn )","title":"function SetFileName"},{"location":"api/Classes/classObjectWriter.html#function-setfilename_1","text":"inline void SetFileName ( const std :: string & fn )","title":"function SetFileName"},{"location":"api/Classes/classObjectWriter.html#function-getfilename","text":"inline const std :: string & GetFileName () const","title":"function GetFileName"},{"location":"api/Classes/classObjectWriter.html#function-write","text":"inline void Write () Write the file.","title":"function Write"},{"location":"api/Classes/classObjectWriter.html#function-update","text":"inline void Update ()","title":"function Update"},{"location":"api/Classes/classObjectWriter.html#function-objectwriter","text":"inline ObjectWriter ()","title":"function ObjectWriter"},{"location":"api/Classes/classObjectWriter.html#function-objectwriter_1","text":"inline virtual ~ ObjectWriter () Updated on 2023-10-24 at 22:16:02 +0000","title":"function ~ObjectWriter"},{"location":"api/Classes/classParticleEvent_1_1_01Parent.html","text":"title: ParticleEvent:: Parent ParticleEvent:: Parent More... Detailed Description class ParticleEvent :: Parent ; all Particle events. Event that carries Position index and a Domain index information. This is used, for example to indicate which position has changed in the particle system on InvokeEvent. Updated on 2023-10-24 at 22:16:02 +0000","title":"classParticleEvent 1 1 01Parent"},{"location":"api/Classes/classParticleEvent_1_1_01Parent.html#particleevent-parent","text":"More...","title":"ParticleEvent:: Parent"},{"location":"api/Classes/classParticleEvent_1_1_01Parent.html#detailed-description","text":"class ParticleEvent :: Parent ; all Particle events. Event that carries Position index and a Domain index information. This is used, for example to indicate which position has changed in the particle system on InvokeEvent. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleGradientDescentPositionOptimizer.html","text":"ParticleGradientDescentPositionOptimizer More... #include Detailed Description class ParticleGradientDescentPositionOptimizer ; This class optimizes a list of particle system positions with respect to a specified energy function using a simple gradient descent strategy. A function which computes the gradient of the function with respect to particle position must be specified. The optimization performs Jacobi updates (each particle position is changed as soon as its new position is computed). Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleGradientDescentPositionOptimizer"},{"location":"api/Classes/classParticleGradientDescentPositionOptimizer.html#particlegradientdescentpositionoptimizer","text":"More... #include ","title":"ParticleGradientDescentPositionOptimizer"},{"location":"api/Classes/classParticleGradientDescentPositionOptimizer.html#detailed-description","text":"class ParticleGradientDescentPositionOptimizer ; This class optimizes a list of particle system positions with respect to a specified energy function using a simple gradient descent strategy. A function which computes the gradient of the function with respect to particle position must be specified. The optimization performs Jacobi updates (each particle position is changed as soon as its new position is computed). Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleImageDomain.html","text":"ParticleImageDomain More... #include Detailed Description class ParticleImageDomain ; A bounding-box region domain that sets its bounding box according to the origin, spacing, and RequestedRegion of a specified itk::Image. This Domain object may be sampled for interpolated image values using the Sample(Point) method. Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleImageDomain"},{"location":"api/Classes/classParticleImageDomain.html#particleimagedomain","text":"More... #include ","title":"ParticleImageDomain"},{"location":"api/Classes/classParticleImageDomain.html#detailed-description","text":"class ParticleImageDomain ; A bounding-box region domain that sets its bounding box according to the origin, spacing, and RequestedRegion of a specified itk::Image. This Domain object may be sampled for interpolated image values using the Sample(Point) method. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleImageDomainWithCurvature.html","text":"ParticleImageDomainWithCurvature More... #include Detailed Description class ParticleImageDomainWithCurvature ; See : ParticleImageDomain ParticleClipRegionDomain ParticleDomain An image domain that extends ParticleImageDomainWithGradN with curvature information. Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleImageDomainWithCurvature"},{"location":"api/Classes/classParticleImageDomainWithCurvature.html#particleimagedomainwithcurvature","text":"More... #include ","title":"ParticleImageDomainWithCurvature"},{"location":"api/Classes/classParticleImageDomainWithCurvature.html#detailed-description","text":"class ParticleImageDomainWithCurvature ; See : ParticleImageDomain ParticleClipRegionDomain ParticleDomain An image domain that extends ParticleImageDomainWithGradN with curvature information. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleImageDomainWithGradN.html","text":"ParticleImageDomainWithGradN More... #include Detailed Description class ParticleImageDomainWithGradN ; See : ParticleImageDomain ParticleClipRegionDomain ParticleDomain An image domain that extends ParticleImageDomainWithGradients with gradient of normals information. Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleImageDomainWithGradN"},{"location":"api/Classes/classParticleImageDomainWithGradN.html#particleimagedomainwithgradn","text":"More... #include ","title":"ParticleImageDomainWithGradN"},{"location":"api/Classes/classParticleImageDomainWithGradN.html#detailed-description","text":"class ParticleImageDomainWithGradN ; See : ParticleImageDomain ParticleClipRegionDomain ParticleDomain An image domain that extends ParticleImageDomainWithGradients with gradient of normals information. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleImageDomainWithGradients.html","text":"ParticleImageDomainWithGradients More... #include Detailed Description class ParticleImageDomainWithGradients ; See : ParticleImageDomain ParticleClipRegionDomain ParticleDomain An image domain that extends ParticleImageDomainWithGradients with image gradient information. Gradient values are interpolated with the SampleGradients(point) method. Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleImageDomainWithGradients"},{"location":"api/Classes/classParticleImageDomainWithGradients.html#particleimagedomainwithgradients","text":"More... #include ","title":"ParticleImageDomainWithGradients"},{"location":"api/Classes/classParticleImageDomainWithGradients.html#detailed-description","text":"class ParticleImageDomainWithGradients ; See : ParticleImageDomain ParticleClipRegionDomain ParticleDomain An image domain that extends ParticleImageDomainWithGradients with image gradient information. Gradient values are interpolated with the SampleGradients(point) method. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleImplicitSurfaceDomain.html","text":"ParticleImplicitSurfaceDomain More... #include Detailed Description class ParticleImplicitSurfaceDomain ; A 3D cartesian domain that constrains points so that they always lie an implicit surface. The implicit surface is defined as the zero isosurface of the given image. Constraints are applied using a Newton-Raphson iteration, and this class assumes it has a distance transform as an image. Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleImplicitSurfaceDomain"},{"location":"api/Classes/classParticleImplicitSurfaceDomain.html#particleimplicitsurfacedomain","text":"More... #include ","title":"ParticleImplicitSurfaceDomain"},{"location":"api/Classes/classParticleImplicitSurfaceDomain.html#detailed-description","text":"class ParticleImplicitSurfaceDomain ; A 3D cartesian domain that constrains points so that they always lie an implicit surface. The implicit surface is defined as the zero isosurface of the given image. Constraints are applied using a Newton-Raphson iteration, and this class assumes it has a distance transform as an image. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleMeanCurvatureAttribute.html","text":"ParticleMeanCurvatureAttribute Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleMeanCurvatureAttribute"},{"location":"api/Classes/classParticleMeanCurvatureAttribute.html#particlemeancurvatureattribute","text":"Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleMeanCurvatureAttribute"},{"location":"api/Classes/classParticleProcrustesRegistration.html","text":"ParticleProcrustesRegistration Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleProcrustesRegistration"},{"location":"api/Classes/classParticleProcrustesRegistration.html#particleprocrustesregistration","text":"Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleProcrustesRegistration"},{"location":"api/Classes/classParticleShapeLinearRegressionMatrixAttribute.html","text":"ParticleShapeLinearRegressionMatrixAttribute Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleShapeLinearRegressionMatrixAttribute"},{"location":"api/Classes/classParticleShapeLinearRegressionMatrixAttribute.html#particleshapelinearregressionmatrixattribute","text":"Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleShapeLinearRegressionMatrixAttribute"},{"location":"api/Classes/classParticleShapeMatrixAttribute.html","text":"ParticleShapeMatrixAttribute Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! More... #include Detailed Description class ParticleShapeMatrixAttribute ; Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! Each column represents a single shape. Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleShapeMatrixAttribute"},{"location":"api/Classes/classParticleShapeMatrixAttribute.html#particleshapematrixattribute","text":"Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! More... #include ","title":"ParticleShapeMatrixAttribute"},{"location":"api/Classes/classParticleShapeMatrixAttribute.html#detailed-description","text":"class ParticleShapeMatrixAttribute ; Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! Each column represents a single shape. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classParticleShapeMixedEffectsMatrixAttribute.html","text":"ParticleShapeMixedEffectsMatrixAttribute Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleShapeMixedEffectsMatrixAttribute"},{"location":"api/Classes/classParticleShapeMixedEffectsMatrixAttribute.html#particleshapemixedeffectsmatrixattribute","text":"Updated on 2023-10-24 at 22:16:02 +0000","title":"ParticleShapeMixedEffectsMatrixAttribute"},{"location":"api/Classes/classPreferences.html","text":"Preferences Application preferences. More... #include Inherits from QObject Public Types Name enum OrientationMarkerType enum OrientationMarkerCorner enum @4 Public Signals Name void color_scheme_changed (int newIndex) void glyph_properties_changed () void threading_changed_signal () void sliders_changed_signal () Public Functions Name Preferences () void restore_defaults () void add_recent_file (QString file, QString path) QStringList get_recent_files () QStringList get_recent_paths () bool not_saved () void set_saved (bool saved =true) QByteArray get_window_geometry () void set_window_geometry (QByteArray geometry) QByteArray get_window_state () void set_window_state (QByteArray state) QString get_last_directory () void set_last_directory (QString value) bool get_cache_enabled () void set_cache_enabled (bool value) bool get_parallel_enabled () void set_parallel_enabled (bool value) int get_memory_cache_percent () void set_memory_cache_percent (int value) int get_num_threads () void set_num_threads (int num_threads) float get_glyph_size () void set_glyph_size (float value) float get_glyph_quality () void set_glyph_quality (float value) bool get_glyph_auto_size () void set_glyph_auto_size (bool value) bool get_glyph_scale_arrows () void set_glyph_scale_arrows (bool value) float get_pca_range () void set_pca_range (float value) int get_pca_steps () void set_pca_steps (int value) void set_color_scheme (int value) int get_color_scheme () void set_particle_colors (int value) int get_particle_colors () void set_color_map (int value) int get_color_map () void set_discrete_color_mode (bool value) bool get_discrete_color_mode () void set_reverse_color_map (bool value) bool get_reverse_color_map () bool get_center_checked () void set_center_checked (bool value) int get_geodesic_cache_multiplier () void set_geodesic_cache_multiplier (int value) OrientationMarkerType get_orientation_marker_type () void set_orientation_marker_type (OrientationMarkerType type) OrientationMarkerCorner get_orientation_marker_corner () void set_orientation_marker_corner (OrientationMarkerCorner corner) QString get_groom_file_template () void set_groom_file_template (QString groom_file_template) QString get_optimize_file_template () void set_optimize_file_template (QString optimize_file_template) QSize get_export_override_size () void set_export_override_size (QSize size) bool get_export_override_size_enabled () void set_export_override_size_enabled (bool enabled) bool get_export_show_orientation_marker () void set_export_show_orientation_marker (bool value) bool get_export_show_color_scale () void set_export_show_color_scale (bool value) int get_export_num_pca_images () void set_export_num_pca_images (int number) double get_export_pca_range () void set_export_pca_range (double range) void set_export_pca_modes (QString string) QString get_export_pca_modes () bool get_auto_update_check () void set_auto_update_check (bool enabled) QDateTime get_update_snooze_until () void set_update_snooze_until (QDateTime date) QString get_device_id () bool get_telemetry_enabled () void set_telemetry_enabled (bool enabled) bool get_telemetry_asked () void set_telemetry_asked (bool asked) QStringList get_pending_telemetry_events () void set_pending_telemetry_events (QStringList events) Detailed Description class Preferences ; Application preferences. The Preferences singleton controls all preferences for the application. Values persist via the QSettings class. Public Types Documentation enum OrientationMarkerType Enumerator Value Description medical 0 triad 1 none 2 enum OrientationMarkerCorner Enumerator Value Description upper_right 0 lower_right 1 lower_left 2 upper_left 3 enum @4 Enumerator Value Description MAX_RECENT_FILES 64 Public Signals Documentation signal color_scheme_changed void color_scheme_changed ( int newIndex ) signal glyph_properties_changed void glyph_properties_changed () signal threading_changed_signal void threading_changed_signal () signal sliders_changed_signal void sliders_changed_signal () Public Functions Documentation function Preferences Preferences () function restore_defaults void restore_defaults () function add_recent_file void add_recent_file ( QString file , QString path ) function get_recent_files QStringList get_recent_files () function get_recent_paths QStringList get_recent_paths () function not_saved bool not_saved () function set_saved void set_saved ( bool saved = true ) function get_window_geometry QByteArray get_window_geometry () function set_window_geometry void set_window_geometry ( QByteArray geometry ) function get_window_state QByteArray get_window_state () function set_window_state void set_window_state ( QByteArray state ) function get_last_directory QString get_last_directory () function set_last_directory void set_last_directory ( QString value ) function get_cache_enabled bool get_cache_enabled () function set_cache_enabled void set_cache_enabled ( bool value ) function get_parallel_enabled bool get_parallel_enabled () function set_parallel_enabled void set_parallel_enabled ( bool value ) function get_memory_cache_percent int get_memory_cache_percent () function set_memory_cache_percent void set_memory_cache_percent ( int value ) function get_num_threads int get_num_threads () function set_num_threads void set_num_threads ( int num_threads ) function get_glyph_size float get_glyph_size () function set_glyph_size void set_glyph_size ( float value ) function get_glyph_quality float get_glyph_quality () function set_glyph_quality void set_glyph_quality ( float value ) function get_glyph_auto_size bool get_glyph_auto_size () function set_glyph_auto_size void set_glyph_auto_size ( bool value ) function get_glyph_scale_arrows bool get_glyph_scale_arrows () function set_glyph_scale_arrows void set_glyph_scale_arrows ( bool value ) function get_pca_range float get_pca_range () function set_pca_range void set_pca_range ( float value ) function get_pca_steps int get_pca_steps () function set_pca_steps void set_pca_steps ( int value ) function set_color_scheme void set_color_scheme ( int value ) function get_color_scheme int get_color_scheme () function set_particle_colors void set_particle_colors ( int value ) function get_particle_colors int get_particle_colors () function set_color_map void set_color_map ( int value ) function get_color_map int get_color_map () function set_discrete_color_mode void set_discrete_color_mode ( bool value ) function get_discrete_color_mode bool get_discrete_color_mode () function set_reverse_color_map void set_reverse_color_map ( bool value ) function get_reverse_color_map bool get_reverse_color_map () function get_center_checked bool get_center_checked () function set_center_checked void set_center_checked ( bool value ) function get_geodesic_cache_multiplier int get_geodesic_cache_multiplier () function set_geodesic_cache_multiplier void set_geodesic_cache_multiplier ( int value ) function get_orientation_marker_type OrientationMarkerType get_orientation_marker_type () function set_orientation_marker_type void set_orientation_marker_type ( OrientationMarkerType type ) function get_orientation_marker_corner OrientationMarkerCorner get_orientation_marker_corner () function set_orientation_marker_corner void set_orientation_marker_corner ( OrientationMarkerCorner corner ) function get_groom_file_template QString get_groom_file_template () function set_groom_file_template void set_groom_file_template ( QString groom_file_template ) function get_optimize_file_template QString get_optimize_file_template () function set_optimize_file_template void set_optimize_file_template ( QString optimize_file_template ) function get_export_override_size QSize get_export_override_size () function set_export_override_size void set_export_override_size ( QSize size ) function get_export_override_size_enabled bool get_export_override_size_enabled () function set_export_override_size_enabled void set_export_override_size_enabled ( bool enabled ) function get_export_show_orientation_marker bool get_export_show_orientation_marker () function set_export_show_orientation_marker void set_export_show_orientation_marker ( bool value ) function get_export_show_color_scale bool get_export_show_color_scale () function set_export_show_color_scale void set_export_show_color_scale ( bool value ) function get_export_num_pca_images int get_export_num_pca_images () function set_export_num_pca_images void set_export_num_pca_images ( int number ) function get_export_pca_range double get_export_pca_range () function set_export_pca_range void set_export_pca_range ( double range ) function set_export_pca_modes void set_export_pca_modes ( QString string ) function get_export_pca_modes QString get_export_pca_modes () function get_auto_update_check bool get_auto_update_check () function set_auto_update_check void set_auto_update_check ( bool enabled ) function get_update_snooze_until QDateTime get_update_snooze_until () function set_update_snooze_until void set_update_snooze_until ( QDateTime date ) function get_device_id QString get_device_id () function get_telemetry_enabled bool get_telemetry_enabled () function set_telemetry_enabled void set_telemetry_enabled ( bool enabled ) function get_telemetry_asked bool get_telemetry_asked () function set_telemetry_asked void set_telemetry_asked ( bool asked ) function get_pending_telemetry_events QStringList get_pending_telemetry_events () function set_pending_telemetry_events void set_pending_telemetry_events ( QStringList events ) Updated on 2023-10-24 at 22:16:02 +0000","title":"Preferences"},{"location":"api/Classes/classPreferences.html#preferences","text":"Application preferences. More... #include Inherits from QObject","title":"Preferences"},{"location":"api/Classes/classPreferences.html#public-types","text":"Name enum OrientationMarkerType enum OrientationMarkerCorner enum @4","title":"Public Types"},{"location":"api/Classes/classPreferences.html#public-signals","text":"Name void color_scheme_changed (int newIndex) void glyph_properties_changed () void threading_changed_signal () void sliders_changed_signal ()","title":"Public Signals"},{"location":"api/Classes/classPreferences.html#public-functions","text":"Name Preferences () void restore_defaults () void add_recent_file (QString file, QString path) QStringList get_recent_files () QStringList get_recent_paths () bool not_saved () void set_saved (bool saved =true) QByteArray get_window_geometry () void set_window_geometry (QByteArray geometry) QByteArray get_window_state () void set_window_state (QByteArray state) QString get_last_directory () void set_last_directory (QString value) bool get_cache_enabled () void set_cache_enabled (bool value) bool get_parallel_enabled () void set_parallel_enabled (bool value) int get_memory_cache_percent () void set_memory_cache_percent (int value) int get_num_threads () void set_num_threads (int num_threads) float get_glyph_size () void set_glyph_size (float value) float get_glyph_quality () void set_glyph_quality (float value) bool get_glyph_auto_size () void set_glyph_auto_size (bool value) bool get_glyph_scale_arrows () void set_glyph_scale_arrows (bool value) float get_pca_range () void set_pca_range (float value) int get_pca_steps () void set_pca_steps (int value) void set_color_scheme (int value) int get_color_scheme () void set_particle_colors (int value) int get_particle_colors () void set_color_map (int value) int get_color_map () void set_discrete_color_mode (bool value) bool get_discrete_color_mode () void set_reverse_color_map (bool value) bool get_reverse_color_map () bool get_center_checked () void set_center_checked (bool value) int get_geodesic_cache_multiplier () void set_geodesic_cache_multiplier (int value) OrientationMarkerType get_orientation_marker_type () void set_orientation_marker_type (OrientationMarkerType type) OrientationMarkerCorner get_orientation_marker_corner () void set_orientation_marker_corner (OrientationMarkerCorner corner) QString get_groom_file_template () void set_groom_file_template (QString groom_file_template) QString get_optimize_file_template () void set_optimize_file_template (QString optimize_file_template) QSize get_export_override_size () void set_export_override_size (QSize size) bool get_export_override_size_enabled () void set_export_override_size_enabled (bool enabled) bool get_export_show_orientation_marker () void set_export_show_orientation_marker (bool value) bool get_export_show_color_scale () void set_export_show_color_scale (bool value) int get_export_num_pca_images () void set_export_num_pca_images (int number) double get_export_pca_range () void set_export_pca_range (double range) void set_export_pca_modes (QString string) QString get_export_pca_modes () bool get_auto_update_check () void set_auto_update_check (bool enabled) QDateTime get_update_snooze_until () void set_update_snooze_until (QDateTime date) QString get_device_id () bool get_telemetry_enabled () void set_telemetry_enabled (bool enabled) bool get_telemetry_asked () void set_telemetry_asked (bool asked) QStringList get_pending_telemetry_events () void set_pending_telemetry_events (QStringList events)","title":"Public Functions"},{"location":"api/Classes/classPreferences.html#detailed-description","text":"class Preferences ; Application preferences. The Preferences singleton controls all preferences for the application. Values persist via the QSettings class.","title":"Detailed Description"},{"location":"api/Classes/classPreferences.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classPreferences.html#enum-orientationmarkertype","text":"Enumerator Value Description medical 0 triad 1 none 2","title":"enum OrientationMarkerType"},{"location":"api/Classes/classPreferences.html#enum-orientationmarkercorner","text":"Enumerator Value Description upper_right 0 lower_right 1 lower_left 2 upper_left 3","title":"enum OrientationMarkerCorner"},{"location":"api/Classes/classPreferences.html#enum-4","text":"Enumerator Value Description MAX_RECENT_FILES 64","title":"enum @4"},{"location":"api/Classes/classPreferences.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classPreferences.html#signal-color_scheme_changed","text":"void color_scheme_changed ( int newIndex )","title":"signal color_scheme_changed"},{"location":"api/Classes/classPreferences.html#signal-glyph_properties_changed","text":"void glyph_properties_changed ()","title":"signal glyph_properties_changed"},{"location":"api/Classes/classPreferences.html#signal-threading_changed_signal","text":"void threading_changed_signal ()","title":"signal threading_changed_signal"},{"location":"api/Classes/classPreferences.html#signal-sliders_changed_signal","text":"void sliders_changed_signal ()","title":"signal sliders_changed_signal"},{"location":"api/Classes/classPreferences.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classPreferences.html#function-preferences","text":"Preferences ()","title":"function Preferences"},{"location":"api/Classes/classPreferences.html#function-restore_defaults","text":"void restore_defaults ()","title":"function restore_defaults"},{"location":"api/Classes/classPreferences.html#function-add_recent_file","text":"void add_recent_file ( QString file , QString path )","title":"function add_recent_file"},{"location":"api/Classes/classPreferences.html#function-get_recent_files","text":"QStringList get_recent_files ()","title":"function get_recent_files"},{"location":"api/Classes/classPreferences.html#function-get_recent_paths","text":"QStringList get_recent_paths ()","title":"function get_recent_paths"},{"location":"api/Classes/classPreferences.html#function-not_saved","text":"bool not_saved ()","title":"function not_saved"},{"location":"api/Classes/classPreferences.html#function-set_saved","text":"void set_saved ( bool saved = true )","title":"function set_saved"},{"location":"api/Classes/classPreferences.html#function-get_window_geometry","text":"QByteArray get_window_geometry ()","title":"function get_window_geometry"},{"location":"api/Classes/classPreferences.html#function-set_window_geometry","text":"void set_window_geometry ( QByteArray geometry )","title":"function set_window_geometry"},{"location":"api/Classes/classPreferences.html#function-get_window_state","text":"QByteArray get_window_state ()","title":"function get_window_state"},{"location":"api/Classes/classPreferences.html#function-set_window_state","text":"void set_window_state ( QByteArray state )","title":"function set_window_state"},{"location":"api/Classes/classPreferences.html#function-get_last_directory","text":"QString get_last_directory ()","title":"function get_last_directory"},{"location":"api/Classes/classPreferences.html#function-set_last_directory","text":"void set_last_directory ( QString value )","title":"function set_last_directory"},{"location":"api/Classes/classPreferences.html#function-get_cache_enabled","text":"bool get_cache_enabled ()","title":"function get_cache_enabled"},{"location":"api/Classes/classPreferences.html#function-set_cache_enabled","text":"void set_cache_enabled ( bool value )","title":"function set_cache_enabled"},{"location":"api/Classes/classPreferences.html#function-get_parallel_enabled","text":"bool get_parallel_enabled ()","title":"function get_parallel_enabled"},{"location":"api/Classes/classPreferences.html#function-set_parallel_enabled","text":"void set_parallel_enabled ( bool value )","title":"function set_parallel_enabled"},{"location":"api/Classes/classPreferences.html#function-get_memory_cache_percent","text":"int get_memory_cache_percent ()","title":"function get_memory_cache_percent"},{"location":"api/Classes/classPreferences.html#function-set_memory_cache_percent","text":"void set_memory_cache_percent ( int value )","title":"function set_memory_cache_percent"},{"location":"api/Classes/classPreferences.html#function-get_num_threads","text":"int get_num_threads ()","title":"function get_num_threads"},{"location":"api/Classes/classPreferences.html#function-set_num_threads","text":"void set_num_threads ( int num_threads )","title":"function set_num_threads"},{"location":"api/Classes/classPreferences.html#function-get_glyph_size","text":"float get_glyph_size ()","title":"function get_glyph_size"},{"location":"api/Classes/classPreferences.html#function-set_glyph_size","text":"void set_glyph_size ( float value )","title":"function set_glyph_size"},{"location":"api/Classes/classPreferences.html#function-get_glyph_quality","text":"float get_glyph_quality ()","title":"function get_glyph_quality"},{"location":"api/Classes/classPreferences.html#function-set_glyph_quality","text":"void set_glyph_quality ( float value )","title":"function set_glyph_quality"},{"location":"api/Classes/classPreferences.html#function-get_glyph_auto_size","text":"bool get_glyph_auto_size ()","title":"function get_glyph_auto_size"},{"location":"api/Classes/classPreferences.html#function-set_glyph_auto_size","text":"void set_glyph_auto_size ( bool value )","title":"function set_glyph_auto_size"},{"location":"api/Classes/classPreferences.html#function-get_glyph_scale_arrows","text":"bool get_glyph_scale_arrows ()","title":"function get_glyph_scale_arrows"},{"location":"api/Classes/classPreferences.html#function-set_glyph_scale_arrows","text":"void set_glyph_scale_arrows ( bool value )","title":"function set_glyph_scale_arrows"},{"location":"api/Classes/classPreferences.html#function-get_pca_range","text":"float get_pca_range ()","title":"function get_pca_range"},{"location":"api/Classes/classPreferences.html#function-set_pca_range","text":"void set_pca_range ( float value )","title":"function set_pca_range"},{"location":"api/Classes/classPreferences.html#function-get_pca_steps","text":"int get_pca_steps ()","title":"function get_pca_steps"},{"location":"api/Classes/classPreferences.html#function-set_pca_steps","text":"void set_pca_steps ( int value )","title":"function set_pca_steps"},{"location":"api/Classes/classPreferences.html#function-set_color_scheme","text":"void set_color_scheme ( int value )","title":"function set_color_scheme"},{"location":"api/Classes/classPreferences.html#function-get_color_scheme","text":"int get_color_scheme ()","title":"function get_color_scheme"},{"location":"api/Classes/classPreferences.html#function-set_particle_colors","text":"void set_particle_colors ( int value )","title":"function set_particle_colors"},{"location":"api/Classes/classPreferences.html#function-get_particle_colors","text":"int get_particle_colors ()","title":"function get_particle_colors"},{"location":"api/Classes/classPreferences.html#function-set_color_map","text":"void set_color_map ( int value )","title":"function set_color_map"},{"location":"api/Classes/classPreferences.html#function-get_color_map","text":"int get_color_map ()","title":"function get_color_map"},{"location":"api/Classes/classPreferences.html#function-set_discrete_color_mode","text":"void set_discrete_color_mode ( bool value )","title":"function set_discrete_color_mode"},{"location":"api/Classes/classPreferences.html#function-get_discrete_color_mode","text":"bool get_discrete_color_mode ()","title":"function get_discrete_color_mode"},{"location":"api/Classes/classPreferences.html#function-set_reverse_color_map","text":"void set_reverse_color_map ( bool value )","title":"function set_reverse_color_map"},{"location":"api/Classes/classPreferences.html#function-get_reverse_color_map","text":"bool get_reverse_color_map ()","title":"function get_reverse_color_map"},{"location":"api/Classes/classPreferences.html#function-get_center_checked","text":"bool get_center_checked ()","title":"function get_center_checked"},{"location":"api/Classes/classPreferences.html#function-set_center_checked","text":"void set_center_checked ( bool value )","title":"function set_center_checked"},{"location":"api/Classes/classPreferences.html#function-get_geodesic_cache_multiplier","text":"int get_geodesic_cache_multiplier ()","title":"function get_geodesic_cache_multiplier"},{"location":"api/Classes/classPreferences.html#function-set_geodesic_cache_multiplier","text":"void set_geodesic_cache_multiplier ( int value )","title":"function set_geodesic_cache_multiplier"},{"location":"api/Classes/classPreferences.html#function-get_orientation_marker_type","text":"OrientationMarkerType get_orientation_marker_type ()","title":"function get_orientation_marker_type"},{"location":"api/Classes/classPreferences.html#function-set_orientation_marker_type","text":"void set_orientation_marker_type ( OrientationMarkerType type )","title":"function set_orientation_marker_type"},{"location":"api/Classes/classPreferences.html#function-get_orientation_marker_corner","text":"OrientationMarkerCorner get_orientation_marker_corner ()","title":"function get_orientation_marker_corner"},{"location":"api/Classes/classPreferences.html#function-set_orientation_marker_corner","text":"void set_orientation_marker_corner ( OrientationMarkerCorner corner )","title":"function set_orientation_marker_corner"},{"location":"api/Classes/classPreferences.html#function-get_groom_file_template","text":"QString get_groom_file_template ()","title":"function get_groom_file_template"},{"location":"api/Classes/classPreferences.html#function-set_groom_file_template","text":"void set_groom_file_template ( QString groom_file_template )","title":"function set_groom_file_template"},{"location":"api/Classes/classPreferences.html#function-get_optimize_file_template","text":"QString get_optimize_file_template ()","title":"function get_optimize_file_template"},{"location":"api/Classes/classPreferences.html#function-set_optimize_file_template","text":"void set_optimize_file_template ( QString optimize_file_template )","title":"function set_optimize_file_template"},{"location":"api/Classes/classPreferences.html#function-get_export_override_size","text":"QSize get_export_override_size ()","title":"function get_export_override_size"},{"location":"api/Classes/classPreferences.html#function-set_export_override_size","text":"void set_export_override_size ( QSize size )","title":"function set_export_override_size"},{"location":"api/Classes/classPreferences.html#function-get_export_override_size_enabled","text":"bool get_export_override_size_enabled ()","title":"function get_export_override_size_enabled"},{"location":"api/Classes/classPreferences.html#function-set_export_override_size_enabled","text":"void set_export_override_size_enabled ( bool enabled )","title":"function set_export_override_size_enabled"},{"location":"api/Classes/classPreferences.html#function-get_export_show_orientation_marker","text":"bool get_export_show_orientation_marker ()","title":"function get_export_show_orientation_marker"},{"location":"api/Classes/classPreferences.html#function-set_export_show_orientation_marker","text":"void set_export_show_orientation_marker ( bool value )","title":"function set_export_show_orientation_marker"},{"location":"api/Classes/classPreferences.html#function-get_export_show_color_scale","text":"bool get_export_show_color_scale ()","title":"function get_export_show_color_scale"},{"location":"api/Classes/classPreferences.html#function-set_export_show_color_scale","text":"void set_export_show_color_scale ( bool value )","title":"function set_export_show_color_scale"},{"location":"api/Classes/classPreferences.html#function-get_export_num_pca_images","text":"int get_export_num_pca_images ()","title":"function get_export_num_pca_images"},{"location":"api/Classes/classPreferences.html#function-set_export_num_pca_images","text":"void set_export_num_pca_images ( int number )","title":"function set_export_num_pca_images"},{"location":"api/Classes/classPreferences.html#function-get_export_pca_range","text":"double get_export_pca_range ()","title":"function get_export_pca_range"},{"location":"api/Classes/classPreferences.html#function-set_export_pca_range","text":"void set_export_pca_range ( double range )","title":"function set_export_pca_range"},{"location":"api/Classes/classPreferences.html#function-set_export_pca_modes","text":"void set_export_pca_modes ( QString string )","title":"function set_export_pca_modes"},{"location":"api/Classes/classPreferences.html#function-get_export_pca_modes","text":"QString get_export_pca_modes ()","title":"function get_export_pca_modes"},{"location":"api/Classes/classPreferences.html#function-get_auto_update_check","text":"bool get_auto_update_check ()","title":"function get_auto_update_check"},{"location":"api/Classes/classPreferences.html#function-set_auto_update_check","text":"void set_auto_update_check ( bool enabled )","title":"function set_auto_update_check"},{"location":"api/Classes/classPreferences.html#function-get_update_snooze_until","text":"QDateTime get_update_snooze_until ()","title":"function get_update_snooze_until"},{"location":"api/Classes/classPreferences.html#function-set_update_snooze_until","text":"void set_update_snooze_until ( QDateTime date )","title":"function set_update_snooze_until"},{"location":"api/Classes/classPreferences.html#function-get_device_id","text":"QString get_device_id ()","title":"function get_device_id"},{"location":"api/Classes/classPreferences.html#function-get_telemetry_enabled","text":"bool get_telemetry_enabled ()","title":"function get_telemetry_enabled"},{"location":"api/Classes/classPreferences.html#function-set_telemetry_enabled","text":"void set_telemetry_enabled ( bool enabled )","title":"function set_telemetry_enabled"},{"location":"api/Classes/classPreferences.html#function-get_telemetry_asked","text":"bool get_telemetry_asked ()","title":"function get_telemetry_asked"},{"location":"api/Classes/classPreferences.html#function-set_telemetry_asked","text":"void set_telemetry_asked ( bool asked )","title":"function set_telemetry_asked"},{"location":"api/Classes/classPreferences.html#function-get_pending_telemetry_events","text":"QStringList get_pending_telemetry_events ()","title":"function get_pending_telemetry_events"},{"location":"api/Classes/classPreferences.html#function-set_pending_telemetry_events","text":"void set_pending_telemetry_events ( QStringList events ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function set_pending_telemetry_events"},{"location":"api/Classes/classProcrustes3D.html","text":"Procrustes3D Public Types Name typedef double RealType typedef vnl_vector_fixed< double, 3 > PointType typedef std::vector< PointType > ShapeType typedef ShapeType::iterator ShapeIteratorType typedef std::vector< ShapeType > ShapeListType typedef ShapeListType::iterator ShapeListIteratorType typedef std::vector< SimilarityTransform3D > SimilarityTransformListType typedef SimilarityTransformListType::iterator SimilarityTransformListIteratorType typedef vnl_matrix_fixed< double, 3+1, 3+1 > TransformMatrixType typedef std::vector< TransformMatrixType > TransformMatrixListType typedef TransformMatrixListType::iterator TransformMatrixIteratorType Public Functions Name Procrustes3D () Procrustes3D (bool do_scaling, bool do_rotation_translation) bool GetScaling () const void ScalingOn () void ScalingOff () bool GetRotationTranslation () const void RotationTranslationOn () void RotationTranslationOff () void AlignShapes (SimilarityTransformListType & transforms, ShapeListType & shapes) void RemoveTranslation (SimilarityTransformListType & transforms, ShapeListType & shapes) void ConstructTransformMatrices (SimilarityTransformListType & transforms, TransformMatrixListType & transformMatrices) void ConstructTransformMatrix ( SimilarityTransform3D & transform, TransformMatrixType & transformMatrix) void ComputeMeanShape (ShapeType & mean, ShapeListType & shapeList) void ComputeCenterOfMass (ShapeType & shape, PointType & center) void CenterShape (ShapeType & shape) void ComputeCommonCenter (SimilarityTransformListType & transforms, PointType & center) void AlignSourceToTarget ( SimilarityTransform3D & transform, ShapeType & target, ShapeType & source) int ComputeMedianShape (ShapeListType & shapeList) void TransformShape (ShapeType & shape, SimilarityTransform3D & transform) void TransformShapes (ShapeListType & shapes, SimilarityTransformListType & transforms) RealType ComputeSumOfSquares (ShapeListType & shapes) Public Types Documentation typedef RealType typedef double Procrustes3D :: RealType ; typedef PointType typedef vnl_vector_fixed < double , 3 > Procrustes3D :: PointType ; typedef ShapeType typedef std :: vector < PointType > Procrustes3D :: ShapeType ; typedef ShapeIteratorType typedef ShapeType :: iterator Procrustes3D :: ShapeIteratorType ; typedef ShapeListType typedef std :: vector < ShapeType > Procrustes3D :: ShapeListType ; typedef ShapeListIteratorType typedef ShapeListType :: iterator Procrustes3D :: ShapeListIteratorType ; typedef SimilarityTransformListType typedef std :: vector < SimilarityTransform3D > Procrustes3D :: SimilarityTransformListType ; typedef SimilarityTransformListIteratorType typedef SimilarityTransformListType :: iterator Procrustes3D :: SimilarityTransformListIteratorType ; typedef TransformMatrixType typedef vnl_matrix_fixed < double , 3 + 1 , 3 + 1 > Procrustes3D :: TransformMatrixType ; typedef TransformMatrixListType typedef std :: vector < TransformMatrixType > Procrustes3D :: TransformMatrixListType ; typedef TransformMatrixIteratorType typedef TransformMatrixListType :: iterator Procrustes3D :: TransformMatrixIteratorType ; Public Functions Documentation function Procrustes3D inline Procrustes3D () function Procrustes3D inline Procrustes3D ( bool do_scaling , bool do_rotation_translation ) function GetScaling inline bool GetScaling () const function ScalingOn inline void ScalingOn () function ScalingOff inline void ScalingOff () function GetRotationTranslation inline bool GetRotationTranslation () const function RotationTranslationOn inline void RotationTranslationOn () function RotationTranslationOff inline void RotationTranslationOff () function AlignShapes void AlignShapes ( SimilarityTransformListType & transforms , ShapeListType & shapes ) function RemoveTranslation void RemoveTranslation ( SimilarityTransformListType & transforms , ShapeListType & shapes ) function ConstructTransformMatrices void ConstructTransformMatrices ( SimilarityTransformListType & transforms , TransformMatrixListType & transformMatrices ) function ConstructTransformMatrix void ConstructTransformMatrix ( SimilarityTransform3D & transform , TransformMatrixType & transformMatrix ) function ComputeMeanShape void ComputeMeanShape ( ShapeType & mean , ShapeListType & shapeList ) function ComputeCenterOfMass void ComputeCenterOfMass ( ShapeType & shape , PointType & center ) function CenterShape void CenterShape ( ShapeType & shape ) function ComputeCommonCenter void ComputeCommonCenter ( SimilarityTransformListType & transforms , PointType & center ) function AlignSourceToTarget void AlignSourceToTarget ( SimilarityTransform3D & transform , ShapeType & target , ShapeType & source ) function ComputeMedianShape int ComputeMedianShape ( ShapeListType & shapeList ) function TransformShape static void TransformShape ( ShapeType & shape , SimilarityTransform3D & transform ) function TransformShapes static void TransformShapes ( ShapeListType & shapes , SimilarityTransformListType & transforms ) function ComputeSumOfSquares static RealType ComputeSumOfSquares ( ShapeListType & shapes ) Updated on 2023-10-24 at 22:16:02 +0000","title":"Procrustes3D"},{"location":"api/Classes/classProcrustes3D.html#procrustes3d","text":"","title":"Procrustes3D"},{"location":"api/Classes/classProcrustes3D.html#public-types","text":"Name typedef double RealType typedef vnl_vector_fixed< double, 3 > PointType typedef std::vector< PointType > ShapeType typedef ShapeType::iterator ShapeIteratorType typedef std::vector< ShapeType > ShapeListType typedef ShapeListType::iterator ShapeListIteratorType typedef std::vector< SimilarityTransform3D > SimilarityTransformListType typedef SimilarityTransformListType::iterator SimilarityTransformListIteratorType typedef vnl_matrix_fixed< double, 3+1, 3+1 > TransformMatrixType typedef std::vector< TransformMatrixType > TransformMatrixListType typedef TransformMatrixListType::iterator TransformMatrixIteratorType","title":"Public Types"},{"location":"api/Classes/classProcrustes3D.html#public-functions","text":"Name Procrustes3D () Procrustes3D (bool do_scaling, bool do_rotation_translation) bool GetScaling () const void ScalingOn () void ScalingOff () bool GetRotationTranslation () const void RotationTranslationOn () void RotationTranslationOff () void AlignShapes (SimilarityTransformListType & transforms, ShapeListType & shapes) void RemoveTranslation (SimilarityTransformListType & transforms, ShapeListType & shapes) void ConstructTransformMatrices (SimilarityTransformListType & transforms, TransformMatrixListType & transformMatrices) void ConstructTransformMatrix ( SimilarityTransform3D & transform, TransformMatrixType & transformMatrix) void ComputeMeanShape (ShapeType & mean, ShapeListType & shapeList) void ComputeCenterOfMass (ShapeType & shape, PointType & center) void CenterShape (ShapeType & shape) void ComputeCommonCenter (SimilarityTransformListType & transforms, PointType & center) void AlignSourceToTarget ( SimilarityTransform3D & transform, ShapeType & target, ShapeType & source) int ComputeMedianShape (ShapeListType & shapeList) void TransformShape (ShapeType & shape, SimilarityTransform3D & transform) void TransformShapes (ShapeListType & shapes, SimilarityTransformListType & transforms) RealType ComputeSumOfSquares (ShapeListType & shapes)","title":"Public Functions"},{"location":"api/Classes/classProcrustes3D.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classProcrustes3D.html#typedef-realtype","text":"typedef double Procrustes3D :: RealType ;","title":"typedef RealType"},{"location":"api/Classes/classProcrustes3D.html#typedef-pointtype","text":"typedef vnl_vector_fixed < double , 3 > Procrustes3D :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classProcrustes3D.html#typedef-shapetype","text":"typedef std :: vector < PointType > Procrustes3D :: ShapeType ;","title":"typedef ShapeType"},{"location":"api/Classes/classProcrustes3D.html#typedef-shapeiteratortype","text":"typedef ShapeType :: iterator Procrustes3D :: ShapeIteratorType ;","title":"typedef ShapeIteratorType"},{"location":"api/Classes/classProcrustes3D.html#typedef-shapelisttype","text":"typedef std :: vector < ShapeType > Procrustes3D :: ShapeListType ;","title":"typedef ShapeListType"},{"location":"api/Classes/classProcrustes3D.html#typedef-shapelistiteratortype","text":"typedef ShapeListType :: iterator Procrustes3D :: ShapeListIteratorType ;","title":"typedef ShapeListIteratorType"},{"location":"api/Classes/classProcrustes3D.html#typedef-similaritytransformlisttype","text":"typedef std :: vector < SimilarityTransform3D > Procrustes3D :: SimilarityTransformListType ;","title":"typedef SimilarityTransformListType"},{"location":"api/Classes/classProcrustes3D.html#typedef-similaritytransformlistiteratortype","text":"typedef SimilarityTransformListType :: iterator Procrustes3D :: SimilarityTransformListIteratorType ;","title":"typedef SimilarityTransformListIteratorType"},{"location":"api/Classes/classProcrustes3D.html#typedef-transformmatrixtype","text":"typedef vnl_matrix_fixed < double , 3 + 1 , 3 + 1 > Procrustes3D :: TransformMatrixType ;","title":"typedef TransformMatrixType"},{"location":"api/Classes/classProcrustes3D.html#typedef-transformmatrixlisttype","text":"typedef std :: vector < TransformMatrixType > Procrustes3D :: TransformMatrixListType ;","title":"typedef TransformMatrixListType"},{"location":"api/Classes/classProcrustes3D.html#typedef-transformmatrixiteratortype","text":"typedef TransformMatrixListType :: iterator Procrustes3D :: TransformMatrixIteratorType ;","title":"typedef TransformMatrixIteratorType"},{"location":"api/Classes/classProcrustes3D.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classProcrustes3D.html#function-procrustes3d","text":"inline Procrustes3D ()","title":"function Procrustes3D"},{"location":"api/Classes/classProcrustes3D.html#function-procrustes3d_1","text":"inline Procrustes3D ( bool do_scaling , bool do_rotation_translation )","title":"function Procrustes3D"},{"location":"api/Classes/classProcrustes3D.html#function-getscaling","text":"inline bool GetScaling () const","title":"function GetScaling"},{"location":"api/Classes/classProcrustes3D.html#function-scalingon","text":"inline void ScalingOn ()","title":"function ScalingOn"},{"location":"api/Classes/classProcrustes3D.html#function-scalingoff","text":"inline void ScalingOff ()","title":"function ScalingOff"},{"location":"api/Classes/classProcrustes3D.html#function-getrotationtranslation","text":"inline bool GetRotationTranslation () const","title":"function GetRotationTranslation"},{"location":"api/Classes/classProcrustes3D.html#function-rotationtranslationon","text":"inline void RotationTranslationOn ()","title":"function RotationTranslationOn"},{"location":"api/Classes/classProcrustes3D.html#function-rotationtranslationoff","text":"inline void RotationTranslationOff ()","title":"function RotationTranslationOff"},{"location":"api/Classes/classProcrustes3D.html#function-alignshapes","text":"void AlignShapes ( SimilarityTransformListType & transforms , ShapeListType & shapes )","title":"function AlignShapes"},{"location":"api/Classes/classProcrustes3D.html#function-removetranslation","text":"void RemoveTranslation ( SimilarityTransformListType & transforms , ShapeListType & shapes )","title":"function RemoveTranslation"},{"location":"api/Classes/classProcrustes3D.html#function-constructtransformmatrices","text":"void ConstructTransformMatrices ( SimilarityTransformListType & transforms , TransformMatrixListType & transformMatrices )","title":"function ConstructTransformMatrices"},{"location":"api/Classes/classProcrustes3D.html#function-constructtransformmatrix","text":"void ConstructTransformMatrix ( SimilarityTransform3D & transform , TransformMatrixType & transformMatrix )","title":"function ConstructTransformMatrix"},{"location":"api/Classes/classProcrustes3D.html#function-computemeanshape","text":"void ComputeMeanShape ( ShapeType & mean , ShapeListType & shapeList )","title":"function ComputeMeanShape"},{"location":"api/Classes/classProcrustes3D.html#function-computecenterofmass","text":"void ComputeCenterOfMass ( ShapeType & shape , PointType & center )","title":"function ComputeCenterOfMass"},{"location":"api/Classes/classProcrustes3D.html#function-centershape","text":"void CenterShape ( ShapeType & shape )","title":"function CenterShape"},{"location":"api/Classes/classProcrustes3D.html#function-computecommoncenter","text":"void ComputeCommonCenter ( SimilarityTransformListType & transforms , PointType & center )","title":"function ComputeCommonCenter"},{"location":"api/Classes/classProcrustes3D.html#function-alignsourcetotarget","text":"void AlignSourceToTarget ( SimilarityTransform3D & transform , ShapeType & target , ShapeType & source )","title":"function AlignSourceToTarget"},{"location":"api/Classes/classProcrustes3D.html#function-computemedianshape","text":"int ComputeMedianShape ( ShapeListType & shapeList )","title":"function ComputeMedianShape"},{"location":"api/Classes/classProcrustes3D.html#function-transformshape","text":"static void TransformShape ( ShapeType & shape , SimilarityTransform3D & transform )","title":"function TransformShape"},{"location":"api/Classes/classProcrustes3D.html#function-transformshapes","text":"static void TransformShapes ( ShapeListType & shapes , SimilarityTransformListType & transforms )","title":"function TransformShapes"},{"location":"api/Classes/classProcrustes3D.html#function-computesumofsquares","text":"static RealType ComputeSumOfSquares ( ShapeListType & shapes ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function ComputeSumOfSquares"},{"location":"api/Classes/classReconstruction.html","text":"Reconstruction More... Public Types Name typedef itk::GradientImageFilter< ImageType, PixelType > GradientFilterType typedef itk::GradientMagnitudeImageFilter< ImageType, ImageType > GradientMagnitudeFilterType typedef itk::Image< itk::CovariantVector< PixelType, 3 >, 3 > GradientImageType typedef itk::ImageRegionIterator< GradientImageType > GradientImageIteratorType typedef itk::ImageRegionIterator< ImageType > ImageIteratorType typedef itk::ImageFileWriter< ImageType > WriterType typedef itk::ImageToVTKImageFilter< ImageType > ITK2VTKConnectorType typedef itk::AddImageFilter< ImageType, ImageType > AddImageFilterType typedef itk::ResampleImageFilter< ImageType, ImageType > ResampleFilterType typedef TInterpolatorType< ImageType, TCoordRep > InterpolatorType typedef itk::MultiplyImageFilter< ImageType, ImageType, ImageType > MultiplyByConstantImageFilterType typedef itk::ImageDuplicator< ImageType > DuplicatorType typedef TTransformType< TCoordRep, 3 > TransformType typedef itk::Point< TCoordRep, 3 > PointType typedef std::vector< PointType > PointArrayType typedef TransformType::PointSetType PointSetType typedef PointSetType::PointIdentifier PointIdType Public Functions Name Reconstruction (std::string out_prefix =\"\", float decimationPercent =0.3f, double angleThresh =45.0f, size_t numClusters =5, bool fixWinding =true, bool doLaplacianSmoothingBeforeDecimation =true, bool doLaplacianSmoothingAfterDecimation =true, float smoothingLambda =0.5f, int smoothingIterations =1, bool usePairwiseNormalsDifferencesForGoodBad =false) ~Reconstruction () vtkSmartPointer< vtkPolyData > getDenseMean (std::vector< PointArrayType > local_pts =std::vector< PointArrayType >(), std::vector< PointArrayType > global_pts =std::vector< PointArrayType >(), std::vector< std::string > distance_transform =std::vector< std::string >()) void reset () void setDecimation (float dec) void setNumClusters (int num) void setMaxAngle (double angleDegrees) void setFixWinding (bool fixWinding) void setLaplacianSmoothingBeforeDecimation (bool doLaplacianSmoothingBeforeDecimation) void setLaplacianSmoothingAfterDecimation (bool doLaplacianSmoothingAfterDecimation) void setSmoothingLambda (float smoothingLambda) void setSmoothingIterations (int smoothingIterations) void setOutputEnabled (bool enabled) void setMeanBeforeWarpEnabled (bool enabled) vtkSmartPointer< vtkPolyData > getMesh (PointArrayType local_pts) void readMeanInfo (std::string dense, std::string sparse, std::string goodPoints) bool sparseDone () bool denseDone () void writeMeanInfo (std::string nameBase) vtkSmartPointer< vtkPoints > SparseMean () vtkSmartPointer< vtkPolyData > DenseMean () std::vector< bool > GoodPoints () std::string OutPrefix () void setOutPrefix (std::string out_prefix) std::vector< PointArrayType > computeSparseMean (std::vector< PointArrayType > local_pts, itk::Point< TCoordRep > & common_center, bool do_procrustes =true, bool do_procrustes_scaling =false) void setOrigin (typename ImageType::PointType origin) void EnablePairwiseNormalsDifferencesForGoodBad () void DisablePairwiseNormalsDifferencesForGoodBad () Detailed Description template < template < typename TCoordRep , unsigned > class TTransformType = itk :: CompactlySupportedRBFSparseKernelTransform , template < typename ImageType , typename TCoordRep > class TInterpolatorType = itk :: LinearInterpolateImageFunction , typename TCoordRep = double , typename PixelType = float , typename ImageType = itk :: Image < PixelType , 3 >> class Reconstruction ; Public Types Documentation typedef GradientFilterType typedef itk :: GradientImageFilter < ImageType , PixelType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientFilterType ; typedef GradientMagnitudeFilterType typedef itk :: GradientMagnitudeImageFilter < ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientMagnitudeFilterType ; typedef GradientImageType typedef itk :: Image < itk :: CovariantVector < PixelType , 3 > , 3 > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientImageType ; typedef GradientImageIteratorType typedef itk :: ImageRegionIterator < GradientImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientImageIteratorType ; typedef ImageIteratorType typedef itk :: ImageRegionIterator < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: ImageIteratorType ; typedef WriterType typedef itk :: ImageFileWriter < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: WriterType ; typedef ITK2VTKConnectorType typedef itk :: ImageToVTKImageFilter < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: ITK2VTKConnectorType ; typedef AddImageFilterType typedef itk :: AddImageFilter < ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: AddImageFilterType ; typedef ResampleFilterType typedef itk :: ResampleImageFilter < ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: ResampleFilterType ; typedef InterpolatorType typedef TInterpolatorType < ImageType , TCoordRep > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: InterpolatorType ; typedef MultiplyByConstantImageFilterType typedef itk :: MultiplyImageFilter < ImageType , ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: MultiplyByConstantImageFilterType ; typedef DuplicatorType typedef itk :: ImageDuplicator < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: DuplicatorType ; typedef TransformType typedef TTransformType < TCoordRep , 3 > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: TransformType ; typedef PointType typedef itk :: Point < TCoordRep , 3 > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointType ; typedef PointArrayType typedef std :: vector < PointType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointArrayType ; typedef PointSetType typedef TransformType :: PointSetType Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointSetType ; typedef PointIdType typedef PointSetType :: PointIdentifier Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointIdType ; Public Functions Documentation function Reconstruction Reconstruction ( std :: string out_prefix = \"\" , float decimationPercent = 0.3f , double angleThresh = 45.0f , size_t numClusters = 5 , bool fixWinding = true , bool doLaplacianSmoothingBeforeDecimation = true , bool doLaplacianSmoothingAfterDecimation = true , float smoothingLambda = 0.5f , int smoothingIterations = 1 , bool usePairwiseNormalsDifferencesForGoodBad = false ) function ~Reconstruction ~ Reconstruction () function getDenseMean vtkSmartPointer < vtkPolyData > getDenseMean ( std :: vector < PointArrayType > local_pts = std :: vector < PointArrayType > (), std :: vector < PointArrayType > global_pts = std :: vector < PointArrayType > (), std :: vector < std :: string > distance_transform = std :: vector < std :: string > () ) function reset void reset () function setDecimation void setDecimation ( float dec ) function setNumClusters void setNumClusters ( int num ) function setMaxAngle void setMaxAngle ( double angleDegrees ) function setFixWinding void setFixWinding ( bool fixWinding ) function setLaplacianSmoothingBeforeDecimation void setLaplacianSmoothingBeforeDecimation ( bool doLaplacianSmoothingBeforeDecimation ) function setLaplacianSmoothingAfterDecimation void setLaplacianSmoothingAfterDecimation ( bool doLaplacianSmoothingAfterDecimation ) function setSmoothingLambda void setSmoothingLambda ( float smoothingLambda ) function setSmoothingIterations void setSmoothingIterations ( int smoothingIterations ) function setOutputEnabled void setOutputEnabled ( bool enabled ) function setMeanBeforeWarpEnabled void setMeanBeforeWarpEnabled ( bool enabled ) Set if the mean DT before warp is enabled or not Disabling this allows Reconstruction to use DTs that are of different sizes and with different origins function getMesh vtkSmartPointer < vtkPolyData > getMesh ( PointArrayType local_pts ) function readMeanInfo void readMeanInfo ( std :: string dense , std :: string sparse , std :: string goodPoints ) function sparseDone bool sparseDone () function denseDone bool denseDone () function writeMeanInfo void writeMeanInfo ( std :: string nameBase ) function SparseMean inline vtkSmartPointer < vtkPoints > SparseMean () function DenseMean inline vtkSmartPointer < vtkPolyData > DenseMean () function GoodPoints inline std :: vector < bool > GoodPoints () function OutPrefix inline std :: string OutPrefix () function setOutPrefix inline void setOutPrefix ( std :: string out_prefix ) function computeSparseMean std :: vector < PointArrayType > computeSparseMean ( std :: vector < PointArrayType > local_pts , itk :: Point < TCoordRep > & common_center , bool do_procrustes = true , bool do_procrustes_scaling = false ) function setOrigin inline void setOrigin ( typename ImageType :: PointType origin ) function EnablePairwiseNormalsDifferencesForGoodBad inline void EnablePairwiseNormalsDifferencesForGoodBad () function DisablePairwiseNormalsDifferencesForGoodBad inline void DisablePairwiseNormalsDifferencesForGoodBad () Updated on 2023-10-24 at 22:16:02 +0000","title":"Reconstruction"},{"location":"api/Classes/classReconstruction.html#reconstruction","text":"More...","title":"Reconstruction"},{"location":"api/Classes/classReconstruction.html#public-types","text":"Name typedef itk::GradientImageFilter< ImageType, PixelType > GradientFilterType typedef itk::GradientMagnitudeImageFilter< ImageType, ImageType > GradientMagnitudeFilterType typedef itk::Image< itk::CovariantVector< PixelType, 3 >, 3 > GradientImageType typedef itk::ImageRegionIterator< GradientImageType > GradientImageIteratorType typedef itk::ImageRegionIterator< ImageType > ImageIteratorType typedef itk::ImageFileWriter< ImageType > WriterType typedef itk::ImageToVTKImageFilter< ImageType > ITK2VTKConnectorType typedef itk::AddImageFilter< ImageType, ImageType > AddImageFilterType typedef itk::ResampleImageFilter< ImageType, ImageType > ResampleFilterType typedef TInterpolatorType< ImageType, TCoordRep > InterpolatorType typedef itk::MultiplyImageFilter< ImageType, ImageType, ImageType > MultiplyByConstantImageFilterType typedef itk::ImageDuplicator< ImageType > DuplicatorType typedef TTransformType< TCoordRep, 3 > TransformType typedef itk::Point< TCoordRep, 3 > PointType typedef std::vector< PointType > PointArrayType typedef TransformType::PointSetType PointSetType typedef PointSetType::PointIdentifier PointIdType","title":"Public Types"},{"location":"api/Classes/classReconstruction.html#public-functions","text":"Name Reconstruction (std::string out_prefix =\"\", float decimationPercent =0.3f, double angleThresh =45.0f, size_t numClusters =5, bool fixWinding =true, bool doLaplacianSmoothingBeforeDecimation =true, bool doLaplacianSmoothingAfterDecimation =true, float smoothingLambda =0.5f, int smoothingIterations =1, bool usePairwiseNormalsDifferencesForGoodBad =false) ~Reconstruction () vtkSmartPointer< vtkPolyData > getDenseMean (std::vector< PointArrayType > local_pts =std::vector< PointArrayType >(), std::vector< PointArrayType > global_pts =std::vector< PointArrayType >(), std::vector< std::string > distance_transform =std::vector< std::string >()) void reset () void setDecimation (float dec) void setNumClusters (int num) void setMaxAngle (double angleDegrees) void setFixWinding (bool fixWinding) void setLaplacianSmoothingBeforeDecimation (bool doLaplacianSmoothingBeforeDecimation) void setLaplacianSmoothingAfterDecimation (bool doLaplacianSmoothingAfterDecimation) void setSmoothingLambda (float smoothingLambda) void setSmoothingIterations (int smoothingIterations) void setOutputEnabled (bool enabled) void setMeanBeforeWarpEnabled (bool enabled) vtkSmartPointer< vtkPolyData > getMesh (PointArrayType local_pts) void readMeanInfo (std::string dense, std::string sparse, std::string goodPoints) bool sparseDone () bool denseDone () void writeMeanInfo (std::string nameBase) vtkSmartPointer< vtkPoints > SparseMean () vtkSmartPointer< vtkPolyData > DenseMean () std::vector< bool > GoodPoints () std::string OutPrefix () void setOutPrefix (std::string out_prefix) std::vector< PointArrayType > computeSparseMean (std::vector< PointArrayType > local_pts, itk::Point< TCoordRep > & common_center, bool do_procrustes =true, bool do_procrustes_scaling =false) void setOrigin (typename ImageType::PointType origin) void EnablePairwiseNormalsDifferencesForGoodBad () void DisablePairwiseNormalsDifferencesForGoodBad ()","title":"Public Functions"},{"location":"api/Classes/classReconstruction.html#detailed-description","text":"template < template < typename TCoordRep , unsigned > class TTransformType = itk :: CompactlySupportedRBFSparseKernelTransform , template < typename ImageType , typename TCoordRep > class TInterpolatorType = itk :: LinearInterpolateImageFunction , typename TCoordRep = double , typename PixelType = float , typename ImageType = itk :: Image < PixelType , 3 >> class Reconstruction ;","title":"Detailed Description"},{"location":"api/Classes/classReconstruction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classReconstruction.html#typedef-gradientfiltertype","text":"typedef itk :: GradientImageFilter < ImageType , PixelType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientFilterType ;","title":"typedef GradientFilterType"},{"location":"api/Classes/classReconstruction.html#typedef-gradientmagnitudefiltertype","text":"typedef itk :: GradientMagnitudeImageFilter < ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientMagnitudeFilterType ;","title":"typedef GradientMagnitudeFilterType"},{"location":"api/Classes/classReconstruction.html#typedef-gradientimagetype","text":"typedef itk :: Image < itk :: CovariantVector < PixelType , 3 > , 3 > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientImageType ;","title":"typedef GradientImageType"},{"location":"api/Classes/classReconstruction.html#typedef-gradientimageiteratortype","text":"typedef itk :: ImageRegionIterator < GradientImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: GradientImageIteratorType ;","title":"typedef GradientImageIteratorType"},{"location":"api/Classes/classReconstruction.html#typedef-imageiteratortype","text":"typedef itk :: ImageRegionIterator < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: ImageIteratorType ;","title":"typedef ImageIteratorType"},{"location":"api/Classes/classReconstruction.html#typedef-writertype","text":"typedef itk :: ImageFileWriter < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: WriterType ;","title":"typedef WriterType"},{"location":"api/Classes/classReconstruction.html#typedef-itk2vtkconnectortype","text":"typedef itk :: ImageToVTKImageFilter < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: ITK2VTKConnectorType ;","title":"typedef ITK2VTKConnectorType"},{"location":"api/Classes/classReconstruction.html#typedef-addimagefiltertype","text":"typedef itk :: AddImageFilter < ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: AddImageFilterType ;","title":"typedef AddImageFilterType"},{"location":"api/Classes/classReconstruction.html#typedef-resamplefiltertype","text":"typedef itk :: ResampleImageFilter < ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: ResampleFilterType ;","title":"typedef ResampleFilterType"},{"location":"api/Classes/classReconstruction.html#typedef-interpolatortype","text":"typedef TInterpolatorType < ImageType , TCoordRep > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: InterpolatorType ;","title":"typedef InterpolatorType"},{"location":"api/Classes/classReconstruction.html#typedef-multiplybyconstantimagefiltertype","text":"typedef itk :: MultiplyImageFilter < ImageType , ImageType , ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: MultiplyByConstantImageFilterType ;","title":"typedef MultiplyByConstantImageFilterType"},{"location":"api/Classes/classReconstruction.html#typedef-duplicatortype","text":"typedef itk :: ImageDuplicator < ImageType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: DuplicatorType ;","title":"typedef DuplicatorType"},{"location":"api/Classes/classReconstruction.html#typedef-transformtype","text":"typedef TTransformType < TCoordRep , 3 > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: TransformType ;","title":"typedef TransformType"},{"location":"api/Classes/classReconstruction.html#typedef-pointtype","text":"typedef itk :: Point < TCoordRep , 3 > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classReconstruction.html#typedef-pointarraytype","text":"typedef std :: vector < PointType > Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointArrayType ;","title":"typedef PointArrayType"},{"location":"api/Classes/classReconstruction.html#typedef-pointsettype","text":"typedef TransformType :: PointSetType Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointSetType ;","title":"typedef PointSetType"},{"location":"api/Classes/classReconstruction.html#typedef-pointidtype","text":"typedef PointSetType :: PointIdentifier Reconstruction < TTransformType , TInterpolatorType , TCoordRep , PixelType , ImageType >:: PointIdType ;","title":"typedef PointIdType"},{"location":"api/Classes/classReconstruction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classReconstruction.html#function-reconstruction","text":"Reconstruction ( std :: string out_prefix = \"\" , float decimationPercent = 0.3f , double angleThresh = 45.0f , size_t numClusters = 5 , bool fixWinding = true , bool doLaplacianSmoothingBeforeDecimation = true , bool doLaplacianSmoothingAfterDecimation = true , float smoothingLambda = 0.5f , int smoothingIterations = 1 , bool usePairwiseNormalsDifferencesForGoodBad = false )","title":"function Reconstruction"},{"location":"api/Classes/classReconstruction.html#function-reconstruction_1","text":"~ Reconstruction ()","title":"function ~Reconstruction"},{"location":"api/Classes/classReconstruction.html#function-getdensemean","text":"vtkSmartPointer < vtkPolyData > getDenseMean ( std :: vector < PointArrayType > local_pts = std :: vector < PointArrayType > (), std :: vector < PointArrayType > global_pts = std :: vector < PointArrayType > (), std :: vector < std :: string > distance_transform = std :: vector < std :: string > () )","title":"function getDenseMean"},{"location":"api/Classes/classReconstruction.html#function-reset","text":"void reset ()","title":"function reset"},{"location":"api/Classes/classReconstruction.html#function-setdecimation","text":"void setDecimation ( float dec )","title":"function setDecimation"},{"location":"api/Classes/classReconstruction.html#function-setnumclusters","text":"void setNumClusters ( int num )","title":"function setNumClusters"},{"location":"api/Classes/classReconstruction.html#function-setmaxangle","text":"void setMaxAngle ( double angleDegrees )","title":"function setMaxAngle"},{"location":"api/Classes/classReconstruction.html#function-setfixwinding","text":"void setFixWinding ( bool fixWinding )","title":"function setFixWinding"},{"location":"api/Classes/classReconstruction.html#function-setlaplaciansmoothingbeforedecimation","text":"void setLaplacianSmoothingBeforeDecimation ( bool doLaplacianSmoothingBeforeDecimation )","title":"function setLaplacianSmoothingBeforeDecimation"},{"location":"api/Classes/classReconstruction.html#function-setlaplaciansmoothingafterdecimation","text":"void setLaplacianSmoothingAfterDecimation ( bool doLaplacianSmoothingAfterDecimation )","title":"function setLaplacianSmoothingAfterDecimation"},{"location":"api/Classes/classReconstruction.html#function-setsmoothinglambda","text":"void setSmoothingLambda ( float smoothingLambda )","title":"function setSmoothingLambda"},{"location":"api/Classes/classReconstruction.html#function-setsmoothingiterations","text":"void setSmoothingIterations ( int smoothingIterations )","title":"function setSmoothingIterations"},{"location":"api/Classes/classReconstruction.html#function-setoutputenabled","text":"void setOutputEnabled ( bool enabled )","title":"function setOutputEnabled"},{"location":"api/Classes/classReconstruction.html#function-setmeanbeforewarpenabled","text":"void setMeanBeforeWarpEnabled ( bool enabled ) Set if the mean DT before warp is enabled or not Disabling this allows Reconstruction to use DTs that are of different sizes and with different origins","title":"function setMeanBeforeWarpEnabled"},{"location":"api/Classes/classReconstruction.html#function-getmesh","text":"vtkSmartPointer < vtkPolyData > getMesh ( PointArrayType local_pts )","title":"function getMesh"},{"location":"api/Classes/classReconstruction.html#function-readmeaninfo","text":"void readMeanInfo ( std :: string dense , std :: string sparse , std :: string goodPoints )","title":"function readMeanInfo"},{"location":"api/Classes/classReconstruction.html#function-sparsedone","text":"bool sparseDone ()","title":"function sparseDone"},{"location":"api/Classes/classReconstruction.html#function-densedone","text":"bool denseDone ()","title":"function denseDone"},{"location":"api/Classes/classReconstruction.html#function-writemeaninfo","text":"void writeMeanInfo ( std :: string nameBase )","title":"function writeMeanInfo"},{"location":"api/Classes/classReconstruction.html#function-sparsemean","text":"inline vtkSmartPointer < vtkPoints > SparseMean ()","title":"function SparseMean"},{"location":"api/Classes/classReconstruction.html#function-densemean","text":"inline vtkSmartPointer < vtkPolyData > DenseMean ()","title":"function DenseMean"},{"location":"api/Classes/classReconstruction.html#function-goodpoints","text":"inline std :: vector < bool > GoodPoints ()","title":"function GoodPoints"},{"location":"api/Classes/classReconstruction.html#function-outprefix","text":"inline std :: string OutPrefix ()","title":"function OutPrefix"},{"location":"api/Classes/classReconstruction.html#function-setoutprefix","text":"inline void setOutPrefix ( std :: string out_prefix )","title":"function setOutPrefix"},{"location":"api/Classes/classReconstruction.html#function-computesparsemean","text":"std :: vector < PointArrayType > computeSparseMean ( std :: vector < PointArrayType > local_pts , itk :: Point < TCoordRep > & common_center , bool do_procrustes = true , bool do_procrustes_scaling = false )","title":"function computeSparseMean"},{"location":"api/Classes/classReconstruction.html#function-setorigin","text":"inline void setOrigin ( typename ImageType :: PointType origin )","title":"function setOrigin"},{"location":"api/Classes/classReconstruction.html#function-enablepairwisenormalsdifferencesforgoodbad","text":"inline void EnablePairwiseNormalsDifferencesForGoodBad ()","title":"function EnablePairwiseNormalsDifferencesForGoodBad"},{"location":"api/Classes/classReconstruction.html#function-disablepairwisenormalsdifferencesforgoodbad","text":"inline void DisablePairwiseNormalsDifferencesForGoodBad () Updated on 2023-10-24 at 22:16:02 +0000","title":"function DisablePairwiseNormalsDifferencesForGoodBad"},{"location":"api/Classes/classStudioLogger.html","text":"StudioLogger Handle logger callbacks via Qt for thread correctness. #include Inherits from QObject Public Signals Name void message (std::string str) void error (std::string str) void warning (std::string str) void debug (std::string str) void status (std::string str) void progress (int value, std::string str) Public Functions Name StudioLogger () virtual ~StudioLogger () void register_callbacks () void handle_message (std::string str) void handle_error (std::string str) void handle_warning (std::string str) void handle_debug (std::string str) void handle_status (std::string str) void handle_progress (double value, std::string str) Public Signals Documentation signal message void message ( std :: string str ) signal error void error ( std :: string str ) signal warning void warning ( std :: string str ) signal debug void debug ( std :: string str ) signal status void status ( std :: string str ) signal progress void progress ( int value , std :: string str ) Public Functions Documentation function StudioLogger inline StudioLogger () function ~StudioLogger inline virtual ~ StudioLogger () function register_callbacks void register_callbacks () function handle_message void handle_message ( std :: string str ) function handle_error void handle_error ( std :: string str ) function handle_warning void handle_warning ( std :: string str ) function handle_debug void handle_debug ( std :: string str ) function handle_status void handle_status ( std :: string str ) function handle_progress void handle_progress ( double value , std :: string str ) Updated on 2023-10-24 at 22:16:02 +0000","title":"StudioLogger"},{"location":"api/Classes/classStudioLogger.html#studiologger","text":"Handle logger callbacks via Qt for thread correctness. #include Inherits from QObject","title":"StudioLogger"},{"location":"api/Classes/classStudioLogger.html#public-signals","text":"Name void message (std::string str) void error (std::string str) void warning (std::string str) void debug (std::string str) void status (std::string str) void progress (int value, std::string str)","title":"Public Signals"},{"location":"api/Classes/classStudioLogger.html#public-functions","text":"Name StudioLogger () virtual ~StudioLogger () void register_callbacks () void handle_message (std::string str) void handle_error (std::string str) void handle_warning (std::string str) void handle_debug (std::string str) void handle_status (std::string str) void handle_progress (double value, std::string str)","title":"Public Functions"},{"location":"api/Classes/classStudioLogger.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classStudioLogger.html#signal-message","text":"void message ( std :: string str )","title":"signal message"},{"location":"api/Classes/classStudioLogger.html#signal-error","text":"void error ( std :: string str )","title":"signal error"},{"location":"api/Classes/classStudioLogger.html#signal-warning","text":"void warning ( std :: string str )","title":"signal warning"},{"location":"api/Classes/classStudioLogger.html#signal-debug","text":"void debug ( std :: string str )","title":"signal debug"},{"location":"api/Classes/classStudioLogger.html#signal-status","text":"void status ( std :: string str )","title":"signal status"},{"location":"api/Classes/classStudioLogger.html#signal-progress","text":"void progress ( int value , std :: string str )","title":"signal progress"},{"location":"api/Classes/classStudioLogger.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classStudioLogger.html#function-studiologger","text":"inline StudioLogger ()","title":"function StudioLogger"},{"location":"api/Classes/classStudioLogger.html#function-studiologger_1","text":"inline virtual ~ StudioLogger ()","title":"function ~StudioLogger"},{"location":"api/Classes/classStudioLogger.html#function-register_callbacks","text":"void register_callbacks ()","title":"function register_callbacks"},{"location":"api/Classes/classStudioLogger.html#function-handle_message","text":"void handle_message ( std :: string str )","title":"function handle_message"},{"location":"api/Classes/classStudioLogger.html#function-handle_error","text":"void handle_error ( std :: string str )","title":"function handle_error"},{"location":"api/Classes/classStudioLogger.html#function-handle_warning","text":"void handle_warning ( std :: string str )","title":"function handle_warning"},{"location":"api/Classes/classStudioLogger.html#function-handle_debug","text":"void handle_debug ( std :: string str )","title":"function handle_debug"},{"location":"api/Classes/classStudioLogger.html#function-handle_status","text":"void handle_status ( std :: string str )","title":"function handle_status"},{"location":"api/Classes/classStudioLogger.html#function-handle_progress","text":"void handle_progress ( double value , std :: string str ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function handle_progress"},{"location":"api/Classes/classSurfaceReconstructor.html","text":"SurfaceReconstructor Public Functions Name SurfaceReconstructor () ~SurfaceReconstructor () void initializeReconstruction (std::vector< std::vector< itk::Point< double > > > local_pts, std::vector< std::vector< itk::Point< double > > > global_pts, std::vector< std::string > distance_transforms, double maxAngle, float decimationPercent, int numClusters) bool hasDenseMean () void setMean (vtkSmartPointer< vtkPoints > sparseMean, vtkSmartPointer< vtkPolyData > denseMean, std::vector< bool > goodPoints) void writeMeanInfo (std::string baseName) void readMeanInfo (std::string dense, std::string sparse, std::string goodPoints) void resetReconstruct () void set_number_of_clusters (int num_clusters) void set_normal_angle (double angle) void set_decimation_percent (double decimation) bool get_surface_reconstruction_available () vtkSmartPointer< vtkPolyData > build_mesh (const Eigen::VectorXd & shape) Public Functions Documentation function SurfaceReconstructor SurfaceReconstructor () function ~SurfaceReconstructor ~ SurfaceReconstructor () function initializeReconstruction void initializeReconstruction ( std :: vector < std :: vector < itk :: Point < double > > > local_pts , std :: vector < std :: vector < itk :: Point < double > > > global_pts , std :: vector < std :: string > distance_transforms , double maxAngle , float decimationPercent , int numClusters ) function hasDenseMean bool hasDenseMean () function setMean void setMean ( vtkSmartPointer < vtkPoints > sparseMean , vtkSmartPointer < vtkPolyData > denseMean , std :: vector < bool > goodPoints ) function writeMeanInfo void writeMeanInfo ( std :: string baseName ) function readMeanInfo void readMeanInfo ( std :: string dense , std :: string sparse , std :: string goodPoints ) function resetReconstruct void resetReconstruct () function set_number_of_clusters void set_number_of_clusters ( int num_clusters ) function set_normal_angle void set_normal_angle ( double angle ) function set_decimation_percent void set_decimation_percent ( double decimation ) function get_surface_reconstruction_available bool get_surface_reconstruction_available () function build_mesh vtkSmartPointer < vtkPolyData > build_mesh ( const Eigen :: VectorXd & shape ) Updated on 2023-10-24 at 22:16:02 +0000","title":"SurfaceReconstructor"},{"location":"api/Classes/classSurfaceReconstructor.html#surfacereconstructor","text":"","title":"SurfaceReconstructor"},{"location":"api/Classes/classSurfaceReconstructor.html#public-functions","text":"Name SurfaceReconstructor () ~SurfaceReconstructor () void initializeReconstruction (std::vector< std::vector< itk::Point< double > > > local_pts, std::vector< std::vector< itk::Point< double > > > global_pts, std::vector< std::string > distance_transforms, double maxAngle, float decimationPercent, int numClusters) bool hasDenseMean () void setMean (vtkSmartPointer< vtkPoints > sparseMean, vtkSmartPointer< vtkPolyData > denseMean, std::vector< bool > goodPoints) void writeMeanInfo (std::string baseName) void readMeanInfo (std::string dense, std::string sparse, std::string goodPoints) void resetReconstruct () void set_number_of_clusters (int num_clusters) void set_normal_angle (double angle) void set_decimation_percent (double decimation) bool get_surface_reconstruction_available () vtkSmartPointer< vtkPolyData > build_mesh (const Eigen::VectorXd & shape)","title":"Public Functions"},{"location":"api/Classes/classSurfaceReconstructor.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classSurfaceReconstructor.html#function-surfacereconstructor","text":"SurfaceReconstructor ()","title":"function SurfaceReconstructor"},{"location":"api/Classes/classSurfaceReconstructor.html#function-surfacereconstructor_1","text":"~ SurfaceReconstructor ()","title":"function ~SurfaceReconstructor"},{"location":"api/Classes/classSurfaceReconstructor.html#function-initializereconstruction","text":"void initializeReconstruction ( std :: vector < std :: vector < itk :: Point < double > > > local_pts , std :: vector < std :: vector < itk :: Point < double > > > global_pts , std :: vector < std :: string > distance_transforms , double maxAngle , float decimationPercent , int numClusters )","title":"function initializeReconstruction"},{"location":"api/Classes/classSurfaceReconstructor.html#function-hasdensemean","text":"bool hasDenseMean ()","title":"function hasDenseMean"},{"location":"api/Classes/classSurfaceReconstructor.html#function-setmean","text":"void setMean ( vtkSmartPointer < vtkPoints > sparseMean , vtkSmartPointer < vtkPolyData > denseMean , std :: vector < bool > goodPoints )","title":"function setMean"},{"location":"api/Classes/classSurfaceReconstructor.html#function-writemeaninfo","text":"void writeMeanInfo ( std :: string baseName )","title":"function writeMeanInfo"},{"location":"api/Classes/classSurfaceReconstructor.html#function-readmeaninfo","text":"void readMeanInfo ( std :: string dense , std :: string sparse , std :: string goodPoints )","title":"function readMeanInfo"},{"location":"api/Classes/classSurfaceReconstructor.html#function-resetreconstruct","text":"void resetReconstruct ()","title":"function resetReconstruct"},{"location":"api/Classes/classSurfaceReconstructor.html#function-set_number_of_clusters","text":"void set_number_of_clusters ( int num_clusters )","title":"function set_number_of_clusters"},{"location":"api/Classes/classSurfaceReconstructor.html#function-set_normal_angle","text":"void set_normal_angle ( double angle )","title":"function set_normal_angle"},{"location":"api/Classes/classSurfaceReconstructor.html#function-set_decimation_percent","text":"void set_decimation_percent ( double decimation )","title":"function set_decimation_percent"},{"location":"api/Classes/classSurfaceReconstructor.html#function-get_surface_reconstruction_available","text":"bool get_surface_reconstruction_available ()","title":"function get_surface_reconstruction_available"},{"location":"api/Classes/classSurfaceReconstructor.html#function-build_mesh","text":"vtkSmartPointer < vtkPolyData > build_mesh ( const Eigen :: VectorXd & shape ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function build_mesh"},{"location":"api/Classes/classUtils.html","text":"Utils Public Functions Name std::vector< int > randperm (int n) void readSparseShape (vtkSmartPointer< vtkPoints > & points, char * filename, int number_of_particles =-1) void writeSparseShape (char * filename, vtkSmartPointer< vtkPoints > particles) void readSparseShape (std::vector< itk::Point< double > > & points, char * filename, int number_of_particles =-1) void writeSparseShape (char * filename, std::vector< itk::Point< double, 3 > > points) std::vector< int > readParticleIds (char * filename) void writeParticleIds (char * filename, std::vector< int > ids) void computeCenterOfMassForShapeEnsemble (std::vector< std::vector< itk::Point< double, 3 > > > points_list, itk::Point< double, 3 > & center) void computeCenterOfMassForShape (std::vector< itk::Point< double, 3 > > points, itk::Point< double, 3 > & center) void updateMin (double curVal, double & minVal) void updateMax (double curVal, double & maxVal) void getBoundingBoxForShapeEnsemble (std::vector< std::vector< itk::Point< double, 3 > > > points_list, double & min_x, double & min_y, double & min_z, double & max_x, double & max_y, double & max_z) void getBoundingBoxForShape (std::vector< itk::Point< double, 3 > > points, double & min_x, double & min_y, double & min_z, double & max_x, double & max_y, double & max_z) void spherical2cartesian (const double inPoint[3], double outPoint[3]) void cartesian2spherical (const double inPoint[3], double outPoint[3]) vtkSmartPointer< vtkPoints > convertToPhysicalCoordinates (vtkSmartPointer< vtkPoints > particles, int number_of_particles, const itk::Image< float, 3 >::SpacingType & spacing, const itk::Image< float, 3 >::PointType & origin) vtkSmartPointer< vtkPoints > convertToImageCoordinates (vtkSmartPointer< vtkPoints > particles, int number_of_particles, const itk::Image< float, 3 >::SpacingType & spacing, const itk::Image< float, 3 >::PointType & origin) std::string num2str (float num) std::string num2str (int num) std::vector< double > linspace (double a, double b, size_t N) std::string int2str (int n, int number_of_zeros) template void multiply_into (Eigen::MatrixXd & out, const vnl_matrix< T > & lhs, const vnl_matrix< T > & rhs) double averageThetaBruteForce (std::vector< double > thetas, double dtheta) double averageThetaChord (std::vector< double > thetas) double averageThetaArc (std::vector< double > thetas) Public Functions Documentation function randperm static std :: vector < int > randperm ( int n ) function readSparseShape static void readSparseShape ( vtkSmartPointer < vtkPoints > & points , char * filename , int number_of_particles = -1 ) function writeSparseShape static void writeSparseShape ( char * filename , vtkSmartPointer < vtkPoints > particles ) function readSparseShape static void readSparseShape ( std :: vector < itk :: Point < double > > & points , char * filename , int number_of_particles = -1 ) function writeSparseShape static void writeSparseShape ( char * filename , std :: vector < itk :: Point < double , 3 > > points ) function readParticleIds static std :: vector < int > readParticleIds ( char * filename ) function writeParticleIds static void writeParticleIds ( char * filename , std :: vector < int > ids ) function computeCenterOfMassForShapeEnsemble static void computeCenterOfMassForShapeEnsemble ( std :: vector < std :: vector < itk :: Point < double , 3 > > > points_list , itk :: Point < double , 3 > & center ) function computeCenterOfMassForShape static void computeCenterOfMassForShape ( std :: vector < itk :: Point < double , 3 > > points , itk :: Point < double , 3 > & center ) function updateMin static void updateMin ( double curVal , double & minVal ) function updateMax static void updateMax ( double curVal , double & maxVal ) function getBoundingBoxForShapeEnsemble static void getBoundingBoxForShapeEnsemble ( std :: vector < std :: vector < itk :: Point < double , 3 > > > points_list , double & min_x , double & min_y , double & min_z , double & max_x , double & max_y , double & max_z ) function getBoundingBoxForShape static void getBoundingBoxForShape ( std :: vector < itk :: Point < double , 3 > > points , double & min_x , double & min_y , double & min_z , double & max_x , double & max_y , double & max_z ) function spherical2cartesian static void spherical2cartesian ( const double inPoint [ 3 ], double outPoint [ 3 ] ) function cartesian2spherical static void cartesian2spherical ( const double inPoint [ 3 ], double outPoint [ 3 ] ) function convertToPhysicalCoordinates static vtkSmartPointer < vtkPoints > convertToPhysicalCoordinates ( vtkSmartPointer < vtkPoints > particles , int number_of_particles , const itk :: Image < float , 3 >:: SpacingType & spacing , const itk :: Image < float , 3 >:: PointType & origin ) function convertToImageCoordinates static vtkSmartPointer < vtkPoints > convertToImageCoordinates ( vtkSmartPointer < vtkPoints > particles , int number_of_particles , const itk :: Image < float , 3 >:: SpacingType & spacing , const itk :: Image < float , 3 >:: PointType & origin ) function num2str static std :: string num2str ( float num ) function num2str static std :: string num2str ( int num ) function linspace static std :: vector < double > linspace ( double a , double b , size_t N ) function int2str static std :: string int2str ( int n , int number_of_zeros ) function multiply_into template < typename T > static void multiply_into ( Eigen :: MatrixXd & out , const vnl_matrix < T > & lhs , const vnl_matrix < T > & rhs ) function averageThetaBruteForce static double averageThetaBruteForce ( std :: vector < double > thetas , double dtheta ) Given a set of theta measurements, pick the \"average\" (approximately). More formally, given a set of orientations, we wish to identify a \"reference theta\" such that the sum of the squared differences between each theta and the reference theta is minimized. This can be visualized: each theta (including the reference theta) can be mapped onto the unit circle): we wish to minimize the distance between the reference point and every other points by traveling along the circumference of the unit circle. APPROXIMATE CHORD SOLUTION This is hard, however, so instead of computing the distance along the circumference, we compute the distance along the chord. This method is by ebolson@umich.edu , inspired by a similar problem in Horn's \"closed-form solution of absolute orientation using unit quaternions\". Let a be the set of input points, and R(a_i) represent a rotation of point a_i around the origin: R(x) = [ cos(theta) a_x - sin(theta) a_y,] [ sin(theta) a_x + cos(theta) a_y ] The error is: X^2 = SUM ( R(a_i) - [1 0]' )' * (R(a_i) - [1 0]') = SUM R'R - 2[1 0]R(a) + [1 0][1 0]' Note that R'R is constant, because R and R' are orthogonal. (R'R = I). Dropping constant terms: X^2 = SUM 2[1 0]R(a) Differentiating with respect to theta: dX^2/dtheta = SUM cos(theta)a_x - sin(theta)a_y = 0 Collecting cos and sin terms: cos(theta) SUM a_x = sin(theta) SUM a_y e.g.,: theta = atan2( SUM a_y , SUM a_x ) EXACT SOLUTION This solution runs in O(n log n). Let us suppose that all of the input angles are mapped to [-PI, PI]. All the input points can be shifted to be within PI degrees of the reference angle by adding a multiple of 2PI degrees. If all the input angles are constrained to [-PI, PI], then we can find a reference angle [-PI, 2PI] such that all input points are within PI degrees by either adding 0 or exactly 2PI to individual input points. More so, the input points that we must add 2PI to are the M points with the smallest theta, but we do not know M. This is necessary when the correct reference angle is large: the smallest points will be more than PI degrees away, so they need to be moved to the right side of the reference angle. If we knew M, computing the reference angle is easy: it is simply the average of the (possibly shifted) input points. Let x[i] be the input point [-PI,PI] and y[i] be the possibly shifted version of that point, y[i] = x[i] + 2PI if i < M, otherwise y[i] = x[i]. r = reference angle = (1 / N) * SUM_i y[i] error = SUM_i (y[i] - r)^2 We simply search over each value of M (from 0 to N), and recompute the error. Both the reference angle and error can be written in terms of the first and second moments of y[i], which gives us the following strategy: 1) Compute A1 and A2, the first and second moments of y[i], assuming M = 0. (This is just the first and second moments of x[i]). This involves iterating over each of the input points. 2) Considering the points in x[i] in sorted order, update A1 and A2 such that they reflect y[i] = x[i] + 2PI. Compute the new reference theta and error after every point (an O(1) operation) and report the theta whose error was the smallest. Total run time is O(N log N) due to the sort operation. The other two passes are O(N). Memory usage is O(N), since all points must be stored so they can be sorted. SUMMARY method runtime memory notes brute O(2PI*N / eps) O(N) worst-case error is eps/2 exact O(N log N) O(N) chord O(N) O(1) minimizes squared chord length, not squared arc length. Real-world performance: the exact method is typically faster than the chord method, presumably because of the high cost of computing trigonometric functions used in the Chord method. This advantage decreases with larger number of points (due to the super-linear cost of sorting), but even at 50000 points, the optimal method is (a bit) faster than the chord method. Reference: Olson, Edwin. \"On computing the average orientation of vectors and lines.\" In Robotics and Automation (ICRA), 2011 IEEE International Conference on, pp. 3869-3874. IEEE, 2011. Code is written in C++ from author's java implmentation by Shireen Elhabian - SCI institute, University of Utah function averageThetaChord static double averageThetaChord ( std :: vector < double > thetas ) function averageThetaArc static double averageThetaArc ( std :: vector < double > thetas ) Updated on 2023-10-24 at 22:16:02 +0000","title":"Utils"},{"location":"api/Classes/classUtils.html#utils","text":"","title":"Utils"},{"location":"api/Classes/classUtils.html#public-functions","text":"Name std::vector< int > randperm (int n) void readSparseShape (vtkSmartPointer< vtkPoints > & points, char * filename, int number_of_particles =-1) void writeSparseShape (char * filename, vtkSmartPointer< vtkPoints > particles) void readSparseShape (std::vector< itk::Point< double > > & points, char * filename, int number_of_particles =-1) void writeSparseShape (char * filename, std::vector< itk::Point< double, 3 > > points) std::vector< int > readParticleIds (char * filename) void writeParticleIds (char * filename, std::vector< int > ids) void computeCenterOfMassForShapeEnsemble (std::vector< std::vector< itk::Point< double, 3 > > > points_list, itk::Point< double, 3 > & center) void computeCenterOfMassForShape (std::vector< itk::Point< double, 3 > > points, itk::Point< double, 3 > & center) void updateMin (double curVal, double & minVal) void updateMax (double curVal, double & maxVal) void getBoundingBoxForShapeEnsemble (std::vector< std::vector< itk::Point< double, 3 > > > points_list, double & min_x, double & min_y, double & min_z, double & max_x, double & max_y, double & max_z) void getBoundingBoxForShape (std::vector< itk::Point< double, 3 > > points, double & min_x, double & min_y, double & min_z, double & max_x, double & max_y, double & max_z) void spherical2cartesian (const double inPoint[3], double outPoint[3]) void cartesian2spherical (const double inPoint[3], double outPoint[3]) vtkSmartPointer< vtkPoints > convertToPhysicalCoordinates (vtkSmartPointer< vtkPoints > particles, int number_of_particles, const itk::Image< float, 3 >::SpacingType & spacing, const itk::Image< float, 3 >::PointType & origin) vtkSmartPointer< vtkPoints > convertToImageCoordinates (vtkSmartPointer< vtkPoints > particles, int number_of_particles, const itk::Image< float, 3 >::SpacingType & spacing, const itk::Image< float, 3 >::PointType & origin) std::string num2str (float num) std::string num2str (int num) std::vector< double > linspace (double a, double b, size_t N) std::string int2str (int n, int number_of_zeros) template void multiply_into (Eigen::MatrixXd & out, const vnl_matrix< T > & lhs, const vnl_matrix< T > & rhs) double averageThetaBruteForce (std::vector< double > thetas, double dtheta) double averageThetaChord (std::vector< double > thetas) double averageThetaArc (std::vector< double > thetas)","title":"Public Functions"},{"location":"api/Classes/classUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classUtils.html#function-randperm","text":"static std :: vector < int > randperm ( int n )","title":"function randperm"},{"location":"api/Classes/classUtils.html#function-readsparseshape","text":"static void readSparseShape ( vtkSmartPointer < vtkPoints > & points , char * filename , int number_of_particles = -1 )","title":"function readSparseShape"},{"location":"api/Classes/classUtils.html#function-writesparseshape","text":"static void writeSparseShape ( char * filename , vtkSmartPointer < vtkPoints > particles )","title":"function writeSparseShape"},{"location":"api/Classes/classUtils.html#function-readsparseshape_1","text":"static void readSparseShape ( std :: vector < itk :: Point < double > > & points , char * filename , int number_of_particles = -1 )","title":"function readSparseShape"},{"location":"api/Classes/classUtils.html#function-writesparseshape_1","text":"static void writeSparseShape ( char * filename , std :: vector < itk :: Point < double , 3 > > points )","title":"function writeSparseShape"},{"location":"api/Classes/classUtils.html#function-readparticleids","text":"static std :: vector < int > readParticleIds ( char * filename )","title":"function readParticleIds"},{"location":"api/Classes/classUtils.html#function-writeparticleids","text":"static void writeParticleIds ( char * filename , std :: vector < int > ids )","title":"function writeParticleIds"},{"location":"api/Classes/classUtils.html#function-computecenterofmassforshapeensemble","text":"static void computeCenterOfMassForShapeEnsemble ( std :: vector < std :: vector < itk :: Point < double , 3 > > > points_list , itk :: Point < double , 3 > & center )","title":"function computeCenterOfMassForShapeEnsemble"},{"location":"api/Classes/classUtils.html#function-computecenterofmassforshape","text":"static void computeCenterOfMassForShape ( std :: vector < itk :: Point < double , 3 > > points , itk :: Point < double , 3 > & center )","title":"function computeCenterOfMassForShape"},{"location":"api/Classes/classUtils.html#function-updatemin","text":"static void updateMin ( double curVal , double & minVal )","title":"function updateMin"},{"location":"api/Classes/classUtils.html#function-updatemax","text":"static void updateMax ( double curVal , double & maxVal )","title":"function updateMax"},{"location":"api/Classes/classUtils.html#function-getboundingboxforshapeensemble","text":"static void getBoundingBoxForShapeEnsemble ( std :: vector < std :: vector < itk :: Point < double , 3 > > > points_list , double & min_x , double & min_y , double & min_z , double & max_x , double & max_y , double & max_z )","title":"function getBoundingBoxForShapeEnsemble"},{"location":"api/Classes/classUtils.html#function-getboundingboxforshape","text":"static void getBoundingBoxForShape ( std :: vector < itk :: Point < double , 3 > > points , double & min_x , double & min_y , double & min_z , double & max_x , double & max_y , double & max_z )","title":"function getBoundingBoxForShape"},{"location":"api/Classes/classUtils.html#function-spherical2cartesian","text":"static void spherical2cartesian ( const double inPoint [ 3 ], double outPoint [ 3 ] )","title":"function spherical2cartesian"},{"location":"api/Classes/classUtils.html#function-cartesian2spherical","text":"static void cartesian2spherical ( const double inPoint [ 3 ], double outPoint [ 3 ] )","title":"function cartesian2spherical"},{"location":"api/Classes/classUtils.html#function-converttophysicalcoordinates","text":"static vtkSmartPointer < vtkPoints > convertToPhysicalCoordinates ( vtkSmartPointer < vtkPoints > particles , int number_of_particles , const itk :: Image < float , 3 >:: SpacingType & spacing , const itk :: Image < float , 3 >:: PointType & origin )","title":"function convertToPhysicalCoordinates"},{"location":"api/Classes/classUtils.html#function-converttoimagecoordinates","text":"static vtkSmartPointer < vtkPoints > convertToImageCoordinates ( vtkSmartPointer < vtkPoints > particles , int number_of_particles , const itk :: Image < float , 3 >:: SpacingType & spacing , const itk :: Image < float , 3 >:: PointType & origin )","title":"function convertToImageCoordinates"},{"location":"api/Classes/classUtils.html#function-num2str","text":"static std :: string num2str ( float num )","title":"function num2str"},{"location":"api/Classes/classUtils.html#function-num2str_1","text":"static std :: string num2str ( int num )","title":"function num2str"},{"location":"api/Classes/classUtils.html#function-linspace","text":"static std :: vector < double > linspace ( double a , double b , size_t N )","title":"function linspace"},{"location":"api/Classes/classUtils.html#function-int2str","text":"static std :: string int2str ( int n , int number_of_zeros )","title":"function int2str"},{"location":"api/Classes/classUtils.html#function-multiply_into","text":"template < typename T > static void multiply_into ( Eigen :: MatrixXd & out , const vnl_matrix < T > & lhs , const vnl_matrix < T > & rhs )","title":"function multiply_into"},{"location":"api/Classes/classUtils.html#function-averagethetabruteforce","text":"static double averageThetaBruteForce ( std :: vector < double > thetas , double dtheta ) Given a set of theta measurements, pick the \"average\" (approximately). More formally, given a set of orientations, we wish to identify a \"reference theta\" such that the sum of the squared differences between each theta and the reference theta is minimized. This can be visualized: each theta (including the reference theta) can be mapped onto the unit circle): we wish to minimize the distance between the reference point and every other points by traveling along the circumference of the unit circle.","title":"function averageThetaBruteForce"},{"location":"api/Classes/classUtils.html#approximate-chord-solution","text":"This is hard, however, so instead of computing the distance along the circumference, we compute the distance along the chord. This method is by ebolson@umich.edu , inspired by a similar problem in Horn's \"closed-form solution of absolute orientation using unit quaternions\". Let a be the set of input points, and R(a_i) represent a rotation of point a_i around the origin: R(x) = [ cos(theta) a_x - sin(theta) a_y,] [ sin(theta) a_x + cos(theta) a_y ] The error is: X^2 = SUM ( R(a_i) - [1 0]' )' * (R(a_i) - [1 0]') = SUM R'R - 2[1 0]R(a) + [1 0][1 0]' Note that R'R is constant, because R and R' are orthogonal. (R'R = I). Dropping constant terms: X^2 = SUM 2[1 0]R(a) Differentiating with respect to theta: dX^2/dtheta = SUM cos(theta)a_x - sin(theta)a_y = 0 Collecting cos and sin terms: cos(theta) SUM a_x = sin(theta) SUM a_y e.g.,: theta = atan2( SUM a_y , SUM a_x )","title":"APPROXIMATE CHORD SOLUTION"},{"location":"api/Classes/classUtils.html#exact-solution","text":"This solution runs in O(n log n). Let us suppose that all of the input angles are mapped to [-PI, PI]. All the input points can be shifted to be within PI degrees of the reference angle by adding a multiple of 2PI degrees. If all the input angles are constrained to [-PI, PI], then we can find a reference angle [-PI, 2PI] such that all input points are within PI degrees by either adding 0 or exactly 2PI to individual input points. More so, the input points that we must add 2PI to are the M points with the smallest theta, but we do not know M. This is necessary when the correct reference angle is large: the smallest points will be more than PI degrees away, so they need to be moved to the right side of the reference angle. If we knew M, computing the reference angle is easy: it is simply the average of the (possibly shifted) input points. Let x[i] be the input point [-PI,PI] and y[i] be the possibly shifted version of that point, y[i] = x[i] + 2PI if i < M, otherwise y[i] = x[i]. r = reference angle = (1 / N) * SUM_i y[i] error = SUM_i (y[i] - r)^2 We simply search over each value of M (from 0 to N), and recompute the error. Both the reference angle and error can be written in terms of the first and second moments of y[i], which gives us the following strategy: 1) Compute A1 and A2, the first and second moments of y[i], assuming M = 0. (This is just the first and second moments of x[i]). This involves iterating over each of the input points. 2) Considering the points in x[i] in sorted order, update A1 and A2 such that they reflect y[i] = x[i] + 2PI. Compute the new reference theta and error after every point (an O(1) operation) and report the theta whose error was the smallest. Total run time is O(N log N) due to the sort operation. The other two passes are O(N). Memory usage is O(N), since all points must be stored so they can be sorted.","title":"EXACT SOLUTION"},{"location":"api/Classes/classUtils.html#summary","text":"","title":"SUMMARY"},{"location":"api/Classes/classUtils.html#method-runtime-memory-notes","text":"brute O(2PI*N / eps) O(N) worst-case error is eps/2 exact O(N log N) O(N) chord O(N) O(1) minimizes squared chord length, not squared arc length. Real-world performance: the exact method is typically faster than the chord method, presumably because of the high cost of computing trigonometric functions used in the Chord method. This advantage decreases with larger number of points (due to the super-linear cost of sorting), but even at 50000 points, the optimal method is (a bit) faster than the chord method. Reference: Olson, Edwin. \"On computing the average orientation of vectors and lines.\" In Robotics and Automation (ICRA), 2011 IEEE International Conference on, pp. 3869-3874. IEEE, 2011. Code is written in C++ from author's java implmentation by Shireen Elhabian - SCI institute, University of Utah","title":"method runtime memory notes"},{"location":"api/Classes/classUtils.html#function-averagethetachord","text":"static double averageThetaChord ( std :: vector < double > thetas )","title":"function averageThetaChord"},{"location":"api/Classes/classUtils.html#function-averagethetaarc","text":"static double averageThetaArc ( std :: vector < double > thetas ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function averageThetaArc"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html","text":"itk::AdvancedTransform Transform maps points, vectors and covariant vectors from an input space to an output space. More... #include Inherits from Transform< TScalarType, 3, 3 > Public Types Name typedef AdvancedTransform Self typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::ParametersValueType ParametersValueType typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::DerivativeType DerivativeType typedef Superclass::JacobianType JacobianType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InverseTransformBaseType InverseTransformBaseType typedef Superclass::InverseTransformBasePointer InverseTransformBasePointer typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > TransformType typedef TransformType::Pointer TransformTypePointer typedef TransformType::ConstPointer TransformTypeConstPointer typedef std::vector< unsigned long > NonZeroJacobianIndicesType typedef Matrix< ScalarType , OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType typedef std::vector< SpatialJacobianType > JacobianOfSpatialJacobianType typedef FixedArray< Matrix< ScalarType , InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType typedef std::vector< SpatialHessianType > JacobianOfSpatialHessianType typedef SpatialJacobianType::InternalMatrixType InternalMatrixType typedef OutputCovariantVectorType MovingImageGradientType typedef MovingImageGradientType::ValueType MovingImageGradientValueType Public Functions Name itkTypeMacro ( AdvancedTransform , Transform ) itkStaticConstMacro (InputSpaceDimension , unsigned int , NInputDimensions ) itkStaticConstMacro (OutputSpaceDimension , unsigned int , NOutputDimensions ) virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices (void ) const itkGetConstMacro (HasNonZeroSpatialHessian , bool ) itkGetConstMacro (HasNonZeroJacobianOfSpatialHessian , bool ) virtual void GetJacobian (const InputPointType & ipp, JacobianType & j, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType & ipp, const MovingImageGradientType & movingImageGradient, DerivativeType & imageJacobian, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const =0 virtual void ComputeJacobianWithRespectToParameters (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void ComputeJacobianWithRespectToPosition (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 Protected Functions Name AdvancedTransform () AdvancedTransform (NumberOfParametersType numberOfParameters) virtual ~AdvancedTransform () Protected Attributes Name bool m_HasNonZeroSpatialHessian bool m_HasNonZeroJacobianOfSpatialHessian Detailed Description template < class TScalarType , unsigned int NInputDimensions = 3 , unsigned int NOutputDimensions = 3 > class itk :: AdvancedTransform ; Transform maps points, vectors and covariant vectors from an input space to an output space. Par : Registration Framework Support Typically a Transform class has several methods for setting its parameters. For use in the registration framework, the parameters must also be represented by an array of doubles to allow communication with generic optimizers. The Array of transformation parameters is set using the SetParameters() method. This abstract class define the generic interface for a geometrical transformation from one space to another. The class provides methods for mapping points, vectors and covariant vectors from the input space to the output space. Given that transformation are not necessarily invertible, this basic class does not provide the methods for back transformation. Back transform methods are implemented in derived classes where appropriate. Another requirement of the registration framework is the computation of the Jacobian of the transform T. In general, an ImageToImageMetric requires the knowledge of this Jacobian in order to compute the metric derivatives. The Jacobian is a matrix whose element are the partial derivatives of the transformation with respect to the array of parameters mu that defines the transform, evaluated at a point p: dT/dmu(p). If penalty terms are included in the registration, the transforms also need to implement other derivatives of T. Often, penalty terms are functions of the spatial derivatives of T. Therefore, e.g. the SpatialJacobian dT/dx and the SpatialHessian d^2T/dx_idx_j require implementation. The GetValueAndDerivative() requires the d/dmu of those terms. Therefore, we additionally define GetJacobianOfSpatialJacobian() and GetJacobianOfSpatialHessian() . Public Types Documentation typedef Self typedef AdvancedTransform itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: Self ; Standard class typedefs. typedef Superclass typedef Transform < TScalarType , NInputDimensions , NOutputDimensions > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: Superclass ; typedef Pointer typedef SmartPointer < Self > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: Pointer ; typedef ConstPointer typedef SmartPointer < const Self > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ConstPointer ; typedef ScalarType typedef Superclass :: ScalarType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ScalarType ; Typedefs from the Superclass. typedef ParametersType typedef Superclass :: ParametersType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ParametersType ; typedef ParametersValueType typedef Superclass :: ParametersValueType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ParametersValueType ; typedef NumberOfParametersType typedef Superclass :: NumberOfParametersType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: NumberOfParametersType ; typedef DerivativeType typedef Superclass :: DerivativeType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: DerivativeType ; typedef JacobianType typedef Superclass :: JacobianType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: JacobianType ; typedef InputVectorType typedef Superclass :: InputVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputVectorType ; typedef OutputVectorType typedef Superclass :: OutputVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputVectorType ; typedef InputCovariantVectorType typedef Superclass :: InputCovariantVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputCovariantVectorType ; typedef OutputCovariantVectorType typedef Superclass :: OutputCovariantVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputCovariantVectorType ; typedef InputVnlVectorType typedef Superclass :: InputVnlVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputVnlVectorType ; typedef OutputVnlVectorType typedef Superclass :: OutputVnlVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputVnlVectorType ; typedef InputPointType typedef Superclass :: InputPointType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputPointType ; typedef OutputPointType typedef Superclass :: OutputPointType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputPointType ; typedef InverseTransformBaseType typedef Superclass :: InverseTransformBaseType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InverseTransformBaseType ; typedef InverseTransformBasePointer typedef Superclass :: InverseTransformBasePointer itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InverseTransformBasePointer ; typedef TransformType typedef Transform < TScalarType , NInputDimensions , NOutputDimensions > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: TransformType ; Transform typedefs for the from Superclass. typedef TransformTypePointer typedef TransformType :: Pointer itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: TransformTypePointer ; typedef TransformTypeConstPointer typedef TransformType :: ConstPointer itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: TransformTypeConstPointer ; typedef NonZeroJacobianIndicesType typedef std :: vector < unsigned long > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: NonZeroJacobianIndicesType ; Types for the (Spatial)Jacobian/Hessian. Using an itk::FixedArray instead of an std::vector gives a performance gain for the SpatialHessianType. typedef SpatialJacobianType typedef Matrix < ScalarType , OutputSpaceDimension , InputSpaceDimension > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: SpatialJacobianType ; typedef JacobianOfSpatialJacobianType typedef std :: vector < SpatialJacobianType > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: JacobianOfSpatialJacobianType ; typedef SpatialHessianType typedef FixedArray < Matrix < ScalarType , InputSpaceDimension , InputSpaceDimension > , OutputSpaceDimension > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: SpatialHessianType ; typedef JacobianOfSpatialHessianType typedef std :: vector < SpatialHessianType > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: JacobianOfSpatialHessianType ; typedef InternalMatrixType typedef SpatialJacobianType :: InternalMatrixType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InternalMatrixType ; typedef MovingImageGradientType typedef OutputCovariantVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: MovingImageGradientType ; Typedef for the moving image gradient type. This type is defined by the B-spline interpolator as typedef CovariantVector< RealType, ImageDimension > As we cannot access this type we simply re-construct it to be identical. typedef MovingImageGradientValueType typedef MovingImageGradientType :: ValueType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: MovingImageGradientValueType ; Public Functions Documentation function itkTypeMacro itkTypeMacro ( AdvancedTransform , Transform ) New method for creating an object using a factory. Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( InputSpaceDimension , unsigned int , NInputDimensions ) Dimension of the domain space. function itkStaticConstMacro itkStaticConstMacro ( OutputSpaceDimension , unsigned int , NOutputDimensions ) function GetNumberOfNonZeroJacobianIndices virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices ( void ) const Get the number of nonzero Jacobian indices. By default all. function itkGetConstMacro itkGetConstMacro ( HasNonZeroSpatialHessian , bool ) Whether the advanced transform has nonzero matrices. function itkGetConstMacro itkGetConstMacro ( HasNonZeroJacobianOfSpatialHessian , bool ) function GetJacobian virtual void GetJacobian ( const InputPointType & ipp , JacobianType & j , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobian , itk::KernelTransform2::GetJacobian This returns a sparse version of the Jacobian of the transformation. The Jacobian is expressed as a vector of partial derivatives of the transformation components with respect to the parameters \\(\\mu\\) that define the transformation \\(T\\) , evaluated at a point \\(p\\) . J=\\left[ \\begin{array}{cccc} \\frac{\\partial T_{1}}{\\partial \\mu_{1}}(p) & \\frac{\\partial T_{1}}{\\partial \\mu_{2}}(p) & \\cdots & \\frac{\\partial T_{1}}{\\partial \\mu_{m}}(p) \\\\ \\frac{\\partial T_{2}}{\\partial \\mu_{1}}(p) & \\frac{\\partial T_{2}}{\\partial \\mu_{2}}(p) & \\cdots & \\frac{\\partial T_{2}}{\\partial \\mu_{m}}(p) \\\\ \\vdots & \\vdots & \\ddots & \\vdots \\\\ \\frac{\\partial T_{d}}{\\partial \\mu_{1}}(p) & \\frac{\\partial T_{d}}{\\partial \\mu_{2}}(p) & \\cdots & \\frac{\\partial T_{d}}{\\partial \\mu_{m}}(p) \\end{array}\\right], with \\(m\\) the number of parameters, i.e. the size of \\(\\mu\\) , and \\(d\\) the dimension of the image. function EvaluateJacobianWithImageGradientProduct virtual void EvaluateJacobianWithImageGradientProduct ( const InputPointType & ipp , const MovingImageGradientType & movingImageGradient , DerivativeType & imageJacobian , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Compute the inner product of the Jacobian with the moving image gradient. The Jacobian is (partially) constructed inside this function, but not returned. function GetSpatialJacobian virtual void GetSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj ) const = 0 Reimplemented by : itk::KernelTransform2::GetSpatialJacobian , itk::KernelTransform2::GetSpatialJacobian Compute the spatial Jacobian of the transformation. The spatial Jacobian is expressed as a vector of partial derivatives of the transformation components with respect to the spatial position \\(x\\) , evaluated at a point \\(p\\) . sJ=\\left[ \\begin{array}{cccc} \\frac{\\partial T_{1}}{\\partial x_{1}}(p) & \\frac{\\partial T_{1}}{\\partial x_{2}}(p) & \\cdots & \\frac{\\partial T_{1}}{\\partial x_{m}}(p) \\\\ \\frac{\\partial T_{2}}{\\partial x_{1}}(p) & \\frac{\\partial T_{2}}{\\partial x_{2}}(p) & \\cdots & \\frac{\\partial T_{2}}{\\partial x_{m}}(p) \\\\ \\vdots & \\vdots & \\ddots & \\vdots \\\\ \\frac{\\partial T_{d}}{\\partial x_{1}}(p) & \\frac{\\partial T_{d}}{\\partial x_{2}}(p) & \\cdots & \\frac{\\partial T_{d}}{\\partial x_{m}}(p) \\end{array}\\right], with \\(m\\) the number of parameters, i.e. the size of \\(\\mu\\) , and \\(d\\) the dimension of the image. function ComputeJacobianWithRespectToParameters inline virtual void ComputeJacobianWithRespectToParameters ( const InputPointType & itkNotUsedp , JacobianType & itkNotUsedj ) const Override some pure virtual ITK4 functions. function ComputeJacobianWithRespectToPosition inline virtual void ComputeJacobianWithRespectToPosition ( const InputPointType & itkNotUsedp , JacobianType & itkNotUsedj ) const function GetSpatialHessian virtual void GetSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh ) const = 0 Reimplemented by : itk::KernelTransform2::GetSpatialHessian , itk::KernelTransform2::GetSpatialHessian Compute the spatial Hessian of the transformation. The spatial Hessian is the vector of matrices of partial second order derivatives of the transformation components with respect to the spatial position \\(x\\) , evaluated at a point \\(p\\) . sH=\\left[ \\begin{array}{cc} \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{1}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) \\\\ \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{2} \\partial x_{2}}(p) \\\\ \\end{array}\\right], with i the i-th component of the transformation. function GetJacobianOfSpatialJacobian virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialJacobian , itk::KernelTransform2::GetJacobianOfSpatialJacobian Compute the Jacobian of the spatial Jacobian of the transformation. The Jacobian of the spatial Jacobian is the derivative of the spatial Jacobian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) . function GetJacobianOfSpatialJacobian virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialJacobian , itk::KernelTransform2::GetJacobianOfSpatialJacobian Compute both the spatial Jacobian and the Jacobian of the spatial Jacobian of the transformation. function GetJacobianOfSpatialHessian virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialHessian , itk::KernelTransform2::GetJacobianOfSpatialHessian Compute the Jacobian of the spatial Hessian of the transformation. The Jacobian of the spatial Hessian is the derivative of the spatial Hessian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) . function GetJacobianOfSpatialHessian virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialHessian , itk::KernelTransform2::GetJacobianOfSpatialHessian Compute both the spatial Hessian and the Jacobian of the spatial Hessian of the transformation. Protected Functions Documentation function AdvancedTransform AdvancedTransform () function AdvancedTransform AdvancedTransform ( NumberOfParametersType numberOfParameters ) function ~AdvancedTransform inline virtual ~ AdvancedTransform () Protected Attributes Documentation variable m_HasNonZeroSpatialHessian bool m_HasNonZeroSpatialHessian ; variable m_HasNonZeroJacobianOfSpatialHessian bool m_HasNonZeroJacobianOfSpatialHessian ; Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::AdvancedTransform"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#itkadvancedtransform","text":"Transform maps points, vectors and covariant vectors from an input space to an output space. More... #include Inherits from Transform< TScalarType, 3, 3 >","title":"itk::AdvancedTransform"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#public-types","text":"Name typedef AdvancedTransform Self typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::ParametersValueType ParametersValueType typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::DerivativeType DerivativeType typedef Superclass::JacobianType JacobianType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InverseTransformBaseType InverseTransformBaseType typedef Superclass::InverseTransformBasePointer InverseTransformBasePointer typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > TransformType typedef TransformType::Pointer TransformTypePointer typedef TransformType::ConstPointer TransformTypeConstPointer typedef std::vector< unsigned long > NonZeroJacobianIndicesType typedef Matrix< ScalarType , OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType typedef std::vector< SpatialJacobianType > JacobianOfSpatialJacobianType typedef FixedArray< Matrix< ScalarType , InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType typedef std::vector< SpatialHessianType > JacobianOfSpatialHessianType typedef SpatialJacobianType::InternalMatrixType InternalMatrixType typedef OutputCovariantVectorType MovingImageGradientType typedef MovingImageGradientType::ValueType MovingImageGradientValueType","title":"Public Types"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#public-functions","text":"Name itkTypeMacro ( AdvancedTransform , Transform ) itkStaticConstMacro (InputSpaceDimension , unsigned int , NInputDimensions ) itkStaticConstMacro (OutputSpaceDimension , unsigned int , NOutputDimensions ) virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices (void ) const itkGetConstMacro (HasNonZeroSpatialHessian , bool ) itkGetConstMacro (HasNonZeroJacobianOfSpatialHessian , bool ) virtual void GetJacobian (const InputPointType & ipp, JacobianType & j, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType & ipp, const MovingImageGradientType & movingImageGradient, DerivativeType & imageJacobian, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const =0 virtual void ComputeJacobianWithRespectToParameters (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void ComputeJacobianWithRespectToPosition (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0","title":"Public Functions"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#protected-functions","text":"Name AdvancedTransform () AdvancedTransform (NumberOfParametersType numberOfParameters) virtual ~AdvancedTransform ()","title":"Protected Functions"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#protected-attributes","text":"Name bool m_HasNonZeroSpatialHessian bool m_HasNonZeroJacobianOfSpatialHessian","title":"Protected Attributes"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#detailed-description","text":"template < class TScalarType , unsigned int NInputDimensions = 3 , unsigned int NOutputDimensions = 3 > class itk :: AdvancedTransform ; Transform maps points, vectors and covariant vectors from an input space to an output space. Par : Registration Framework Support Typically a Transform class has several methods for setting its parameters. For use in the registration framework, the parameters must also be represented by an array of doubles to allow communication with generic optimizers. The Array of transformation parameters is set using the SetParameters() method. This abstract class define the generic interface for a geometrical transformation from one space to another. The class provides methods for mapping points, vectors and covariant vectors from the input space to the output space. Given that transformation are not necessarily invertible, this basic class does not provide the methods for back transformation. Back transform methods are implemented in derived classes where appropriate. Another requirement of the registration framework is the computation of the Jacobian of the transform T. In general, an ImageToImageMetric requires the knowledge of this Jacobian in order to compute the metric derivatives. The Jacobian is a matrix whose element are the partial derivatives of the transformation with respect to the array of parameters mu that defines the transform, evaluated at a point p: dT/dmu(p). If penalty terms are included in the registration, the transforms also need to implement other derivatives of T. Often, penalty terms are functions of the spatial derivatives of T. Therefore, e.g. the SpatialJacobian dT/dx and the SpatialHessian d^2T/dx_idx_j require implementation. The GetValueAndDerivative() requires the d/dmu of those terms. Therefore, we additionally define GetJacobianOfSpatialJacobian() and GetJacobianOfSpatialHessian() .","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-self","text":"typedef AdvancedTransform itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-superclass","text":"typedef Transform < TScalarType , NInputDimensions , NOutputDimensions > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-pointer","text":"typedef SmartPointer < Self > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-constpointer","text":"typedef SmartPointer < const Self > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-scalartype","text":"typedef Superclass :: ScalarType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ScalarType ; Typedefs from the Superclass.","title":"typedef ScalarType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-parameterstype","text":"typedef Superclass :: ParametersType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ParametersType ;","title":"typedef ParametersType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-parametersvaluetype","text":"typedef Superclass :: ParametersValueType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: ParametersValueType ;","title":"typedef ParametersValueType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-numberofparameterstype","text":"typedef Superclass :: NumberOfParametersType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: NumberOfParametersType ;","title":"typedef NumberOfParametersType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-derivativetype","text":"typedef Superclass :: DerivativeType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: DerivativeType ;","title":"typedef DerivativeType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-jacobiantype","text":"typedef Superclass :: JacobianType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: JacobianType ;","title":"typedef JacobianType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-inputvectortype","text":"typedef Superclass :: InputVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputVectorType ;","title":"typedef InputVectorType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-outputvectortype","text":"typedef Superclass :: OutputVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputVectorType ;","title":"typedef OutputVectorType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-inputcovariantvectortype","text":"typedef Superclass :: InputCovariantVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputCovariantVectorType ;","title":"typedef InputCovariantVectorType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-outputcovariantvectortype","text":"typedef Superclass :: OutputCovariantVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputCovariantVectorType ;","title":"typedef OutputCovariantVectorType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-inputvnlvectortype","text":"typedef Superclass :: InputVnlVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputVnlVectorType ;","title":"typedef InputVnlVectorType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-outputvnlvectortype","text":"typedef Superclass :: OutputVnlVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputVnlVectorType ;","title":"typedef OutputVnlVectorType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-inputpointtype","text":"typedef Superclass :: InputPointType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InputPointType ;","title":"typedef InputPointType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-outputpointtype","text":"typedef Superclass :: OutputPointType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: OutputPointType ;","title":"typedef OutputPointType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-inversetransformbasetype","text":"typedef Superclass :: InverseTransformBaseType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InverseTransformBaseType ;","title":"typedef InverseTransformBaseType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-inversetransformbasepointer","text":"typedef Superclass :: InverseTransformBasePointer itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InverseTransformBasePointer ;","title":"typedef InverseTransformBasePointer"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-transformtype","text":"typedef Transform < TScalarType , NInputDimensions , NOutputDimensions > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: TransformType ; Transform typedefs for the from Superclass.","title":"typedef TransformType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-transformtypepointer","text":"typedef TransformType :: Pointer itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: TransformTypePointer ;","title":"typedef TransformTypePointer"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-transformtypeconstpointer","text":"typedef TransformType :: ConstPointer itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: TransformTypeConstPointer ;","title":"typedef TransformTypeConstPointer"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-nonzerojacobianindicestype","text":"typedef std :: vector < unsigned long > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: NonZeroJacobianIndicesType ; Types for the (Spatial)Jacobian/Hessian. Using an itk::FixedArray instead of an std::vector gives a performance gain for the SpatialHessianType.","title":"typedef NonZeroJacobianIndicesType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-spatialjacobiantype","text":"typedef Matrix < ScalarType , OutputSpaceDimension , InputSpaceDimension > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: SpatialJacobianType ;","title":"typedef SpatialJacobianType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-jacobianofspatialjacobiantype","text":"typedef std :: vector < SpatialJacobianType > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: JacobianOfSpatialJacobianType ;","title":"typedef JacobianOfSpatialJacobianType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-spatialhessiantype","text":"typedef FixedArray < Matrix < ScalarType , InputSpaceDimension , InputSpaceDimension > , OutputSpaceDimension > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: SpatialHessianType ;","title":"typedef SpatialHessianType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-jacobianofspatialhessiantype","text":"typedef std :: vector < SpatialHessianType > itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: JacobianOfSpatialHessianType ;","title":"typedef JacobianOfSpatialHessianType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-internalmatrixtype","text":"typedef SpatialJacobianType :: InternalMatrixType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: InternalMatrixType ;","title":"typedef InternalMatrixType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-movingimagegradienttype","text":"typedef OutputCovariantVectorType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: MovingImageGradientType ; Typedef for the moving image gradient type. This type is defined by the B-spline interpolator as typedef CovariantVector< RealType, ImageDimension > As we cannot access this type we simply re-construct it to be identical.","title":"typedef MovingImageGradientType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#typedef-movingimagegradientvaluetype","text":"typedef MovingImageGradientType :: ValueType itk :: AdvancedTransform < TScalarType , NInputDimensions , NOutputDimensions >:: MovingImageGradientValueType ;","title":"typedef MovingImageGradientValueType"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-itktypemacro","text":"itkTypeMacro ( AdvancedTransform , Transform ) New method for creating an object using a factory. Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( InputSpaceDimension , unsigned int , NInputDimensions ) Dimension of the domain space.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-itkstaticconstmacro_1","text":"itkStaticConstMacro ( OutputSpaceDimension , unsigned int , NOutputDimensions )","title":"function itkStaticConstMacro"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getnumberofnonzerojacobianindices","text":"virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices ( void ) const Get the number of nonzero Jacobian indices. By default all.","title":"function GetNumberOfNonZeroJacobianIndices"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-itkgetconstmacro","text":"itkGetConstMacro ( HasNonZeroSpatialHessian , bool ) Whether the advanced transform has nonzero matrices.","title":"function itkGetConstMacro"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-itkgetconstmacro_1","text":"itkGetConstMacro ( HasNonZeroJacobianOfSpatialHessian , bool )","title":"function itkGetConstMacro"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getjacobian","text":"virtual void GetJacobian ( const InputPointType & ipp , JacobianType & j , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobian , itk::KernelTransform2::GetJacobian This returns a sparse version of the Jacobian of the transformation. The Jacobian is expressed as a vector of partial derivatives of the transformation components with respect to the parameters \\(\\mu\\) that define the transformation \\(T\\) , evaluated at a point \\(p\\) . J=\\left[ \\begin{array}{cccc} \\frac{\\partial T_{1}}{\\partial \\mu_{1}}(p) & \\frac{\\partial T_{1}}{\\partial \\mu_{2}}(p) & \\cdots & \\frac{\\partial T_{1}}{\\partial \\mu_{m}}(p) \\\\ \\frac{\\partial T_{2}}{\\partial \\mu_{1}}(p) & \\frac{\\partial T_{2}}{\\partial \\mu_{2}}(p) & \\cdots & \\frac{\\partial T_{2}}{\\partial \\mu_{m}}(p) \\\\ \\vdots & \\vdots & \\ddots & \\vdots \\\\ \\frac{\\partial T_{d}}{\\partial \\mu_{1}}(p) & \\frac{\\partial T_{d}}{\\partial \\mu_{2}}(p) & \\cdots & \\frac{\\partial T_{d}}{\\partial \\mu_{m}}(p) \\end{array}\\right], with \\(m\\) the number of parameters, i.e. the size of \\(\\mu\\) , and \\(d\\) the dimension of the image.","title":"function GetJacobian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-evaluatejacobianwithimagegradientproduct","text":"virtual void EvaluateJacobianWithImageGradientProduct ( const InputPointType & ipp , const MovingImageGradientType & movingImageGradient , DerivativeType & imageJacobian , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Compute the inner product of the Jacobian with the moving image gradient. The Jacobian is (partially) constructed inside this function, but not returned.","title":"function EvaluateJacobianWithImageGradientProduct"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getspatialjacobian","text":"virtual void GetSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj ) const = 0 Reimplemented by : itk::KernelTransform2::GetSpatialJacobian , itk::KernelTransform2::GetSpatialJacobian Compute the spatial Jacobian of the transformation. The spatial Jacobian is expressed as a vector of partial derivatives of the transformation components with respect to the spatial position \\(x\\) , evaluated at a point \\(p\\) . sJ=\\left[ \\begin{array}{cccc} \\frac{\\partial T_{1}}{\\partial x_{1}}(p) & \\frac{\\partial T_{1}}{\\partial x_{2}}(p) & \\cdots & \\frac{\\partial T_{1}}{\\partial x_{m}}(p) \\\\ \\frac{\\partial T_{2}}{\\partial x_{1}}(p) & \\frac{\\partial T_{2}}{\\partial x_{2}}(p) & \\cdots & \\frac{\\partial T_{2}}{\\partial x_{m}}(p) \\\\ \\vdots & \\vdots & \\ddots & \\vdots \\\\ \\frac{\\partial T_{d}}{\\partial x_{1}}(p) & \\frac{\\partial T_{d}}{\\partial x_{2}}(p) & \\cdots & \\frac{\\partial T_{d}}{\\partial x_{m}}(p) \\end{array}\\right], with \\(m\\) the number of parameters, i.e. the size of \\(\\mu\\) , and \\(d\\) the dimension of the image.","title":"function GetSpatialJacobian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-computejacobianwithrespecttoparameters","text":"inline virtual void ComputeJacobianWithRespectToParameters ( const InputPointType & itkNotUsedp , JacobianType & itkNotUsedj ) const Override some pure virtual ITK4 functions.","title":"function ComputeJacobianWithRespectToParameters"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-computejacobianwithrespecttoposition","text":"inline virtual void ComputeJacobianWithRespectToPosition ( const InputPointType & itkNotUsedp , JacobianType & itkNotUsedj ) const","title":"function ComputeJacobianWithRespectToPosition"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getspatialhessian","text":"virtual void GetSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh ) const = 0 Reimplemented by : itk::KernelTransform2::GetSpatialHessian , itk::KernelTransform2::GetSpatialHessian Compute the spatial Hessian of the transformation. The spatial Hessian is the vector of matrices of partial second order derivatives of the transformation components with respect to the spatial position \\(x\\) , evaluated at a point \\(p\\) . sH=\\left[ \\begin{array}{cc} \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{1}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) \\\\ \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{2} \\partial x_{2}}(p) \\\\ \\end{array}\\right], with i the i-th component of the transformation.","title":"function GetSpatialHessian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getjacobianofspatialjacobian","text":"virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialJacobian , itk::KernelTransform2::GetJacobianOfSpatialJacobian Compute the Jacobian of the spatial Jacobian of the transformation. The Jacobian of the spatial Jacobian is the derivative of the spatial Jacobian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) .","title":"function GetJacobianOfSpatialJacobian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getjacobianofspatialjacobian_1","text":"virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialJacobian , itk::KernelTransform2::GetJacobianOfSpatialJacobian Compute both the spatial Jacobian and the Jacobian of the spatial Jacobian of the transformation.","title":"function GetJacobianOfSpatialJacobian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getjacobianofspatialhessian","text":"virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialHessian , itk::KernelTransform2::GetJacobianOfSpatialHessian Compute the Jacobian of the spatial Hessian of the transformation. The Jacobian of the spatial Hessian is the derivative of the spatial Hessian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) .","title":"function GetJacobianOfSpatialHessian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-getjacobianofspatialhessian_1","text":"virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const = 0 Reimplemented by : itk::KernelTransform2::GetJacobianOfSpatialHessian , itk::KernelTransform2::GetJacobianOfSpatialHessian Compute both the spatial Hessian and the Jacobian of the spatial Hessian of the transformation.","title":"function GetJacobianOfSpatialHessian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-advancedtransform","text":"AdvancedTransform ()","title":"function AdvancedTransform"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-advancedtransform_1","text":"AdvancedTransform ( NumberOfParametersType numberOfParameters )","title":"function AdvancedTransform"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#function-advancedtransform_2","text":"inline virtual ~ AdvancedTransform ()","title":"function ~AdvancedTransform"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#variable-m_hasnonzerospatialhessian","text":"bool m_HasNonZeroSpatialHessian ;","title":"variable m_HasNonZeroSpatialHessian"},{"location":"api/Classes/classitk_1_1AdvancedTransform.html#variable-m_hasnonzerojacobianofspatialhessian","text":"bool m_HasNonZeroJacobianOfSpatialHessian ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_HasNonZeroJacobianOfSpatialHessian"},{"location":"api/Classes/classitk_1_1BSplineInterpolateImageFunctionWithDoubleCoefficents.html","text":"itk::BSplineInterpolateImageFunctionWithDoubleCoefficents More... Inherits from BSplineInterpolateImageFunction< TImageType, double, double > Detailed Description template < typename TImageType , typename TCoordRep = double > class itk :: BSplineInterpolateImageFunctionWithDoubleCoefficents ; Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::BSplineInterpolateImageFunctionWithDoubleCoefficents"},{"location":"api/Classes/classitk_1_1BSplineInterpolateImageFunctionWithDoubleCoefficents.html#itkbsplineinterpolateimagefunctionwithdoublecoefficents","text":"More... Inherits from BSplineInterpolateImageFunction< TImageType, double, double >","title":"itk::BSplineInterpolateImageFunctionWithDoubleCoefficents"},{"location":"api/Classes/classitk_1_1BSplineInterpolateImageFunctionWithDoubleCoefficents.html#detailed-description","text":"template < typename TImageType , typename TCoordRep = double > class itk :: BSplineInterpolateImageFunctionWithDoubleCoefficents ; Updated on 2023-10-24 at 22:16:01 +0000","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html","text":"itk::CompactlySupportedRBFSparseKernelTransform More... Inherits from itk::SparseKernelTransform< TScalarType, 3 > , Transform< TScalarType, NDimensions, NDimensions > Public Types Name typedef CompactlySupportedRBFSparseKernelTransform Self typedef SparseKernelTransform < TScalarType, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::PointsIterator PointsIterator Protected Types Name typedef Superclass::GMatrixType GMatrixType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( CompactlySupportedRBFSparseKernelTransform , SparseKernelTransform ) itkStaticConstMacro (SpaceDimension , unsigned int , Superclass::SpaceDimension ) void SetSigma (double sigma) virtual void ComputeJacobianWithRespectToParameters (const InputPointType & in, JacobianType & jacobian) const Protected Functions Name CompactlySupportedRBFSparseKernelTransform () virtual ~CompactlySupportedRBFSparseKernelTransform () virtual const GMatrixType & ComputeG (const InputVectorType & landmarkVector) const override virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const override Additional inherited members Public Types inherited from itk::SparseKernelTransform< TScalarType, 3 > Name typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType , NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef itk::VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > IMatrixType typedef Eigen::Triplet< TScalarType > TripletType typedef Eigen::SparseMatrix< TScalarType > LMatrixType typedef Eigen::SparseMatrix< TScalarType > KMatrixType typedef Eigen::SparseMatrix< TScalarType > PMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > YMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > WMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > DMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > AMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > BMatrixType typedef Eigen::Matrix< TScalarType, 1, NDimensions > RowMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > ColumnMatrixType Public Functions inherited from itk::SparseKernelTransform< TScalarType, 3 > Name itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) const virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual void SetIdentity () virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) const virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double ) Protected Functions inherited from itk::SparseKernelTransform< TScalarType, 3 > Name SparseKernelTransform () virtual ~SparseKernelTransform () void PrintSelf (std::ostream & os, Indent indent) const virtual const GMatrixType & ComputeReflexiveG (PointsIterator ) const void ComputeK () const void ComputeL () const void ComputeP () const void ComputeY () const void ComputeD () const void ReorganizeW (void ) const Public Attributes inherited from itk::SparseKernelTransform< TScalarType, 3 > Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks Protected Attributes inherited from itk::SparseKernelTransform< TScalarType, 3 > Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector GMatrixType m_GMatrix bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed IMatrixType m_I Detailed Description template < class TScalarType , unsigned int NDimensions = 3 > class itk :: CompactlySupportedRBFSparseKernelTransform ; Public Types Documentation typedef Self typedef CompactlySupportedRBFSparseKernelTransform itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: Self ; Standard class typedefs. typedef Superclass typedef SparseKernelTransform < TScalarType , NDimensions > itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: Superclass ; typedef Pointer typedef SmartPointer < Self > itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: Pointer ; typedef ConstPointer typedef SmartPointer < const Self > itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: ConstPointer ; typedef ScalarType typedef Superclass :: ScalarType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: ScalarType ; Scalar type. typedef ParametersType typedef Superclass :: ParametersType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: ParametersType ; Parameters type. typedef JacobianType typedef Superclass :: JacobianType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: JacobianType ; Jacobian Type typedef InputPointType typedef Superclass :: InputPointType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: InputPointType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited typedef OutputPointType typedef Superclass :: OutputPointType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: OutputPointType ; typedef InputVectorType typedef Superclass :: InputVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: InputVectorType ; typedef OutputVectorType typedef Superclass :: OutputVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: OutputVectorType ; typedef InputCovariantVectorType typedef Superclass :: InputCovariantVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: InputCovariantVectorType ; typedef OutputCovariantVectorType typedef Superclass :: OutputCovariantVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: OutputCovariantVectorType ; typedef PointsIterator typedef Superclass :: PointsIterator itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: PointsIterator ; Protected Types Documentation typedef GMatrixType typedef Superclass :: GMatrixType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: GMatrixType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited. Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) New macro for creation of through a Smart Pointer function itkTypeMacro itkTypeMacro ( CompactlySupportedRBFSparseKernelTransform , SparseKernelTransform ) Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( SpaceDimension , unsigned int , Superclass :: SpaceDimension ) Dimension of the domain space. function SetSigma inline void SetSigma ( double sigma ) function ComputeJacobianWithRespectToParameters virtual void ComputeJacobianWithRespectToParameters ( const InputPointType & in , JacobianType & jacobian ) const Reimplements : itk::SparseKernelTransform::ComputeJacobianWithRespectToParameters Protected Functions Documentation function CompactlySupportedRBFSparseKernelTransform inline CompactlySupportedRBFSparseKernelTransform () function ~CompactlySupportedRBFSparseKernelTransform inline virtual ~ CompactlySupportedRBFSparseKernelTransform () function ComputeG virtual const GMatrixType & ComputeG ( const InputVectorType & landmarkVector ) const override Reimplements : itk::SparseKernelTransform::ComputeG Compute G(x) This is essentially the kernel of the transform. By overriding this method, we can obtain (among others): Elastic body spline Thin plate spline Volume spline function ComputeDeformationContribution virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const override Reimplements : itk::SparseKernelTransform::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel funcion to the global deformation of the space Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::CompactlySupportedRBFSparseKernelTransform"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#itkcompactlysupportedrbfsparsekerneltransform","text":"More... Inherits from itk::SparseKernelTransform< TScalarType, 3 > , Transform< TScalarType, NDimensions, NDimensions >","title":"itk::CompactlySupportedRBFSparseKernelTransform"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#public-types","text":"Name typedef CompactlySupportedRBFSparseKernelTransform Self typedef SparseKernelTransform < TScalarType, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::PointsIterator PointsIterator","title":"Public Types"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#protected-types","text":"Name typedef Superclass::GMatrixType GMatrixType","title":"Protected Types"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( CompactlySupportedRBFSparseKernelTransform , SparseKernelTransform ) itkStaticConstMacro (SpaceDimension , unsigned int , Superclass::SpaceDimension ) void SetSigma (double sigma) virtual void ComputeJacobianWithRespectToParameters (const InputPointType & in, JacobianType & jacobian) const","title":"Public Functions"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#protected-functions","text":"Name CompactlySupportedRBFSparseKernelTransform () virtual ~CompactlySupportedRBFSparseKernelTransform () virtual const GMatrixType & ComputeG (const InputVectorType & landmarkVector) const override virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const override","title":"Protected Functions"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#additional-inherited-members","text":"Public Types inherited from itk::SparseKernelTransform< TScalarType, 3 > Name typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType , NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef itk::VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > IMatrixType typedef Eigen::Triplet< TScalarType > TripletType typedef Eigen::SparseMatrix< TScalarType > LMatrixType typedef Eigen::SparseMatrix< TScalarType > KMatrixType typedef Eigen::SparseMatrix< TScalarType > PMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > YMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > WMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > DMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > AMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > BMatrixType typedef Eigen::Matrix< TScalarType, 1, NDimensions > RowMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > ColumnMatrixType Public Functions inherited from itk::SparseKernelTransform< TScalarType, 3 > Name itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) const virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual void SetIdentity () virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) const virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double ) Protected Functions inherited from itk::SparseKernelTransform< TScalarType, 3 > Name SparseKernelTransform () virtual ~SparseKernelTransform () void PrintSelf (std::ostream & os, Indent indent) const virtual const GMatrixType & ComputeReflexiveG (PointsIterator ) const void ComputeK () const void ComputeL () const void ComputeP () const void ComputeY () const void ComputeD () const void ReorganizeW (void ) const Public Attributes inherited from itk::SparseKernelTransform< TScalarType, 3 > Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks Protected Attributes inherited from itk::SparseKernelTransform< TScalarType, 3 > Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector GMatrixType m_GMatrix bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed IMatrixType m_I","title":"Additional inherited members"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#detailed-description","text":"template < class TScalarType , unsigned int NDimensions = 3 > class itk :: CompactlySupportedRBFSparseKernelTransform ;","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-self","text":"typedef CompactlySupportedRBFSparseKernelTransform itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-superclass","text":"typedef SparseKernelTransform < TScalarType , NDimensions > itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-pointer","text":"typedef SmartPointer < Self > itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-constpointer","text":"typedef SmartPointer < const Self > itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-scalartype","text":"typedef Superclass :: ScalarType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: ScalarType ; Scalar type.","title":"typedef ScalarType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-parameterstype","text":"typedef Superclass :: ParametersType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: ParametersType ; Parameters type.","title":"typedef ParametersType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-jacobiantype","text":"typedef Superclass :: JacobianType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: JacobianType ; Jacobian Type","title":"typedef JacobianType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-inputpointtype","text":"typedef Superclass :: InputPointType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: InputPointType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited","title":"typedef InputPointType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-outputpointtype","text":"typedef Superclass :: OutputPointType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: OutputPointType ;","title":"typedef OutputPointType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-inputvectortype","text":"typedef Superclass :: InputVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: InputVectorType ;","title":"typedef InputVectorType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-outputvectortype","text":"typedef Superclass :: OutputVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: OutputVectorType ;","title":"typedef OutputVectorType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-inputcovariantvectortype","text":"typedef Superclass :: InputCovariantVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: InputCovariantVectorType ;","title":"typedef InputCovariantVectorType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-outputcovariantvectortype","text":"typedef Superclass :: OutputCovariantVectorType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: OutputCovariantVectorType ;","title":"typedef OutputCovariantVectorType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-pointsiterator","text":"typedef Superclass :: PointsIterator itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: PointsIterator ;","title":"typedef PointsIterator"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#protected-types-documentation","text":"","title":"Protected Types Documentation"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#typedef-gmatrixtype","text":"typedef Superclass :: GMatrixType itk :: CompactlySupportedRBFSparseKernelTransform < TScalarType , NDimensions >:: GMatrixType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited.","title":"typedef GMatrixType"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-itknewmacro","text":"itkNewMacro ( Self ) New macro for creation of through a Smart Pointer","title":"function itkNewMacro"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-itktypemacro","text":"itkTypeMacro ( CompactlySupportedRBFSparseKernelTransform , SparseKernelTransform ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( SpaceDimension , unsigned int , Superclass :: SpaceDimension ) Dimension of the domain space.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-setsigma","text":"inline void SetSigma ( double sigma )","title":"function SetSigma"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-computejacobianwithrespecttoparameters","text":"virtual void ComputeJacobianWithRespectToParameters ( const InputPointType & in , JacobianType & jacobian ) const Reimplements : itk::SparseKernelTransform::ComputeJacobianWithRespectToParameters","title":"function ComputeJacobianWithRespectToParameters"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-compactlysupportedrbfsparsekerneltransform","text":"inline CompactlySupportedRBFSparseKernelTransform ()","title":"function CompactlySupportedRBFSparseKernelTransform"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-compactlysupportedrbfsparsekerneltransform_1","text":"inline virtual ~ CompactlySupportedRBFSparseKernelTransform ()","title":"function ~CompactlySupportedRBFSparseKernelTransform"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-computeg","text":"virtual const GMatrixType & ComputeG ( const InputVectorType & landmarkVector ) const override Reimplements : itk::SparseKernelTransform::ComputeG Compute G(x) This is essentially the kernel of the transform. By overriding this method, we can obtain (among others): Elastic body spline Thin plate spline Volume spline","title":"function ComputeG"},{"location":"api/Classes/classitk_1_1CompactlySupportedRBFSparseKernelTransform.html#function-computedeformationcontribution","text":"virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const override Reimplements : itk::SparseKernelTransform::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel funcion to the global deformation of the space Updated on 2023-10-24 at 22:16:01 +0000","title":"function ComputeDeformationContribution"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html","text":"itk::Functor::MultiplyByConstant More... Public Functions Name MultiplyByConstant () ~MultiplyByConstant () bool operator!= (const MultiplyByConstant & other) const bool operator== (const MultiplyByConstant & other) const TOutput operator() (const TInput & A) const void SetConstant (TConstant ct) const TConstant & GetConstant () const Public Attributes Name TConstant m_Constant Detailed Description template < class TInput , class TConstant , class TOutput > class itk :: Functor :: MultiplyByConstant ; Public Functions Documentation function MultiplyByConstant inline MultiplyByConstant () function ~MultiplyByConstant inline ~ MultiplyByConstant () function operator!= inline bool operator != ( const MultiplyByConstant & other ) const function operator== inline bool operator == ( const MultiplyByConstant & other ) const function operator() inline TOutput operator ()( const TInput & A ) const function SetConstant inline void SetConstant ( TConstant ct ) function GetConstant inline const TConstant & GetConstant () const Public Attributes Documentation variable m_Constant TConstant m_Constant ; Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::Functor::MultiplyByConstant"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#itkfunctormultiplybyconstant","text":"More...","title":"itk::Functor::MultiplyByConstant"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#public-functions","text":"Name MultiplyByConstant () ~MultiplyByConstant () bool operator!= (const MultiplyByConstant & other) const bool operator== (const MultiplyByConstant & other) const TOutput operator() (const TInput & A) const void SetConstant (TConstant ct) const TConstant & GetConstant () const","title":"Public Functions"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#public-attributes","text":"Name TConstant m_Constant","title":"Public Attributes"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#detailed-description","text":"template < class TInput , class TConstant , class TOutput > class itk :: Functor :: MultiplyByConstant ;","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#function-multiplybyconstant","text":"inline MultiplyByConstant ()","title":"function MultiplyByConstant"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#function-multiplybyconstant_1","text":"inline ~ MultiplyByConstant ()","title":"function ~MultiplyByConstant"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#function-operator","text":"inline bool operator != ( const MultiplyByConstant & other ) const","title":"function operator!="},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#function-operator_1","text":"inline bool operator == ( const MultiplyByConstant & other ) const","title":"function operator=="},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#function-operator_2","text":"inline TOutput operator ()( const TInput & A ) const","title":"function operator()"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#function-setconstant","text":"inline void SetConstant ( TConstant ct )","title":"function SetConstant"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#function-getconstant","text":"inline const TConstant & GetConstant () const","title":"function GetConstant"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classitk_1_1Functor_1_1MultiplyByConstant.html#variable-m_constant","text":"TConstant m_Constant ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_Constant"},{"location":"api/Classes/classitk_1_1KernelTransform2.html","text":"itk::KernelTransform2 More... #include Inherits from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > , Transform< TScalarType, 3, 3 > Public Types Name typedef KernelTransform2 Self typedef AdvancedTransform < TScalarType, NDimensions, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType typedef Superclass::SpatialJacobianType SpatialJacobianType typedef Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType typedef Superclass::SpatialHessianType SpatialHessianType typedef Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType typedef Superclass::InternalMatrixType InternalMatrixType typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType, NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerIterator PointsIterator typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > IMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > GMatrixType typedef vnl_matrix< TScalarType > LMatrixType typedef vnl_matrix< TScalarType > KMatrixType typedef vnl_matrix< TScalarType > PMatrixType typedef vnl_matrix< TScalarType > YMatrixType typedef vnl_matrix< TScalarType > WMatrixType typedef vnl_matrix< TScalarType > DMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > AMatrixType typedef vnl_vector_fixed< TScalarType, NDimensions > BMatrixType typedef vnl_matrix_fixed< TScalarType, 1, NDimensions > RowMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, 1 > ColumnMatrixType Protected Types Name typedef vnl_svd< ScalarType > SVDDecompositionType typedef vnl_qr< ScalarType > QRDecompositionType Public Functions Name itkTypeMacro ( KernelTransform2 , AdvancedTransform ) itkNewMacro ( Self ) itkStaticConstMacro (SpaceDimension , unsigned int , NDimensions ) virtual NumberOfParametersType GetNumberOfParameters (void ) const itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) void ComputeLInverse (void ) virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual OutputVectorType TransformVector (const InputVectorType & ) const virtual OutputVnlVectorType TransformVector (const InputVnlVectorType & ) const virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType & ) const virtual void GetJacobian (const InputPointType & , JacobianType & , NonZeroJacobianIndicesType & ) const virtual void SetIdentity (void ) virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double ) virtual void SetAlpha (TScalarType itkNotUsedAlpha) virtual TScalarType GetAlpha (void ) const itkSetMacro (PoissonRatio , TScalarType ) virtual const TScalarType GetPoissonRatio (void ) const itkSetMacro (MatrixInversionMethod , std::string ) itkGetConstReferenceMacro (MatrixInversionMethod , std::string ) virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const Protected Functions Name KernelTransform2 () virtual ~KernelTransform2 () void PrintSelf (std::ostream & os, Indent indent) const virtual void ComputeG (const InputVectorType & landmarkVector, GMatrixType & GMatrix) const virtual void ComputeReflexiveG (PointsIterator , GMatrixType & GMatrix) const virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const void ComputeK (void ) void ComputeL (void ) void ComputeP (void ) void ComputeY (void ) void ComputeD (void ) void ReorganizeW (void ) Public Attributes Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks Protected Attributes Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed bool m_LMatrixDecompositionComputed SVDDecompositionType * m_LMatrixDecompositionSVD QRDecompositionType * m_LMatrixDecompositionQR IMatrixType m_I NonZeroJacobianIndicesType m_NonZeroJacobianIndices NonZeroJacobianIndicesType m_NonZeroJacobianIndicesTemp bool m_FastComputationPossible Additional inherited members Public Types inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name typedef Superclass::ParametersValueType ParametersValueType typedef Superclass::DerivativeType DerivativeType typedef Superclass::InverseTransformBaseType InverseTransformBaseType typedef Superclass::InverseTransformBasePointer InverseTransformBasePointer typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > TransformType typedef TransformType::Pointer TransformTypePointer typedef TransformType::ConstPointer TransformTypeConstPointer typedef OutputCovariantVectorType MovingImageGradientType typedef MovingImageGradientType::ValueType MovingImageGradientValueType Public Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices (void ) const itkGetConstMacro (HasNonZeroSpatialHessian , bool ) itkGetConstMacro (HasNonZeroJacobianOfSpatialHessian , bool ) virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType & ipp, const MovingImageGradientType & movingImageGradient, DerivativeType & imageJacobian, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void ComputeJacobianWithRespectToParameters (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void ComputeJacobianWithRespectToPosition (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const Protected Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name AdvancedTransform () AdvancedTransform (NumberOfParametersType numberOfParameters) virtual ~AdvancedTransform () Protected Attributes inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name bool m_HasNonZeroSpatialHessian bool m_HasNonZeroJacobianOfSpatialHessian Detailed Description template < class TScalarType , unsigned int NDimensions > class itk :: KernelTransform2 ; Intended to be a base class for elastic body spline and thin plate spline. This is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16, No. 3 June 1997. Notation closely follows their paper, so if you have it in front of you, this code will make a lot more sense. KernelTransform2 : Provides support for defining source and target landmarks Defines a number of data types used in the computations Defines the mathematical framework used to compute all splines, so that subclasses need only provide a kernel specific to that spline This formulation allows the stiffness of the spline to be adjusted, allowing the spline to vary from interpolating the landmarks to approximating the landmarks. This part of the formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996. This class was modified to support its use in the ITK registration framework by Rupert Brooks, McGill Centre for Intelligent Machines, Montreal, Canada March 2007. See the Insight Journal Paper by Brooks, R., Arbel, T. \"Improvements to the itk::KernelTransform and its subclasses.\" Modified to include it in elastix: style make it inherit from AdvancedTransform make it threadsafe, like was done in the itk as well. Support for matrix inversion by QR decomposition, instead of SVD. QR is much faster. Used in SetParameters() and SetFixedParameters() . Much faster Jacobian computation for some of the derived kernel transforms. Public Types Documentation typedef Self typedef KernelTransform2 itk :: KernelTransform2 < TScalarType , NDimensions >:: Self ; Standard class typedefs. typedef Superclass typedef AdvancedTransform < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: Superclass ; typedef Pointer typedef SmartPointer < Self > itk :: KernelTransform2 < TScalarType , NDimensions >:: Pointer ; typedef ConstPointer typedef SmartPointer < const Self > itk :: KernelTransform2 < TScalarType , NDimensions >:: ConstPointer ; typedef ScalarType typedef Superclass :: ScalarType itk :: KernelTransform2 < TScalarType , NDimensions >:: ScalarType ; Typedefs. typedef ParametersType typedef Superclass :: ParametersType itk :: KernelTransform2 < TScalarType , NDimensions >:: ParametersType ; typedef NumberOfParametersType typedef Superclass :: NumberOfParametersType itk :: KernelTransform2 < TScalarType , NDimensions >:: NumberOfParametersType ; typedef JacobianType typedef Superclass :: JacobianType itk :: KernelTransform2 < TScalarType , NDimensions >:: JacobianType ; typedef InputPointType typedef Superclass :: InputPointType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputPointType ; typedef OutputPointType typedef Superclass :: OutputPointType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputPointType ; typedef InputVectorType typedef Superclass :: InputVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputVectorType ; typedef OutputVectorType typedef Superclass :: OutputVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputVectorType ; typedef InputCovariantVectorType typedef Superclass :: InputCovariantVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputCovariantVectorType ; typedef OutputCovariantVectorType typedef Superclass :: OutputCovariantVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputCovariantVectorType ; typedef InputVnlVectorType typedef Superclass :: InputVnlVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputVnlVectorType ; typedef OutputVnlVectorType typedef Superclass :: OutputVnlVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputVnlVectorType ; typedef NonZeroJacobianIndicesType typedef Superclass :: NonZeroJacobianIndicesType itk :: KernelTransform2 < TScalarType , NDimensions >:: NonZeroJacobianIndicesType ; AdvancedTransform typedefs. typedef SpatialJacobianType typedef Superclass :: SpatialJacobianType itk :: KernelTransform2 < TScalarType , NDimensions >:: SpatialJacobianType ; typedef JacobianOfSpatialJacobianType typedef Superclass :: JacobianOfSpatialJacobianType itk :: KernelTransform2 < TScalarType , NDimensions >:: JacobianOfSpatialJacobianType ; typedef SpatialHessianType typedef Superclass :: SpatialHessianType itk :: KernelTransform2 < TScalarType , NDimensions >:: SpatialHessianType ; typedef JacobianOfSpatialHessianType typedef Superclass :: JacobianOfSpatialHessianType itk :: KernelTransform2 < TScalarType , NDimensions >:: JacobianOfSpatialHessianType ; typedef InternalMatrixType typedef Superclass :: InternalMatrixType itk :: KernelTransform2 < TScalarType , NDimensions >:: InternalMatrixType ; typedef PointSetTraitsType typedef DefaultStaticMeshTraits < TScalarType , NDimensions , NDimensions , TScalarType , TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: PointSetTraitsType ; PointList typedef. This type is used for maintaining lists of points, specifically, the source and target landmark lists. typedef PointSetType typedef PointSet < InputPointType , NDimensions , PointSetTraitsType > itk :: KernelTransform2 < TScalarType , NDimensions >:: PointSetType ; typedef PointSetPointer typedef PointSetType :: Pointer itk :: KernelTransform2 < TScalarType , NDimensions >:: PointSetPointer ; typedef PointsContainer typedef PointSetType :: PointsContainer itk :: KernelTransform2 < TScalarType , NDimensions >:: PointsContainer ; typedef PointsIterator typedef PointSetType :: PointsContainerIterator itk :: KernelTransform2 < TScalarType , NDimensions >:: PointsIterator ; typedef PointsConstIterator typedef PointSetType :: PointsContainerConstIterator itk :: KernelTransform2 < TScalarType , NDimensions >:: PointsConstIterator ; typedef VectorSetType typedef VectorContainer < unsigned long , InputVectorType > itk :: KernelTransform2 < TScalarType , NDimensions >:: VectorSetType ; VectorSet typedef. typedef VectorSetPointer typedef VectorSetType :: Pointer itk :: KernelTransform2 < TScalarType , NDimensions >:: VectorSetPointer ; typedef IMatrixType typedef vnl_matrix_fixed < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: IMatrixType ; 'I' (identity) matrix typedef. typedef GMatrixType typedef vnl_matrix_fixed < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: GMatrixType ; 'G' matrix typedef. typedef LMatrixType typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: LMatrixType ; 'L' matrix typedef. typedef KMatrixType typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: KMatrixType ; 'K' matrix typedef. typedef PMatrixType typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: PMatrixType ; 'P' matrix typedef. typedef YMatrixType typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: YMatrixType ; 'Y' matrix typedef. typedef WMatrixType typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: WMatrixType ; 'W' matrix typedef. typedef DMatrixType typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: DMatrixType ; 'D' matrix typedef. Deformation component typedef AMatrixType typedef vnl_matrix_fixed < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: AMatrixType ; 'A' matrix typedef. Rotational part of the Affine component typedef BMatrixType typedef vnl_vector_fixed < TScalarType , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: BMatrixType ; 'B' matrix typedef. Translational part of the Affine component typedef RowMatrixType typedef vnl_matrix_fixed < TScalarType , 1 , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: RowMatrixType ; Row matrix typedef. typedef ColumnMatrixType typedef vnl_matrix_fixed < TScalarType , NDimensions , 1 > itk :: KernelTransform2 < TScalarType , NDimensions >:: ColumnMatrixType ; Column matrix typedef. Protected Types Documentation typedef SVDDecompositionType typedef vnl_svd < ScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: SVDDecompositionType ; Decompositions, needed for the L matrix. These decompositions are cached for performance reasons during registration. During registration, in every iteration SetParameters() is called, which in turn calls ComputeWMatrix() . The L matrix is not changed however, and therefore it is not needed to redo the decomposition. typedef QRDecompositionType typedef vnl_qr < ScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: QRDecompositionType ; Public Functions Documentation function itkTypeMacro itkTypeMacro ( KernelTransform2 , AdvancedTransform ) Run-time type information (and related methods). function itkNewMacro itkNewMacro ( Self ) New macro for creation of through a Smart Pointer. function itkStaticConstMacro itkStaticConstMacro ( SpaceDimension , unsigned int , NDimensions ) Dimension of the domain space. function GetNumberOfParameters inline virtual NumberOfParametersType GetNumberOfParameters ( void ) const Return the number of parameters that completely define the Transform. function itkGetObjectMacro itkGetObjectMacro ( SourceLandmarks , PointSetType ) Get the source landmarks list, which we will denote \\( p \\) . function SetSourceLandmarks virtual void SetSourceLandmarks ( PointSetType * ) Set the source landmarks list. function itkGetObjectMacro itkGetObjectMacro ( TargetLandmarks , PointSetType ) Get the target landmarks list, which we will denote \\( q \\) . function SetTargetLandmarks virtual void SetTargetLandmarks ( PointSetType * ) Set the target landmarks list. function itkGetObjectMacro itkGetObjectMacro ( Displacements , VectorSetType ) Get the displacements list, which we will denote \\( d \\) , where \\( d_i = q_i - p_i \\) . function ComputeWMatrix void ComputeWMatrix ( void ) Compute W matrix. function ComputeLInverse void ComputeLInverse ( void ) Compute L matrix inverse. function TransformPoint virtual OutputPointType TransformPoint ( const InputPointType & thisPoint ) const Compute the position of point in the new space function TransformVector inline virtual OutputVectorType TransformVector ( const InputVectorType & ) const These vector transforms are not implemented for this transform. function TransformVector inline virtual OutputVnlVectorType TransformVector ( const InputVnlVectorType & ) const function TransformCovariantVector inline virtual OutputCovariantVectorType TransformCovariantVector ( const InputCovariantVectorType & ) const function GetJacobian virtual void GetJacobian ( const InputPointType & , JacobianType & , NonZeroJacobianIndicesType & ) const Reimplements : itk::AdvancedTransform::GetJacobian Compute the Jacobian of the transformation. function SetIdentity virtual void SetIdentity ( void ) Set the Transformation Parameters to be an identity transform. function SetParameters virtual void SetParameters ( const ParametersType & ) Set the Transformation Parameters and update the internal transformation. The parameters represent the source landmarks. Each landmark point is represented by NDimensions doubles. All the landmarks are concatenated to form one flat Array . function SetFixedParameters virtual void SetFixedParameters ( const ParametersType & ) Set Transform Fixed Parameters: To support the transform file writer this function was added to set the target landmarks similar to the SetParameters function setting the source landmarks function UpdateParameters virtual void UpdateParameters ( void ) Update the Parameters array from the landmarks coordinates. function GetParameters virtual const ParametersType & GetParameters ( void ) const Get the Transformation Parameters - Gets the source landmarks. function GetFixedParameters virtual const ParametersType & GetFixedParameters ( void ) const Get Transform Fixed Parameters - Gets the target landmarks. function SetStiffness inline virtual void SetStiffness ( double stiffness ) Stiffness of the spline. A stiffness of zero results in the standard interpolating spline. A non-zero stiffness allows the spline to approximate rather than interpolate the landmarks. Stiffness values are usually rather small, typically in the range of 0.001 to 0.1. The approximating spline formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996. function itkGetMacro itkGetMacro ( Stiffness , double ) function SetAlpha inline virtual void SetAlpha ( TScalarType itkNotUsedAlpha ) This method makes only sense for the ElasticBody splines. Declare here, so that you can always call it if you don't know the type of kernel beforehand. It will be overridden in the ElasticBodySplineKernelTransform and in the ElasticBodyReciprocalSplineKernelTransform. function GetAlpha inline virtual TScalarType GetAlpha ( void ) const function itkSetMacro itkSetMacro ( PoissonRatio , TScalarType ) This method makes only sense for the ElasticBody splines. Declare here, so that you can always call it if you don't know the type of kernel beforehand. It will be overridden in the ElasticBodySplineKernelTransform and in the ElasticBodyReciprocalSplineKernelTransform. function GetPoissonRatio inline virtual const TScalarType GetPoissonRatio ( void ) const function itkSetMacro itkSetMacro ( MatrixInversionMethod , std :: string ) Matrix inversion by SVD or QR decomposition. function itkGetConstReferenceMacro itkGetConstReferenceMacro ( MatrixInversionMethod , std :: string ) function GetSpatialJacobian inline virtual void GetSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj ) const Reimplements : itk::AdvancedTransform::GetSpatialJacobian Must be provided. function GetSpatialHessian inline virtual void GetSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh ) const Reimplements : itk::AdvancedTransform::GetSpatialHessian Compute the spatial Hessian of the transformation. The spatial Hessian is the vector of matrices of partial second order derivatives of the transformation components with respect to the spatial position \\(x\\) , evaluated at a point \\(p\\) . sH=\\left[ \\begin{array}{cc} \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{1}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) \\\\ \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{2} \\partial x_{2}}(p) \\\\ \\end{array}\\right], with i the i-th component of the transformation. function GetJacobianOfSpatialJacobian inline virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialJacobian Compute the Jacobian of the spatial Jacobian of the transformation. The Jacobian of the spatial Jacobian is the derivative of the spatial Jacobian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) . function GetJacobianOfSpatialJacobian inline virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialJacobian Compute both the spatial Jacobian and the Jacobian of the spatial Jacobian of the transformation. function GetJacobianOfSpatialHessian inline virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialHessian Compute the Jacobian of the spatial Hessian of the transformation. The Jacobian of the spatial Hessian is the derivative of the spatial Hessian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) . function GetJacobianOfSpatialHessian inline virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialHessian Compute both the spatial Hessian and the Jacobian of the spatial Hessian of the transformation. Protected Functions Documentation function KernelTransform2 KernelTransform2 () function ~KernelTransform2 virtual ~ KernelTransform2 () function PrintSelf void PrintSelf ( std :: ostream & os , Indent indent ) const function ComputeG virtual void ComputeG ( const InputVectorType & landmarkVector , GMatrixType & GMatrix ) const Reimplemented by : itk::ThinPlateSplineKernelTransform2::ComputeG Compute G(x) This is essentially the kernel of the transform. By overriding this method, we can obtain (among others): Elastic body spline Thin plate spline Volume spline. function ComputeReflexiveG virtual void ComputeReflexiveG ( PointsIterator , GMatrixType & GMatrix ) const Compute a G(x) for a point to itself (i.e. for the block diagonal elements of the matrix K. Parameter indicates for which landmark the reflexive G is to be computed. The default implementation for the reflexive contribution is a diagonal matrix where the diagonal elements are the stiffness of the spline. function ComputeDeformationContribution virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const Reimplemented by : itk::ThinPlateSplineKernelTransform2::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel function to the global deformation of the space. function ComputeK void ComputeK ( void ) Compute K matrix. function ComputeL void ComputeL ( void ) Compute L matrix. function ComputeP void ComputeP ( void ) Compute P matrix. function ComputeY void ComputeY ( void ) Compute Y matrix. function ComputeD void ComputeD ( void ) Compute displacements \\( q_i - p_i \\) . function ReorganizeW void ReorganizeW ( void ) Warning : This method release the memory of the W Matrix. Reorganize the components of W into D (deformable), A (rotation part of affine) and B (translational part of affine ) components. Public Attributes Documentation variable m_SourceLandmarks PointSetPointer m_SourceLandmarks ; The list of source landmarks, denoted 'p'. variable m_TargetLandmarks PointSetPointer m_TargetLandmarks ; The list of target landmarks, denoted 'q'. Protected Attributes Documentation variable m_Stiffness double m_Stiffness ; Stiffness parameter. variable m_Displacements VectorSetPointer m_Displacements ; The list of displacements. d[i] = q[i] - p[i]; variable m_LMatrix LMatrixType m_LMatrix ; The L matrix. variable m_LMatrixInverse LMatrixType m_LMatrixInverse ; The inverse of L, which we also cache. variable m_KMatrix KMatrixType m_KMatrix ; The K matrix. variable m_PMatrix PMatrixType m_PMatrix ; The P matrix. variable m_YMatrix YMatrixType m_YMatrix ; The Y matrix. variable m_WMatrix WMatrixType m_WMatrix ; The W matrix. variable m_DMatrix DMatrixType m_DMatrix ; The Deformation matrix. This is an auxiliary matrix that will hold the Deformation (non-affine) part of the transform. Those are the coefficients that will multiply the Kernel function. variable m_AMatrix AMatrixType m_AMatrix ; Rotational/Shearing part of the Affine component of the Transformation. variable m_BVector BMatrixType m_BVector ; Translational part of the Affine component of the Transformation. variable m_WMatrixComputed bool m_WMatrixComputed ; The G matrix. It used to be mutable because m_GMatrix was made an ivar only to avoid copying the matrix at return time but this is not necessary. SK: we don't need this matrix anymore as a member. Has the W matrix been computed? variable m_LMatrixComputed bool m_LMatrixComputed ; Has the L matrix been computed? variable m_LInverseComputed bool m_LInverseComputed ; Has the L inverse matrix been computed? variable m_LMatrixDecompositionComputed bool m_LMatrixDecompositionComputed ; Has the L matrix decomposition been computed? variable m_LMatrixDecompositionSVD SVDDecompositionType * m_LMatrixDecompositionSVD ; variable m_LMatrixDecompositionQR QRDecompositionType * m_LMatrixDecompositionQR ; variable m_I IMatrixType m_I ; Identity matrix. variable m_NonZeroJacobianIndices NonZeroJacobianIndicesType m_NonZeroJacobianIndices ; Precomputed nonzero Jacobian indices (simply all params) variable m_NonZeroJacobianIndicesTemp NonZeroJacobianIndicesType m_NonZeroJacobianIndicesTemp ; for old GetJacobian() method: variable m_FastComputationPossible bool m_FastComputationPossible ; The Jacobian can be computed much faster for some of the derived kerbel transforms, most notably the TPS. Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::KernelTransform2"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#itkkerneltransform2","text":"More... #include Inherits from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > , Transform< TScalarType, 3, 3 >","title":"itk::KernelTransform2"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#public-types","text":"Name typedef KernelTransform2 Self typedef AdvancedTransform < TScalarType, NDimensions, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType typedef Superclass::SpatialJacobianType SpatialJacobianType typedef Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType typedef Superclass::SpatialHessianType SpatialHessianType typedef Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType typedef Superclass::InternalMatrixType InternalMatrixType typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType, NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerIterator PointsIterator typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > IMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > GMatrixType typedef vnl_matrix< TScalarType > LMatrixType typedef vnl_matrix< TScalarType > KMatrixType typedef vnl_matrix< TScalarType > PMatrixType typedef vnl_matrix< TScalarType > YMatrixType typedef vnl_matrix< TScalarType > WMatrixType typedef vnl_matrix< TScalarType > DMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > AMatrixType typedef vnl_vector_fixed< TScalarType, NDimensions > BMatrixType typedef vnl_matrix_fixed< TScalarType, 1, NDimensions > RowMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, 1 > ColumnMatrixType","title":"Public Types"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#protected-types","text":"Name typedef vnl_svd< ScalarType > SVDDecompositionType typedef vnl_qr< ScalarType > QRDecompositionType","title":"Protected Types"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#public-functions","text":"Name itkTypeMacro ( KernelTransform2 , AdvancedTransform ) itkNewMacro ( Self ) itkStaticConstMacro (SpaceDimension , unsigned int , NDimensions ) virtual NumberOfParametersType GetNumberOfParameters (void ) const itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) void ComputeLInverse (void ) virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual OutputVectorType TransformVector (const InputVectorType & ) const virtual OutputVnlVectorType TransformVector (const InputVnlVectorType & ) const virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType & ) const virtual void GetJacobian (const InputPointType & , JacobianType & , NonZeroJacobianIndicesType & ) const virtual void SetIdentity (void ) virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double ) virtual void SetAlpha (TScalarType itkNotUsedAlpha) virtual TScalarType GetAlpha (void ) const itkSetMacro (PoissonRatio , TScalarType ) virtual const TScalarType GetPoissonRatio (void ) const itkSetMacro (MatrixInversionMethod , std::string ) itkGetConstReferenceMacro (MatrixInversionMethod , std::string ) virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const","title":"Public Functions"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#protected-functions","text":"Name KernelTransform2 () virtual ~KernelTransform2 () void PrintSelf (std::ostream & os, Indent indent) const virtual void ComputeG (const InputVectorType & landmarkVector, GMatrixType & GMatrix) const virtual void ComputeReflexiveG (PointsIterator , GMatrixType & GMatrix) const virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const void ComputeK (void ) void ComputeL (void ) void ComputeP (void ) void ComputeY (void ) void ComputeD (void ) void ReorganizeW (void )","title":"Protected Functions"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#public-attributes","text":"Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks","title":"Public Attributes"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#protected-attributes","text":"Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed bool m_LMatrixDecompositionComputed SVDDecompositionType * m_LMatrixDecompositionSVD QRDecompositionType * m_LMatrixDecompositionQR IMatrixType m_I NonZeroJacobianIndicesType m_NonZeroJacobianIndices NonZeroJacobianIndicesType m_NonZeroJacobianIndicesTemp bool m_FastComputationPossible","title":"Protected Attributes"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#additional-inherited-members","text":"Public Types inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name typedef Superclass::ParametersValueType ParametersValueType typedef Superclass::DerivativeType DerivativeType typedef Superclass::InverseTransformBaseType InverseTransformBaseType typedef Superclass::InverseTransformBasePointer InverseTransformBasePointer typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > TransformType typedef TransformType::Pointer TransformTypePointer typedef TransformType::ConstPointer TransformTypeConstPointer typedef OutputCovariantVectorType MovingImageGradientType typedef MovingImageGradientType::ValueType MovingImageGradientValueType Public Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices (void ) const itkGetConstMacro (HasNonZeroSpatialHessian , bool ) itkGetConstMacro (HasNonZeroJacobianOfSpatialHessian , bool ) virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType & ipp, const MovingImageGradientType & movingImageGradient, DerivativeType & imageJacobian, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void ComputeJacobianWithRespectToParameters (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void ComputeJacobianWithRespectToPosition (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const Protected Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name AdvancedTransform () AdvancedTransform (NumberOfParametersType numberOfParameters) virtual ~AdvancedTransform () Protected Attributes inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name bool m_HasNonZeroSpatialHessian bool m_HasNonZeroJacobianOfSpatialHessian","title":"Additional inherited members"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#detailed-description","text":"template < class TScalarType , unsigned int NDimensions > class itk :: KernelTransform2 ; Intended to be a base class for elastic body spline and thin plate spline. This is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16, No. 3 June 1997. Notation closely follows their paper, so if you have it in front of you, this code will make a lot more sense. KernelTransform2 : Provides support for defining source and target landmarks Defines a number of data types used in the computations Defines the mathematical framework used to compute all splines, so that subclasses need only provide a kernel specific to that spline This formulation allows the stiffness of the spline to be adjusted, allowing the spline to vary from interpolating the landmarks to approximating the landmarks. This part of the formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996. This class was modified to support its use in the ITK registration framework by Rupert Brooks, McGill Centre for Intelligent Machines, Montreal, Canada March 2007. See the Insight Journal Paper by Brooks, R., Arbel, T. \"Improvements to the itk::KernelTransform and its subclasses.\" Modified to include it in elastix: style make it inherit from AdvancedTransform make it threadsafe, like was done in the itk as well. Support for matrix inversion by QR decomposition, instead of SVD. QR is much faster. Used in SetParameters() and SetFixedParameters() . Much faster Jacobian computation for some of the derived kernel transforms.","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-self","text":"typedef KernelTransform2 itk :: KernelTransform2 < TScalarType , NDimensions >:: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-superclass","text":"typedef AdvancedTransform < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pointer","text":"typedef SmartPointer < Self > itk :: KernelTransform2 < TScalarType , NDimensions >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-constpointer","text":"typedef SmartPointer < const Self > itk :: KernelTransform2 < TScalarType , NDimensions >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-scalartype","text":"typedef Superclass :: ScalarType itk :: KernelTransform2 < TScalarType , NDimensions >:: ScalarType ; Typedefs.","title":"typedef ScalarType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-parameterstype","text":"typedef Superclass :: ParametersType itk :: KernelTransform2 < TScalarType , NDimensions >:: ParametersType ;","title":"typedef ParametersType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-numberofparameterstype","text":"typedef Superclass :: NumberOfParametersType itk :: KernelTransform2 < TScalarType , NDimensions >:: NumberOfParametersType ;","title":"typedef NumberOfParametersType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-jacobiantype","text":"typedef Superclass :: JacobianType itk :: KernelTransform2 < TScalarType , NDimensions >:: JacobianType ;","title":"typedef JacobianType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-inputpointtype","text":"typedef Superclass :: InputPointType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputPointType ;","title":"typedef InputPointType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-outputpointtype","text":"typedef Superclass :: OutputPointType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputPointType ;","title":"typedef OutputPointType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-inputvectortype","text":"typedef Superclass :: InputVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputVectorType ;","title":"typedef InputVectorType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-outputvectortype","text":"typedef Superclass :: OutputVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputVectorType ;","title":"typedef OutputVectorType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-inputcovariantvectortype","text":"typedef Superclass :: InputCovariantVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputCovariantVectorType ;","title":"typedef InputCovariantVectorType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-outputcovariantvectortype","text":"typedef Superclass :: OutputCovariantVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputCovariantVectorType ;","title":"typedef OutputCovariantVectorType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-inputvnlvectortype","text":"typedef Superclass :: InputVnlVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: InputVnlVectorType ;","title":"typedef InputVnlVectorType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-outputvnlvectortype","text":"typedef Superclass :: OutputVnlVectorType itk :: KernelTransform2 < TScalarType , NDimensions >:: OutputVnlVectorType ;","title":"typedef OutputVnlVectorType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-nonzerojacobianindicestype","text":"typedef Superclass :: NonZeroJacobianIndicesType itk :: KernelTransform2 < TScalarType , NDimensions >:: NonZeroJacobianIndicesType ; AdvancedTransform typedefs.","title":"typedef NonZeroJacobianIndicesType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-spatialjacobiantype","text":"typedef Superclass :: SpatialJacobianType itk :: KernelTransform2 < TScalarType , NDimensions >:: SpatialJacobianType ;","title":"typedef SpatialJacobianType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-jacobianofspatialjacobiantype","text":"typedef Superclass :: JacobianOfSpatialJacobianType itk :: KernelTransform2 < TScalarType , NDimensions >:: JacobianOfSpatialJacobianType ;","title":"typedef JacobianOfSpatialJacobianType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-spatialhessiantype","text":"typedef Superclass :: SpatialHessianType itk :: KernelTransform2 < TScalarType , NDimensions >:: SpatialHessianType ;","title":"typedef SpatialHessianType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-jacobianofspatialhessiantype","text":"typedef Superclass :: JacobianOfSpatialHessianType itk :: KernelTransform2 < TScalarType , NDimensions >:: JacobianOfSpatialHessianType ;","title":"typedef JacobianOfSpatialHessianType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-internalmatrixtype","text":"typedef Superclass :: InternalMatrixType itk :: KernelTransform2 < TScalarType , NDimensions >:: InternalMatrixType ;","title":"typedef InternalMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pointsettraitstype","text":"typedef DefaultStaticMeshTraits < TScalarType , NDimensions , NDimensions , TScalarType , TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: PointSetTraitsType ; PointList typedef. This type is used for maintaining lists of points, specifically, the source and target landmark lists.","title":"typedef PointSetTraitsType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pointsettype","text":"typedef PointSet < InputPointType , NDimensions , PointSetTraitsType > itk :: KernelTransform2 < TScalarType , NDimensions >:: PointSetType ;","title":"typedef PointSetType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pointsetpointer","text":"typedef PointSetType :: Pointer itk :: KernelTransform2 < TScalarType , NDimensions >:: PointSetPointer ;","title":"typedef PointSetPointer"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pointscontainer","text":"typedef PointSetType :: PointsContainer itk :: KernelTransform2 < TScalarType , NDimensions >:: PointsContainer ;","title":"typedef PointsContainer"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pointsiterator","text":"typedef PointSetType :: PointsContainerIterator itk :: KernelTransform2 < TScalarType , NDimensions >:: PointsIterator ;","title":"typedef PointsIterator"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pointsconstiterator","text":"typedef PointSetType :: PointsContainerConstIterator itk :: KernelTransform2 < TScalarType , NDimensions >:: PointsConstIterator ;","title":"typedef PointsConstIterator"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-vectorsettype","text":"typedef VectorContainer < unsigned long , InputVectorType > itk :: KernelTransform2 < TScalarType , NDimensions >:: VectorSetType ; VectorSet typedef.","title":"typedef VectorSetType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-vectorsetpointer","text":"typedef VectorSetType :: Pointer itk :: KernelTransform2 < TScalarType , NDimensions >:: VectorSetPointer ;","title":"typedef VectorSetPointer"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-imatrixtype","text":"typedef vnl_matrix_fixed < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: IMatrixType ; 'I' (identity) matrix typedef.","title":"typedef IMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-gmatrixtype","text":"typedef vnl_matrix_fixed < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: GMatrixType ; 'G' matrix typedef.","title":"typedef GMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-lmatrixtype","text":"typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: LMatrixType ; 'L' matrix typedef.","title":"typedef LMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-kmatrixtype","text":"typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: KMatrixType ; 'K' matrix typedef.","title":"typedef KMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-pmatrixtype","text":"typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: PMatrixType ; 'P' matrix typedef.","title":"typedef PMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-ymatrixtype","text":"typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: YMatrixType ; 'Y' matrix typedef.","title":"typedef YMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-wmatrixtype","text":"typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: WMatrixType ; 'W' matrix typedef.","title":"typedef WMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-dmatrixtype","text":"typedef vnl_matrix < TScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: DMatrixType ; 'D' matrix typedef. Deformation component","title":"typedef DMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-amatrixtype","text":"typedef vnl_matrix_fixed < TScalarType , NDimensions , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: AMatrixType ; 'A' matrix typedef. Rotational part of the Affine component","title":"typedef AMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-bmatrixtype","text":"typedef vnl_vector_fixed < TScalarType , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: BMatrixType ; 'B' matrix typedef. Translational part of the Affine component","title":"typedef BMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-rowmatrixtype","text":"typedef vnl_matrix_fixed < TScalarType , 1 , NDimensions > itk :: KernelTransform2 < TScalarType , NDimensions >:: RowMatrixType ; Row matrix typedef.","title":"typedef RowMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-columnmatrixtype","text":"typedef vnl_matrix_fixed < TScalarType , NDimensions , 1 > itk :: KernelTransform2 < TScalarType , NDimensions >:: ColumnMatrixType ; Column matrix typedef.","title":"typedef ColumnMatrixType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#protected-types-documentation","text":"","title":"Protected Types Documentation"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-svddecompositiontype","text":"typedef vnl_svd < ScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: SVDDecompositionType ; Decompositions, needed for the L matrix. These decompositions are cached for performance reasons during registration. During registration, in every iteration SetParameters() is called, which in turn calls ComputeWMatrix() . The L matrix is not changed however, and therefore it is not needed to redo the decomposition.","title":"typedef SVDDecompositionType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#typedef-qrdecompositiontype","text":"typedef vnl_qr < ScalarType > itk :: KernelTransform2 < TScalarType , NDimensions >:: QRDecompositionType ;","title":"typedef QRDecompositionType"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itktypemacro","text":"itkTypeMacro ( KernelTransform2 , AdvancedTransform ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itknewmacro","text":"itkNewMacro ( Self ) New macro for creation of through a Smart Pointer.","title":"function itkNewMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( SpaceDimension , unsigned int , NDimensions ) Dimension of the domain space.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getnumberofparameters","text":"inline virtual NumberOfParametersType GetNumberOfParameters ( void ) const Return the number of parameters that completely define the Transform.","title":"function GetNumberOfParameters"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itkgetobjectmacro","text":"itkGetObjectMacro ( SourceLandmarks , PointSetType ) Get the source landmarks list, which we will denote \\( p \\) .","title":"function itkGetObjectMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-setsourcelandmarks","text":"virtual void SetSourceLandmarks ( PointSetType * ) Set the source landmarks list.","title":"function SetSourceLandmarks"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itkgetobjectmacro_1","text":"itkGetObjectMacro ( TargetLandmarks , PointSetType ) Get the target landmarks list, which we will denote \\( q \\) .","title":"function itkGetObjectMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-settargetlandmarks","text":"virtual void SetTargetLandmarks ( PointSetType * ) Set the target landmarks list.","title":"function SetTargetLandmarks"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itkgetobjectmacro_2","text":"itkGetObjectMacro ( Displacements , VectorSetType ) Get the displacements list, which we will denote \\( d \\) , where \\( d_i = q_i - p_i \\) .","title":"function itkGetObjectMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computewmatrix","text":"void ComputeWMatrix ( void ) Compute W matrix.","title":"function ComputeWMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computelinverse","text":"void ComputeLInverse ( void ) Compute L matrix inverse.","title":"function ComputeLInverse"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-transformpoint","text":"virtual OutputPointType TransformPoint ( const InputPointType & thisPoint ) const Compute the position of point in the new space","title":"function TransformPoint"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-transformvector","text":"inline virtual OutputVectorType TransformVector ( const InputVectorType & ) const These vector transforms are not implemented for this transform.","title":"function TransformVector"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-transformvector_1","text":"inline virtual OutputVnlVectorType TransformVector ( const InputVnlVectorType & ) const","title":"function TransformVector"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-transformcovariantvector","text":"inline virtual OutputCovariantVectorType TransformCovariantVector ( const InputCovariantVectorType & ) const","title":"function TransformCovariantVector"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getjacobian","text":"virtual void GetJacobian ( const InputPointType & , JacobianType & , NonZeroJacobianIndicesType & ) const Reimplements : itk::AdvancedTransform::GetJacobian Compute the Jacobian of the transformation.","title":"function GetJacobian"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-setidentity","text":"virtual void SetIdentity ( void ) Set the Transformation Parameters to be an identity transform.","title":"function SetIdentity"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-setparameters","text":"virtual void SetParameters ( const ParametersType & ) Set the Transformation Parameters and update the internal transformation. The parameters represent the source landmarks. Each landmark point is represented by NDimensions doubles. All the landmarks are concatenated to form one flat Array .","title":"function SetParameters"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-setfixedparameters","text":"virtual void SetFixedParameters ( const ParametersType & ) Set Transform Fixed Parameters: To support the transform file writer this function was added to set the target landmarks similar to the SetParameters function setting the source landmarks","title":"function SetFixedParameters"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-updateparameters","text":"virtual void UpdateParameters ( void ) Update the Parameters array from the landmarks coordinates.","title":"function UpdateParameters"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getparameters","text":"virtual const ParametersType & GetParameters ( void ) const Get the Transformation Parameters - Gets the source landmarks.","title":"function GetParameters"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getfixedparameters","text":"virtual const ParametersType & GetFixedParameters ( void ) const Get Transform Fixed Parameters - Gets the target landmarks.","title":"function GetFixedParameters"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-setstiffness","text":"inline virtual void SetStiffness ( double stiffness ) Stiffness of the spline. A stiffness of zero results in the standard interpolating spline. A non-zero stiffness allows the spline to approximate rather than interpolate the landmarks. Stiffness values are usually rather small, typically in the range of 0.001 to 0.1. The approximating spline formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996.","title":"function SetStiffness"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itkgetmacro","text":"itkGetMacro ( Stiffness , double )","title":"function itkGetMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-setalpha","text":"inline virtual void SetAlpha ( TScalarType itkNotUsedAlpha ) This method makes only sense for the ElasticBody splines. Declare here, so that you can always call it if you don't know the type of kernel beforehand. It will be overridden in the ElasticBodySplineKernelTransform and in the ElasticBodyReciprocalSplineKernelTransform.","title":"function SetAlpha"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getalpha","text":"inline virtual TScalarType GetAlpha ( void ) const","title":"function GetAlpha"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itksetmacro","text":"itkSetMacro ( PoissonRatio , TScalarType ) This method makes only sense for the ElasticBody splines. Declare here, so that you can always call it if you don't know the type of kernel beforehand. It will be overridden in the ElasticBodySplineKernelTransform and in the ElasticBodyReciprocalSplineKernelTransform.","title":"function itkSetMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getpoissonratio","text":"inline virtual const TScalarType GetPoissonRatio ( void ) const","title":"function GetPoissonRatio"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itksetmacro_1","text":"itkSetMacro ( MatrixInversionMethod , std :: string ) Matrix inversion by SVD or QR decomposition.","title":"function itkSetMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-itkgetconstreferencemacro","text":"itkGetConstReferenceMacro ( MatrixInversionMethod , std :: string )","title":"function itkGetConstReferenceMacro"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getspatialjacobian","text":"inline virtual void GetSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj ) const Reimplements : itk::AdvancedTransform::GetSpatialJacobian Must be provided.","title":"function GetSpatialJacobian"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getspatialhessian","text":"inline virtual void GetSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh ) const Reimplements : itk::AdvancedTransform::GetSpatialHessian Compute the spatial Hessian of the transformation. The spatial Hessian is the vector of matrices of partial second order derivatives of the transformation components with respect to the spatial position \\(x\\) , evaluated at a point \\(p\\) . sH=\\left[ \\begin{array}{cc} \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{1}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) \\\\ \\frac{\\partial^2 T_{i}}{\\partial x_{1} \\partial x_{2}}(p) & \\frac{\\partial^2 T_{i}}{\\partial x_{2} \\partial x_{2}}(p) \\\\ \\end{array}\\right], with i the i-th component of the transformation.","title":"function GetSpatialHessian"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getjacobianofspatialjacobian","text":"inline virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialJacobian Compute the Jacobian of the spatial Jacobian of the transformation. The Jacobian of the spatial Jacobian is the derivative of the spatial Jacobian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) .","title":"function GetJacobianOfSpatialJacobian"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getjacobianofspatialjacobian_1","text":"inline virtual void GetJacobianOfSpatialJacobian ( const InputPointType & ipp , SpatialJacobianType & sj , JacobianOfSpatialJacobianType & jsj , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialJacobian Compute both the spatial Jacobian and the Jacobian of the spatial Jacobian of the transformation.","title":"function GetJacobianOfSpatialJacobian"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getjacobianofspatialhessian","text":"inline virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialHessian Compute the Jacobian of the spatial Hessian of the transformation. The Jacobian of the spatial Hessian is the derivative of the spatial Hessian to the transformation parameters \\(\\mu\\) , evaluated at a point \\(p\\) .","title":"function GetJacobianOfSpatialHessian"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-getjacobianofspatialhessian_1","text":"inline virtual void GetJacobianOfSpatialHessian ( const InputPointType & ipp , SpatialHessianType & sh , JacobianOfSpatialHessianType & jsh , NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const Reimplements : itk::AdvancedTransform::GetJacobianOfSpatialHessian Compute both the spatial Hessian and the Jacobian of the spatial Hessian of the transformation.","title":"function GetJacobianOfSpatialHessian"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-kerneltransform2","text":"KernelTransform2 ()","title":"function KernelTransform2"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-kerneltransform2_1","text":"virtual ~ KernelTransform2 ()","title":"function ~KernelTransform2"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-printself","text":"void PrintSelf ( std :: ostream & os , Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computeg","text":"virtual void ComputeG ( const InputVectorType & landmarkVector , GMatrixType & GMatrix ) const Reimplemented by : itk::ThinPlateSplineKernelTransform2::ComputeG Compute G(x) This is essentially the kernel of the transform. By overriding this method, we can obtain (among others): Elastic body spline Thin plate spline Volume spline.","title":"function ComputeG"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computereflexiveg","text":"virtual void ComputeReflexiveG ( PointsIterator , GMatrixType & GMatrix ) const Compute a G(x) for a point to itself (i.e. for the block diagonal elements of the matrix K. Parameter indicates for which landmark the reflexive G is to be computed. The default implementation for the reflexive contribution is a diagonal matrix where the diagonal elements are the stiffness of the spline.","title":"function ComputeReflexiveG"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computedeformationcontribution","text":"virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const Reimplemented by : itk::ThinPlateSplineKernelTransform2::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel function to the global deformation of the space.","title":"function ComputeDeformationContribution"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computek","text":"void ComputeK ( void ) Compute K matrix.","title":"function ComputeK"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computel","text":"void ComputeL ( void ) Compute L matrix.","title":"function ComputeL"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computep","text":"void ComputeP ( void ) Compute P matrix.","title":"function ComputeP"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computey","text":"void ComputeY ( void ) Compute Y matrix.","title":"function ComputeY"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-computed","text":"void ComputeD ( void ) Compute displacements \\( q_i - p_i \\) .","title":"function ComputeD"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#function-reorganizew","text":"void ReorganizeW ( void ) Warning : This method release the memory of the W Matrix. Reorganize the components of W into D (deformable), A (rotation part of affine) and B (translational part of affine ) components.","title":"function ReorganizeW"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_sourcelandmarks","text":"PointSetPointer m_SourceLandmarks ; The list of source landmarks, denoted 'p'.","title":"variable m_SourceLandmarks"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_targetlandmarks","text":"PointSetPointer m_TargetLandmarks ; The list of target landmarks, denoted 'q'.","title":"variable m_TargetLandmarks"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_stiffness","text":"double m_Stiffness ; Stiffness parameter.","title":"variable m_Stiffness"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_displacements","text":"VectorSetPointer m_Displacements ; The list of displacements. d[i] = q[i] - p[i];","title":"variable m_Displacements"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_lmatrix","text":"LMatrixType m_LMatrix ; The L matrix.","title":"variable m_LMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_lmatrixinverse","text":"LMatrixType m_LMatrixInverse ; The inverse of L, which we also cache.","title":"variable m_LMatrixInverse"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_kmatrix","text":"KMatrixType m_KMatrix ; The K matrix.","title":"variable m_KMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_pmatrix","text":"PMatrixType m_PMatrix ; The P matrix.","title":"variable m_PMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_ymatrix","text":"YMatrixType m_YMatrix ; The Y matrix.","title":"variable m_YMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_wmatrix","text":"WMatrixType m_WMatrix ; The W matrix.","title":"variable m_WMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_dmatrix","text":"DMatrixType m_DMatrix ; The Deformation matrix. This is an auxiliary matrix that will hold the Deformation (non-affine) part of the transform. Those are the coefficients that will multiply the Kernel function.","title":"variable m_DMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_amatrix","text":"AMatrixType m_AMatrix ; Rotational/Shearing part of the Affine component of the Transformation.","title":"variable m_AMatrix"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_bvector","text":"BMatrixType m_BVector ; Translational part of the Affine component of the Transformation.","title":"variable m_BVector"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_wmatrixcomputed","text":"bool m_WMatrixComputed ; The G matrix. It used to be mutable because m_GMatrix was made an ivar only to avoid copying the matrix at return time but this is not necessary. SK: we don't need this matrix anymore as a member. Has the W matrix been computed?","title":"variable m_WMatrixComputed"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_lmatrixcomputed","text":"bool m_LMatrixComputed ; Has the L matrix been computed?","title":"variable m_LMatrixComputed"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_linversecomputed","text":"bool m_LInverseComputed ; Has the L inverse matrix been computed?","title":"variable m_LInverseComputed"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_lmatrixdecompositioncomputed","text":"bool m_LMatrixDecompositionComputed ; Has the L matrix decomposition been computed?","title":"variable m_LMatrixDecompositionComputed"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_lmatrixdecompositionsvd","text":"SVDDecompositionType * m_LMatrixDecompositionSVD ;","title":"variable m_LMatrixDecompositionSVD"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_lmatrixdecompositionqr","text":"QRDecompositionType * m_LMatrixDecompositionQR ;","title":"variable m_LMatrixDecompositionQR"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_i","text":"IMatrixType m_I ; Identity matrix.","title":"variable m_I"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_nonzerojacobianindices","text":"NonZeroJacobianIndicesType m_NonZeroJacobianIndices ; Precomputed nonzero Jacobian indices (simply all params)","title":"variable m_NonZeroJacobianIndices"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_nonzerojacobianindicestemp","text":"NonZeroJacobianIndicesType m_NonZeroJacobianIndicesTemp ; for old GetJacobian() method:","title":"variable m_NonZeroJacobianIndicesTemp"},{"location":"api/Classes/classitk_1_1KernelTransform2.html#variable-m_fastcomputationpossible","text":"bool m_FastComputationPossible ; The Jacobian can be computed much faster for some of the derived kerbel transforms, most notably the TPS. Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_FastComputationPossible"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html","text":"itk::MultiplyByConstantImageFilter Multiply input pixels by a constant. More... #include Inherits from UnaryFunctorImageFilter< TInputImage, TOutputImage, Functor::MultiplyByConstant< TInputImage::PixelType, TConstant, TOutputImage::PixelType > > Public Types Name typedef MultiplyByConstantImageFilter Self typedef UnaryFunctorImageFilter< TInputImage, TOutputImage, Functor::MultiplyByConstant < typename TInputImage::PixelType, TConstant, typename TOutputImage::PixelType > > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( MultiplyByConstantImageFilter , UnaryFunctorImageFilter ) void SetConstant (TConstant ct) const TConstant & GetConstant () const Protected Functions Name MultiplyByConstantImageFilter () virtual ~MultiplyByConstantImageFilter () void PrintSelf (std::ostream & os, Indent indent) const Detailed Description template < class TInputImage , class TConstant , class TOutputImage > class itk :: MultiplyByConstantImageFilter ; Multiply input pixels by a constant. See : UnaryFunctorImageFilter Author : Tom Vercauteren, INRIA & Mauna Kea Technologies This filter is templated over the input image type and the output image type. This implementation was taken from the Insight Journal paper: http://hdl.handle.net/1926/510 Public Types Documentation typedef Self typedef MultiplyByConstantImageFilter itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: Self ; Standard class typedefs. typedef Superclass typedef UnaryFunctorImageFilter < TInputImage , TOutputImage , Functor :: MultiplyByConstant < typename TInputImage :: PixelType , TConstant , typename TOutputImage :: PixelType > > itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: Superclass ; typedef Pointer typedef SmartPointer < Self > itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: Pointer ; typedef ConstPointer typedef SmartPointer < const Self > itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: ConstPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( MultiplyByConstantImageFilter , UnaryFunctorImageFilter ) Run-time type information (and related methods). function SetConstant inline void SetConstant ( TConstant ct ) Set the constant that will be used to multiply all the image pixels function GetConstant inline const TConstant & GetConstant () const Protected Functions Documentation function MultiplyByConstantImageFilter inline MultiplyByConstantImageFilter () function ~MultiplyByConstantImageFilter inline virtual ~ MultiplyByConstantImageFilter () function PrintSelf inline void PrintSelf ( std :: ostream & os , Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::MultiplyByConstantImageFilter"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#itkmultiplybyconstantimagefilter","text":"Multiply input pixels by a constant. More... #include Inherits from UnaryFunctorImageFilter< TInputImage, TOutputImage, Functor::MultiplyByConstant< TInputImage::PixelType, TConstant, TOutputImage::PixelType > >","title":"itk::MultiplyByConstantImageFilter"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#public-types","text":"Name typedef MultiplyByConstantImageFilter Self typedef UnaryFunctorImageFilter< TInputImage, TOutputImage, Functor::MultiplyByConstant < typename TInputImage::PixelType, TConstant, typename TOutputImage::PixelType > > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer","title":"Public Types"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( MultiplyByConstantImageFilter , UnaryFunctorImageFilter ) void SetConstant (TConstant ct) const TConstant & GetConstant () const","title":"Public Functions"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#protected-functions","text":"Name MultiplyByConstantImageFilter () virtual ~MultiplyByConstantImageFilter () void PrintSelf (std::ostream & os, Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#detailed-description","text":"template < class TInputImage , class TConstant , class TOutputImage > class itk :: MultiplyByConstantImageFilter ; Multiply input pixels by a constant. See : UnaryFunctorImageFilter Author : Tom Vercauteren, INRIA & Mauna Kea Technologies This filter is templated over the input image type and the output image type. This implementation was taken from the Insight Journal paper: http://hdl.handle.net/1926/510","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#typedef-self","text":"typedef MultiplyByConstantImageFilter itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#typedef-superclass","text":"typedef UnaryFunctorImageFilter < TInputImage , TOutputImage , Functor :: MultiplyByConstant < typename TInputImage :: PixelType , TConstant , typename TOutputImage :: PixelType > > itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#typedef-pointer","text":"typedef SmartPointer < Self > itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#typedef-constpointer","text":"typedef SmartPointer < const Self > itk :: MultiplyByConstantImageFilter < TInputImage , TConstant , TOutputImage >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#function-itktypemacro","text":"itkTypeMacro ( MultiplyByConstantImageFilter , UnaryFunctorImageFilter ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#function-setconstant","text":"inline void SetConstant ( TConstant ct ) Set the constant that will be used to multiply all the image pixels","title":"function SetConstant"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#function-getconstant","text":"inline const TConstant & GetConstant () const","title":"function GetConstant"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#function-multiplybyconstantimagefilter","text":"inline MultiplyByConstantImageFilter ()","title":"function MultiplyByConstantImageFilter"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#function-multiplybyconstantimagefilter_1","text":"inline virtual ~ MultiplyByConstantImageFilter ()","title":"function ~MultiplyByConstantImageFilter"},{"location":"api/Classes/classitk_1_1MultiplyByConstantImageFilter.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function PrintSelf"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html","text":"itk::SparseKernelTransform More... #include Inherits from Transform< TScalarType, NDimensions, NDimensions > Public Types Name typedef SparseKernelTransform Self typedef Transform< TScalarType, NDimensions, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType , NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerIterator PointsIterator typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef itk::VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > IMatrixType typedef Eigen::Triplet< TScalarType > TripletType typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > GMatrixType typedef Eigen::SparseMatrix< TScalarType > LMatrixType typedef Eigen::SparseMatrix< TScalarType > KMatrixType typedef Eigen::SparseMatrix< TScalarType > PMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > YMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > WMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > DMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > AMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > BMatrixType typedef Eigen::Matrix< TScalarType, 1, NDimensions > RowMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > ColumnMatrixType Public Functions Name itkTypeMacro ( SparseKernelTransform , Transform ) itkNewMacro ( Self ) itkStaticConstMacro (SpaceDimension , unsigned int , NDimensions ) itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) const virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual void SetIdentity () virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) const virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void ComputeJacobianWithRespectToParameters (const InputPointType & in, JacobianType & jacobian) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double ) Protected Functions Name SparseKernelTransform () virtual ~SparseKernelTransform () void PrintSelf (std::ostream & os, Indent indent) const virtual const GMatrixType & ComputeG (const InputVectorType & landmarkVector) const virtual const GMatrixType & ComputeReflexiveG (PointsIterator ) const virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const void ComputeK () const void ComputeL () const void ComputeP () const void ComputeY () const void ComputeD () const void ReorganizeW (void ) const Public Attributes Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks Protected Attributes Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector GMatrixType m_GMatrix bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed IMatrixType m_I Detailed Description template < class TScalarType , unsigned int NDimensions > class itk :: SparseKernelTransform ; Intended to be a base class for elastic body spline and thin plate spline. This is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16, No. 3 June 1997. Notation closely follows their paper, so if you have it in front of you, this code will make a lot more sense. SparseKernelTransform : Provides support for defining source and target landmarks Defines a number of data types used in the computations Defines the mathematical framework used to compute all splines, so that subclasses need only provide a kernel specific to that spline This formulation allows the stiffness of the spline to be adjusted, allowing the spline to vary from interpolating the landmarks to approximating the landmarks. This part of the formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996. This class was modified to support its use in the ITK registration framework by Rupert Brooks, McGill Centre for Intelligent Machines, Montreal, Canada March 2007. See the Insight Journal Paper by Brooks, R., Arbel, T. \"Improvements to the itk::KernelTransform and its subclasses.\" Public Types Documentation typedef Self typedef SparseKernelTransform itk :: SparseKernelTransform < TScalarType , NDimensions >:: Self ; Standard class typedefs. typedef Superclass typedef Transform < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: Superclass ; typedef Pointer typedef SmartPointer < Self > itk :: SparseKernelTransform < TScalarType , NDimensions >:: Pointer ; typedef ConstPointer typedef SmartPointer < const Self > itk :: SparseKernelTransform < TScalarType , NDimensions >:: ConstPointer ; typedef ScalarType typedef Superclass :: ScalarType itk :: SparseKernelTransform < TScalarType , NDimensions >:: ScalarType ; Scalar type. typedef ParametersType typedef Superclass :: ParametersType itk :: SparseKernelTransform < TScalarType , NDimensions >:: ParametersType ; Parameters type. typedef JacobianType typedef Superclass :: JacobianType itk :: SparseKernelTransform < TScalarType , NDimensions >:: JacobianType ; Jacobian type. typedef InputPointType typedef Superclass :: InputPointType itk :: SparseKernelTransform < TScalarType , NDimensions >:: InputPointType ; Standard coordinate point type for this class. typedef OutputPointType typedef Superclass :: OutputPointType itk :: SparseKernelTransform < TScalarType , NDimensions >:: OutputPointType ; typedef InputVectorType typedef Superclass :: InputVectorType itk :: SparseKernelTransform < TScalarType , NDimensions >:: InputVectorType ; Standard vector type for this class. typedef OutputVectorType typedef Superclass :: OutputVectorType itk :: SparseKernelTransform < TScalarType , NDimensions >:: OutputVectorType ; typedef PointSetTraitsType typedef DefaultStaticMeshTraits < TScalarType , NDimensions , NDimensions , TScalarType , TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointSetTraitsType ; PointList typedef. This type is used for maintaining lists of points, specifically, the source and target landmark lists. typedef PointSetType typedef PointSet < InputPointType , NDimensions , PointSetTraitsType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointSetType ; typedef PointSetPointer typedef PointSetType :: Pointer itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointSetPointer ; typedef PointsContainer typedef PointSetType :: PointsContainer itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointsContainer ; typedef PointsIterator typedef PointSetType :: PointsContainerIterator itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointsIterator ; typedef PointsConstIterator typedef PointSetType :: PointsContainerConstIterator itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointsConstIterator ; typedef VectorSetType typedef itk :: VectorContainer < unsigned long , InputVectorType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: VectorSetType ; VectorSet typedef. typedef VectorSetPointer typedef VectorSetType :: Pointer itk :: SparseKernelTransform < TScalarType , NDimensions >:: VectorSetPointer ; typedef IMatrixType typedef Eigen :: Matrix < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: IMatrixType ; 'I' (identity) matrix typedef. typedef TripletType typedef Eigen :: Triplet < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: TripletType ; triplets used to fill sparse matrices. typedef GMatrixType typedef Eigen :: Matrix < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: GMatrixType ; 'G' matrix typedef. typedef LMatrixType typedef Eigen :: SparseMatrix < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: LMatrixType ; 'L' matrix typedef. typedef KMatrixType typedef Eigen :: SparseMatrix < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: KMatrixType ; 'K' matrix typedef. typedef PMatrixType typedef Eigen :: SparseMatrix < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: PMatrixType ; 'P' matrix typedef. typedef YMatrixType typedef Eigen :: Matrix < TScalarType , Eigen :: Dynamic , Eigen :: Dynamic > itk :: SparseKernelTransform < TScalarType , NDimensions >:: YMatrixType ; 'Y' matrix typedef. typedef WMatrixType typedef Eigen :: Matrix < TScalarType , Eigen :: Dynamic , Eigen :: Dynamic > itk :: SparseKernelTransform < TScalarType , NDimensions >:: WMatrixType ; 'W' matrix typedef. typedef DMatrixType typedef Eigen :: Matrix < TScalarType , Eigen :: Dynamic , Eigen :: Dynamic > itk :: SparseKernelTransform < TScalarType , NDimensions >:: DMatrixType ; 'D' matrix typedef. Deformation component typedef AMatrixType typedef Eigen :: Matrix < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: AMatrixType ; 'A' matrix typedef. Rotational part of the Affine component typedef BMatrixType typedef Eigen :: Matrix < TScalarType , NDimensions , 1 > itk :: SparseKernelTransform < TScalarType , NDimensions >:: BMatrixType ; 'B' matrix typedef. Translational part of the Affine component typedef RowMatrixType typedef Eigen :: Matrix < TScalarType , 1 , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: RowMatrixType ; Row matrix typedef. typedef ColumnMatrixType typedef Eigen :: Matrix < TScalarType , NDimensions , 1 > itk :: SparseKernelTransform < TScalarType , NDimensions >:: ColumnMatrixType ; Column matrix typedef. Public Functions Documentation function itkTypeMacro itkTypeMacro ( SparseKernelTransform , Transform ) Run-time type information (and related methods). function itkNewMacro itkNewMacro ( Self ) New macro for creation of through a Smart Pointer function itkStaticConstMacro itkStaticConstMacro ( SpaceDimension , unsigned int , NDimensions ) Dimension of the domain space. function itkGetObjectMacro itkGetObjectMacro ( SourceLandmarks , PointSetType ) Get the source landmarks list, which we will denote \\( p \\) . function SetSourceLandmarks virtual void SetSourceLandmarks ( PointSetType * ) Set the source landmarks list. function itkGetObjectMacro itkGetObjectMacro ( TargetLandmarks , PointSetType ) Get the target landmarks list, which we will denote \\( q \\) . function SetTargetLandmarks virtual void SetTargetLandmarks ( PointSetType * ) Set the target landmarks list. function itkGetObjectMacro itkGetObjectMacro ( Displacements , VectorSetType ) Get the displacements list, which we will denote \\( d \\) , where \\( d_i = q_i - p_i \\) . function ComputeWMatrix void ComputeWMatrix ( void ) const Compute W matrix. function TransformPoint virtual OutputPointType TransformPoint ( const InputPointType & thisPoint ) const Compute L matrix inverse. Compute the position of point in the new space function SetIdentity virtual void SetIdentity () Compute the Jacobian Matrix of the transformation at one point Set the Transformation Parameters to be an identity transform function SetParameters virtual void SetParameters ( const ParametersType & ) Set the Transformation Parameters and update the internal transformation. The parameters represent the source landmarks. Each landmark point is represented by NDimensions doubles. All the landmarks are concatenated to form one flat Array . function SetFixedParameters virtual void SetFixedParameters ( const ParametersType & ) Set Transform Fixed Parameters: To support the transform file writer this function was added to set the target landmarks similar to the SetParameters function setting the source landmarks function UpdateParameters virtual void UpdateParameters ( void ) const Update the Parameters array from the landmarks corrdinates. function GetParameters virtual const ParametersType & GetParameters ( void ) const Get the Transformation Parameters - Gets the Source Landmarks function GetFixedParameters virtual const ParametersType & GetFixedParameters ( void ) const Get Transform Fixed Parameters - Gets the Target Landmarks function ComputeJacobianWithRespectToParameters virtual void ComputeJacobianWithRespectToParameters ( const InputPointType & in , JacobianType & jacobian ) const Reimplemented by : itk::CompactlySupportedRBFSparseKernelTransform::ComputeJacobianWithRespectToParameters function SetStiffness inline virtual void SetStiffness ( double stiffness ) Stiffness of the spline. A stiffness of zero results in the standard interpolating spline. A non-zero stiffness allows the spline to approximate rather than interpolate the landmarks. Stiffness values are usually rather small, typically in the range of 0.001 to 0.1. The approximating spline formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996. function itkGetMacro itkGetMacro ( Stiffness , double ) Protected Functions Documentation function SparseKernelTransform SparseKernelTransform () function ~SparseKernelTransform virtual ~ SparseKernelTransform () function PrintSelf void PrintSelf ( std :: ostream & os , Indent indent ) const function ComputeG virtual const GMatrixType & ComputeG ( const InputVectorType & landmarkVector ) const Reimplemented by : itk::CompactlySupportedRBFSparseKernelTransform::ComputeG Compute G(x) This is essentially the kernel of the transform. By overriding this method, we can obtain (among others): Elastic body spline Thin plate spline Volume spline function ComputeReflexiveG virtual const GMatrixType & ComputeReflexiveG ( PointsIterator ) const Compute a G(x) for a point to itself (i.e. for the block diagonal elements of the matrix K. Parameter indicates for which landmark the reflexive G is to be computed. The default implementation for the reflexive contribution is a diagonal matrix where the diagonal elements are the stiffness of the spline. function ComputeDeformationContribution virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const Reimplemented by : itk::CompactlySupportedRBFSparseKernelTransform::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel funcion to the global deformation of the space function ComputeK void ComputeK () const Compute K matrix. function ComputeL void ComputeL () const Compute L matrix. function ComputeP void ComputeP () const Compute P matrix. function ComputeY void ComputeY () const Compute Y matrix. function ComputeD void ComputeD () const Compute displacements \\( q_i - p_i \\) . function ReorganizeW void ReorganizeW ( void ) const Warning : This method release the memory of the W Matrix Reorganize the components of W into D (deformable), A (rotation part of affine) and B (translational part of affine ) components. Public Attributes Documentation variable m_SourceLandmarks PointSetPointer m_SourceLandmarks ; The list of source landmarks, denoted 'p'. variable m_TargetLandmarks PointSetPointer m_TargetLandmarks ; The list of target landmarks, denoted 'q'. Protected Attributes Documentation variable m_Stiffness double m_Stiffness ; Stiffness parameter variable m_Displacements VectorSetPointer m_Displacements ; The list of displacements. d[i] = q[i] - p[i]; variable m_LMatrix LMatrixType m_LMatrix ; The L matrix. variable m_LMatrixInverse LMatrixType m_LMatrixInverse ; The inverse of L, which we also cache. variable m_KMatrix KMatrixType m_KMatrix ; The K matrix. variable m_PMatrix PMatrixType m_PMatrix ; The P matrix. variable m_YMatrix YMatrixType m_YMatrix ; The Y matrix. variable m_WMatrix WMatrixType m_WMatrix ; The W matrix. variable m_DMatrix DMatrixType m_DMatrix ; The Deformation matrix. This is an auxiliary matrix that will hold the Deformation (non-affine) part of the transform. Those are the coefficients that will multiply the Kernel function variable m_AMatrix AMatrixType m_AMatrix ; Rotatinoal/Shearing part of the Affine component of the Transformation variable m_BVector BMatrixType m_BVector ; Translational part of the Affine component of the Transformation variable m_GMatrix GMatrixType m_GMatrix ; The G matrix. It is made mutable because m_GMatrix was made an ivar only to avoid copying the matrix at return time variable m_WMatrixComputed bool m_WMatrixComputed ; Has the W matrix been computed? variable m_LMatrixComputed bool m_LMatrixComputed ; Has the L matrix been computed? variable m_LInverseComputed bool m_LInverseComputed ; Has the L inverse matrix been computed? variable m_I IMatrixType m_I ; Identity matrix. Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::SparseKernelTransform"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#itksparsekerneltransform","text":"More... #include Inherits from Transform< TScalarType, NDimensions, NDimensions >","title":"itk::SparseKernelTransform"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#public-types","text":"Name typedef SparseKernelTransform Self typedef Transform< TScalarType, NDimensions, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType , NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerIterator PointsIterator typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef itk::VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > IMatrixType typedef Eigen::Triplet< TScalarType > TripletType typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > GMatrixType typedef Eigen::SparseMatrix< TScalarType > LMatrixType typedef Eigen::SparseMatrix< TScalarType > KMatrixType typedef Eigen::SparseMatrix< TScalarType > PMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > YMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > WMatrixType typedef Eigen::Matrix< TScalarType, Eigen::Dynamic, Eigen::Dynamic > DMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, NDimensions > AMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > BMatrixType typedef Eigen::Matrix< TScalarType, 1, NDimensions > RowMatrixType typedef Eigen::Matrix< TScalarType, NDimensions, 1 > ColumnMatrixType","title":"Public Types"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#public-functions","text":"Name itkTypeMacro ( SparseKernelTransform , Transform ) itkNewMacro ( Self ) itkStaticConstMacro (SpaceDimension , unsigned int , NDimensions ) itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) const virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual void SetIdentity () virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) const virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void ComputeJacobianWithRespectToParameters (const InputPointType & in, JacobianType & jacobian) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double )","title":"Public Functions"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#protected-functions","text":"Name SparseKernelTransform () virtual ~SparseKernelTransform () void PrintSelf (std::ostream & os, Indent indent) const virtual const GMatrixType & ComputeG (const InputVectorType & landmarkVector) const virtual const GMatrixType & ComputeReflexiveG (PointsIterator ) const virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const void ComputeK () const void ComputeL () const void ComputeP () const void ComputeY () const void ComputeD () const void ReorganizeW (void ) const","title":"Protected Functions"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#public-attributes","text":"Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks","title":"Public Attributes"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#protected-attributes","text":"Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector GMatrixType m_GMatrix bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed IMatrixType m_I","title":"Protected Attributes"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#detailed-description","text":"template < class TScalarType , unsigned int NDimensions > class itk :: SparseKernelTransform ; Intended to be a base class for elastic body spline and thin plate spline. This is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16, No. 3 June 1997. Notation closely follows their paper, so if you have it in front of you, this code will make a lot more sense. SparseKernelTransform : Provides support for defining source and target landmarks Defines a number of data types used in the computations Defines the mathematical framework used to compute all splines, so that subclasses need only provide a kernel specific to that spline This formulation allows the stiffness of the spline to be adjusted, allowing the spline to vary from interpolating the landmarks to approximating the landmarks. This part of the formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996. This class was modified to support its use in the ITK registration framework by Rupert Brooks, McGill Centre for Intelligent Machines, Montreal, Canada March 2007. See the Insight Journal Paper by Brooks, R., Arbel, T. \"Improvements to the itk::KernelTransform and its subclasses.\"","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-self","text":"typedef SparseKernelTransform itk :: SparseKernelTransform < TScalarType , NDimensions >:: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-superclass","text":"typedef Transform < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pointer","text":"typedef SmartPointer < Self > itk :: SparseKernelTransform < TScalarType , NDimensions >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-constpointer","text":"typedef SmartPointer < const Self > itk :: SparseKernelTransform < TScalarType , NDimensions >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-scalartype","text":"typedef Superclass :: ScalarType itk :: SparseKernelTransform < TScalarType , NDimensions >:: ScalarType ; Scalar type.","title":"typedef ScalarType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-parameterstype","text":"typedef Superclass :: ParametersType itk :: SparseKernelTransform < TScalarType , NDimensions >:: ParametersType ; Parameters type.","title":"typedef ParametersType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-jacobiantype","text":"typedef Superclass :: JacobianType itk :: SparseKernelTransform < TScalarType , NDimensions >:: JacobianType ; Jacobian type.","title":"typedef JacobianType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-inputpointtype","text":"typedef Superclass :: InputPointType itk :: SparseKernelTransform < TScalarType , NDimensions >:: InputPointType ; Standard coordinate point type for this class.","title":"typedef InputPointType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-outputpointtype","text":"typedef Superclass :: OutputPointType itk :: SparseKernelTransform < TScalarType , NDimensions >:: OutputPointType ;","title":"typedef OutputPointType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-inputvectortype","text":"typedef Superclass :: InputVectorType itk :: SparseKernelTransform < TScalarType , NDimensions >:: InputVectorType ; Standard vector type for this class.","title":"typedef InputVectorType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-outputvectortype","text":"typedef Superclass :: OutputVectorType itk :: SparseKernelTransform < TScalarType , NDimensions >:: OutputVectorType ;","title":"typedef OutputVectorType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pointsettraitstype","text":"typedef DefaultStaticMeshTraits < TScalarType , NDimensions , NDimensions , TScalarType , TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointSetTraitsType ; PointList typedef. This type is used for maintaining lists of points, specifically, the source and target landmark lists.","title":"typedef PointSetTraitsType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pointsettype","text":"typedef PointSet < InputPointType , NDimensions , PointSetTraitsType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointSetType ;","title":"typedef PointSetType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pointsetpointer","text":"typedef PointSetType :: Pointer itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointSetPointer ;","title":"typedef PointSetPointer"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pointscontainer","text":"typedef PointSetType :: PointsContainer itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointsContainer ;","title":"typedef PointsContainer"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pointsiterator","text":"typedef PointSetType :: PointsContainerIterator itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointsIterator ;","title":"typedef PointsIterator"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pointsconstiterator","text":"typedef PointSetType :: PointsContainerConstIterator itk :: SparseKernelTransform < TScalarType , NDimensions >:: PointsConstIterator ;","title":"typedef PointsConstIterator"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-vectorsettype","text":"typedef itk :: VectorContainer < unsigned long , InputVectorType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: VectorSetType ; VectorSet typedef.","title":"typedef VectorSetType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-vectorsetpointer","text":"typedef VectorSetType :: Pointer itk :: SparseKernelTransform < TScalarType , NDimensions >:: VectorSetPointer ;","title":"typedef VectorSetPointer"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-imatrixtype","text":"typedef Eigen :: Matrix < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: IMatrixType ; 'I' (identity) matrix typedef.","title":"typedef IMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-triplettype","text":"typedef Eigen :: Triplet < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: TripletType ; triplets used to fill sparse matrices.","title":"typedef TripletType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-gmatrixtype","text":"typedef Eigen :: Matrix < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: GMatrixType ; 'G' matrix typedef.","title":"typedef GMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-lmatrixtype","text":"typedef Eigen :: SparseMatrix < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: LMatrixType ; 'L' matrix typedef.","title":"typedef LMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-kmatrixtype","text":"typedef Eigen :: SparseMatrix < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: KMatrixType ; 'K' matrix typedef.","title":"typedef KMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-pmatrixtype","text":"typedef Eigen :: SparseMatrix < TScalarType > itk :: SparseKernelTransform < TScalarType , NDimensions >:: PMatrixType ; 'P' matrix typedef.","title":"typedef PMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-ymatrixtype","text":"typedef Eigen :: Matrix < TScalarType , Eigen :: Dynamic , Eigen :: Dynamic > itk :: SparseKernelTransform < TScalarType , NDimensions >:: YMatrixType ; 'Y' matrix typedef.","title":"typedef YMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-wmatrixtype","text":"typedef Eigen :: Matrix < TScalarType , Eigen :: Dynamic , Eigen :: Dynamic > itk :: SparseKernelTransform < TScalarType , NDimensions >:: WMatrixType ; 'W' matrix typedef.","title":"typedef WMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-dmatrixtype","text":"typedef Eigen :: Matrix < TScalarType , Eigen :: Dynamic , Eigen :: Dynamic > itk :: SparseKernelTransform < TScalarType , NDimensions >:: DMatrixType ; 'D' matrix typedef. Deformation component","title":"typedef DMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-amatrixtype","text":"typedef Eigen :: Matrix < TScalarType , NDimensions , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: AMatrixType ; 'A' matrix typedef. Rotational part of the Affine component","title":"typedef AMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-bmatrixtype","text":"typedef Eigen :: Matrix < TScalarType , NDimensions , 1 > itk :: SparseKernelTransform < TScalarType , NDimensions >:: BMatrixType ; 'B' matrix typedef. Translational part of the Affine component","title":"typedef BMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-rowmatrixtype","text":"typedef Eigen :: Matrix < TScalarType , 1 , NDimensions > itk :: SparseKernelTransform < TScalarType , NDimensions >:: RowMatrixType ; Row matrix typedef.","title":"typedef RowMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#typedef-columnmatrixtype","text":"typedef Eigen :: Matrix < TScalarType , NDimensions , 1 > itk :: SparseKernelTransform < TScalarType , NDimensions >:: ColumnMatrixType ; Column matrix typedef.","title":"typedef ColumnMatrixType"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-itktypemacro","text":"itkTypeMacro ( SparseKernelTransform , Transform ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-itknewmacro","text":"itkNewMacro ( Self ) New macro for creation of through a Smart Pointer","title":"function itkNewMacro"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( SpaceDimension , unsigned int , NDimensions ) Dimension of the domain space.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-itkgetobjectmacro","text":"itkGetObjectMacro ( SourceLandmarks , PointSetType ) Get the source landmarks list, which we will denote \\( p \\) .","title":"function itkGetObjectMacro"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-setsourcelandmarks","text":"virtual void SetSourceLandmarks ( PointSetType * ) Set the source landmarks list.","title":"function SetSourceLandmarks"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-itkgetobjectmacro_1","text":"itkGetObjectMacro ( TargetLandmarks , PointSetType ) Get the target landmarks list, which we will denote \\( q \\) .","title":"function itkGetObjectMacro"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-settargetlandmarks","text":"virtual void SetTargetLandmarks ( PointSetType * ) Set the target landmarks list.","title":"function SetTargetLandmarks"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-itkgetobjectmacro_2","text":"itkGetObjectMacro ( Displacements , VectorSetType ) Get the displacements list, which we will denote \\( d \\) , where \\( d_i = q_i - p_i \\) .","title":"function itkGetObjectMacro"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computewmatrix","text":"void ComputeWMatrix ( void ) const Compute W matrix.","title":"function ComputeWMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-transformpoint","text":"virtual OutputPointType TransformPoint ( const InputPointType & thisPoint ) const Compute L matrix inverse. Compute the position of point in the new space","title":"function TransformPoint"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-setidentity","text":"virtual void SetIdentity () Compute the Jacobian Matrix of the transformation at one point Set the Transformation Parameters to be an identity transform","title":"function SetIdentity"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-setparameters","text":"virtual void SetParameters ( const ParametersType & ) Set the Transformation Parameters and update the internal transformation. The parameters represent the source landmarks. Each landmark point is represented by NDimensions doubles. All the landmarks are concatenated to form one flat Array .","title":"function SetParameters"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-setfixedparameters","text":"virtual void SetFixedParameters ( const ParametersType & ) Set Transform Fixed Parameters: To support the transform file writer this function was added to set the target landmarks similar to the SetParameters function setting the source landmarks","title":"function SetFixedParameters"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-updateparameters","text":"virtual void UpdateParameters ( void ) const Update the Parameters array from the landmarks corrdinates.","title":"function UpdateParameters"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-getparameters","text":"virtual const ParametersType & GetParameters ( void ) const Get the Transformation Parameters - Gets the Source Landmarks","title":"function GetParameters"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-getfixedparameters","text":"virtual const ParametersType & GetFixedParameters ( void ) const Get Transform Fixed Parameters - Gets the Target Landmarks","title":"function GetFixedParameters"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computejacobianwithrespecttoparameters","text":"virtual void ComputeJacobianWithRespectToParameters ( const InputPointType & in , JacobianType & jacobian ) const Reimplemented by : itk::CompactlySupportedRBFSparseKernelTransform::ComputeJacobianWithRespectToParameters","title":"function ComputeJacobianWithRespectToParameters"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-setstiffness","text":"inline virtual void SetStiffness ( double stiffness ) Stiffness of the spline. A stiffness of zero results in the standard interpolating spline. A non-zero stiffness allows the spline to approximate rather than interpolate the landmarks. Stiffness values are usually rather small, typically in the range of 0.001 to 0.1. The approximating spline formulation is based on the short paper by R. Sprengel, K. Rohr, H. Stiehl. \"Thin-Plate Spline Approximation for Image Registration\". In 18th International Conference of the IEEE Engineering in Medicine and Biology Society. 1996.","title":"function SetStiffness"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-itkgetmacro","text":"itkGetMacro ( Stiffness , double )","title":"function itkGetMacro"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-sparsekerneltransform","text":"SparseKernelTransform ()","title":"function SparseKernelTransform"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-sparsekerneltransform_1","text":"virtual ~ SparseKernelTransform ()","title":"function ~SparseKernelTransform"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-printself","text":"void PrintSelf ( std :: ostream & os , Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computeg","text":"virtual const GMatrixType & ComputeG ( const InputVectorType & landmarkVector ) const Reimplemented by : itk::CompactlySupportedRBFSparseKernelTransform::ComputeG Compute G(x) This is essentially the kernel of the transform. By overriding this method, we can obtain (among others): Elastic body spline Thin plate spline Volume spline","title":"function ComputeG"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computereflexiveg","text":"virtual const GMatrixType & ComputeReflexiveG ( PointsIterator ) const Compute a G(x) for a point to itself (i.e. for the block diagonal elements of the matrix K. Parameter indicates for which landmark the reflexive G is to be computed. The default implementation for the reflexive contribution is a diagonal matrix where the diagonal elements are the stiffness of the spline.","title":"function ComputeReflexiveG"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computedeformationcontribution","text":"virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const Reimplemented by : itk::CompactlySupportedRBFSparseKernelTransform::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel funcion to the global deformation of the space","title":"function ComputeDeformationContribution"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computek","text":"void ComputeK () const Compute K matrix.","title":"function ComputeK"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computel","text":"void ComputeL () const Compute L matrix.","title":"function ComputeL"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computep","text":"void ComputeP () const Compute P matrix.","title":"function ComputeP"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computey","text":"void ComputeY () const Compute Y matrix.","title":"function ComputeY"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-computed","text":"void ComputeD () const Compute displacements \\( q_i - p_i \\) .","title":"function ComputeD"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#function-reorganizew","text":"void ReorganizeW ( void ) const Warning : This method release the memory of the W Matrix Reorganize the components of W into D (deformable), A (rotation part of affine) and B (translational part of affine ) components.","title":"function ReorganizeW"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_sourcelandmarks","text":"PointSetPointer m_SourceLandmarks ; The list of source landmarks, denoted 'p'.","title":"variable m_SourceLandmarks"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_targetlandmarks","text":"PointSetPointer m_TargetLandmarks ; The list of target landmarks, denoted 'q'.","title":"variable m_TargetLandmarks"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_stiffness","text":"double m_Stiffness ; Stiffness parameter","title":"variable m_Stiffness"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_displacements","text":"VectorSetPointer m_Displacements ; The list of displacements. d[i] = q[i] - p[i];","title":"variable m_Displacements"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_lmatrix","text":"LMatrixType m_LMatrix ; The L matrix.","title":"variable m_LMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_lmatrixinverse","text":"LMatrixType m_LMatrixInverse ; The inverse of L, which we also cache.","title":"variable m_LMatrixInverse"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_kmatrix","text":"KMatrixType m_KMatrix ; The K matrix.","title":"variable m_KMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_pmatrix","text":"PMatrixType m_PMatrix ; The P matrix.","title":"variable m_PMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_ymatrix","text":"YMatrixType m_YMatrix ; The Y matrix.","title":"variable m_YMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_wmatrix","text":"WMatrixType m_WMatrix ; The W matrix.","title":"variable m_WMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_dmatrix","text":"DMatrixType m_DMatrix ; The Deformation matrix. This is an auxiliary matrix that will hold the Deformation (non-affine) part of the transform. Those are the coefficients that will multiply the Kernel function","title":"variable m_DMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_amatrix","text":"AMatrixType m_AMatrix ; Rotatinoal/Shearing part of the Affine component of the Transformation","title":"variable m_AMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_bvector","text":"BMatrixType m_BVector ; Translational part of the Affine component of the Transformation","title":"variable m_BVector"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_gmatrix","text":"GMatrixType m_GMatrix ; The G matrix. It is made mutable because m_GMatrix was made an ivar only to avoid copying the matrix at return time","title":"variable m_GMatrix"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_wmatrixcomputed","text":"bool m_WMatrixComputed ; Has the W matrix been computed?","title":"variable m_WMatrixComputed"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_lmatrixcomputed","text":"bool m_LMatrixComputed ; Has the L matrix been computed?","title":"variable m_LMatrixComputed"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_linversecomputed","text":"bool m_LInverseComputed ; Has the L inverse matrix been computed?","title":"variable m_LInverseComputed"},{"location":"api/Classes/classitk_1_1SparseKernelTransform.html#variable-m_i","text":"IMatrixType m_I ; Identity matrix. Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_I"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html","text":"itk::TPGACLevelSetImageFilter More... Inherits from GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, float > Public Types Name typedef TPGACLevelSetImageFilter Self typedef GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef TInputImage ImageType typedef ImageType::IndexType IndexType typedef Superclass::TimeStepType TimeStepType typedef Superclass::ValueType ValueType typedef Superclass::OutputImageType OutputImageType typedef Superclass::FeatureImageType FeatureImageType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( TPGACLevelSetImageFilter , GeodesicActiveContourLevelSetImageFilter ) Protected Functions Name ~TPGACLevelSetImageFilter () TPGACLevelSetImageFilter () virtual void PrintSelf (std::ostream & os, Indent indent) const TPGACLevelSetImageFilter (const Self & ) void operator= (const Self & ) virtual ValueType CalculateUpdateValue (const IndexType & idx, const TimeStepType & dt, const ValueType & value, const ValueType & change) Detailed Description template < class TInputImage , class TFeatureImage , class TOutputPixelType = float > class itk :: TPGACLevelSetImageFilter ; Public Types Documentation typedef Self typedef TPGACLevelSetImageFilter itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: Self ; Standard class typedefs typedef Superclass typedef GeodesicActiveContourLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType > itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: Superclass ; typedef Pointer typedef SmartPointer < Self > itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: Pointer ; typedef ConstPointer typedef SmartPointer < const Self > itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: ConstPointer ; typedef ImageType typedef TInputImage itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: ImageType ; typedef IndexType typedef ImageType :: IndexType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: IndexType ; typedef TimeStepType typedef Superclass :: TimeStepType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: TimeStepType ; typedef ValueType typedef Superclass :: ValueType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: ValueType ; Inherited typedef from the superclass. typedef OutputImageType typedef Superclass :: OutputImageType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: OutputImageType ; typedef FeatureImageType typedef Superclass :: FeatureImageType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: FeatureImageType ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory function itkTypeMacro itkTypeMacro ( TPGACLevelSetImageFilter , GeodesicActiveContourLevelSetImageFilter ) Run-time type information (and related methods). Protected Functions Documentation function ~TPGACLevelSetImageFilter inline ~ TPGACLevelSetImageFilter () function TPGACLevelSetImageFilter TPGACLevelSetImageFilter () function PrintSelf virtual void PrintSelf ( std :: ostream & os , Indent indent ) const function TPGACLevelSetImageFilter TPGACLevelSetImageFilter ( const Self & ) function operator= void operator = ( const Self & ) function CalculateUpdateValue inline virtual ValueType CalculateUpdateValue ( const IndexType & idx , const TimeStepType & dt , const ValueType & value , const ValueType & change ) Overridden from the parent class to indroduce a constraint on surface flow under certain conditions. Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::TPGACLevelSetImageFilter"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#itktpgaclevelsetimagefilter","text":"More... Inherits from GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, float >","title":"itk::TPGACLevelSetImageFilter"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#public-types","text":"Name typedef TPGACLevelSetImageFilter Self typedef GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef TInputImage ImageType typedef ImageType::IndexType IndexType typedef Superclass::TimeStepType TimeStepType typedef Superclass::ValueType ValueType typedef Superclass::OutputImageType OutputImageType typedef Superclass::FeatureImageType FeatureImageType","title":"Public Types"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( TPGACLevelSetImageFilter , GeodesicActiveContourLevelSetImageFilter )","title":"Public Functions"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#protected-functions","text":"Name ~TPGACLevelSetImageFilter () TPGACLevelSetImageFilter () virtual void PrintSelf (std::ostream & os, Indent indent) const TPGACLevelSetImageFilter (const Self & ) void operator= (const Self & ) virtual ValueType CalculateUpdateValue (const IndexType & idx, const TimeStepType & dt, const ValueType & value, const ValueType & change)","title":"Protected Functions"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#detailed-description","text":"template < class TInputImage , class TFeatureImage , class TOutputPixelType = float > class itk :: TPGACLevelSetImageFilter ;","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-self","text":"typedef TPGACLevelSetImageFilter itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-superclass","text":"typedef GeodesicActiveContourLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType > itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-pointer","text":"typedef SmartPointer < Self > itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-constpointer","text":"typedef SmartPointer < const Self > itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-imagetype","text":"typedef TInputImage itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: ImageType ;","title":"typedef ImageType"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-indextype","text":"typedef ImageType :: IndexType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: IndexType ;","title":"typedef IndexType"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-timesteptype","text":"typedef Superclass :: TimeStepType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: TimeStepType ;","title":"typedef TimeStepType"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-valuetype","text":"typedef Superclass :: ValueType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: ValueType ; Inherited typedef from the superclass.","title":"typedef ValueType"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-outputimagetype","text":"typedef Superclass :: OutputImageType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: OutputImageType ;","title":"typedef OutputImageType"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#typedef-featureimagetype","text":"typedef Superclass :: FeatureImageType itk :: TPGACLevelSetImageFilter < TInputImage , TFeatureImage , TOutputPixelType >:: FeatureImageType ;","title":"typedef FeatureImageType"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory","title":"function itkNewMacro"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-itktypemacro","text":"itkTypeMacro ( TPGACLevelSetImageFilter , GeodesicActiveContourLevelSetImageFilter ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-tpgaclevelsetimagefilter","text":"inline ~ TPGACLevelSetImageFilter ()","title":"function ~TPGACLevelSetImageFilter"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-tpgaclevelsetimagefilter_1","text":"TPGACLevelSetImageFilter ()","title":"function TPGACLevelSetImageFilter"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-printself","text":"virtual void PrintSelf ( std :: ostream & os , Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-tpgaclevelsetimagefilter_2","text":"TPGACLevelSetImageFilter ( const Self & )","title":"function TPGACLevelSetImageFilter"},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-operator","text":"void operator = ( const Self & )","title":"function operator="},{"location":"api/Classes/classitk_1_1TPGACLevelSetImageFilter.html#function-calculateupdatevalue","text":"inline virtual ValueType CalculateUpdateValue ( const IndexType & idx , const TimeStepType & dt , const ValueType & value , const ValueType & change ) Overridden from the parent class to indroduce a constraint on surface flow under certain conditions. Updated on 2023-10-24 at 22:16:01 +0000","title":"function CalculateUpdateValue"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html","text":"itk::ThinPlateSplineKernelTransform2 More... #include Inherits from itk::KernelTransform2< TScalarType, 3 > , itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > , Transform< TScalarType, 3, 3 > Public Types Name typedef ThinPlateSplineKernelTransform2 Self typedef KernelTransform2 < TScalarType, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::PointsIterator PointsIterator Protected Types Name typedef Superclass::GMatrixType GMatrixType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ThinPlateSplineKernelTransform2 , KernelTransform2 ) itkStaticConstMacro (SpaceDimension , unsigned int , Superclass::SpaceDimension ) void SetSigma (double sigma) Protected Functions Name ThinPlateSplineKernelTransform2 () virtual ~ThinPlateSplineKernelTransform2 () virtual void ComputeG (const InputVectorType & x, GMatrixType & GMatrix) const virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const Additional inherited members Public Types inherited from itk::KernelTransform2< TScalarType, 3 > Name typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType typedef Superclass::SpatialJacobianType SpatialJacobianType typedef Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType typedef Superclass::SpatialHessianType SpatialHessianType typedef Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType typedef Superclass::InternalMatrixType InternalMatrixType typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType, NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > IMatrixType typedef vnl_matrix< TScalarType > LMatrixType typedef vnl_matrix< TScalarType > KMatrixType typedef vnl_matrix< TScalarType > PMatrixType typedef vnl_matrix< TScalarType > YMatrixType typedef vnl_matrix< TScalarType > WMatrixType typedef vnl_matrix< TScalarType > DMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > AMatrixType typedef vnl_vector_fixed< TScalarType, NDimensions > BMatrixType typedef vnl_matrix_fixed< TScalarType, 1, NDimensions > RowMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, 1 > ColumnMatrixType Protected Types inherited from itk::KernelTransform2< TScalarType, 3 > Name typedef vnl_svd< ScalarType > SVDDecompositionType typedef vnl_qr< ScalarType > QRDecompositionType Public Functions inherited from itk::KernelTransform2< TScalarType, 3 > Name virtual NumberOfParametersType GetNumberOfParameters (void ) const itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) void ComputeLInverse (void ) virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual OutputVectorType TransformVector (const InputVectorType & ) const virtual OutputVnlVectorType TransformVector (const InputVnlVectorType & ) const virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType & ) const virtual void GetJacobian (const InputPointType & , JacobianType & , NonZeroJacobianIndicesType & ) const virtual void SetIdentity (void ) virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double ) virtual void SetAlpha (TScalarType itkNotUsedAlpha) virtual TScalarType GetAlpha (void ) const itkSetMacro (PoissonRatio , TScalarType ) virtual const TScalarType GetPoissonRatio (void ) const itkSetMacro (MatrixInversionMethod , std::string ) itkGetConstReferenceMacro (MatrixInversionMethod , std::string ) virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const Protected Functions inherited from itk::KernelTransform2< TScalarType, 3 > Name KernelTransform2 () virtual ~KernelTransform2 () void PrintSelf (std::ostream & os, Indent indent) const virtual void ComputeReflexiveG (PointsIterator , GMatrixType & GMatrix) const void ComputeK (void ) void ComputeL (void ) void ComputeP (void ) void ComputeY (void ) void ComputeD (void ) void ReorganizeW (void ) Public Attributes inherited from itk::KernelTransform2< TScalarType, 3 > Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks Protected Attributes inherited from itk::KernelTransform2< TScalarType, 3 > Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed bool m_LMatrixDecompositionComputed SVDDecompositionType * m_LMatrixDecompositionSVD QRDecompositionType * m_LMatrixDecompositionQR IMatrixType m_I NonZeroJacobianIndicesType m_NonZeroJacobianIndices NonZeroJacobianIndicesType m_NonZeroJacobianIndicesTemp bool m_FastComputationPossible Public Types inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name typedef Superclass::ParametersValueType ParametersValueType typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::DerivativeType DerivativeType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::InverseTransformBaseType InverseTransformBaseType typedef Superclass::InverseTransformBasePointer InverseTransformBasePointer typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > TransformType typedef TransformType::Pointer TransformTypePointer typedef TransformType::ConstPointer TransformTypeConstPointer typedef std::vector< unsigned long > NonZeroJacobianIndicesType typedef Matrix< ScalarType , OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType typedef std::vector< SpatialJacobianType > JacobianOfSpatialJacobianType typedef FixedArray< Matrix< ScalarType , InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType typedef std::vector< SpatialHessianType > JacobianOfSpatialHessianType typedef SpatialJacobianType::InternalMatrixType InternalMatrixType typedef OutputCovariantVectorType MovingImageGradientType typedef MovingImageGradientType::ValueType MovingImageGradientValueType Public Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices (void ) const itkGetConstMacro (HasNonZeroSpatialHessian , bool ) itkGetConstMacro (HasNonZeroJacobianOfSpatialHessian , bool ) virtual void GetJacobian (const InputPointType & ipp, JacobianType & j, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType & ipp, const MovingImageGradientType & movingImageGradient, DerivativeType & imageJacobian, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const =0 virtual void ComputeJacobianWithRespectToParameters (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void ComputeJacobianWithRespectToPosition (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 Protected Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name AdvancedTransform () AdvancedTransform (NumberOfParametersType numberOfParameters) virtual ~AdvancedTransform () Protected Attributes inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name bool m_HasNonZeroSpatialHessian bool m_HasNonZeroJacobianOfSpatialHessian Detailed Description template < class TScalarType , unsigned int NDimensions = 3 > class itk :: ThinPlateSplineKernelTransform2 ; This class defines the thin plate spline (TPS) transformation. It is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16 No. 3 June 1997 Public Types Documentation typedef Self typedef ThinPlateSplineKernelTransform2 itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: Self ; Standard class typedefs. typedef Superclass typedef KernelTransform2 < TScalarType , NDimensions > itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: Superclass ; typedef Pointer typedef SmartPointer < Self > itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: Pointer ; typedef ConstPointer typedef SmartPointer < const Self > itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: ConstPointer ; typedef ScalarType typedef Superclass :: ScalarType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: ScalarType ; Scalar type. typedef ParametersType typedef Superclass :: ParametersType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: ParametersType ; Parameters type. typedef JacobianType typedef Superclass :: JacobianType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: JacobianType ; Jacobian Type typedef InputPointType typedef Superclass :: InputPointType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: InputPointType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited. typedef OutputPointType typedef Superclass :: OutputPointType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: OutputPointType ; typedef InputVectorType typedef Superclass :: InputVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: InputVectorType ; typedef OutputVectorType typedef Superclass :: OutputVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: OutputVectorType ; typedef InputCovariantVectorType typedef Superclass :: InputCovariantVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: InputCovariantVectorType ; typedef OutputCovariantVectorType typedef Superclass :: OutputCovariantVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: OutputCovariantVectorType ; typedef PointsIterator typedef Superclass :: PointsIterator itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: PointsIterator ; Protected Types Documentation typedef GMatrixType typedef Superclass :: GMatrixType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: GMatrixType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited. Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) New macro for creation of through a Smart Pointer function itkTypeMacro itkTypeMacro ( ThinPlateSplineKernelTransform2 , KernelTransform2 ) Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( SpaceDimension , unsigned int , Superclass :: SpaceDimension ) Dimension of the domain space. function SetSigma inline void SetSigma ( double sigma ) Protected Functions Documentation function ThinPlateSplineKernelTransform2 inline ThinPlateSplineKernelTransform2 () function ~ThinPlateSplineKernelTransform2 inline virtual ~ ThinPlateSplineKernelTransform2 () function ComputeG virtual void ComputeG ( const InputVectorType & x , GMatrixType & GMatrix ) const Reimplements : itk::KernelTransform2::ComputeG Compute G(x) For the thin plate spline, this is: G(x) = r(x)*I \\( G(x) = r(x)*I \\) where r(x) = Euclidean norm = sqrt[x1^2 + x2^2 + x3^2] r(x) = \\sqrt{ x_1^2 + x_2^2 + x_3^2 } I = identity matrix. function ComputeDeformationContribution virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const Reimplements : itk::KernelTransform2::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel function to the global deformation of the space. Updated on 2023-10-24 at 22:16:01 +0000","title":"itk::ThinPlateSplineKernelTransform2"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#itkthinplatesplinekerneltransform2","text":"More... #include Inherits from itk::KernelTransform2< TScalarType, 3 > , itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > , Transform< TScalarType, 3, 3 >","title":"itk::ThinPlateSplineKernelTransform2"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#public-types","text":"Name typedef ThinPlateSplineKernelTransform2 Self typedef KernelTransform2 < TScalarType, NDimensions > Superclass typedef SmartPointer< Self > Pointer typedef SmartPointer< const Self > ConstPointer typedef Superclass::ScalarType ScalarType typedef Superclass::ParametersType ParametersType typedef Superclass::JacobianType JacobianType typedef Superclass::InputPointType InputPointType typedef Superclass::OutputPointType OutputPointType typedef Superclass::InputVectorType InputVectorType typedef Superclass::OutputVectorType OutputVectorType typedef Superclass::InputCovariantVectorType InputCovariantVectorType typedef Superclass::OutputCovariantVectorType OutputCovariantVectorType typedef Superclass::PointsIterator PointsIterator","title":"Public Types"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#protected-types","text":"Name typedef Superclass::GMatrixType GMatrixType","title":"Protected Types"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ThinPlateSplineKernelTransform2 , KernelTransform2 ) itkStaticConstMacro (SpaceDimension , unsigned int , Superclass::SpaceDimension ) void SetSigma (double sigma)","title":"Public Functions"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#protected-functions","text":"Name ThinPlateSplineKernelTransform2 () virtual ~ThinPlateSplineKernelTransform2 () virtual void ComputeG (const InputVectorType & x, GMatrixType & GMatrix) const virtual void ComputeDeformationContribution (const InputPointType & inputPoint, OutputPointType & result) const","title":"Protected Functions"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#additional-inherited-members","text":"Public Types inherited from itk::KernelTransform2< TScalarType, 3 > Name typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType typedef Superclass::SpatialJacobianType SpatialJacobianType typedef Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType typedef Superclass::SpatialHessianType SpatialHessianType typedef Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType typedef Superclass::InternalMatrixType InternalMatrixType typedef DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType typedef PointSet< InputPointType, NDimensions, PointSetTraitsType > PointSetType typedef PointSetType::Pointer PointSetPointer typedef PointSetType::PointsContainer PointsContainer typedef PointSetType::PointsContainerConstIterator PointsConstIterator typedef VectorContainer< unsigned long, InputVectorType > VectorSetType typedef VectorSetType::Pointer VectorSetPointer typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > IMatrixType typedef vnl_matrix< TScalarType > LMatrixType typedef vnl_matrix< TScalarType > KMatrixType typedef vnl_matrix< TScalarType > PMatrixType typedef vnl_matrix< TScalarType > YMatrixType typedef vnl_matrix< TScalarType > WMatrixType typedef vnl_matrix< TScalarType > DMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > AMatrixType typedef vnl_vector_fixed< TScalarType, NDimensions > BMatrixType typedef vnl_matrix_fixed< TScalarType, 1, NDimensions > RowMatrixType typedef vnl_matrix_fixed< TScalarType, NDimensions, 1 > ColumnMatrixType Protected Types inherited from itk::KernelTransform2< TScalarType, 3 > Name typedef vnl_svd< ScalarType > SVDDecompositionType typedef vnl_qr< ScalarType > QRDecompositionType Public Functions inherited from itk::KernelTransform2< TScalarType, 3 > Name virtual NumberOfParametersType GetNumberOfParameters (void ) const itkGetObjectMacro (SourceLandmarks , PointSetType ) virtual void SetSourceLandmarks (PointSetType * ) itkGetObjectMacro (TargetLandmarks , PointSetType ) virtual void SetTargetLandmarks (PointSetType * ) itkGetObjectMacro (Displacements , VectorSetType ) void ComputeWMatrix (void ) void ComputeLInverse (void ) virtual OutputPointType TransformPoint (const InputPointType & thisPoint) const virtual OutputVectorType TransformVector (const InputVectorType & ) const virtual OutputVnlVectorType TransformVector (const InputVnlVectorType & ) const virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType & ) const virtual void GetJacobian (const InputPointType & , JacobianType & , NonZeroJacobianIndicesType & ) const virtual void SetIdentity (void ) virtual void SetParameters (const ParametersType & ) virtual void SetFixedParameters (const ParametersType & ) virtual void UpdateParameters (void ) virtual const ParametersType & GetParameters (void ) const virtual const ParametersType & GetFixedParameters (void ) const virtual void SetStiffness (double stiffness) itkGetMacro (Stiffness , double ) virtual void SetAlpha (TScalarType itkNotUsedAlpha) virtual TScalarType GetAlpha (void ) const itkSetMacro (PoissonRatio , TScalarType ) virtual const TScalarType GetPoissonRatio (void ) const itkSetMacro (MatrixInversionMethod , std::string ) itkGetConstReferenceMacro (MatrixInversionMethod , std::string ) virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const Protected Functions inherited from itk::KernelTransform2< TScalarType, 3 > Name KernelTransform2 () virtual ~KernelTransform2 () void PrintSelf (std::ostream & os, Indent indent) const virtual void ComputeReflexiveG (PointsIterator , GMatrixType & GMatrix) const void ComputeK (void ) void ComputeL (void ) void ComputeP (void ) void ComputeY (void ) void ComputeD (void ) void ReorganizeW (void ) Public Attributes inherited from itk::KernelTransform2< TScalarType, 3 > Name PointSetPointer m_SourceLandmarks PointSetPointer m_TargetLandmarks Protected Attributes inherited from itk::KernelTransform2< TScalarType, 3 > Name double m_Stiffness VectorSetPointer m_Displacements LMatrixType m_LMatrix LMatrixType m_LMatrixInverse KMatrixType m_KMatrix PMatrixType m_PMatrix YMatrixType m_YMatrix WMatrixType m_WMatrix DMatrixType m_DMatrix AMatrixType m_AMatrix BMatrixType m_BVector bool m_WMatrixComputed bool m_LMatrixComputed bool m_LInverseComputed bool m_LMatrixDecompositionComputed SVDDecompositionType * m_LMatrixDecompositionSVD QRDecompositionType * m_LMatrixDecompositionQR IMatrixType m_I NonZeroJacobianIndicesType m_NonZeroJacobianIndices NonZeroJacobianIndicesType m_NonZeroJacobianIndicesTemp bool m_FastComputationPossible Public Types inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name typedef Superclass::ParametersValueType ParametersValueType typedef Superclass::NumberOfParametersType NumberOfParametersType typedef Superclass::DerivativeType DerivativeType typedef Superclass::InputVnlVectorType InputVnlVectorType typedef Superclass::OutputVnlVectorType OutputVnlVectorType typedef Superclass::InverseTransformBaseType InverseTransformBaseType typedef Superclass::InverseTransformBasePointer InverseTransformBasePointer typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > TransformType typedef TransformType::Pointer TransformTypePointer typedef TransformType::ConstPointer TransformTypeConstPointer typedef std::vector< unsigned long > NonZeroJacobianIndicesType typedef Matrix< ScalarType , OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType typedef std::vector< SpatialJacobianType > JacobianOfSpatialJacobianType typedef FixedArray< Matrix< ScalarType , InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType typedef std::vector< SpatialHessianType > JacobianOfSpatialHessianType typedef SpatialJacobianType::InternalMatrixType InternalMatrixType typedef OutputCovariantVectorType MovingImageGradientType typedef MovingImageGradientType::ValueType MovingImageGradientValueType Public Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices (void ) const itkGetConstMacro (HasNonZeroSpatialHessian , bool ) itkGetConstMacro (HasNonZeroJacobianOfSpatialHessian , bool ) virtual void GetJacobian (const InputPointType & ipp, JacobianType & j, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType & ipp, const MovingImageGradientType & movingImageGradient, DerivativeType & imageJacobian, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const virtual void GetSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj) const =0 virtual void ComputeJacobianWithRespectToParameters (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void ComputeJacobianWithRespectToPosition (const InputPointType & itkNotUsedp, JacobianType & itkNotUsedj) const virtual void GetSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialJacobian (const InputPointType & ipp, SpatialJacobianType & sj, JacobianOfSpatialJacobianType & jsj, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 virtual void GetJacobianOfSpatialHessian (const InputPointType & ipp, SpatialHessianType & sh, JacobianOfSpatialHessianType & jsh, NonZeroJacobianIndicesType & nonZeroJacobianIndices) const =0 Protected Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name AdvancedTransform () AdvancedTransform (NumberOfParametersType numberOfParameters) virtual ~AdvancedTransform () Protected Attributes inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions > Name bool m_HasNonZeroSpatialHessian bool m_HasNonZeroJacobianOfSpatialHessian","title":"Additional inherited members"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#detailed-description","text":"template < class TScalarType , unsigned int NDimensions = 3 > class itk :: ThinPlateSplineKernelTransform2 ; This class defines the thin plate spline (TPS) transformation. It is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16 No. 3 June 1997","title":"Detailed Description"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-self","text":"typedef ThinPlateSplineKernelTransform2 itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-superclass","text":"typedef KernelTransform2 < TScalarType , NDimensions > itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-pointer","text":"typedef SmartPointer < Self > itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-constpointer","text":"typedef SmartPointer < const Self > itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-scalartype","text":"typedef Superclass :: ScalarType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: ScalarType ; Scalar type.","title":"typedef ScalarType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-parameterstype","text":"typedef Superclass :: ParametersType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: ParametersType ; Parameters type.","title":"typedef ParametersType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-jacobiantype","text":"typedef Superclass :: JacobianType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: JacobianType ; Jacobian Type","title":"typedef JacobianType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-inputpointtype","text":"typedef Superclass :: InputPointType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: InputPointType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited.","title":"typedef InputPointType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-outputpointtype","text":"typedef Superclass :: OutputPointType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: OutputPointType ;","title":"typedef OutputPointType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-inputvectortype","text":"typedef Superclass :: InputVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: InputVectorType ;","title":"typedef InputVectorType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-outputvectortype","text":"typedef Superclass :: OutputVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: OutputVectorType ;","title":"typedef OutputVectorType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-inputcovariantvectortype","text":"typedef Superclass :: InputCovariantVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: InputCovariantVectorType ;","title":"typedef InputCovariantVectorType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-outputcovariantvectortype","text":"typedef Superclass :: OutputCovariantVectorType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: OutputCovariantVectorType ;","title":"typedef OutputCovariantVectorType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-pointsiterator","text":"typedef Superclass :: PointsIterator itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: PointsIterator ;","title":"typedef PointsIterator"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#protected-types-documentation","text":"","title":"Protected Types Documentation"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#typedef-gmatrixtype","text":"typedef Superclass :: GMatrixType itk :: ThinPlateSplineKernelTransform2 < TScalarType , NDimensions >:: GMatrixType ; These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited.","title":"typedef GMatrixType"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-itknewmacro","text":"itkNewMacro ( Self ) New macro for creation of through a Smart Pointer","title":"function itkNewMacro"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-itktypemacro","text":"itkTypeMacro ( ThinPlateSplineKernelTransform2 , KernelTransform2 ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( SpaceDimension , unsigned int , Superclass :: SpaceDimension ) Dimension of the domain space.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-setsigma","text":"inline void SetSigma ( double sigma )","title":"function SetSigma"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-thinplatesplinekerneltransform2","text":"inline ThinPlateSplineKernelTransform2 ()","title":"function ThinPlateSplineKernelTransform2"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-thinplatesplinekerneltransform2_1","text":"inline virtual ~ ThinPlateSplineKernelTransform2 ()","title":"function ~ThinPlateSplineKernelTransform2"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-computeg","text":"virtual void ComputeG ( const InputVectorType & x , GMatrixType & GMatrix ) const Reimplements : itk::KernelTransform2::ComputeG Compute G(x) For the thin plate spline, this is: G(x) = r(x)*I \\( G(x) = r(x)*I \\) where r(x) = Euclidean norm = sqrt[x1^2 + x2^2 + x3^2] r(x) = \\sqrt{ x_1^2 + x_2^2 + x_3^2 } I = identity matrix.","title":"function ComputeG"},{"location":"api/Classes/classitk_1_1ThinPlateSplineKernelTransform2.html#function-computedeformationcontribution","text":"virtual void ComputeDeformationContribution ( const InputPointType & inputPoint , OutputPointType & result ) const Reimplements : itk::KernelTransform2::ComputeDeformationContribution Compute the contribution of the landmarks weighted by the kernel function to the global deformation of the space. Updated on 2023-10-24 at 22:16:01 +0000","title":"function ComputeDeformationContribution"},{"location":"api/Classes/classmat3d.html","text":"mat3d Public Functions Name mat3d () mat3d (double a00, double a01, double a02, double a10, double a11, double a12, double a20, double a21, double a22) double * operator[] (int i) double & operator() (int i, int j) mat3d operator* ( mat3d & m) mat3d & operator*= ( mat3d & m) mat3d & operator+= ( mat3d & m) mat3d & operator-= ( mat3d & m) mat3d & operator/= (const double f) vec3d operator* ( vec3d b) double det () const double Invert () mat3d inverse () const void zero () void unit () mat3d transpose () Protected Attributes Name double m_data Public Functions Documentation function mat3d inline mat3d () function mat3d mat3d ( double a00 , double a01 , double a02 , double a10 , double a11 , double a12 , double a20 , double a21 , double a22 ) function operator[] inline double * operator []( int i ) function operator() inline double & operator ()( int i , int j ) function operator* inline mat3d operator * ( mat3d & m ) function operator*= inline mat3d & operator *= ( mat3d & m ) function operator+= inline mat3d & operator += ( mat3d & m ) function operator-= inline mat3d & operator -= ( mat3d & m ) function operator/= inline mat3d & operator /= ( const double f ) function operator* inline vec3d operator * ( vec3d b ) function det inline double det () const function Invert double Invert () function inverse mat3d inverse () const function zero inline void zero () function unit inline void unit () function transpose mat3d transpose () Protected Attributes Documentation variable m_data double m_data ; Updated on 2023-10-24 at 22:16:02 +0000","title":"mat3d"},{"location":"api/Classes/classmat3d.html#mat3d","text":"","title":"mat3d"},{"location":"api/Classes/classmat3d.html#public-functions","text":"Name mat3d () mat3d (double a00, double a01, double a02, double a10, double a11, double a12, double a20, double a21, double a22) double * operator[] (int i) double & operator() (int i, int j) mat3d operator* ( mat3d & m) mat3d & operator*= ( mat3d & m) mat3d & operator+= ( mat3d & m) mat3d & operator-= ( mat3d & m) mat3d & operator/= (const double f) vec3d operator* ( vec3d b) double det () const double Invert () mat3d inverse () const void zero () void unit () mat3d transpose ()","title":"Public Functions"},{"location":"api/Classes/classmat3d.html#protected-attributes","text":"Name double m_data","title":"Protected Attributes"},{"location":"api/Classes/classmat3d.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classmat3d.html#function-mat3d","text":"inline mat3d ()","title":"function mat3d"},{"location":"api/Classes/classmat3d.html#function-mat3d_1","text":"mat3d ( double a00 , double a01 , double a02 , double a10 , double a11 , double a12 , double a20 , double a21 , double a22 )","title":"function mat3d"},{"location":"api/Classes/classmat3d.html#function-operator","text":"inline double * operator []( int i )","title":"function operator[]"},{"location":"api/Classes/classmat3d.html#function-operator_1","text":"inline double & operator ()( int i , int j )","title":"function operator()"},{"location":"api/Classes/classmat3d.html#function-operator_2","text":"inline mat3d operator * ( mat3d & m )","title":"function operator*"},{"location":"api/Classes/classmat3d.html#function-operator_3","text":"inline mat3d & operator *= ( mat3d & m )","title":"function operator*="},{"location":"api/Classes/classmat3d.html#function-operator_4","text":"inline mat3d & operator += ( mat3d & m )","title":"function operator+="},{"location":"api/Classes/classmat3d.html#function-operator-","text":"inline mat3d & operator -= ( mat3d & m )","title":"function operator-="},{"location":"api/Classes/classmat3d.html#function-operator_5","text":"inline mat3d & operator /= ( const double f )","title":"function operator/="},{"location":"api/Classes/classmat3d.html#function-operator_6","text":"inline vec3d operator * ( vec3d b )","title":"function operator*"},{"location":"api/Classes/classmat3d.html#function-det","text":"inline double det () const","title":"function det"},{"location":"api/Classes/classmat3d.html#function-invert","text":"double Invert ()","title":"function Invert"},{"location":"api/Classes/classmat3d.html#function-inverse","text":"mat3d inverse () const","title":"function inverse"},{"location":"api/Classes/classmat3d.html#function-zero","text":"inline void zero ()","title":"function zero"},{"location":"api/Classes/classmat3d.html#function-unit","text":"inline void unit ()","title":"function unit"},{"location":"api/Classes/classmat3d.html#function-transpose","text":"mat3d transpose ()","title":"function transpose"},{"location":"api/Classes/classmat3d.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classmat3d.html#variable-m_data","text":"double m_data ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_data"},{"location":"api/Classes/classmatrix.html","text":"matrix Public Functions Name matrix (int r, int c) ~matrix () void zero () double * operator[] (int i) double & operator() (int i, int j) bool solve (vector< double > & x, vector< double > & b) bool lsq_solve (vector< double > & x, vector< double > & b) bool eigen_vectors ( matrix & Eigen, vector< double > & eigen_values) int Rows () void mult_transpose (vector< double > & x, vector< double > & y) void mult_transpose_self ( matrix & AAt) Public Functions Documentation function matrix matrix ( int r , int c ) function ~matrix inline ~ matrix () function zero void zero () function operator[] inline double * operator []( int i ) function operator() inline double & operator ()( int i , int j ) function solve bool solve ( vector < double > & x , vector < double > & b ) function lsq_solve bool lsq_solve ( vector < double > & x , vector < double > & b ) function eigen_vectors bool eigen_vectors ( matrix & Eigen , vector < double > & eigen_values ) function Rows inline int Rows () function mult_transpose void mult_transpose ( vector < double > & x , vector < double > & y ) function mult_transpose_self void mult_transpose_self ( matrix & AAt ) Updated on 2023-10-24 at 22:16:02 +0000","title":"matrix"},{"location":"api/Classes/classmatrix.html#matrix","text":"","title":"matrix"},{"location":"api/Classes/classmatrix.html#public-functions","text":"Name matrix (int r, int c) ~matrix () void zero () double * operator[] (int i) double & operator() (int i, int j) bool solve (vector< double > & x, vector< double > & b) bool lsq_solve (vector< double > & x, vector< double > & b) bool eigen_vectors ( matrix & Eigen, vector< double > & eigen_values) int Rows () void mult_transpose (vector< double > & x, vector< double > & y) void mult_transpose_self ( matrix & AAt)","title":"Public Functions"},{"location":"api/Classes/classmatrix.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classmatrix.html#function-matrix","text":"matrix ( int r , int c )","title":"function matrix"},{"location":"api/Classes/classmatrix.html#function-matrix_1","text":"inline ~ matrix ()","title":"function ~matrix"},{"location":"api/Classes/classmatrix.html#function-zero","text":"void zero ()","title":"function zero"},{"location":"api/Classes/classmatrix.html#function-operator","text":"inline double * operator []( int i )","title":"function operator[]"},{"location":"api/Classes/classmatrix.html#function-operator_1","text":"inline double & operator ()( int i , int j )","title":"function operator()"},{"location":"api/Classes/classmatrix.html#function-solve","text":"bool solve ( vector < double > & x , vector < double > & b )","title":"function solve"},{"location":"api/Classes/classmatrix.html#function-lsq_solve","text":"bool lsq_solve ( vector < double > & x , vector < double > & b )","title":"function lsq_solve"},{"location":"api/Classes/classmatrix.html#function-eigen_vectors","text":"bool eigen_vectors ( matrix & Eigen , vector < double > & eigen_values )","title":"function eigen_vectors"},{"location":"api/Classes/classmatrix.html#function-rows","text":"inline int Rows ()","title":"function Rows"},{"location":"api/Classes/classmatrix.html#function-mult_transpose","text":"void mult_transpose ( vector < double > & x , vector < double > & y )","title":"function mult_transpose"},{"location":"api/Classes/classmatrix.html#function-mult_transpose_self","text":"void mult_transpose_self ( matrix & AAt ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function mult_transpose_self"},{"location":"api/Classes/classmeshFIM.html","text":"meshFIM Public Types Name enum LabelType typedef int VoxelIndexType typedef int index Public Functions Name void ComputeDistanceToLandmarksGivenTriangleInfo (TriMesh * mesh, const char * infilename, const char * outfilename) void computeFIM (TriMesh * mesh, const char * vertT_filename) void GetFeatureValues (point x, std::vector< float > & vals) void ReadFaceIndexMap (const char * infilename) void ReadFeatureFromFile (const char * infilename) void ReadFeatureGradientFromFile (const char * infilename) point GetFeatureDerivative (point p, int fIndex) void need_abs_curvatures () void need_edge_lengths () void need_speed () void need_oneringfaces () void need_kdtree () void SetMesh (TriMesh * mesh) void SetStopDistance (float d) void setSpeedType (int st) meshFIM () ~meshFIM () Public Attributes Name TriMesh * m_meshPtr int NumComputation float imageOrigin float imageSpacing int imageSize int imageIndex std::vector< Color > colors Public Types Documentation enum LabelType Enumerator Value Description MaskPoint SeedPoint ActivePoint FarPoint StopPoint AlivePoint ToBeAlivePoint typedef VoxelIndexType typedef int meshFIM :: VoxelIndexType ; typedef index typedef int meshFIM :: index ; Public Functions Documentation function ComputeDistanceToLandmarksGivenTriangleInfo void ComputeDistanceToLandmarksGivenTriangleInfo ( TriMesh * mesh , const char * infilename , const char * outfilename ) function computeFIM void computeFIM ( TriMesh * mesh , const char * vertT_filename ) function GetFeatureValues void GetFeatureValues ( point x , std :: vector < float > & vals ) function ReadFaceIndexMap void ReadFaceIndexMap ( const char * infilename ) function ReadFeatureFromFile void ReadFeatureFromFile ( const char * infilename ) function ReadFeatureGradientFromFile void ReadFeatureGradientFromFile ( const char * infilename ) function GetFeatureDerivative point GetFeatureDerivative ( point p , int fIndex ) function need_abs_curvatures void need_abs_curvatures () function need_edge_lengths void need_edge_lengths () function need_speed void need_speed () function need_oneringfaces void need_oneringfaces () function need_kdtree void need_kdtree () function SetMesh void SetMesh ( TriMesh * mesh ) function SetStopDistance inline void SetStopDistance ( float d ) function setSpeedType inline void setSpeedType ( int st ) function meshFIM inline meshFIM () function ~meshFIM inline ~ meshFIM () Public Attributes Documentation variable m_meshPtr TriMesh * m_meshPtr ; variable NumComputation int NumComputation ; variable imageOrigin float imageOrigin ; variable imageSpacing float imageSpacing ; variable imageSize int imageSize ; variable imageIndex int imageIndex ; variable colors std :: vector < Color > colors ; Updated on 2023-10-24 at 22:16:02 +0000","title":"meshFIM"},{"location":"api/Classes/classmeshFIM.html#meshfim","text":"","title":"meshFIM"},{"location":"api/Classes/classmeshFIM.html#public-types","text":"Name enum LabelType typedef int VoxelIndexType typedef int index","title":"Public Types"},{"location":"api/Classes/classmeshFIM.html#public-functions","text":"Name void ComputeDistanceToLandmarksGivenTriangleInfo (TriMesh * mesh, const char * infilename, const char * outfilename) void computeFIM (TriMesh * mesh, const char * vertT_filename) void GetFeatureValues (point x, std::vector< float > & vals) void ReadFaceIndexMap (const char * infilename) void ReadFeatureFromFile (const char * infilename) void ReadFeatureGradientFromFile (const char * infilename) point GetFeatureDerivative (point p, int fIndex) void need_abs_curvatures () void need_edge_lengths () void need_speed () void need_oneringfaces () void need_kdtree () void SetMesh (TriMesh * mesh) void SetStopDistance (float d) void setSpeedType (int st) meshFIM () ~meshFIM ()","title":"Public Functions"},{"location":"api/Classes/classmeshFIM.html#public-attributes","text":"Name TriMesh * m_meshPtr int NumComputation float imageOrigin float imageSpacing int imageSize int imageIndex std::vector< Color > colors","title":"Public Attributes"},{"location":"api/Classes/classmeshFIM.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classmeshFIM.html#enum-labeltype","text":"Enumerator Value Description MaskPoint SeedPoint ActivePoint FarPoint StopPoint AlivePoint ToBeAlivePoint","title":"enum LabelType"},{"location":"api/Classes/classmeshFIM.html#typedef-voxelindextype","text":"typedef int meshFIM :: VoxelIndexType ;","title":"typedef VoxelIndexType"},{"location":"api/Classes/classmeshFIM.html#typedef-index","text":"typedef int meshFIM :: index ;","title":"typedef index"},{"location":"api/Classes/classmeshFIM.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classmeshFIM.html#function-computedistancetolandmarksgiventriangleinfo","text":"void ComputeDistanceToLandmarksGivenTriangleInfo ( TriMesh * mesh , const char * infilename , const char * outfilename )","title":"function ComputeDistanceToLandmarksGivenTriangleInfo"},{"location":"api/Classes/classmeshFIM.html#function-computefim","text":"void computeFIM ( TriMesh * mesh , const char * vertT_filename )","title":"function computeFIM"},{"location":"api/Classes/classmeshFIM.html#function-getfeaturevalues","text":"void GetFeatureValues ( point x , std :: vector < float > & vals )","title":"function GetFeatureValues"},{"location":"api/Classes/classmeshFIM.html#function-readfaceindexmap","text":"void ReadFaceIndexMap ( const char * infilename )","title":"function ReadFaceIndexMap"},{"location":"api/Classes/classmeshFIM.html#function-readfeaturefromfile","text":"void ReadFeatureFromFile ( const char * infilename )","title":"function ReadFeatureFromFile"},{"location":"api/Classes/classmeshFIM.html#function-readfeaturegradientfromfile","text":"void ReadFeatureGradientFromFile ( const char * infilename )","title":"function ReadFeatureGradientFromFile"},{"location":"api/Classes/classmeshFIM.html#function-getfeaturederivative","text":"point GetFeatureDerivative ( point p , int fIndex )","title":"function GetFeatureDerivative"},{"location":"api/Classes/classmeshFIM.html#function-need_abs_curvatures","text":"void need_abs_curvatures ()","title":"function need_abs_curvatures"},{"location":"api/Classes/classmeshFIM.html#function-need_edge_lengths","text":"void need_edge_lengths ()","title":"function need_edge_lengths"},{"location":"api/Classes/classmeshFIM.html#function-need_speed","text":"void need_speed ()","title":"function need_speed"},{"location":"api/Classes/classmeshFIM.html#function-need_oneringfaces","text":"void need_oneringfaces ()","title":"function need_oneringfaces"},{"location":"api/Classes/classmeshFIM.html#function-need_kdtree","text":"void need_kdtree ()","title":"function need_kdtree"},{"location":"api/Classes/classmeshFIM.html#function-setmesh","text":"void SetMesh ( TriMesh * mesh )","title":"function SetMesh"},{"location":"api/Classes/classmeshFIM.html#function-setstopdistance","text":"inline void SetStopDistance ( float d )","title":"function SetStopDistance"},{"location":"api/Classes/classmeshFIM.html#function-setspeedtype","text":"inline void setSpeedType ( int st )","title":"function setSpeedType"},{"location":"api/Classes/classmeshFIM.html#function-meshfim","text":"inline meshFIM ()","title":"function meshFIM"},{"location":"api/Classes/classmeshFIM.html#function-meshfim_1","text":"inline ~ meshFIM ()","title":"function ~meshFIM"},{"location":"api/Classes/classmeshFIM.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classmeshFIM.html#variable-m_meshptr","text":"TriMesh * m_meshPtr ;","title":"variable m_meshPtr"},{"location":"api/Classes/classmeshFIM.html#variable-numcomputation","text":"int NumComputation ;","title":"variable NumComputation"},{"location":"api/Classes/classmeshFIM.html#variable-imageorigin","text":"float imageOrigin ;","title":"variable imageOrigin"},{"location":"api/Classes/classmeshFIM.html#variable-imagespacing","text":"float imageSpacing ;","title":"variable imageSpacing"},{"location":"api/Classes/classmeshFIM.html#variable-imagesize","text":"int imageSize ;","title":"variable imageSize"},{"location":"api/Classes/classmeshFIM.html#variable-imageindex","text":"int imageIndex ;","title":"variable imageIndex"},{"location":"api/Classes/classmeshFIM.html#variable-colors","text":"std :: vector < Color > colors ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable colors"},{"location":"api/Classes/classobject__reader.html","text":"object_reader More... #include Detailed Description class object_reader ; Reads a std::vector of c++ objects. The first integer in the file is assumed to represent the number of transforms in the file. The size of each transform is determined by the templating. Updated on 2023-10-24 at 22:16:02 +0000","title":"object_reader"},{"location":"api/Classes/classobject__reader.html#object_reader","text":"More... #include ","title":"object_reader"},{"location":"api/Classes/classobject__reader.html#detailed-description","text":"class object_reader ; Reads a std::vector of c++ objects. The first integer in the file is assumed to represent the number of transforms in the file. The size of each transform is determined by the templating. Updated on 2023-10-24 at 22:16:02 +0000","title":"Detailed Description"},{"location":"api/Classes/classobject__writer.html","text":"object_writer Updated on 2023-10-24 at 22:16:02 +0000","title":"object_writer"},{"location":"api/Classes/classobject__writer.html#object_writer","text":"Updated on 2023-10-24 at 22:16:02 +0000","title":"object_writer"},{"location":"api/Classes/classquatd.html","text":"quatd Public Functions Name quatd () quatd (const double angle, vec3d v) quatd ( vec3d v1, vec3d v2) quatd (const double qx, const double qy, const double qz, const double qw =1.0) bool operator!= (const quatd & q) quatd operator- () quatd operator+ (const quatd & q) const quatd operator- (const quatd & q) const quatd & operator+= (const quatd & q) quatd & operator-= (const quatd & q) quatd operator* (const quatd & q) const quatd & operator*= (const quatd & q) quatd operator* (const double a) const quatd operator/ (const double a) const quatd & operator/= (const double a) quatd Conjugate () const double Norm () const void MakeUnit () quatd Inverse () const double DotProduct (const quatd & q) const vec3d GetVector () const double GetAngle () const void RotateVector ( vec3d & v) const vec3d operator* (const vec3d & r) mat3d operator* ( mat3d m) void RotateVectorP (double * v, double * r) const double dot ( quatd & q1, quatd & q2) quatd lerp ( quatd & q1, quatd & q2, double t) quatd slerp ( quatd & q1, quatd & q2, double t) Public Attributes Name double x double y double z double w Public Functions Documentation function quatd inline quatd () function quatd inline quatd ( const double angle , vec3d v ) function quatd inline quatd ( vec3d v1 , vec3d v2 ) function quatd inline quatd ( const double qx , const double qy , const double qz , const double qw = 1.0 ) function operator!= inline bool operator != ( const quatd & q ) function operator- inline quatd operator - () function operator+ inline quatd operator + ( const quatd & q ) const function operator- inline quatd operator - ( const quatd & q ) const function operator+= inline quatd & operator += ( const quatd & q ) function operator-= inline quatd & operator -= ( const quatd & q ) function operator* inline quatd operator * ( const quatd & q ) const function operator*= inline quatd & operator *= ( const quatd & q ) function operator* inline quatd operator * ( const double a ) const function operator/ inline quatd operator / ( const double a ) const function operator/= inline quatd & operator /= ( const double a ) function Conjugate inline quatd Conjugate () const function Norm inline double Norm () const function MakeUnit inline void MakeUnit () function Inverse inline quatd Inverse () const function DotProduct inline double DotProduct ( const quatd & q ) const function GetVector inline vec3d GetVector () const function GetAngle inline double GetAngle () const function RotateVector inline void RotateVector ( vec3d & v ) const function operator* inline vec3d operator * ( const vec3d & r ) function operator* inline mat3d operator * ( mat3d m ) function RotateVectorP inline void RotateVectorP ( double * v , double * r ) const function dot static inline double dot ( quatd & q1 , quatd & q2 ) function lerp static inline quatd lerp ( quatd & q1 , quatd & q2 , double t ) function slerp static quatd slerp ( quatd & q1 , quatd & q2 , double t ) Public Attributes Documentation variable x double x ; variable y double y ; variable z double z ; variable w double w ; Updated on 2023-10-24 at 22:16:02 +0000","title":"quatd"},{"location":"api/Classes/classquatd.html#quatd","text":"","title":"quatd"},{"location":"api/Classes/classquatd.html#public-functions","text":"Name quatd () quatd (const double angle, vec3d v) quatd ( vec3d v1, vec3d v2) quatd (const double qx, const double qy, const double qz, const double qw =1.0) bool operator!= (const quatd & q) quatd operator- () quatd operator+ (const quatd & q) const quatd operator- (const quatd & q) const quatd & operator+= (const quatd & q) quatd & operator-= (const quatd & q) quatd operator* (const quatd & q) const quatd & operator*= (const quatd & q) quatd operator* (const double a) const quatd operator/ (const double a) const quatd & operator/= (const double a) quatd Conjugate () const double Norm () const void MakeUnit () quatd Inverse () const double DotProduct (const quatd & q) const vec3d GetVector () const double GetAngle () const void RotateVector ( vec3d & v) const vec3d operator* (const vec3d & r) mat3d operator* ( mat3d m) void RotateVectorP (double * v, double * r) const double dot ( quatd & q1, quatd & q2) quatd lerp ( quatd & q1, quatd & q2, double t) quatd slerp ( quatd & q1, quatd & q2, double t)","title":"Public Functions"},{"location":"api/Classes/classquatd.html#public-attributes","text":"Name double x double y double z double w","title":"Public Attributes"},{"location":"api/Classes/classquatd.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classquatd.html#function-quatd","text":"inline quatd ()","title":"function quatd"},{"location":"api/Classes/classquatd.html#function-quatd_1","text":"inline quatd ( const double angle , vec3d v )","title":"function quatd"},{"location":"api/Classes/classquatd.html#function-quatd_2","text":"inline quatd ( vec3d v1 , vec3d v2 )","title":"function quatd"},{"location":"api/Classes/classquatd.html#function-quatd_3","text":"inline quatd ( const double qx , const double qy , const double qz , const double qw = 1.0 )","title":"function quatd"},{"location":"api/Classes/classquatd.html#function-operator","text":"inline bool operator != ( const quatd & q )","title":"function operator!="},{"location":"api/Classes/classquatd.html#function-operator-","text":"inline quatd operator - ()","title":"function operator-"},{"location":"api/Classes/classquatd.html#function-operator_1","text":"inline quatd operator + ( const quatd & q ) const","title":"function operator+"},{"location":"api/Classes/classquatd.html#function-operator-_1","text":"inline quatd operator - ( const quatd & q ) const","title":"function operator-"},{"location":"api/Classes/classquatd.html#function-operator_2","text":"inline quatd & operator += ( const quatd & q )","title":"function operator+="},{"location":"api/Classes/classquatd.html#function-operator-_2","text":"inline quatd & operator -= ( const quatd & q )","title":"function operator-="},{"location":"api/Classes/classquatd.html#function-operator_3","text":"inline quatd operator * ( const quatd & q ) const","title":"function operator*"},{"location":"api/Classes/classquatd.html#function-operator_4","text":"inline quatd & operator *= ( const quatd & q )","title":"function operator*="},{"location":"api/Classes/classquatd.html#function-operator_5","text":"inline quatd operator * ( const double a ) const","title":"function operator*"},{"location":"api/Classes/classquatd.html#function-operator_6","text":"inline quatd operator / ( const double a ) const","title":"function operator/"},{"location":"api/Classes/classquatd.html#function-operator_7","text":"inline quatd & operator /= ( const double a )","title":"function operator/="},{"location":"api/Classes/classquatd.html#function-conjugate","text":"inline quatd Conjugate () const","title":"function Conjugate"},{"location":"api/Classes/classquatd.html#function-norm","text":"inline double Norm () const","title":"function Norm"},{"location":"api/Classes/classquatd.html#function-makeunit","text":"inline void MakeUnit ()","title":"function MakeUnit"},{"location":"api/Classes/classquatd.html#function-inverse","text":"inline quatd Inverse () const","title":"function Inverse"},{"location":"api/Classes/classquatd.html#function-dotproduct","text":"inline double DotProduct ( const quatd & q ) const","title":"function DotProduct"},{"location":"api/Classes/classquatd.html#function-getvector","text":"inline vec3d GetVector () const","title":"function GetVector"},{"location":"api/Classes/classquatd.html#function-getangle","text":"inline double GetAngle () const","title":"function GetAngle"},{"location":"api/Classes/classquatd.html#function-rotatevector","text":"inline void RotateVector ( vec3d & v ) const","title":"function RotateVector"},{"location":"api/Classes/classquatd.html#function-operator_8","text":"inline vec3d operator * ( const vec3d & r )","title":"function operator*"},{"location":"api/Classes/classquatd.html#function-operator_9","text":"inline mat3d operator * ( mat3d m )","title":"function operator*"},{"location":"api/Classes/classquatd.html#function-rotatevectorp","text":"inline void RotateVectorP ( double * v , double * r ) const","title":"function RotateVectorP"},{"location":"api/Classes/classquatd.html#function-dot","text":"static inline double dot ( quatd & q1 , quatd & q2 )","title":"function dot"},{"location":"api/Classes/classquatd.html#function-lerp","text":"static inline quatd lerp ( quatd & q1 , quatd & q2 , double t )","title":"function lerp"},{"location":"api/Classes/classquatd.html#function-slerp","text":"static quatd slerp ( quatd & q1 , quatd & q2 , double t )","title":"function slerp"},{"location":"api/Classes/classquatd.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classquatd.html#variable-x","text":"double x ;","title":"variable x"},{"location":"api/Classes/classquatd.html#variable-y","text":"double y ;","title":"variable y"},{"location":"api/Classes/classquatd.html#variable-z","text":"double z ;","title":"variable z"},{"location":"api/Classes/classquatd.html#variable-w","text":"double w ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable w"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html","text":"shapeworks::AnalysisTool Inherits from QWidget Public Types Name enum GroupAnalysisType enum McaMode using Analyze::AlignmentType AlignmentType using itk::Point< double, 3 > PointType Public Slots Name void on_tabWidget_currentChanged () void handle_analysis_options () void handle_median () void on_mean_button_clicked () void on_group1_button_clicked () void on_group2_button_clicked () void on_difference_button_clicked () void on_pcaSlider_valueChanged () void on_group_slider_valueChanged () void on_pcaModeSpinBox_valueChanged (int i) void handle_pca_animate_state_changed () void handle_pca_timer () void handle_group_animate_state_changed () void handle_group_timer () void handle_reconstruction_complete () void on_reconstructionButton_clicked () void set_feature_map (const std::string & feature_map) Set the currently selected feature map. std::string get_display_feature_map () void group_changed () bool groups_active () void on_view_open_button_toggled () void on_surface_open_button_toggled () void on_metrics_open_button_toggled () bool is_group_active (int shape_index) void reconstruction_method_changed () void initialize_mesh_warper () void group_p_values_clicked () void network_analysis_clicked () void handle_eval_thread_complete (ShapeEvaluationJob::JobType job_type, Eigen::VectorXd data) void handle_eval_thread_progress (ShapeEvaluationJob::JobType job_type, float progress) void handle_eval_particle_normals_progress (float progress) void handle_eval_particle_normals_complete (std::vector< bool > good_bad) void handle_group_pvalues_complete () void handle_alignment_changed (int new_alignment) void run_good_bad_particles () void handle_lda_progress (double progress) void handle_lda_complete () void handle_network_analysis_progress (int progress) void handle_network_analysis_complete () void show_difference_to_mean_clicked () void group_analysis_combo_changed () Public Signals Name void update_view () void pca_update () void progress (int ) void reconstruction_complete () Public Functions Name AnalysisTool ( Preferences & prefs) ~AnalysisTool () void set_session (QSharedPointer< Session > session) set the pointer to the session QSharedPointer< Session > get_session () Return the session. void set_app ( ShapeWorksStudioApp * app) set the pointer to the application ShapeWorksStudioApp * get_app () void set_active (bool active) Set if this tool is active. bool get_active () Return if this tool is active. bool get_group_difference_mode () std::vector< Shape::Point > get_group_difference_vectors () std::string get_analysis_mode () void set_analysis_mode (std::string mode) void set_labels (QString which, QString value) int get_pca_mode () double get_group_ratio () double get_pca_value () bool pca_animate () McaMode get_mca_level () const int get_sample_number () bool compute_stats () void update_slider () void reset_stats () void enable_actions (bool newly_enabled =false) Particles get_mean_shape_points () ShapeHandle get_mean_shape () Particles get_shape_points (int mode, double value) Particles get_multi_level_shape_points (int mode, double value, McaMode level) ShapeHandle get_mode_shape (int mode, double value) ShapeHandle get_mca_mode_shape (int mode, double value, McaMode level) ShapeHandle get_current_shape () ParticleShapeStatistics get_stats () void load_settings () void store_settings () void shutdown () bool export_variance_graph (QString filename) void compute_shape_evaluations () GroupAnalysisType get_group_analysis_type () Public Attributes Name const std::string MODE_ALL_SAMPLES_C const std::string MODE_MEAN_C const std::string MODE_PCA_C const std::string MODE_SINGLE_SAMPLE_C const std::string MODE_REGRESSION_C Public Types Documentation enum GroupAnalysisType Enumerator Value Description None 0 Pvalues 1 NetworkAnalysis 2 LDA 3 enum McaMode Enumerator Value Description Vanilla Within Between using AlignmentType using shapeworks :: AnalysisTool :: AlignmentType = Analyze :: AlignmentType ; using PointType using shapeworks :: AnalysisTool :: PointType = itk :: Point < double , 3 > ; Public Slots Documentation slot on_tabWidget_currentChanged void on_tabWidget_currentChanged () slot handle_analysis_options void handle_analysis_options () slot handle_median void handle_median () slot on_mean_button_clicked void on_mean_button_clicked () slot on_group1_button_clicked void on_group1_button_clicked () slot on_group2_button_clicked void on_group2_button_clicked () slot on_difference_button_clicked void on_difference_button_clicked () slot on_pcaSlider_valueChanged void on_pcaSlider_valueChanged () slot on_group_slider_valueChanged void on_group_slider_valueChanged () slot on_pcaModeSpinBox_valueChanged void on_pcaModeSpinBox_valueChanged ( int i ) slot handle_pca_animate_state_changed void handle_pca_animate_state_changed () slot handle_pca_timer void handle_pca_timer () slot handle_group_animate_state_changed void handle_group_animate_state_changed () slot handle_group_timer void handle_group_timer () slot handle_reconstruction_complete void handle_reconstruction_complete () slot on_reconstructionButton_clicked void on_reconstructionButton_clicked () slot set_feature_map void set_feature_map ( const std :: string & feature_map ) Set the currently selected feature map. slot get_display_feature_map std :: string get_display_feature_map () slot group_changed void group_changed () slot groups_active bool groups_active () slot on_view_open_button_toggled void on_view_open_button_toggled () slot on_surface_open_button_toggled void on_surface_open_button_toggled () slot on_metrics_open_button_toggled void on_metrics_open_button_toggled () slot is_group_active bool is_group_active ( int shape_index ) slot reconstruction_method_changed void reconstruction_method_changed () slot initialize_mesh_warper void initialize_mesh_warper () slot group_p_values_clicked void group_p_values_clicked () slot network_analysis_clicked void network_analysis_clicked () slot handle_eval_thread_complete void handle_eval_thread_complete ( ShapeEvaluationJob :: JobType job_type , Eigen :: VectorXd data ) slot handle_eval_thread_progress void handle_eval_thread_progress ( ShapeEvaluationJob :: JobType job_type , float progress ) slot handle_eval_particle_normals_progress void handle_eval_particle_normals_progress ( float progress ) slot handle_eval_particle_normals_complete void handle_eval_particle_normals_complete ( std :: vector < bool > good_bad ) slot handle_group_pvalues_complete void handle_group_pvalues_complete () slot handle_alignment_changed void handle_alignment_changed ( int new_alignment ) slot run_good_bad_particles void run_good_bad_particles () slot handle_lda_progress void handle_lda_progress ( double progress ) slot handle_lda_complete void handle_lda_complete () slot handle_network_analysis_progress void handle_network_analysis_progress ( int progress ) slot handle_network_analysis_complete void handle_network_analysis_complete () slot show_difference_to_mean_clicked void show_difference_to_mean_clicked () slot group_analysis_combo_changed void group_analysis_combo_changed () Public Signals Documentation signal update_view void update_view () signal pca_update void pca_update () signal progress void progress ( int ) signal reconstruction_complete void reconstruction_complete () Public Functions Documentation function AnalysisTool AnalysisTool ( Preferences & prefs ) function ~AnalysisTool ~ AnalysisTool () function set_session void set_session ( QSharedPointer < Session > session ) set the pointer to the session function get_session QSharedPointer < Session > get_session () Return the session. function set_app void set_app ( ShapeWorksStudioApp * app ) set the pointer to the application function get_app inline ShapeWorksStudioApp * get_app () function set_active void set_active ( bool active ) Set if this tool is active. function get_active bool get_active () Return if this tool is active. function get_group_difference_mode bool get_group_difference_mode () function get_group_difference_vectors std :: vector < Shape :: Point > get_group_difference_vectors () function get_analysis_mode std :: string get_analysis_mode () function set_analysis_mode void set_analysis_mode ( std :: string mode ) function set_labels void set_labels ( QString which , QString value ) function get_pca_mode int get_pca_mode () function get_group_ratio double get_group_ratio () function get_pca_value double get_pca_value () function pca_animate bool pca_animate () function get_mca_level McaMode get_mca_level () const function get_sample_number int get_sample_number () function compute_stats bool compute_stats () function update_slider void update_slider () function reset_stats void reset_stats () function enable_actions void enable_actions ( bool newly_enabled = false ) function get_mean_shape_points Particles get_mean_shape_points () function get_mean_shape ShapeHandle get_mean_shape () function get_shape_points Particles get_shape_points ( int mode , double value ) function get_multi_level_shape_points Particles get_multi_level_shape_points ( int mode , double value , McaMode level ) function get_mode_shape ShapeHandle get_mode_shape ( int mode , double value ) function get_mca_mode_shape ShapeHandle get_mca_mode_shape ( int mode , double value , McaMode level ) function get_current_shape ShapeHandle get_current_shape () function get_stats ParticleShapeStatistics get_stats () function load_settings void load_settings () function store_settings void store_settings () function shutdown void shutdown () function export_variance_graph bool export_variance_graph ( QString filename ) function compute_shape_evaluations void compute_shape_evaluations () function get_group_analysis_type GroupAnalysisType get_group_analysis_type () Public Attributes Documentation variable MODE_ALL_SAMPLES_C static const std :: string MODE_ALL_SAMPLES_C ; variable MODE_MEAN_C static const std :: string MODE_MEAN_C ; variable MODE_PCA_C static const std :: string MODE_PCA_C ; variable MODE_SINGLE_SAMPLE_C static const std :: string MODE_SINGLE_SAMPLE_C ; variable MODE_REGRESSION_C static const std :: string MODE_REGRESSION_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::AnalysisTool"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#shapeworksanalysistool","text":"Inherits from QWidget","title":"shapeworks::AnalysisTool"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-types","text":"Name enum GroupAnalysisType enum McaMode using Analyze::AlignmentType AlignmentType using itk::Point< double, 3 > PointType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-slots","text":"Name void on_tabWidget_currentChanged () void handle_analysis_options () void handle_median () void on_mean_button_clicked () void on_group1_button_clicked () void on_group2_button_clicked () void on_difference_button_clicked () void on_pcaSlider_valueChanged () void on_group_slider_valueChanged () void on_pcaModeSpinBox_valueChanged (int i) void handle_pca_animate_state_changed () void handle_pca_timer () void handle_group_animate_state_changed () void handle_group_timer () void handle_reconstruction_complete () void on_reconstructionButton_clicked () void set_feature_map (const std::string & feature_map) Set the currently selected feature map. std::string get_display_feature_map () void group_changed () bool groups_active () void on_view_open_button_toggled () void on_surface_open_button_toggled () void on_metrics_open_button_toggled () bool is_group_active (int shape_index) void reconstruction_method_changed () void initialize_mesh_warper () void group_p_values_clicked () void network_analysis_clicked () void handle_eval_thread_complete (ShapeEvaluationJob::JobType job_type, Eigen::VectorXd data) void handle_eval_thread_progress (ShapeEvaluationJob::JobType job_type, float progress) void handle_eval_particle_normals_progress (float progress) void handle_eval_particle_normals_complete (std::vector< bool > good_bad) void handle_group_pvalues_complete () void handle_alignment_changed (int new_alignment) void run_good_bad_particles () void handle_lda_progress (double progress) void handle_lda_complete () void handle_network_analysis_progress (int progress) void handle_network_analysis_complete () void show_difference_to_mean_clicked () void group_analysis_combo_changed ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-signals","text":"Name void update_view () void pca_update () void progress (int ) void reconstruction_complete ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-functions","text":"Name AnalysisTool ( Preferences & prefs) ~AnalysisTool () void set_session (QSharedPointer< Session > session) set the pointer to the session QSharedPointer< Session > get_session () Return the session. void set_app ( ShapeWorksStudioApp * app) set the pointer to the application ShapeWorksStudioApp * get_app () void set_active (bool active) Set if this tool is active. bool get_active () Return if this tool is active. bool get_group_difference_mode () std::vector< Shape::Point > get_group_difference_vectors () std::string get_analysis_mode () void set_analysis_mode (std::string mode) void set_labels (QString which, QString value) int get_pca_mode () double get_group_ratio () double get_pca_value () bool pca_animate () McaMode get_mca_level () const int get_sample_number () bool compute_stats () void update_slider () void reset_stats () void enable_actions (bool newly_enabled =false) Particles get_mean_shape_points () ShapeHandle get_mean_shape () Particles get_shape_points (int mode, double value) Particles get_multi_level_shape_points (int mode, double value, McaMode level) ShapeHandle get_mode_shape (int mode, double value) ShapeHandle get_mca_mode_shape (int mode, double value, McaMode level) ShapeHandle get_current_shape () ParticleShapeStatistics get_stats () void load_settings () void store_settings () void shutdown () bool export_variance_graph (QString filename) void compute_shape_evaluations () GroupAnalysisType get_group_analysis_type ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-attributes","text":"Name const std::string MODE_ALL_SAMPLES_C const std::string MODE_MEAN_C const std::string MODE_PCA_C const std::string MODE_SINGLE_SAMPLE_C const std::string MODE_REGRESSION_C","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#enum-groupanalysistype","text":"Enumerator Value Description None 0 Pvalues 1 NetworkAnalysis 2 LDA 3","title":"enum GroupAnalysisType"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#enum-mcamode","text":"Enumerator Value Description Vanilla Within Between","title":"enum McaMode"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#using-alignmenttype","text":"using shapeworks :: AnalysisTool :: AlignmentType = Analyze :: AlignmentType ;","title":"using AlignmentType"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#using-pointtype","text":"using shapeworks :: AnalysisTool :: PointType = itk :: Point < double , 3 > ;","title":"using PointType"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_tabwidget_currentchanged","text":"void on_tabWidget_currentChanged ()","title":"slot on_tabWidget_currentChanged"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_analysis_options","text":"void handle_analysis_options ()","title":"slot handle_analysis_options"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_median","text":"void handle_median ()","title":"slot handle_median"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_mean_button_clicked","text":"void on_mean_button_clicked ()","title":"slot on_mean_button_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_group1_button_clicked","text":"void on_group1_button_clicked ()","title":"slot on_group1_button_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_group2_button_clicked","text":"void on_group2_button_clicked ()","title":"slot on_group2_button_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_difference_button_clicked","text":"void on_difference_button_clicked ()","title":"slot on_difference_button_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_pcaslider_valuechanged","text":"void on_pcaSlider_valueChanged ()","title":"slot on_pcaSlider_valueChanged"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_group_slider_valuechanged","text":"void on_group_slider_valueChanged ()","title":"slot on_group_slider_valueChanged"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_pcamodespinbox_valuechanged","text":"void on_pcaModeSpinBox_valueChanged ( int i )","title":"slot on_pcaModeSpinBox_valueChanged"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_pca_animate_state_changed","text":"void handle_pca_animate_state_changed ()","title":"slot handle_pca_animate_state_changed"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_pca_timer","text":"void handle_pca_timer ()","title":"slot handle_pca_timer"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_group_animate_state_changed","text":"void handle_group_animate_state_changed ()","title":"slot handle_group_animate_state_changed"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_group_timer","text":"void handle_group_timer ()","title":"slot handle_group_timer"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_reconstruction_complete","text":"void handle_reconstruction_complete ()","title":"slot handle_reconstruction_complete"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_reconstructionbutton_clicked","text":"void on_reconstructionButton_clicked ()","title":"slot on_reconstructionButton_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-set_feature_map","text":"void set_feature_map ( const std :: string & feature_map ) Set the currently selected feature map.","title":"slot set_feature_map"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-get_display_feature_map","text":"std :: string get_display_feature_map ()","title":"slot get_display_feature_map"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-group_changed","text":"void group_changed ()","title":"slot group_changed"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-groups_active","text":"bool groups_active ()","title":"slot groups_active"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_view_open_button_toggled","text":"void on_view_open_button_toggled ()","title":"slot on_view_open_button_toggled"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_surface_open_button_toggled","text":"void on_surface_open_button_toggled ()","title":"slot on_surface_open_button_toggled"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-on_metrics_open_button_toggled","text":"void on_metrics_open_button_toggled ()","title":"slot on_metrics_open_button_toggled"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-is_group_active","text":"bool is_group_active ( int shape_index )","title":"slot is_group_active"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-reconstruction_method_changed","text":"void reconstruction_method_changed ()","title":"slot reconstruction_method_changed"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-initialize_mesh_warper","text":"void initialize_mesh_warper ()","title":"slot initialize_mesh_warper"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-group_p_values_clicked","text":"void group_p_values_clicked ()","title":"slot group_p_values_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-network_analysis_clicked","text":"void network_analysis_clicked ()","title":"slot network_analysis_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_eval_thread_complete","text":"void handle_eval_thread_complete ( ShapeEvaluationJob :: JobType job_type , Eigen :: VectorXd data )","title":"slot handle_eval_thread_complete"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_eval_thread_progress","text":"void handle_eval_thread_progress ( ShapeEvaluationJob :: JobType job_type , float progress )","title":"slot handle_eval_thread_progress"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_eval_particle_normals_progress","text":"void handle_eval_particle_normals_progress ( float progress )","title":"slot handle_eval_particle_normals_progress"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_eval_particle_normals_complete","text":"void handle_eval_particle_normals_complete ( std :: vector < bool > good_bad )","title":"slot handle_eval_particle_normals_complete"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_group_pvalues_complete","text":"void handle_group_pvalues_complete ()","title":"slot handle_group_pvalues_complete"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_alignment_changed","text":"void handle_alignment_changed ( int new_alignment )","title":"slot handle_alignment_changed"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-run_good_bad_particles","text":"void run_good_bad_particles ()","title":"slot run_good_bad_particles"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_lda_progress","text":"void handle_lda_progress ( double progress )","title":"slot handle_lda_progress"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_lda_complete","text":"void handle_lda_complete ()","title":"slot handle_lda_complete"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_network_analysis_progress","text":"void handle_network_analysis_progress ( int progress )","title":"slot handle_network_analysis_progress"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-handle_network_analysis_complete","text":"void handle_network_analysis_complete ()","title":"slot handle_network_analysis_complete"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-show_difference_to_mean_clicked","text":"void show_difference_to_mean_clicked ()","title":"slot show_difference_to_mean_clicked"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#slot-group_analysis_combo_changed","text":"void group_analysis_combo_changed ()","title":"slot group_analysis_combo_changed"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#signal-update_view","text":"void update_view ()","title":"signal update_view"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#signal-pca_update","text":"void pca_update ()","title":"signal pca_update"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#signal-progress","text":"void progress ( int )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#signal-reconstruction_complete","text":"void reconstruction_complete ()","title":"signal reconstruction_complete"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-analysistool","text":"AnalysisTool ( Preferences & prefs )","title":"function AnalysisTool"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-analysistool_1","text":"~ AnalysisTool ()","title":"function ~AnalysisTool"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session ) set the pointer to the session","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_session","text":"QSharedPointer < Session > get_session () Return the session.","title":"function get_session"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-set_app","text":"void set_app ( ShapeWorksStudioApp * app ) set the pointer to the application","title":"function set_app"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_app","text":"inline ShapeWorksStudioApp * get_app ()","title":"function get_app"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-set_active","text":"void set_active ( bool active ) Set if this tool is active.","title":"function set_active"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_active","text":"bool get_active () Return if this tool is active.","title":"function get_active"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_group_difference_mode","text":"bool get_group_difference_mode ()","title":"function get_group_difference_mode"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_group_difference_vectors","text":"std :: vector < Shape :: Point > get_group_difference_vectors ()","title":"function get_group_difference_vectors"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_analysis_mode","text":"std :: string get_analysis_mode ()","title":"function get_analysis_mode"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-set_analysis_mode","text":"void set_analysis_mode ( std :: string mode )","title":"function set_analysis_mode"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-set_labels","text":"void set_labels ( QString which , QString value )","title":"function set_labels"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_pca_mode","text":"int get_pca_mode ()","title":"function get_pca_mode"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_group_ratio","text":"double get_group_ratio ()","title":"function get_group_ratio"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_pca_value","text":"double get_pca_value ()","title":"function get_pca_value"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-pca_animate","text":"bool pca_animate ()","title":"function pca_animate"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_mca_level","text":"McaMode get_mca_level () const","title":"function get_mca_level"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_sample_number","text":"int get_sample_number ()","title":"function get_sample_number"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-compute_stats","text":"bool compute_stats ()","title":"function compute_stats"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-update_slider","text":"void update_slider ()","title":"function update_slider"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-reset_stats","text":"void reset_stats ()","title":"function reset_stats"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-enable_actions","text":"void enable_actions ( bool newly_enabled = false )","title":"function enable_actions"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_mean_shape_points","text":"Particles get_mean_shape_points ()","title":"function get_mean_shape_points"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_mean_shape","text":"ShapeHandle get_mean_shape ()","title":"function get_mean_shape"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_shape_points","text":"Particles get_shape_points ( int mode , double value )","title":"function get_shape_points"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_multi_level_shape_points","text":"Particles get_multi_level_shape_points ( int mode , double value , McaMode level )","title":"function get_multi_level_shape_points"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_mode_shape","text":"ShapeHandle get_mode_shape ( int mode , double value )","title":"function get_mode_shape"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_mca_mode_shape","text":"ShapeHandle get_mca_mode_shape ( int mode , double value , McaMode level )","title":"function get_mca_mode_shape"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_current_shape","text":"ShapeHandle get_current_shape ()","title":"function get_current_shape"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_stats","text":"ParticleShapeStatistics get_stats ()","title":"function get_stats"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-load_settings","text":"void load_settings ()","title":"function load_settings"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-store_settings","text":"void store_settings ()","title":"function store_settings"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-shutdown","text":"void shutdown ()","title":"function shutdown"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-export_variance_graph","text":"bool export_variance_graph ( QString filename )","title":"function export_variance_graph"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-compute_shape_evaluations","text":"void compute_shape_evaluations ()","title":"function compute_shape_evaluations"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#function-get_group_analysis_type","text":"GroupAnalysisType get_group_analysis_type ()","title":"function get_group_analysis_type"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#variable-mode_all_samples_c","text":"static const std :: string MODE_ALL_SAMPLES_C ;","title":"variable MODE_ALL_SAMPLES_C"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#variable-mode_mean_c","text":"static const std :: string MODE_MEAN_C ;","title":"variable MODE_MEAN_C"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#variable-mode_pca_c","text":"static const std :: string MODE_PCA_C ;","title":"variable MODE_PCA_C"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#variable-mode_single_sample_c","text":"static const std :: string MODE_SINGLE_SAMPLE_C ;","title":"variable MODE_SINGLE_SAMPLE_C"},{"location":"api/Classes/classshapeworks_1_1AnalysisTool.html#variable-mode_regression_c","text":"static const std :: string MODE_REGRESSION_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable MODE_REGRESSION_C"},{"location":"api/Classes/classshapeworks_1_1AnalysisUtils.html","text":"shapeworks::AnalysisUtils Public Functions Name ParticleSystemEvaluation get_local_particle_system ( Session * session, int domain) Public Functions Documentation function get_local_particle_system static ParticleSystemEvaluation get_local_particle_system ( Session * session , int domain ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::AnalysisUtils"},{"location":"api/Classes/classshapeworks_1_1AnalysisUtils.html#shapeworksanalysisutils","text":"","title":"shapeworks::AnalysisUtils"},{"location":"api/Classes/classshapeworks_1_1AnalysisUtils.html#public-functions","text":"Name ParticleSystemEvaluation get_local_particle_system ( Session * session, int domain)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1AnalysisUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1AnalysisUtils.html#function-get_local_particle_system","text":"static ParticleSystemEvaluation get_local_particle_system ( Session * session , int domain ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_local_particle_system"},{"location":"api/Classes/classshapeworks_1_1Analyze.html","text":"shapeworks::Analyze High level analyze API. More... #include Public Types Name enum AlignmentType Public Functions Name Analyze (ProjectHandle project) void run_offline_analysis (std::string outfile, float range, float steps) Run offline analysis, saving results to outfile. ShapeList get_shapes () Return the list of shapes. int get_num_subjects () Return the number of subjects. int get_num_modes () Return the number of modes. int get_num_particles () Return the number of particles. Particles get_mean_shape_points () Return the mean shape. ShapeHandle get_mean_shape () Return the mean shape. Particles get_group_shape_particles (double ratio) ShapeHandle get_group_shape (double ratio) Particles get_shape_points (int mode, double value) Return the particles for a given mode and value. ShapeHandle get_mode_shape (int mode, double value) Return the shape for a given mode and value. bool groups_active () ShapeHandle create_shape_from_points ( Particles points) Eigen::VectorXf get_subject_features (int subject, std::string feature_name) void set_group_selection (std::string group_name, std::string group1, std::string group2) ParticleSystemEvaluation get_local_particle_system (int domain) Detailed Description class shapeworks :: Analyze ; High level analyze API. The Analyze class operates on a Project . Public Types Documentation enum AlignmentType Enumerator Value Description Global -2 Local -1 Public Functions Documentation function Analyze Analyze ( ProjectHandle project ) function run_offline_analysis void run_offline_analysis ( std :: string outfile , float range , float steps ) Run offline analysis, saving results to outfile. function get_shapes ShapeList get_shapes () Return the list of shapes. function get_num_subjects int get_num_subjects () Return the number of subjects. function get_num_modes int get_num_modes () Return the number of modes. function get_num_particles int get_num_particles () Return the number of particles. function get_mean_shape_points Particles get_mean_shape_points () Return the mean shape. function get_mean_shape ShapeHandle get_mean_shape () Return the mean shape. function get_group_shape_particles Particles get_group_shape_particles ( double ratio ) function get_group_shape ShapeHandle get_group_shape ( double ratio ) function get_shape_points Particles get_shape_points ( int mode , double value ) Return the particles for a given mode and value. function get_mode_shape ShapeHandle get_mode_shape ( int mode , double value ) Return the shape for a given mode and value. function groups_active inline bool groups_active () function create_shape_from_points ShapeHandle create_shape_from_points ( Particles points ) function get_subject_features Eigen :: VectorXf get_subject_features ( int subject , std :: string feature_name ) function set_group_selection void set_group_selection ( std :: string group_name , std :: string group1 , std :: string group2 ) function get_local_particle_system ParticleSystemEvaluation get_local_particle_system ( int domain ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Analyze"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#shapeworksanalyze","text":"High level analyze API. More... #include ","title":"shapeworks::Analyze"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#public-types","text":"Name enum AlignmentType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#public-functions","text":"Name Analyze (ProjectHandle project) void run_offline_analysis (std::string outfile, float range, float steps) Run offline analysis, saving results to outfile. ShapeList get_shapes () Return the list of shapes. int get_num_subjects () Return the number of subjects. int get_num_modes () Return the number of modes. int get_num_particles () Return the number of particles. Particles get_mean_shape_points () Return the mean shape. ShapeHandle get_mean_shape () Return the mean shape. Particles get_group_shape_particles (double ratio) ShapeHandle get_group_shape (double ratio) Particles get_shape_points (int mode, double value) Return the particles for a given mode and value. ShapeHandle get_mode_shape (int mode, double value) Return the shape for a given mode and value. bool groups_active () ShapeHandle create_shape_from_points ( Particles points) Eigen::VectorXf get_subject_features (int subject, std::string feature_name) void set_group_selection (std::string group_name, std::string group1, std::string group2) ParticleSystemEvaluation get_local_particle_system (int domain)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#detailed-description","text":"class shapeworks :: Analyze ; High level analyze API. The Analyze class operates on a Project .","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#enum-alignmenttype","text":"Enumerator Value Description Global -2 Local -1","title":"enum AlignmentType"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-analyze","text":"Analyze ( ProjectHandle project )","title":"function Analyze"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-run_offline_analysis","text":"void run_offline_analysis ( std :: string outfile , float range , float steps ) Run offline analysis, saving results to outfile.","title":"function run_offline_analysis"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_shapes","text":"ShapeList get_shapes () Return the list of shapes.","title":"function get_shapes"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_num_subjects","text":"int get_num_subjects () Return the number of subjects.","title":"function get_num_subjects"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_num_modes","text":"int get_num_modes () Return the number of modes.","title":"function get_num_modes"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_num_particles","text":"int get_num_particles () Return the number of particles.","title":"function get_num_particles"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_mean_shape_points","text":"Particles get_mean_shape_points () Return the mean shape.","title":"function get_mean_shape_points"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_mean_shape","text":"ShapeHandle get_mean_shape () Return the mean shape.","title":"function get_mean_shape"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_group_shape_particles","text":"Particles get_group_shape_particles ( double ratio )","title":"function get_group_shape_particles"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_group_shape","text":"ShapeHandle get_group_shape ( double ratio )","title":"function get_group_shape"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_shape_points","text":"Particles get_shape_points ( int mode , double value ) Return the particles for a given mode and value.","title":"function get_shape_points"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_mode_shape","text":"ShapeHandle get_mode_shape ( int mode , double value ) Return the shape for a given mode and value.","title":"function get_mode_shape"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-groups_active","text":"inline bool groups_active ()","title":"function groups_active"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-create_shape_from_points","text":"ShapeHandle create_shape_from_points ( Particles points )","title":"function create_shape_from_points"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_subject_features","text":"Eigen :: VectorXf get_subject_features ( int subject , std :: string feature_name )","title":"function get_subject_features"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-set_group_selection","text":"void set_group_selection ( std :: string group_name , std :: string group1 , std :: string group2 )","title":"function set_group_selection"},{"location":"api/Classes/classshapeworks_1_1Analyze.html#function-get_local_particle_system","text":"ParticleSystemEvaluation get_local_particle_system ( int domain ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_local_particle_system"},{"location":"api/Classes/classshapeworks_1_1AnalyzeCommandGroup.html","text":"shapeworks::AnalyzeCommandGroup Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::AnalyzeCommandGroup"},{"location":"api/Classes/classshapeworks_1_1AnalyzeCommandGroup.html#shapeworksanalyzecommandgroup","text":"Inherits from shapeworks::Command","title":"shapeworks::AnalyzeCommandGroup"},{"location":"api/Classes/classshapeworks_1_1AnalyzeCommandGroup.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1AnalyzeCommandGroup.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1AnalyzeCommandGroup.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1AnalyzeCommandGroup.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html","text":"shapeworks::ColorMap Public Functions Name void construct_lookup_table (vtkSmartPointer< vtkLookupTable > lut) void set_discrete_mode (bool discrete_mode) void set_reverse_mode (bool reverse_mode) vtkColor3ub convert (QColor color) Public Attributes Name QString name_ vtkSmartPointer< vtkColorSeries > color_series_ Public Functions Documentation function construct_lookup_table void construct_lookup_table ( vtkSmartPointer < vtkLookupTable > lut ) function set_discrete_mode inline void set_discrete_mode ( bool discrete_mode ) function set_reverse_mode inline void set_reverse_mode ( bool reverse_mode ) function convert static vtkColor3ub convert ( QColor color ) Public Attributes Documentation variable name_ QString name_ ; variable color_series_ vtkSmartPointer < vtkColorSeries > color_series_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ColorMap"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#shapeworkscolormap","text":"","title":"shapeworks::ColorMap"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#public-functions","text":"Name void construct_lookup_table (vtkSmartPointer< vtkLookupTable > lut) void set_discrete_mode (bool discrete_mode) void set_reverse_mode (bool reverse_mode) vtkColor3ub convert (QColor color)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#public-attributes","text":"Name QString name_ vtkSmartPointer< vtkColorSeries > color_series_","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#function-construct_lookup_table","text":"void construct_lookup_table ( vtkSmartPointer < vtkLookupTable > lut )","title":"function construct_lookup_table"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#function-set_discrete_mode","text":"inline void set_discrete_mode ( bool discrete_mode )","title":"function set_discrete_mode"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#function-set_reverse_mode","text":"inline void set_reverse_mode ( bool reverse_mode )","title":"function set_reverse_mode"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#function-convert","text":"static vtkColor3ub convert ( QColor color )","title":"function convert"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#variable-name_","text":"QString name_ ;","title":"variable name_"},{"location":"api/Classes/classshapeworks_1_1ColorMap.html#variable-color_series_","text":"vtkSmartPointer < vtkColorSeries > color_series_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable color_series_"},{"location":"api/Classes/classshapeworks_1_1ColorMaps.html","text":"shapeworks::ColorMaps Inherits from std::vector< ColorMap > Public Functions Name ColorMaps () vtkSmartPointer< vtkColorSeries > get_color_series (int index) ColorMap get_color_map (int index) Public Functions Documentation function ColorMaps ColorMaps () function get_color_series inline vtkSmartPointer < vtkColorSeries > get_color_series ( int index ) function get_color_map inline ColorMap get_color_map ( int index ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ColorMaps"},{"location":"api/Classes/classshapeworks_1_1ColorMaps.html#shapeworkscolormaps","text":"Inherits from std::vector< ColorMap >","title":"shapeworks::ColorMaps"},{"location":"api/Classes/classshapeworks_1_1ColorMaps.html#public-functions","text":"Name ColorMaps () vtkSmartPointer< vtkColorSeries > get_color_series (int index) ColorMap get_color_map (int index)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ColorMaps.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ColorMaps.html#function-colormaps","text":"ColorMaps ()","title":"function ColorMaps"},{"location":"api/Classes/classshapeworks_1_1ColorMaps.html#function-get_color_series","text":"inline vtkSmartPointer < vtkColorSeries > get_color_series ( int index )","title":"function get_color_series"},{"location":"api/Classes/classshapeworks_1_1ColorMaps.html#function-get_color_map","text":"inline ColorMap get_color_map ( int index ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_color_map"},{"location":"api/Classes/classshapeworks_1_1Command.html","text":"shapeworks::Command Inherited by shapeworks::AnalyzeCommandGroup , shapeworks::GroomCommandGroup , shapeworks::ImageCommand , shapeworks::MeshCommand , shapeworks::OptimizeCommandGroup , shapeworks::ParticleSystemCommand , shapeworks::ProjectCommandGroup , shapeworks::ShapeworksCommand Public Functions Name virtual const std::string type () const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions Name virtual void buildParser () Protected Attributes Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () Reimplemented by : shapeworks::ImageCommand::type , shapeworks::MeshCommand::type , shapeworks::OptimizeCommandGroup::type , shapeworks::GroomCommandGroup::type , shapeworks::AnalyzeCommandGroup::type , shapeworks::ProjectCommandGroup::type , shapeworks::ParticleSystemCommand::type , shapeworks::ShapeworksCommand::type function name inline const std :: string name () const function usage inline const std :: string usage () const function desc inline const std :: string desc () const function parse_args std :: vector < std :: string > parse_args ( const std :: vector < std :: string > & arguments ) parses the arguments for this command, saving them in the parser and returning the leftovers function run int run ( SharedCommandData & sharedData ) calls execute for this command using the parsed args, returning system exit value Protected Functions Documentation function buildParser virtual void buildParser () Protected Attributes Documentation variable parser optparse :: OptionParser parser ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Command"},{"location":"api/Classes/classshapeworks_1_1Command.html#shapeworkscommand","text":"Inherited by shapeworks::AnalyzeCommandGroup , shapeworks::GroomCommandGroup , shapeworks::ImageCommand , shapeworks::MeshCommand , shapeworks::OptimizeCommandGroup , shapeworks::ParticleSystemCommand , shapeworks::ProjectCommandGroup , shapeworks::ShapeworksCommand","title":"shapeworks::Command"},{"location":"api/Classes/classshapeworks_1_1Command.html#public-functions","text":"Name virtual const std::string type () const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Command.html#protected-functions","text":"Name virtual void buildParser ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1Command.html#protected-attributes","text":"Name optparse::OptionParser parser","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1Command.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Command.html#function-type","text":"inline virtual const std :: string type () Reimplemented by : shapeworks::ImageCommand::type , shapeworks::MeshCommand::type , shapeworks::OptimizeCommandGroup::type , shapeworks::GroomCommandGroup::type , shapeworks::AnalyzeCommandGroup::type , shapeworks::ProjectCommandGroup::type , shapeworks::ParticleSystemCommand::type , shapeworks::ShapeworksCommand::type","title":"function type"},{"location":"api/Classes/classshapeworks_1_1Command.html#function-name","text":"inline const std :: string name () const","title":"function name"},{"location":"api/Classes/classshapeworks_1_1Command.html#function-usage","text":"inline const std :: string usage () const","title":"function usage"},{"location":"api/Classes/classshapeworks_1_1Command.html#function-desc","text":"inline const std :: string desc () const","title":"function desc"},{"location":"api/Classes/classshapeworks_1_1Command.html#function-parse_args","text":"std :: vector < std :: string > parse_args ( const std :: vector < std :: string > & arguments ) parses the arguments for this command, saving them in the parser and returning the leftovers","title":"function parse_args"},{"location":"api/Classes/classshapeworks_1_1Command.html#function-run","text":"int run ( SharedCommandData & sharedData ) calls execute for this command using the parsed args, returning system exit value","title":"function run"},{"location":"api/Classes/classshapeworks_1_1Command.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Command.html#function-buildparser","text":"virtual void buildParser ()","title":"function buildParser"},{"location":"api/Classes/classshapeworks_1_1Command.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Command.html#variable-parser","text":"optparse :: OptionParser parser ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable parser"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html","text":"shapeworks::CompareSettings Public Functions Name DisplayMode get_display_mode () bool get_mean_shape_checked () Public Attributes Name bool compare_enabled_ bool surface_distance_mode_ bool original_checked_ bool groomed_checked_ bool reconstructed_checked_ bool mean_shape_checked_ float opacity_ Public Functions Documentation function get_display_mode inline DisplayMode get_display_mode () function get_mean_shape_checked inline bool get_mean_shape_checked () Public Attributes Documentation variable compare_enabled_ bool compare_enabled_ = false ; variable surface_distance_mode_ bool surface_distance_mode_ = false ; variable original_checked_ bool original_checked_ = false ; variable groomed_checked_ bool groomed_checked_ = false ; variable reconstructed_checked_ bool reconstructed_checked_ = false ; variable mean_shape_checked_ bool mean_shape_checked_ = false ; variable opacity_ float opacity_ = 1.0 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::CompareSettings"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#shapeworkscomparesettings","text":"","title":"shapeworks::CompareSettings"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#public-functions","text":"Name DisplayMode get_display_mode () bool get_mean_shape_checked ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#public-attributes","text":"Name bool compare_enabled_ bool surface_distance_mode_ bool original_checked_ bool groomed_checked_ bool reconstructed_checked_ bool mean_shape_checked_ float opacity_","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#function-get_display_mode","text":"inline DisplayMode get_display_mode ()","title":"function get_display_mode"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#function-get_mean_shape_checked","text":"inline bool get_mean_shape_checked ()","title":"function get_mean_shape_checked"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#variable-compare_enabled_","text":"bool compare_enabled_ = false ;","title":"variable compare_enabled_"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#variable-surface_distance_mode_","text":"bool surface_distance_mode_ = false ;","title":"variable surface_distance_mode_"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#variable-original_checked_","text":"bool original_checked_ = false ;","title":"variable original_checked_"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#variable-groomed_checked_","text":"bool groomed_checked_ = false ;","title":"variable groomed_checked_"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#variable-reconstructed_checked_","text":"bool reconstructed_checked_ = false ;","title":"variable reconstructed_checked_"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#variable-mean_shape_checked_","text":"bool mean_shape_checked_ = false ;","title":"variable mean_shape_checked_"},{"location":"api/Classes/classshapeworks_1_1CompareSettings.html#variable-opacity_","text":"float opacity_ = 1.0 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable opacity_"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html","text":"shapeworks::CompareWidget Inherits from QWidget Public Signals Name void settings_changed () Public Functions Name CompareWidget (QWidget * parent =nullptr) ~CompareWidget () CompareSettings get_settings () void set_available (DisplayMode mode, bool available) void set_mean_shape_available (bool available) bool check_any_available () Public Signals Documentation signal settings_changed void settings_changed () Public Functions Documentation function CompareWidget explicit CompareWidget ( QWidget * parent = nullptr ) function ~CompareWidget ~ CompareWidget () function get_settings CompareSettings get_settings () function set_available void set_available ( DisplayMode mode , bool available ) function set_mean_shape_available void set_mean_shape_available ( bool available ) function check_any_available bool check_any_available () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::CompareWidget"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#shapeworkscomparewidget","text":"Inherits from QWidget","title":"shapeworks::CompareWidget"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#public-signals","text":"Name void settings_changed ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#public-functions","text":"Name CompareWidget (QWidget * parent =nullptr) ~CompareWidget () CompareSettings get_settings () void set_available (DisplayMode mode, bool available) void set_mean_shape_available (bool available) bool check_any_available ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#signal-settings_changed","text":"void settings_changed ()","title":"signal settings_changed"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#function-comparewidget","text":"explicit CompareWidget ( QWidget * parent = nullptr )","title":"function CompareWidget"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#function-comparewidget_1","text":"~ CompareWidget ()","title":"function ~CompareWidget"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#function-get_settings","text":"CompareSettings get_settings ()","title":"function get_settings"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#function-set_available","text":"void set_available ( DisplayMode mode , bool available )","title":"function set_available"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#function-set_mean_shape_available","text":"void set_mean_shape_available ( bool available )","title":"function set_mean_shape_available"},{"location":"api/Classes/classshapeworks_1_1CompareWidget.html#function-check_any_available","text":"bool check_any_available () Updated on 2023-10-24 at 22:16:01 +0000","title":"function check_any_available"},{"location":"api/Classes/classshapeworks_1_1Constraint.html","text":"shapeworks::Constraint More... #include Inherited by shapeworks::FreeFormConstraint , shapeworks::PlaneConstraint Public Functions Name bool isViolated (const vnl_vector< double > & pt) const Returns if pt in vnl_vector format is violated by the constraint. virtual bool isViolated (const Eigen::Vector3d & pt) const =0 Returns if pt in Eigen format is violated by the constraint. virtual void print () const =0 Prints the constraint neatly. void setMus (std::vector< double > inmu) Initializes mu. std::vector< double > getMus () Gets mu. virtual Eigen::Vector3d constraintGradient (const Eigen::Vector3d & pt) const =0 Returns the gradient of the constraint. virtual double constraintEval (const Eigen::Vector3d & pt) const =0 Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. void updateMu (const Eigen::Vector3d & pt, double C, size_t index) Updates the value of mu according to the augmented lagrangian update. Eigen::Vector3d lagragianGradient (const Eigen::Vector3d & pt, double C, size_t index) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better. Protected Functions Name int sgn (double val) Returns the sign of the double. Protected Attributes Name std::vector< double > mus_ Mu is the lagrangian momentum term. Detailed Description class shapeworks :: Constraint ; This class is the general constraint class. Each instance represents a single constraint, either cutting-plane, sphere or free-form. They all inherit from this class. This class containts all the infrastructure to handle gradients and evaluations, which is shared among all constraint types. NOTE: Not actually using the augmented lagrangian. We are using quadratic penalty and not lagrangian because it works better. Public Functions Documentation function isViolated inline bool isViolated ( const vnl_vector < double > & pt ) const Returns if pt in vnl_vector format is violated by the constraint. function isViolated virtual bool isViolated ( const Eigen :: Vector3d & pt ) const = 0 Returns if pt in Eigen format is violated by the constraint. Reimplemented by : shapeworks::FreeFormConstraint::isViolated , shapeworks::PlaneConstraint::isViolated function print virtual void print () const = 0 Prints the constraint neatly. Reimplemented by : shapeworks::FreeFormConstraint::print , shapeworks::PlaneConstraint::print function setMus inline void setMus ( std :: vector < double > inmu ) Initializes mu. function getMus inline std :: vector < double > getMus () Gets mu. function constraintGradient virtual Eigen :: Vector3d constraintGradient ( const Eigen :: Vector3d & pt ) const = 0 Returns the gradient of the constraint. Reimplemented by : shapeworks::FreeFormConstraint::constraintGradient , shapeworks::PlaneConstraint::constraintGradient function constraintEval virtual double constraintEval ( const Eigen :: Vector3d & pt ) const = 0 Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. Reimplemented by : shapeworks::FreeFormConstraint::constraintEval , shapeworks::PlaneConstraint::constraintEval function updateMu void updateMu ( const Eigen :: Vector3d & pt , double C , size_t index ) Updates the value of mu according to the augmented lagrangian update. function lagragianGradient Eigen :: Vector3d lagragianGradient ( const Eigen :: Vector3d & pt , double C , size_t index ) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better. Protected Functions Documentation function sgn inline int sgn ( double val ) Returns the sign of the double. Protected Attributes Documentation variable mus_ std :: vector < double > mus_ ; Mu is the lagrangian momentum term. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Constraint"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#shapeworksconstraint","text":"More... #include Inherited by shapeworks::FreeFormConstraint , shapeworks::PlaneConstraint","title":"shapeworks::Constraint"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#public-functions","text":"Name bool isViolated (const vnl_vector< double > & pt) const Returns if pt in vnl_vector format is violated by the constraint. virtual bool isViolated (const Eigen::Vector3d & pt) const =0 Returns if pt in Eigen format is violated by the constraint. virtual void print () const =0 Prints the constraint neatly. void setMus (std::vector< double > inmu) Initializes mu. std::vector< double > getMus () Gets mu. virtual Eigen::Vector3d constraintGradient (const Eigen::Vector3d & pt) const =0 Returns the gradient of the constraint. virtual double constraintEval (const Eigen::Vector3d & pt) const =0 Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. void updateMu (const Eigen::Vector3d & pt, double C, size_t index) Updates the value of mu according to the augmented lagrangian update. Eigen::Vector3d lagragianGradient (const Eigen::Vector3d & pt, double C, size_t index) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#protected-functions","text":"Name int sgn (double val) Returns the sign of the double.","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#protected-attributes","text":"Name std::vector< double > mus_ Mu is the lagrangian momentum term.","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#detailed-description","text":"class shapeworks :: Constraint ; This class is the general constraint class. Each instance represents a single constraint, either cutting-plane, sphere or free-form. They all inherit from this class. This class containts all the infrastructure to handle gradients and evaluations, which is shared among all constraint types. NOTE: Not actually using the augmented lagrangian. We are using quadratic penalty and not lagrangian because it works better.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-isviolated","text":"inline bool isViolated ( const vnl_vector < double > & pt ) const Returns if pt in vnl_vector format is violated by the constraint.","title":"function isViolated"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-isviolated_1","text":"virtual bool isViolated ( const Eigen :: Vector3d & pt ) const = 0 Returns if pt in Eigen format is violated by the constraint. Reimplemented by : shapeworks::FreeFormConstraint::isViolated , shapeworks::PlaneConstraint::isViolated","title":"function isViolated"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-print","text":"virtual void print () const = 0 Prints the constraint neatly. Reimplemented by : shapeworks::FreeFormConstraint::print , shapeworks::PlaneConstraint::print","title":"function print"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-setmus","text":"inline void setMus ( std :: vector < double > inmu ) Initializes mu.","title":"function setMus"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-getmus","text":"inline std :: vector < double > getMus () Gets mu.","title":"function getMus"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-constraintgradient","text":"virtual Eigen :: Vector3d constraintGradient ( const Eigen :: Vector3d & pt ) const = 0 Returns the gradient of the constraint. Reimplemented by : shapeworks::FreeFormConstraint::constraintGradient , shapeworks::PlaneConstraint::constraintGradient","title":"function constraintGradient"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-constrainteval","text":"virtual double constraintEval ( const Eigen :: Vector3d & pt ) const = 0 Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. Reimplemented by : shapeworks::FreeFormConstraint::constraintEval , shapeworks::PlaneConstraint::constraintEval","title":"function constraintEval"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-updatemu","text":"void updateMu ( const Eigen :: Vector3d & pt , double C , size_t index ) Updates the value of mu according to the augmented lagrangian update.","title":"function updateMu"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-lagragiangradient","text":"Eigen :: Vector3d lagragianGradient ( const Eigen :: Vector3d & pt , double C , size_t index ) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better.","title":"function lagragianGradient"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#function-sgn","text":"inline int sgn ( double val ) Returns the sign of the double.","title":"function sgn"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Constraint.html#variable-mus_","text":"std :: vector < double > mus_ ; Mu is the lagrangian momentum term. Updated on 2023-10-24 at 22:16:01 +0000","title":"variable mus_"},{"location":"api/Classes/classshapeworks_1_1Constraints.html","text":"shapeworks::Constraints More... #include Public Types Name using itk::Point< double, 3 > Point3 Public Functions Name Constraints () Constraints are inactive when initialized. ~Constraints () void addPlane (const vnl_vector< double > & a, const vnl_vector< double > & b, const vnl_vector< double > & c) Adds a cutting-plane boundary constraint. Constraints are used to isolate areas of interest on shape surfaces. void addFreeFormConstraint (std::shared_ptr< shapeworks::Mesh > mesh) Adds the free-form boundary constraint, or FFC. Constraints are used to isolate areas of interest on shape surfaces. bool transformConstraints (const vnl_matrix_fixed< double, 4, 4 > & transform) Applies transformations to free-form constraints (FFCs) bool transformPlanes (const vnl_matrix_fixed< double, 4, 4 > & transform) Applies transformations to cutting-plane constraints. std::vector< PlaneConstraint > & getPlaneConstraints () Returns the vector that constains all plane constraints, of type PlaneConstraint . See class PlaneConstraint for more info. FreeFormConstraint & getFreeformConstraint () Returns the free form constraint, of type FreeFormConstraint . See class FreeFormConstraint for more info. bool isAnyViolated (const Point3 & pos) Returns true if any constraint is violated by point pos. void printAll () Prints all constraints in a neat format. Make sure to disable multithreading if printing within to optimization to avoid jumbled output. std::string violationReport (const Point3 & pos, size_t index) Prints out a comprehensive violation report with each constraint that is violated and the magnitude of such violation by point pos. Index can be 0 if one does not have the index. std::vector< std::vector< double > > violationReportData (const Point3 & pos) Returns the distance to every cosntraint with [0] plane, [1] sphere, and [2] FFC. vnl_vector_fixed< double, 3 > constraintsLagrangianGradient (const Point3 & pos, const Point3 & prepos, double C, size_t index) Returns the constraint gradient. prepos is the current particle, pos is the particle with an optimization update applied, C can be 1, and index is the index of the particle. void InitializeLagrangianParameters (std::vector< double > mus) Initializes lagrangian parameter mus. void UpdateMus (const Point3 & pos, double C, size_t index) Updates mus, the momentum variable of the augmented lagrangian. bool GetActive () Gets the variable active, which determines whether constraints are being used. void SetActive (bool ac) Sets the variable active, which determines whether constraints are being used. void read (std::string filename) Reads in a constraint json file named filename. void write (std::string filename) Writes out a constraint json file named filename. bool hasConstraints () void clipMesh ( Mesh & mesh) Clips the mesh that has been passed into it by the constraints stored in this object. Detailed Description class shapeworks :: Constraints ; This class contains the set of boundary constraints that are appleid to the shapes in the dataset. They are used to isolate areas of interest on shape surfaces/volumes. These boundary constraints currently take the form of cutting planes, cutting spheres (deprecated), or free-form constraints (FFCs). Do not confuse these with the ApplyConstraints function found in the \"domain\" code, they refer to the action of snapping to the surface and do not serve to isolate areas of interest. Please check out Libs/Optimize/Constraints/Constraints for a constraints roadmap Public Types Documentation using Point3 using shapeworks :: Constraints :: Point3 = itk :: Point < double , 3 > ; Public Functions Documentation function Constraints inline Constraints () Constraints are inactive when initialized. function ~Constraints inline ~ Constraints () function addPlane void addPlane ( const vnl_vector < double > & a , const vnl_vector < double > & b , const vnl_vector < double > & c ) Adds a cutting-plane boundary constraint. Constraints are used to isolate areas of interest on shape surfaces. function addFreeFormConstraint void addFreeFormConstraint ( std :: shared_ptr < shapeworks :: Mesh > mesh ) Adds the free-form boundary constraint, or FFC. Constraints are used to isolate areas of interest on shape surfaces. function transformConstraints bool transformConstraints ( const vnl_matrix_fixed < double , 4 , 4 > & transform ) Applies transformations to free-form constraints (FFCs) function transformPlanes bool transformPlanes ( const vnl_matrix_fixed < double , 4 , 4 > & transform ) Applies transformations to cutting-plane constraints. function getPlaneConstraints inline std :: vector < PlaneConstraint > & getPlaneConstraints () Returns the vector that constains all plane constraints, of type PlaneConstraint . See class PlaneConstraint for more info. function getFreeformConstraint FreeFormConstraint & getFreeformConstraint () Returns the free form constraint, of type FreeFormConstraint . See class FreeFormConstraint for more info. function isAnyViolated bool isAnyViolated ( const Point3 & pos ) Returns true if any constraint is violated by point pos. function printAll void printAll () Prints all constraints in a neat format. Make sure to disable multithreading if printing within to optimization to avoid jumbled output. function violationReport std :: string violationReport ( const Point3 & pos , size_t index ) Prints out a comprehensive violation report with each constraint that is violated and the magnitude of such violation by point pos. Index can be 0 if one does not have the index. function violationReportData std :: vector < std :: vector < double > > violationReportData ( const Point3 & pos ) Returns the distance to every cosntraint with [0] plane, [1] sphere, and [2] FFC. function constraintsLagrangianGradient vnl_vector_fixed < double , 3 > constraintsLagrangianGradient ( const Point3 & pos , const Point3 & prepos , double C , size_t index ) Returns the constraint gradient. prepos is the current particle, pos is the particle with an optimization update applied, C can be 1, and index is the index of the particle. function InitializeLagrangianParameters void InitializeLagrangianParameters ( std :: vector < double > mus ) Initializes lagrangian parameter mus. function UpdateMus void UpdateMus ( const Point3 & pos , double C , size_t index ) Updates mus, the momentum variable of the augmented lagrangian. function GetActive inline bool GetActive () Gets the variable active, which determines whether constraints are being used. function SetActive inline void SetActive ( bool ac ) Sets the variable active, which determines whether constraints are being used. function read void read ( std :: string filename ) Reads in a constraint json file named filename. function write void write ( std :: string filename ) Writes out a constraint json file named filename. function hasConstraints bool hasConstraints () function clipMesh void clipMesh ( Mesh & mesh ) Clips the mesh that has been passed into it by the constraints stored in this object. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Constraints"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#shapeworksconstraints","text":"More... #include ","title":"shapeworks::Constraints"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#public-types","text":"Name using itk::Point< double, 3 > Point3","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#public-functions","text":"Name Constraints () Constraints are inactive when initialized. ~Constraints () void addPlane (const vnl_vector< double > & a, const vnl_vector< double > & b, const vnl_vector< double > & c) Adds a cutting-plane boundary constraint. Constraints are used to isolate areas of interest on shape surfaces. void addFreeFormConstraint (std::shared_ptr< shapeworks::Mesh > mesh) Adds the free-form boundary constraint, or FFC. Constraints are used to isolate areas of interest on shape surfaces. bool transformConstraints (const vnl_matrix_fixed< double, 4, 4 > & transform) Applies transformations to free-form constraints (FFCs) bool transformPlanes (const vnl_matrix_fixed< double, 4, 4 > & transform) Applies transformations to cutting-plane constraints. std::vector< PlaneConstraint > & getPlaneConstraints () Returns the vector that constains all plane constraints, of type PlaneConstraint . See class PlaneConstraint for more info. FreeFormConstraint & getFreeformConstraint () Returns the free form constraint, of type FreeFormConstraint . See class FreeFormConstraint for more info. bool isAnyViolated (const Point3 & pos) Returns true if any constraint is violated by point pos. void printAll () Prints all constraints in a neat format. Make sure to disable multithreading if printing within to optimization to avoid jumbled output. std::string violationReport (const Point3 & pos, size_t index) Prints out a comprehensive violation report with each constraint that is violated and the magnitude of such violation by point pos. Index can be 0 if one does not have the index. std::vector< std::vector< double > > violationReportData (const Point3 & pos) Returns the distance to every cosntraint with [0] plane, [1] sphere, and [2] FFC. vnl_vector_fixed< double, 3 > constraintsLagrangianGradient (const Point3 & pos, const Point3 & prepos, double C, size_t index) Returns the constraint gradient. prepos is the current particle, pos is the particle with an optimization update applied, C can be 1, and index is the index of the particle. void InitializeLagrangianParameters (std::vector< double > mus) Initializes lagrangian parameter mus. void UpdateMus (const Point3 & pos, double C, size_t index) Updates mus, the momentum variable of the augmented lagrangian. bool GetActive () Gets the variable active, which determines whether constraints are being used. void SetActive (bool ac) Sets the variable active, which determines whether constraints are being used. void read (std::string filename) Reads in a constraint json file named filename. void write (std::string filename) Writes out a constraint json file named filename. bool hasConstraints () void clipMesh ( Mesh & mesh) Clips the mesh that has been passed into it by the constraints stored in this object.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#detailed-description","text":"class shapeworks :: Constraints ; This class contains the set of boundary constraints that are appleid to the shapes in the dataset. They are used to isolate areas of interest on shape surfaces/volumes. These boundary constraints currently take the form of cutting planes, cutting spheres (deprecated), or free-form constraints (FFCs). Do not confuse these with the ApplyConstraints function found in the \"domain\" code, they refer to the action of snapping to the surface and do not serve to isolate areas of interest. Please check out Libs/Optimize/Constraints/Constraints for a constraints roadmap","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#using-point3","text":"using shapeworks :: Constraints :: Point3 = itk :: Point < double , 3 > ;","title":"using Point3"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-constraints","text":"inline Constraints () Constraints are inactive when initialized.","title":"function Constraints"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-constraints_1","text":"inline ~ Constraints ()","title":"function ~Constraints"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-addplane","text":"void addPlane ( const vnl_vector < double > & a , const vnl_vector < double > & b , const vnl_vector < double > & c ) Adds a cutting-plane boundary constraint. Constraints are used to isolate areas of interest on shape surfaces.","title":"function addPlane"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-addfreeformconstraint","text":"void addFreeFormConstraint ( std :: shared_ptr < shapeworks :: Mesh > mesh ) Adds the free-form boundary constraint, or FFC. Constraints are used to isolate areas of interest on shape surfaces.","title":"function addFreeFormConstraint"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-transformconstraints","text":"bool transformConstraints ( const vnl_matrix_fixed < double , 4 , 4 > & transform ) Applies transformations to free-form constraints (FFCs)","title":"function transformConstraints"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-transformplanes","text":"bool transformPlanes ( const vnl_matrix_fixed < double , 4 , 4 > & transform ) Applies transformations to cutting-plane constraints.","title":"function transformPlanes"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-getplaneconstraints","text":"inline std :: vector < PlaneConstraint > & getPlaneConstraints () Returns the vector that constains all plane constraints, of type PlaneConstraint . See class PlaneConstraint for more info.","title":"function getPlaneConstraints"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-getfreeformconstraint","text":"FreeFormConstraint & getFreeformConstraint () Returns the free form constraint, of type FreeFormConstraint . See class FreeFormConstraint for more info.","title":"function getFreeformConstraint"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-isanyviolated","text":"bool isAnyViolated ( const Point3 & pos ) Returns true if any constraint is violated by point pos.","title":"function isAnyViolated"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-printall","text":"void printAll () Prints all constraints in a neat format. Make sure to disable multithreading if printing within to optimization to avoid jumbled output.","title":"function printAll"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-violationreport","text":"std :: string violationReport ( const Point3 & pos , size_t index ) Prints out a comprehensive violation report with each constraint that is violated and the magnitude of such violation by point pos. Index can be 0 if one does not have the index.","title":"function violationReport"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-violationreportdata","text":"std :: vector < std :: vector < double > > violationReportData ( const Point3 & pos ) Returns the distance to every cosntraint with [0] plane, [1] sphere, and [2] FFC.","title":"function violationReportData"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-constraintslagrangiangradient","text":"vnl_vector_fixed < double , 3 > constraintsLagrangianGradient ( const Point3 & pos , const Point3 & prepos , double C , size_t index ) Returns the constraint gradient. prepos is the current particle, pos is the particle with an optimization update applied, C can be 1, and index is the index of the particle.","title":"function constraintsLagrangianGradient"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-initializelagrangianparameters","text":"void InitializeLagrangianParameters ( std :: vector < double > mus ) Initializes lagrangian parameter mus.","title":"function InitializeLagrangianParameters"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-updatemus","text":"void UpdateMus ( const Point3 & pos , double C , size_t index ) Updates mus, the momentum variable of the augmented lagrangian.","title":"function UpdateMus"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-getactive","text":"inline bool GetActive () Gets the variable active, which determines whether constraints are being used.","title":"function GetActive"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-setactive","text":"inline void SetActive ( bool ac ) Sets the variable active, which determines whether constraints are being used.","title":"function SetActive"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-read","text":"void read ( std :: string filename ) Reads in a constraint json file named filename.","title":"function read"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-write","text":"void write ( std :: string filename ) Writes out a constraint json file named filename.","title":"function write"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-hasconstraints","text":"bool hasConstraints ()","title":"function hasConstraints"},{"location":"api/Classes/classshapeworks_1_1Constraints.html#function-clipmesh","text":"void clipMesh ( Mesh & mesh ) Clips the mesh that has been passed into it by the constraints stored in this object. Updated on 2023-10-24 at 22:16:01 +0000","title":"function clipMesh"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html","text":"shapeworks::ContourDomain Inherits from shapeworks::ParticleDomain Public Types Name using std::shared_ptr< ContourDomain > Pointer Public Functions Name ContourDomain () virtual ~ContourDomain () void SetPolyLine (vtkSmartPointer< vtkPolyData > poly_data) virtual DomainType GetDomainType () const override virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const override virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const override virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const override virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const override virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const override virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual PointType GetValidLocationNear ( PointType p) const override virtual double GetMaxDiameter () const override virtual void UpdateZeroCrossingPoint () override virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const override virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const override virtual const PointType & GetLowerBound () const override virtual const PointType & GetUpperBound () const override virtual PointType GetZeroCrossingPoint () const override virtual double GetSurfaceArea () const override virtual void DeleteImages () override virtual void DeletePartialDerivativeImages () override virtual void InvalidateParticlePosition (int idx) const override virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const override Additional inherited members Public Types inherited from shapeworks::ParticleDomain Name using itk::Point< double, 3 > PointType using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const bool IsDomainFixed () const std::shared_ptr< shapeworks::Constraints > GetConstraints () const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Public Types Documentation using Pointer using shapeworks :: ContourDomain :: Pointer = std :: shared_ptr < ContourDomain > ; Public Functions Documentation function ContourDomain inline explicit ContourDomain () function ~ContourDomain inline virtual ~ ContourDomain () function SetPolyLine void SetPolyLine ( vtkSmartPointer < vtkPolyData > poly_data ) function GetDomainType inline virtual DomainType GetDomainType () const override Reimplements : shapeworks::ParticleDomain::GetDomainType function ApplyConstraints virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const override Reimplements : shapeworks::ParticleDomain::ApplyConstraints Apply any constraints to the given point location. This should force the point to a position on the surface that satisfies all constraints. function UpdateParticlePosition virtual PointType UpdateParticlePosition ( const PointType & point , int idx , VectorDoubleType & update ) const override Reimplements : shapeworks::ParticleDomain::UpdateParticlePosition Applies the update to the point and returns the new point position. function ProjectVectorToSurfaceTangent virtual VectorDoubleType ProjectVectorToSurfaceTangent ( VectorDoubleType & gradE , const PointType & pos , int idx ) const override Reimplements : shapeworks::ParticleDomain::ProjectVectorToSurfaceTangent Projects the vector to the surface tangent at the point. function SampleNormalAtPoint inline virtual VectorFloatType SampleNormalAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleNormalAtPoint function SampleGradientAtPoint inline virtual VectorFloatType SampleGradientAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradientAtPoint function SampleGradNAtPoint inline virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradNAtPoint function GetValidLocationNear inline virtual PointType GetValidLocationNear ( PointType p ) const override Reimplements : shapeworks::ParticleDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle. function GetMaxDiameter inline virtual double GetMaxDiameter () const override Reimplements : shapeworks::ParticleDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma function UpdateZeroCrossingPoint inline virtual void UpdateZeroCrossingPoint () override Reimplements : shapeworks::ParticleDomain::UpdateZeroCrossingPoint function GetCurvature inline virtual double GetCurvature ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::GetCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceMeanCurvature inline virtual double GetSurfaceMeanCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceStdDevCurvature inline virtual double GetSurfaceStdDevCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute function Distance virtual double Distance ( const PointType & a , int idx_a , const PointType & b , int idx_b , VectorDoubleType * out_grad = nullptr ) const override Reimplements : shapeworks::ParticleDomain::Distance Distance between locations is used for computing energy and neighborhoods. Optionally return the gradient of the distance function SquaredDistance virtual double SquaredDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b ) const override Reimplements : shapeworks::ParticleDomain::SquaredDistance Squared Distance between locations is used for computing sigma. function GetLowerBound inline virtual const PointType & GetLowerBound () const override Reimplements : shapeworks::ParticleDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function GetUpperBound inline virtual const PointType & GetUpperBound () const override Reimplements : shapeworks::ParticleDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function GetZeroCrossingPoint inline virtual PointType GetZeroCrossingPoint () const override Reimplements : shapeworks::ParticleDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle. function GetSurfaceArea inline virtual double GetSurfaceArea () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceArea Use for neighborhood radius. function DeleteImages inline virtual void DeleteImages () override Reimplements : shapeworks::ParticleDomain::DeleteImages function DeletePartialDerivativeImages inline virtual void DeletePartialDerivativeImages () override Reimplements : shapeworks::ParticleDomain::DeletePartialDerivativeImages function InvalidateParticlePosition virtual void InvalidateParticlePosition ( int idx ) const override Reimplements : shapeworks::ParticleDomain::InvalidateParticlePosition function GetPositionAfterSplit virtual PointType GetPositionAfterSplit ( const PointType & pt , const VectorDoubleType & local_direction , const VectorDoubleType & global_direction , double epsilon ) const override Reimplements : shapeworks::ParticleDomain::GetPositionAfterSplit Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ContourDomain"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#shapeworkscontourdomain","text":"Inherits from shapeworks::ParticleDomain","title":"shapeworks::ContourDomain"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#public-types","text":"Name using std::shared_ptr< ContourDomain > Pointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#public-functions","text":"Name ContourDomain () virtual ~ContourDomain () void SetPolyLine (vtkSmartPointer< vtkPolyData > poly_data) virtual DomainType GetDomainType () const override virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const override virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const override virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const override virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const override virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const override virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual PointType GetValidLocationNear ( PointType p) const override virtual double GetMaxDiameter () const override virtual void UpdateZeroCrossingPoint () override virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const override virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const override virtual const PointType & GetLowerBound () const override virtual const PointType & GetUpperBound () const override virtual PointType GetZeroCrossingPoint () const override virtual double GetSurfaceArea () const override virtual void DeleteImages () override virtual void DeletePartialDerivativeImages () override virtual void InvalidateParticlePosition (int idx) const override virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ParticleDomain Name using itk::Point< double, 3 > PointType using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const bool IsDomainFixed () const std::shared_ptr< shapeworks::Constraints > GetConstraints () const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#using-pointer","text":"using shapeworks :: ContourDomain :: Pointer = std :: shared_ptr < ContourDomain > ;","title":"using Pointer"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-contourdomain","text":"inline explicit ContourDomain ()","title":"function ContourDomain"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-contourdomain_1","text":"inline virtual ~ ContourDomain ()","title":"function ~ContourDomain"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-setpolyline","text":"void SetPolyLine ( vtkSmartPointer < vtkPolyData > poly_data )","title":"function SetPolyLine"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getdomaintype","text":"inline virtual DomainType GetDomainType () const override Reimplements : shapeworks::ParticleDomain::GetDomainType","title":"function GetDomainType"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-applyconstraints","text":"virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const override Reimplements : shapeworks::ParticleDomain::ApplyConstraints Apply any constraints to the given point location. This should force the point to a position on the surface that satisfies all constraints.","title":"function ApplyConstraints"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-updateparticleposition","text":"virtual PointType UpdateParticlePosition ( const PointType & point , int idx , VectorDoubleType & update ) const override Reimplements : shapeworks::ParticleDomain::UpdateParticlePosition Applies the update to the point and returns the new point position.","title":"function UpdateParticlePosition"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-projectvectortosurfacetangent","text":"virtual VectorDoubleType ProjectVectorToSurfaceTangent ( VectorDoubleType & gradE , const PointType & pos , int idx ) const override Reimplements : shapeworks::ParticleDomain::ProjectVectorToSurfaceTangent Projects the vector to the surface tangent at the point.","title":"function ProjectVectorToSurfaceTangent"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-samplenormalatpoint","text":"inline virtual VectorFloatType SampleNormalAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleNormalAtPoint","title":"function SampleNormalAtPoint"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-samplegradientatpoint","text":"inline virtual VectorFloatType SampleGradientAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradientAtPoint","title":"function SampleGradientAtPoint"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-samplegradnatpoint","text":"inline virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradNAtPoint","title":"function SampleGradNAtPoint"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getvalidlocationnear","text":"inline virtual PointType GetValidLocationNear ( PointType p ) const override Reimplements : shapeworks::ParticleDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle.","title":"function GetValidLocationNear"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getmaxdiameter","text":"inline virtual double GetMaxDiameter () const override Reimplements : shapeworks::ParticleDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma","title":"function GetMaxDiameter"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-updatezerocrossingpoint","text":"inline virtual void UpdateZeroCrossingPoint () override Reimplements : shapeworks::ParticleDomain::UpdateZeroCrossingPoint","title":"function UpdateZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getcurvature","text":"inline virtual double GetCurvature ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::GetCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetCurvature"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getsurfacemeancurvature","text":"inline virtual double GetSurfaceMeanCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceMeanCurvature"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getsurfacestddevcurvature","text":"inline virtual double GetSurfaceStdDevCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceStdDevCurvature"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-distance","text":"virtual double Distance ( const PointType & a , int idx_a , const PointType & b , int idx_b , VectorDoubleType * out_grad = nullptr ) const override Reimplements : shapeworks::ParticleDomain::Distance Distance between locations is used for computing energy and neighborhoods. Optionally return the gradient of the distance","title":"function Distance"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-squareddistance","text":"virtual double SquaredDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b ) const override Reimplements : shapeworks::ParticleDomain::SquaredDistance Squared Distance between locations is used for computing sigma.","title":"function SquaredDistance"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getlowerbound","text":"inline virtual const PointType & GetLowerBound () const override Reimplements : shapeworks::ParticleDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetLowerBound"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getupperbound","text":"inline virtual const PointType & GetUpperBound () const override Reimplements : shapeworks::ParticleDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetUpperBound"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getzerocrossingpoint","text":"inline virtual PointType GetZeroCrossingPoint () const override Reimplements : shapeworks::ParticleDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle.","title":"function GetZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getsurfacearea","text":"inline virtual double GetSurfaceArea () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceArea Use for neighborhood radius.","title":"function GetSurfaceArea"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-deleteimages","text":"inline virtual void DeleteImages () override Reimplements : shapeworks::ParticleDomain::DeleteImages","title":"function DeleteImages"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-deletepartialderivativeimages","text":"inline virtual void DeletePartialDerivativeImages () override Reimplements : shapeworks::ParticleDomain::DeletePartialDerivativeImages","title":"function DeletePartialDerivativeImages"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-invalidateparticleposition","text":"virtual void InvalidateParticlePosition ( int idx ) const override Reimplements : shapeworks::ParticleDomain::InvalidateParticlePosition","title":"function InvalidateParticlePosition"},{"location":"api/Classes/classshapeworks_1_1ContourDomain.html#function-getpositionaftersplit","text":"virtual PointType GetPositionAfterSplit ( const PointType & pt , const VectorDoubleType & local_direction , const VectorDoubleType & global_direction , double epsilon ) const override Reimplements : shapeworks::ParticleDomain::GetPositionAfterSplit Updated on 2023-10-24 at 22:16:01 +0000","title":"function GetPositionAfterSplit"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html","text":"shapeworks::CorrespondenceFunction Correspondence term. #include Inherits from shapeworks::VectorFunction , itk::LightObject Public Types Name typedef CorrespondenceFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef ShapeDataType::DataType DataType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type Public Functions Name itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void SetShapeData (ShapeDataType * s) Access the shape matrix. ShapeDataType * GetShapeData () const ShapeDataType * GetShapeData () const void SetShapeGradient (ShapeGradientType * s) Access the shape gradient matrix. ShapeGradientType * GetShapeGradient () const ShapeGradientType * GetShapeGradient () const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const virtual void BeforeIteration () virtual void AfterIteration () void SetMinimumVarianceDecay (double initial_value, double final_value, double time_period) void SetMinimumVariance (double d) double GetMinimumVariance () const bool GetHoldMinimumVariance () const void SetHoldMinimumVariance (bool b) void SetRecomputeCovarianceInterval (int i) int GetRecomputeCovarianceInterval () const void SetAttributeScales (const std::vector< double > & s) void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetAttributesPerDomain (const std::vector< int > & i) void UseMeanEnergy () void UseEntropy () void SetXYZ (int i, bool val) void SetNormals (int i, bool val) bool CheckForNans (vnl_matrix_type mat) virtual VectorFunction::Pointer Clone () Protected Functions Name CorrespondenceFunction () virtual ~CorrespondenceFunction () void operator= (const CorrespondenceFunction & ) CorrespondenceFunction (const CorrespondenceFunction & ) virtual void ComputeUpdates (const ParticleSystem * c) Public Attributes Name itkTypeMacro( CorrespondenceFunction , VectorFunction ) typedef shapeworks typedef shapeworks::ShapeGradientMatrix ShapeGradientType constexpr static int VDimension Protected Attributes Name ShapeDataType::Pointer m_ShapeData ShapeGradientType::Pointer m_ShapeGradient std::shared_ptr< vnl_matrix_type > m_PointsUpdate double m_MinimumVariance double m_MinimumEigenValue bool m_HoldMinimumVariance int m_RecomputeCovarianceInterval double m_MinimumVarianceDecayConstant int m_Counter std::vector< double > m_AttributeScales int m_DomainsPerShape std::vector< int > m_AttributesPerDomain double m_CurrentEnergy bool m_UseMeanEnergy std::vector< bool > m_UseXYZ std::vector< bool > m_UseNormals std::shared_ptr< vnl_matrix_type > m_points_mean std::shared_ptr< Eigen::MatrixXd > m_InverseCovMatrix int num_dims int num_samples Additional inherited members Public Functions inherited from shapeworks::VectorFunction Name itkTypeMacro ( VectorFunction , LightObject ) virtual void ResetBuffers () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber Public Types Documentation typedef Self typedef CorrespondenceFunction shapeworks :: CorrespondenceFunction :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: CorrespondenceFunction :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: CorrespondenceFunction :: ConstPointer ; typedef Superclass typedef VectorFunction shapeworks :: CorrespondenceFunction :: Superclass ; typedef DataType typedef ShapeDataType :: DataType shapeworks :: CorrespondenceFunction :: DataType ; typedef VectorType typedef Superclass :: VectorType shapeworks :: CorrespondenceFunction :: VectorType ; Vector & Point types. typedef PointType typedef ParticleSystem :: PointType shapeworks :: CorrespondenceFunction :: PointType ; typedef vnl_vector_type typedef vnl_vector < DataType > shapeworks :: CorrespondenceFunction :: vnl_vector_type ; typedef vnl_matrix_type typedef vnl_matrix < DataType > shapeworks :: CorrespondenceFunction :: vnl_matrix_type ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function SetShapeData inline void SetShapeData ( ShapeDataType * s ) Access the shape matrix. function GetShapeData inline ShapeDataType * GetShapeData () function GetShapeData inline const ShapeDataType * GetShapeData () const function SetShapeGradient inline void SetShapeGradient ( ShapeGradientType * s ) Access the shape gradient matrix. function GetShapeGradient inline ShapeGradientType * GetShapeGradient () function GetShapeGradient inline const ShapeGradientType * GetShapeGradient () const function Evaluate virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Evaluate inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Energy inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::VectorFunction::Energy function BeforeIteration inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration Called before each iteration of a solver. function AfterIteration inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration Called after each iteration of the solver. function SetMinimumVarianceDecay inline void SetMinimumVarianceDecay ( double initial_value , double final_value , double time_period ) function SetMinimumVariance inline void SetMinimumVariance ( double d ) function GetMinimumVariance inline double GetMinimumVariance () const function GetHoldMinimumVariance inline bool GetHoldMinimumVariance () const function SetHoldMinimumVariance inline void SetHoldMinimumVariance ( bool b ) function SetRecomputeCovarianceInterval inline void SetRecomputeCovarianceInterval ( int i ) function GetRecomputeCovarianceInterval inline int GetRecomputeCovarianceInterval () const function SetAttributeScales inline void SetAttributeScales ( const std :: vector < double > & s ) function SetDomainsPerShape inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. function GetDomainsPerShape inline int GetDomainsPerShape () const function SetAttributesPerDomain inline void SetAttributesPerDomain ( const std :: vector < int > & i ) function UseMeanEnergy inline void UseMeanEnergy () function UseEntropy inline void UseEntropy () function SetXYZ inline void SetXYZ ( int i , bool val ) function SetNormals inline void SetNormals ( int i , bool val ) function CheckForNans inline bool CheckForNans ( vnl_matrix_type mat ) function Clone inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone Protected Functions Documentation function CorrespondenceFunction inline CorrespondenceFunction () function ~CorrespondenceFunction inline virtual ~ CorrespondenceFunction () function operator= void operator = ( const CorrespondenceFunction & ) function CorrespondenceFunction CorrespondenceFunction ( const CorrespondenceFunction & ) function ComputeUpdates virtual void ComputeUpdates ( const ParticleSystem * c ) Public Attributes Documentation variable ShapeGradientType itkTypeMacro ( CorrespondenceFunction , VectorFunction ) typedef shapeworks typedef shapeworks :: ShapeGradientMatrix ShapeGradientType ; variable VDimension static constexpr static int VDimension = 3 ; Protected Attributes Documentation variable m_ShapeData ShapeDataType :: Pointer m_ShapeData ; variable m_ShapeGradient ShapeGradientType :: Pointer m_ShapeGradient ; variable m_PointsUpdate std :: shared_ptr < vnl_matrix_type > m_PointsUpdate ; variable m_MinimumVariance double m_MinimumVariance ; variable m_MinimumEigenValue double m_MinimumEigenValue ; variable m_HoldMinimumVariance bool m_HoldMinimumVariance ; variable m_RecomputeCovarianceInterval int m_RecomputeCovarianceInterval ; variable m_MinimumVarianceDecayConstant double m_MinimumVarianceDecayConstant ; variable m_Counter int m_Counter ; variable m_AttributeScales std :: vector < double > m_AttributeScales ; variable m_DomainsPerShape int m_DomainsPerShape ; variable m_AttributesPerDomain std :: vector < int > m_AttributesPerDomain ; variable m_CurrentEnergy double m_CurrentEnergy ; variable m_UseMeanEnergy bool m_UseMeanEnergy ; variable m_UseXYZ std :: vector < bool > m_UseXYZ ; variable m_UseNormals std :: vector < bool > m_UseNormals ; variable m_points_mean std :: shared_ptr < vnl_matrix_type > m_points_mean ; variable m_InverseCovMatrix std :: shared_ptr < Eigen :: MatrixXd > m_InverseCovMatrix ; variable num_dims int num_dims ; variable num_samples int num_samples ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::CorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#shapeworkscorrespondencefunction","text":"Correspondence term. #include Inherits from shapeworks::VectorFunction , itk::LightObject","title":"shapeworks::CorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#public-types","text":"Name typedef CorrespondenceFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef ShapeDataType::DataType DataType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#public-functions","text":"Name itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void SetShapeData (ShapeDataType * s) Access the shape matrix. ShapeDataType * GetShapeData () const ShapeDataType * GetShapeData () const void SetShapeGradient (ShapeGradientType * s) Access the shape gradient matrix. ShapeGradientType * GetShapeGradient () const ShapeGradientType * GetShapeGradient () const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const virtual void BeforeIteration () virtual void AfterIteration () void SetMinimumVarianceDecay (double initial_value, double final_value, double time_period) void SetMinimumVariance (double d) double GetMinimumVariance () const bool GetHoldMinimumVariance () const void SetHoldMinimumVariance (bool b) void SetRecomputeCovarianceInterval (int i) int GetRecomputeCovarianceInterval () const void SetAttributeScales (const std::vector< double > & s) void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetAttributesPerDomain (const std::vector< int > & i) void UseMeanEnergy () void UseEntropy () void SetXYZ (int i, bool val) void SetNormals (int i, bool val) bool CheckForNans (vnl_matrix_type mat) virtual VectorFunction::Pointer Clone ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#protected-functions","text":"Name CorrespondenceFunction () virtual ~CorrespondenceFunction () void operator= (const CorrespondenceFunction & ) CorrespondenceFunction (const CorrespondenceFunction & ) virtual void ComputeUpdates (const ParticleSystem * c)","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#public-attributes","text":"Name itkTypeMacro( CorrespondenceFunction , VectorFunction ) typedef shapeworks typedef shapeworks::ShapeGradientMatrix ShapeGradientType constexpr static int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#protected-attributes","text":"Name ShapeDataType::Pointer m_ShapeData ShapeGradientType::Pointer m_ShapeGradient std::shared_ptr< vnl_matrix_type > m_PointsUpdate double m_MinimumVariance double m_MinimumEigenValue bool m_HoldMinimumVariance int m_RecomputeCovarianceInterval double m_MinimumVarianceDecayConstant int m_Counter std::vector< double > m_AttributeScales int m_DomainsPerShape std::vector< int > m_AttributesPerDomain double m_CurrentEnergy bool m_UseMeanEnergy std::vector< bool > m_UseXYZ std::vector< bool > m_UseNormals std::shared_ptr< vnl_matrix_type > m_points_mean std::shared_ptr< Eigen::MatrixXd > m_InverseCovMatrix int num_dims int num_samples","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::VectorFunction Name itkTypeMacro ( VectorFunction , LightObject ) virtual void ResetBuffers () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-self","text":"typedef CorrespondenceFunction shapeworks :: CorrespondenceFunction :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: CorrespondenceFunction :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: CorrespondenceFunction :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-superclass","text":"typedef VectorFunction shapeworks :: CorrespondenceFunction :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-datatype","text":"typedef ShapeDataType :: DataType shapeworks :: CorrespondenceFunction :: DataType ;","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-vectortype","text":"typedef Superclass :: VectorType shapeworks :: CorrespondenceFunction :: VectorType ; Vector & Point types.","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-pointtype","text":"typedef ParticleSystem :: PointType shapeworks :: CorrespondenceFunction :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-vnl_vector_type","text":"typedef vnl_vector < DataType > shapeworks :: CorrespondenceFunction :: vnl_vector_type ;","title":"typedef vnl_vector_type"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#typedef-vnl_matrix_type","text":"typedef vnl_matrix < DataType > shapeworks :: CorrespondenceFunction :: vnl_matrix_type ;","title":"typedef vnl_matrix_type"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setshapedata","text":"inline void SetShapeData ( ShapeDataType * s ) Access the shape matrix.","title":"function SetShapeData"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getshapedata","text":"inline ShapeDataType * GetShapeData ()","title":"function GetShapeData"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getshapedata_1","text":"inline const ShapeDataType * GetShapeData () const","title":"function GetShapeData"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setshapegradient","text":"inline void SetShapeGradient ( ShapeGradientType * s ) Access the shape gradient matrix.","title":"function SetShapeGradient"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getshapegradient","text":"inline ShapeGradientType * GetShapeGradient ()","title":"function GetShapeGradient"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getshapegradient_1","text":"inline const ShapeGradientType * GetShapeGradient () const","title":"function GetShapeGradient"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-evaluate","text":"virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-evaluate_1","text":"inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-energy","text":"inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::VectorFunction::Energy","title":"function Energy"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration Called before each iteration of a solver.","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-afteriteration","text":"inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration Called after each iteration of the solver.","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setminimumvariancedecay","text":"inline void SetMinimumVarianceDecay ( double initial_value , double final_value , double time_period )","title":"function SetMinimumVarianceDecay"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setminimumvariance","text":"inline void SetMinimumVariance ( double d )","title":"function SetMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getminimumvariance","text":"inline double GetMinimumVariance () const","title":"function GetMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getholdminimumvariance","text":"inline bool GetHoldMinimumVariance () const","title":"function GetHoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setholdminimumvariance","text":"inline void SetHoldMinimumVariance ( bool b )","title":"function SetHoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setrecomputecovarianceinterval","text":"inline void SetRecomputeCovarianceInterval ( int i )","title":"function SetRecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getrecomputecovarianceinterval","text":"inline int GetRecomputeCovarianceInterval () const","title":"function GetRecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setattributescales","text":"inline void SetAttributeScales ( const std :: vector < double > & s )","title":"function SetAttributeScales"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape.","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-getdomainspershape","text":"inline int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setattributesperdomain","text":"inline void SetAttributesPerDomain ( const std :: vector < int > & i )","title":"function SetAttributesPerDomain"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-usemeanenergy","text":"inline void UseMeanEnergy ()","title":"function UseMeanEnergy"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-useentropy","text":"inline void UseEntropy ()","title":"function UseEntropy"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setxyz","text":"inline void SetXYZ ( int i , bool val )","title":"function SetXYZ"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-setnormals","text":"inline void SetNormals ( int i , bool val )","title":"function SetNormals"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-checkfornans","text":"inline bool CheckForNans ( vnl_matrix_type mat )","title":"function CheckForNans"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-clone","text":"inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone","title":"function Clone"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-correspondencefunction","text":"inline CorrespondenceFunction ()","title":"function CorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-correspondencefunction_1","text":"inline virtual ~ CorrespondenceFunction ()","title":"function ~CorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-operator","text":"void operator = ( const CorrespondenceFunction & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-correspondencefunction_2","text":"CorrespondenceFunction ( const CorrespondenceFunction & )","title":"function CorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#function-computeupdates","text":"virtual void ComputeUpdates ( const ParticleSystem * c )","title":"function ComputeUpdates"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-shapegradienttype","text":"itkTypeMacro ( CorrespondenceFunction , VectorFunction ) typedef shapeworks typedef shapeworks :: ShapeGradientMatrix ShapeGradientType ;","title":"variable ShapeGradientType"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-vdimension","text":"static constexpr static int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_shapedata","text":"ShapeDataType :: Pointer m_ShapeData ;","title":"variable m_ShapeData"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_shapegradient","text":"ShapeGradientType :: Pointer m_ShapeGradient ;","title":"variable m_ShapeGradient"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_pointsupdate","text":"std :: shared_ptr < vnl_matrix_type > m_PointsUpdate ;","title":"variable m_PointsUpdate"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_minimumvariance","text":"double m_MinimumVariance ;","title":"variable m_MinimumVariance"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_minimumeigenvalue","text":"double m_MinimumEigenValue ;","title":"variable m_MinimumEigenValue"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_holdminimumvariance","text":"bool m_HoldMinimumVariance ;","title":"variable m_HoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_recomputecovarianceinterval","text":"int m_RecomputeCovarianceInterval ;","title":"variable m_RecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_minimumvariancedecayconstant","text":"double m_MinimumVarianceDecayConstant ;","title":"variable m_MinimumVarianceDecayConstant"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_counter","text":"int m_Counter ;","title":"variable m_Counter"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_attributescales","text":"std :: vector < double > m_AttributeScales ;","title":"variable m_AttributeScales"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_domainspershape","text":"int m_DomainsPerShape ;","title":"variable m_DomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_attributesperdomain","text":"std :: vector < int > m_AttributesPerDomain ;","title":"variable m_AttributesPerDomain"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_currentenergy","text":"double m_CurrentEnergy ;","title":"variable m_CurrentEnergy"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_usemeanenergy","text":"bool m_UseMeanEnergy ;","title":"variable m_UseMeanEnergy"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_usexyz","text":"std :: vector < bool > m_UseXYZ ;","title":"variable m_UseXYZ"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_usenormals","text":"std :: vector < bool > m_UseNormals ;","title":"variable m_UseNormals"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_points_mean","text":"std :: shared_ptr < vnl_matrix_type > m_points_mean ;","title":"variable m_points_mean"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-m_inversecovmatrix","text":"std :: shared_ptr < Eigen :: MatrixXd > m_InverseCovMatrix ;","title":"variable m_InverseCovMatrix"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-num_dims","text":"int num_dims ;","title":"variable num_dims"},{"location":"api/Classes/classshapeworks_1_1CorrespondenceFunction.html#variable-num_samples","text":"int num_samples ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable num_samples"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html","text":"title: shapeworks::CurvatureSamplingFunction summary: Please note: This is the sampling function currently being used. shapeworks::CurvatureSamplingFunction Please note: This is the sampling function currently being used. More... #include Inherits from shapeworks::SamplingFunction , shapeworks::VectorFunction , itk::LightObject Protected Classes Name struct CrossDomainNeighborhood Public Types Name typedef float TGradientNumericType typedef CurvatureSamplingFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef SamplingFunction Superclass typedef Superclass::GradientNumericType GradientNumericType typedef Superclass::VectorType VectorType typedef Superclass::PointType PointType typedef Superclass::GradientVectorType GradientVectorType typedef MeanCurvatureContainer < TGradientNumericType, VDimension > MeanCurvatureCacheType typedef shapeworks::ImageDomainWithCurvature < TGradientNumericType >::VnlMatrixType VnlMatrixType Public Functions Name itkTypeMacro ( CurvatureSamplingFunction , SamplingFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const double ComputeKappa (double mc, unsigned int d) const virtual void AfterIteration () virtual void BeforeIteration () virtual double EstimateSigma (unsigned int idx, unsigned int dom, const shapeworks::ParticleDomain * domain, const PointType & pos, double initial_sigma, double precision, int & err, double & avgKappa) const void SetMeanCurvatureCache ( MeanCurvatureCacheType * s) MeanCurvatureCacheType * GetMeanCurvatureCache () const MeanCurvatureCacheType * GetMeanCurvatureCache () const void SetRho (double g) double GetRho () const void SetSharedBoundaryWeight (double w) double GetSharedBoundaryWeight () const void SetSharedBoundaryEnabled (bool enabled) bool GetSharedBoundaryEnabled () const virtual VectorFunction::Pointer Clone () Protected Functions Name CurvatureSamplingFunction () virtual ~CurvatureSamplingFunction () void operator= (const CurvatureSamplingFunction & ) CurvatureSamplingFunction (const CurvatureSamplingFunction & ) void UpdateNeighborhood (const PointType & pos, int idx, int d, double radius, const ParticleSystem * system) Public Attributes Name constexpr static int VDimension Protected Attributes Name MeanCurvatureCacheType::Pointer m_MeanCurvatureCache unsigned int m_Counter double m_Rho double m_avgKappa bool m_IsSharedBoundaryEnabled double m_SharedBoundaryWeight double m_CurrentSigma std::vector< CrossDomainNeighborhood > m_CurrentNeighborhood float m_MaxMoveFactor Additional inherited members Public Types inherited from shapeworks::SamplingFunction Name typedef GenericContainerArray < double > SigmaCacheType Public Functions inherited from shapeworks::SamplingFunction Name virtual void ResetBuffers () TGradientNumericType AngleCoefficient (const GradientVectorType & , const GradientVectorType & ) const void SetMinimumNeighborhoodRadius (double s) double GetMinimumNeighborhoodRadius () const void SetMaximumNeighborhoodRadius (double s) double GetMaximumNeighborhoodRadius () const void SetFlatCutoff (double s) double GetFlatCutoff () const void SetNeighborhoodToSigmaRatio (double s) double GetNeighborhoodToSigmaRatio () const void SetSpatialSigmaCache ( SigmaCacheType * s) SigmaCacheType * GetSpatialSigmaCache () const SigmaCacheType * GetSpatialSigmaCache () const void ComputeAngularWeights (const PointType & , int , const typename ParticleSystem::PointVectorType & , const shapeworks::ParticleDomain * , std::vector< double > & ) const Protected Functions inherited from shapeworks::SamplingFunction Name SamplingFunction () virtual ~SamplingFunction () SamplingFunction (const SamplingFunction & ) Protected Attributes inherited from shapeworks::SamplingFunction Name double m_MinimumNeighborhoodRadius double m_MaximumNeighborhoodRadius double m_FlatCutoff double m_NeighborhoodToSigmaRatio SigmaCacheType::Pointer m_SpatialSigmaCache Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber Detailed Description class shapeworks :: CurvatureSamplingFunction ; Please note: This is the sampling function currently being used. This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. The change in normals associated with the position is also taken into account, providing an adaptive sampling of the surface with respect to both position and extrinsic surface curvature. Public Types Documentation typedef TGradientNumericType typedef float shapeworks :: CurvatureSamplingFunction :: TGradientNumericType ; typedef Self typedef CurvatureSamplingFunction shapeworks :: CurvatureSamplingFunction :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: CurvatureSamplingFunction :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: CurvatureSamplingFunction :: ConstPointer ; typedef Superclass typedef SamplingFunction shapeworks :: CurvatureSamplingFunction :: Superclass ; typedef GradientNumericType typedef Superclass :: GradientNumericType shapeworks :: CurvatureSamplingFunction :: GradientNumericType ; Inherit some parent typedefs. typedef VectorType typedef Superclass :: VectorType shapeworks :: CurvatureSamplingFunction :: VectorType ; typedef PointType typedef Superclass :: PointType shapeworks :: CurvatureSamplingFunction :: PointType ; typedef GradientVectorType typedef Superclass :: GradientVectorType shapeworks :: CurvatureSamplingFunction :: GradientVectorType ; typedef MeanCurvatureCacheType typedef MeanCurvatureContainer < TGradientNumericType , VDimension > shapeworks :: CurvatureSamplingFunction :: MeanCurvatureCacheType ; typedef VnlMatrixType typedef shapeworks :: ImageDomainWithCurvature < TGradientNumericType >:: VnlMatrixType shapeworks :: CurvatureSamplingFunction :: VnlMatrixType ; Public Functions Documentation function itkTypeMacro itkTypeMacro ( CurvatureSamplingFunction , SamplingFunction ) function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function Evaluate inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::SamplingFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Evaluate virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::SamplingFunction::Evaluate function BeforeEvaluate virtual void BeforeEvaluate ( unsigned int , unsigned int , const ParticleSystem * ) Reimplements : shapeworks::VectorFunction::BeforeEvaluate This method may be called to set up the state of the function object before a call to Evaluate. It is necessary in order to initialize certain constants and variables that may be used for calculating the Energy as well as the Gradients. Typically this is only necessary for the adaptive gradient descent algorithm. function Energy inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::SamplingFunction::Energy function ComputeKappa inline double ComputeKappa ( double mc , unsigned int d ) const function AfterIteration inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration This method is called by a solver after each iteration. Subclasses may or may not implement this method. function BeforeIteration inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration This method is called by a solver before each iteration. Subclasses may or may not implement this method. function EstimateSigma virtual double EstimateSigma ( unsigned int idx , unsigned int dom , const shapeworks :: ParticleDomain * domain , const PointType & pos , double initial_sigma , double precision , int & err , double & avgKappa ) const Estimate the best sigma for Parzen windowing in a given neighborhood. The best sigma is the sigma that maximizes probability at the given point function SetMeanCurvatureCache inline void SetMeanCurvatureCache ( MeanCurvatureCacheType * s ) function GetMeanCurvatureCache inline MeanCurvatureCacheType * GetMeanCurvatureCache () function GetMeanCurvatureCache inline const MeanCurvatureCacheType * GetMeanCurvatureCache () const function SetRho inline void SetRho ( double g ) function GetRho inline double GetRho () const function SetSharedBoundaryWeight inline void SetSharedBoundaryWeight ( double w ) function GetSharedBoundaryWeight inline double GetSharedBoundaryWeight () const function SetSharedBoundaryEnabled inline void SetSharedBoundaryEnabled ( bool enabled ) function GetSharedBoundaryEnabled inline bool GetSharedBoundaryEnabled () const function Clone inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::SamplingFunction::Clone Protected Functions Documentation function CurvatureSamplingFunction inline CurvatureSamplingFunction () function ~CurvatureSamplingFunction inline virtual ~ CurvatureSamplingFunction () function operator= void operator = ( const CurvatureSamplingFunction & ) function CurvatureSamplingFunction CurvatureSamplingFunction ( const CurvatureSamplingFunction & ) function UpdateNeighborhood void UpdateNeighborhood ( const PointType & pos , int idx , int d , double radius , const ParticleSystem * system ) Public Attributes Documentation variable VDimension static constexpr static int VDimension = 3 ; Protected Attributes Documentation variable m_MeanCurvatureCache MeanCurvatureCacheType :: Pointer m_MeanCurvatureCache ; variable m_Counter unsigned int m_Counter ; variable m_Rho double m_Rho ; variable m_avgKappa double m_avgKappa ; variable m_IsSharedBoundaryEnabled bool m_IsSharedBoundaryEnabled { false }; variable m_SharedBoundaryWeight double m_SharedBoundaryWeight { 1.0 }; variable m_CurrentSigma double m_CurrentSigma ; variable m_CurrentNeighborhood std :: vector < CrossDomainNeighborhood > m_CurrentNeighborhood ; variable m_MaxMoveFactor float m_MaxMoveFactor = 0 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"classshapeworks 1 1CurvatureSamplingFunction"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#shapeworkscurvaturesamplingfunction","text":"Please note: This is the sampling function currently being used. More... #include Inherits from shapeworks::SamplingFunction , shapeworks::VectorFunction , itk::LightObject","title":"shapeworks::CurvatureSamplingFunction"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#protected-classes","text":"Name struct CrossDomainNeighborhood","title":"Protected Classes"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#public-types","text":"Name typedef float TGradientNumericType typedef CurvatureSamplingFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef SamplingFunction Superclass typedef Superclass::GradientNumericType GradientNumericType typedef Superclass::VectorType VectorType typedef Superclass::PointType PointType typedef Superclass::GradientVectorType GradientVectorType typedef MeanCurvatureContainer < TGradientNumericType, VDimension > MeanCurvatureCacheType typedef shapeworks::ImageDomainWithCurvature < TGradientNumericType >::VnlMatrixType VnlMatrixType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#public-functions","text":"Name itkTypeMacro ( CurvatureSamplingFunction , SamplingFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const double ComputeKappa (double mc, unsigned int d) const virtual void AfterIteration () virtual void BeforeIteration () virtual double EstimateSigma (unsigned int idx, unsigned int dom, const shapeworks::ParticleDomain * domain, const PointType & pos, double initial_sigma, double precision, int & err, double & avgKappa) const void SetMeanCurvatureCache ( MeanCurvatureCacheType * s) MeanCurvatureCacheType * GetMeanCurvatureCache () const MeanCurvatureCacheType * GetMeanCurvatureCache () const void SetRho (double g) double GetRho () const void SetSharedBoundaryWeight (double w) double GetSharedBoundaryWeight () const void SetSharedBoundaryEnabled (bool enabled) bool GetSharedBoundaryEnabled () const virtual VectorFunction::Pointer Clone ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#protected-functions","text":"Name CurvatureSamplingFunction () virtual ~CurvatureSamplingFunction () void operator= (const CurvatureSamplingFunction & ) CurvatureSamplingFunction (const CurvatureSamplingFunction & ) void UpdateNeighborhood (const PointType & pos, int idx, int d, double radius, const ParticleSystem * system)","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#public-attributes","text":"Name constexpr static int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#protected-attributes","text":"Name MeanCurvatureCacheType::Pointer m_MeanCurvatureCache unsigned int m_Counter double m_Rho double m_avgKappa bool m_IsSharedBoundaryEnabled double m_SharedBoundaryWeight double m_CurrentSigma std::vector< CrossDomainNeighborhood > m_CurrentNeighborhood float m_MaxMoveFactor","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#additional-inherited-members","text":"Public Types inherited from shapeworks::SamplingFunction Name typedef GenericContainerArray < double > SigmaCacheType Public Functions inherited from shapeworks::SamplingFunction Name virtual void ResetBuffers () TGradientNumericType AngleCoefficient (const GradientVectorType & , const GradientVectorType & ) const void SetMinimumNeighborhoodRadius (double s) double GetMinimumNeighborhoodRadius () const void SetMaximumNeighborhoodRadius (double s) double GetMaximumNeighborhoodRadius () const void SetFlatCutoff (double s) double GetFlatCutoff () const void SetNeighborhoodToSigmaRatio (double s) double GetNeighborhoodToSigmaRatio () const void SetSpatialSigmaCache ( SigmaCacheType * s) SigmaCacheType * GetSpatialSigmaCache () const SigmaCacheType * GetSpatialSigmaCache () const void ComputeAngularWeights (const PointType & , int , const typename ParticleSystem::PointVectorType & , const shapeworks::ParticleDomain * , std::vector< double > & ) const Protected Functions inherited from shapeworks::SamplingFunction Name SamplingFunction () virtual ~SamplingFunction () SamplingFunction (const SamplingFunction & ) Protected Attributes inherited from shapeworks::SamplingFunction Name double m_MinimumNeighborhoodRadius double m_MaximumNeighborhoodRadius double m_FlatCutoff double m_NeighborhoodToSigmaRatio SigmaCacheType::Pointer m_SpatialSigmaCache Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#detailed-description","text":"class shapeworks :: CurvatureSamplingFunction ; Please note: This is the sampling function currently being used. This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. The change in normals associated with the position is also taken into account, providing an adaptive sampling of the surface with respect to both position and extrinsic surface curvature.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-tgradientnumerictype","text":"typedef float shapeworks :: CurvatureSamplingFunction :: TGradientNumericType ;","title":"typedef TGradientNumericType"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-self","text":"typedef CurvatureSamplingFunction shapeworks :: CurvatureSamplingFunction :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: CurvatureSamplingFunction :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: CurvatureSamplingFunction :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-superclass","text":"typedef SamplingFunction shapeworks :: CurvatureSamplingFunction :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-gradientnumerictype","text":"typedef Superclass :: GradientNumericType shapeworks :: CurvatureSamplingFunction :: GradientNumericType ; Inherit some parent typedefs.","title":"typedef GradientNumericType"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-vectortype","text":"typedef Superclass :: VectorType shapeworks :: CurvatureSamplingFunction :: VectorType ;","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-pointtype","text":"typedef Superclass :: PointType shapeworks :: CurvatureSamplingFunction :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-gradientvectortype","text":"typedef Superclass :: GradientVectorType shapeworks :: CurvatureSamplingFunction :: GradientVectorType ;","title":"typedef GradientVectorType"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-meancurvaturecachetype","text":"typedef MeanCurvatureContainer < TGradientNumericType , VDimension > shapeworks :: CurvatureSamplingFunction :: MeanCurvatureCacheType ;","title":"typedef MeanCurvatureCacheType"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#typedef-vnlmatrixtype","text":"typedef shapeworks :: ImageDomainWithCurvature < TGradientNumericType >:: VnlMatrixType shapeworks :: CurvatureSamplingFunction :: VnlMatrixType ;","title":"typedef VnlMatrixType"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-itktypemacro","text":"itkTypeMacro ( CurvatureSamplingFunction , SamplingFunction )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-evaluate","text":"inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::SamplingFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-evaluate_1","text":"virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::SamplingFunction::Evaluate","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-beforeevaluate","text":"virtual void BeforeEvaluate ( unsigned int , unsigned int , const ParticleSystem * ) Reimplements : shapeworks::VectorFunction::BeforeEvaluate This method may be called to set up the state of the function object before a call to Evaluate. It is necessary in order to initialize certain constants and variables that may be used for calculating the Energy as well as the Gradients. Typically this is only necessary for the adaptive gradient descent algorithm.","title":"function BeforeEvaluate"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-energy","text":"inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::SamplingFunction::Energy","title":"function Energy"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-computekappa","text":"inline double ComputeKappa ( double mc , unsigned int d ) const","title":"function ComputeKappa"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-afteriteration","text":"inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration This method is called by a solver after each iteration. Subclasses may or may not implement this method.","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration This method is called by a solver before each iteration. Subclasses may or may not implement this method.","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-estimatesigma","text":"virtual double EstimateSigma ( unsigned int idx , unsigned int dom , const shapeworks :: ParticleDomain * domain , const PointType & pos , double initial_sigma , double precision , int & err , double & avgKappa ) const Estimate the best sigma for Parzen windowing in a given neighborhood. The best sigma is the sigma that maximizes probability at the given point","title":"function EstimateSigma"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-setmeancurvaturecache","text":"inline void SetMeanCurvatureCache ( MeanCurvatureCacheType * s )","title":"function SetMeanCurvatureCache"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-getmeancurvaturecache","text":"inline MeanCurvatureCacheType * GetMeanCurvatureCache ()","title":"function GetMeanCurvatureCache"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-getmeancurvaturecache_1","text":"inline const MeanCurvatureCacheType * GetMeanCurvatureCache () const","title":"function GetMeanCurvatureCache"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-setrho","text":"inline void SetRho ( double g )","title":"function SetRho"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-getrho","text":"inline double GetRho () const","title":"function GetRho"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-setsharedboundaryweight","text":"inline void SetSharedBoundaryWeight ( double w )","title":"function SetSharedBoundaryWeight"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-getsharedboundaryweight","text":"inline double GetSharedBoundaryWeight () const","title":"function GetSharedBoundaryWeight"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-setsharedboundaryenabled","text":"inline void SetSharedBoundaryEnabled ( bool enabled )","title":"function SetSharedBoundaryEnabled"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-getsharedboundaryenabled","text":"inline bool GetSharedBoundaryEnabled () const","title":"function GetSharedBoundaryEnabled"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-clone","text":"inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::SamplingFunction::Clone","title":"function Clone"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-curvaturesamplingfunction","text":"inline CurvatureSamplingFunction ()","title":"function CurvatureSamplingFunction"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-curvaturesamplingfunction_1","text":"inline virtual ~ CurvatureSamplingFunction ()","title":"function ~CurvatureSamplingFunction"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-operator","text":"void operator = ( const CurvatureSamplingFunction & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-curvaturesamplingfunction_2","text":"CurvatureSamplingFunction ( const CurvatureSamplingFunction & )","title":"function CurvatureSamplingFunction"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#function-updateneighborhood","text":"void UpdateNeighborhood ( const PointType & pos , int idx , int d , double radius , const ParticleSystem * system )","title":"function UpdateNeighborhood"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-vdimension","text":"static constexpr static int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_meancurvaturecache","text":"MeanCurvatureCacheType :: Pointer m_MeanCurvatureCache ;","title":"variable m_MeanCurvatureCache"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_counter","text":"unsigned int m_Counter ;","title":"variable m_Counter"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_rho","text":"double m_Rho ;","title":"variable m_Rho"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_avgkappa","text":"double m_avgKappa ;","title":"variable m_avgKappa"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_issharedboundaryenabled","text":"bool m_IsSharedBoundaryEnabled { false };","title":"variable m_IsSharedBoundaryEnabled"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_sharedboundaryweight","text":"double m_SharedBoundaryWeight { 1.0 };","title":"variable m_SharedBoundaryWeight"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_currentsigma","text":"double m_CurrentSigma ;","title":"variable m_CurrentSigma"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_currentneighborhood","text":"std :: vector < CrossDomainNeighborhood > m_CurrentNeighborhood ;","title":"variable m_CurrentNeighborhood"},{"location":"api/Classes/classshapeworks_1_1CurvatureSamplingFunction.html#variable-m_maxmovefactor","text":"float m_MaxMoveFactor = 0 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_MaxMoveFactor"},{"location":"api/Classes/classshapeworks_1_1DataTool.html","text":"shapeworks::DataTool Inherits from QWidget Public Slots Name void delete_button_clicked () void delete_landmarks_clicked () void set_placing_button_clicked (int id) void handle_landmark_mode_changed () void handle_constraints_mode_changed () void constraints_table_right_click (const QPoint & point) void copy_ffc_clicked () Public Signals Name void import_button_clicked () Public Functions Name DataTool ( Preferences & prefs) ~DataTool () void set_session (QSharedPointer< Session > session) Set the pointer to the session. void activate () activate this tool void disable_actions () void enable_actions () void update_table () void update_landmark_table () void landmark_domain_changed () void constraints_domain_changed () void delete_planes_clicked () void delete_ffc_clicked () void update_notes () std::string get_notes () void store_data () Public Slots Documentation slot delete_button_clicked void delete_button_clicked () slot delete_landmarks_clicked void delete_landmarks_clicked () slot set_placing_button_clicked void set_placing_button_clicked ( int id ) slot handle_landmark_mode_changed void handle_landmark_mode_changed () slot handle_constraints_mode_changed void handle_constraints_mode_changed () slot constraints_table_right_click void constraints_table_right_click ( const QPoint & point ) slot copy_ffc_clicked void copy_ffc_clicked () Public Signals Documentation signal import_button_clicked void import_button_clicked () Public Functions Documentation function DataTool DataTool ( Preferences & prefs ) function ~DataTool ~ DataTool () function set_session void set_session ( QSharedPointer < Session > session ) Set the pointer to the session. function activate void activate () activate this tool function disable_actions void disable_actions () function enable_actions void enable_actions () function update_table void update_table () function update_landmark_table void update_landmark_table () function landmark_domain_changed void landmark_domain_changed () function constraints_domain_changed void constraints_domain_changed () function delete_planes_clicked void delete_planes_clicked () function delete_ffc_clicked void delete_ffc_clicked () function update_notes void update_notes () function get_notes std :: string get_notes () function store_data void store_data () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::DataTool"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#shapeworksdatatool","text":"Inherits from QWidget","title":"shapeworks::DataTool"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#public-slots","text":"Name void delete_button_clicked () void delete_landmarks_clicked () void set_placing_button_clicked (int id) void handle_landmark_mode_changed () void handle_constraints_mode_changed () void constraints_table_right_click (const QPoint & point) void copy_ffc_clicked ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#public-signals","text":"Name void import_button_clicked ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#public-functions","text":"Name DataTool ( Preferences & prefs) ~DataTool () void set_session (QSharedPointer< Session > session) Set the pointer to the session. void activate () activate this tool void disable_actions () void enable_actions () void update_table () void update_landmark_table () void landmark_domain_changed () void constraints_domain_changed () void delete_planes_clicked () void delete_ffc_clicked () void update_notes () std::string get_notes () void store_data ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#slot-delete_button_clicked","text":"void delete_button_clicked ()","title":"slot delete_button_clicked"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#slot-delete_landmarks_clicked","text":"void delete_landmarks_clicked ()","title":"slot delete_landmarks_clicked"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#slot-set_placing_button_clicked","text":"void set_placing_button_clicked ( int id )","title":"slot set_placing_button_clicked"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#slot-handle_landmark_mode_changed","text":"void handle_landmark_mode_changed ()","title":"slot handle_landmark_mode_changed"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#slot-handle_constraints_mode_changed","text":"void handle_constraints_mode_changed ()","title":"slot handle_constraints_mode_changed"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#slot-constraints_table_right_click","text":"void constraints_table_right_click ( const QPoint & point )","title":"slot constraints_table_right_click"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#slot-copy_ffc_clicked","text":"void copy_ffc_clicked ()","title":"slot copy_ffc_clicked"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#signal-import_button_clicked","text":"void import_button_clicked ()","title":"signal import_button_clicked"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-datatool","text":"DataTool ( Preferences & prefs )","title":"function DataTool"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-datatool_1","text":"~ DataTool ()","title":"function ~DataTool"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session ) Set the pointer to the session.","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-activate","text":"void activate () activate this tool","title":"function activate"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-disable_actions","text":"void disable_actions ()","title":"function disable_actions"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-enable_actions","text":"void enable_actions ()","title":"function enable_actions"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-update_table","text":"void update_table ()","title":"function update_table"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-update_landmark_table","text":"void update_landmark_table ()","title":"function update_landmark_table"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-landmark_domain_changed","text":"void landmark_domain_changed ()","title":"function landmark_domain_changed"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-constraints_domain_changed","text":"void constraints_domain_changed ()","title":"function constraints_domain_changed"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-delete_planes_clicked","text":"void delete_planes_clicked ()","title":"function delete_planes_clicked"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-delete_ffc_clicked","text":"void delete_ffc_clicked ()","title":"function delete_ffc_clicked"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-update_notes","text":"void update_notes ()","title":"function update_notes"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-get_notes","text":"std :: string get_notes ()","title":"function get_notes"},{"location":"api/Classes/classshapeworks_1_1DataTool.html#function-store_data","text":"void store_data () Updated on 2023-10-24 at 22:16:01 +0000","title":"function store_data"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html","text":"shapeworks::DeepSSMJob Qt Wrapper for DeepSSM. More... #include Inherits from shapeworks::Job , QObject Public Types Name enum class FileType enum class SplitType Public Functions Name DeepSSMJob (ProjectHandle project, DeepSSMTool::ToolMode tool_mode) ~DeepSSMJob () virtual void run () override run the job virtual QString name () override get the name of the job void run_augmentation () void run_training () void run_testing () void python_message (std::string str) std::vector< std::string > get_list (FileType file_type, SplitType split_type) Additional inherited members Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Detailed Description class shapeworks :: DeepSSMJob ; Qt Wrapper for DeepSSM. The DeepSSMJob class wraps the functionality for DeepSSM as a Studio Job object Public Types Documentation enum FileType Enumerator Value Description ID IMAGE PARTICLES enum SplitType Enumerator Value Description TRAIN TEST Public Functions Documentation function DeepSSMJob DeepSSMJob ( ProjectHandle project , DeepSSMTool :: ToolMode tool_mode ) function ~DeepSSMJob ~ DeepSSMJob () function run virtual void run () override run the job Reimplements : shapeworks::Job::run function name virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name function run_augmentation void run_augmentation () function run_training void run_training () function run_testing void run_testing () function python_message void python_message ( std :: string str ) function get_list std :: vector < std :: string > get_list ( FileType file_type , SplitType split_type ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::DeepSSMJob"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#shapeworksdeepssmjob","text":"Qt Wrapper for DeepSSM. More... #include Inherits from shapeworks::Job , QObject","title":"shapeworks::DeepSSMJob"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#public-types","text":"Name enum class FileType enum class SplitType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#public-functions","text":"Name DeepSSMJob (ProjectHandle project, DeepSSMTool::ToolMode tool_mode) ~DeepSSMJob () virtual void run () override run the job virtual QString name () override get the name of the job void run_augmentation () void run_training () void run_testing () void python_message (std::string str) std::vector< std::string > get_list (FileType file_type, SplitType split_type)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#additional-inherited-members","text":"Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#detailed-description","text":"class shapeworks :: DeepSSMJob ; Qt Wrapper for DeepSSM. The DeepSSMJob class wraps the functionality for DeepSSM as a Studio Job object","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#enum-filetype","text":"Enumerator Value Description ID IMAGE PARTICLES","title":"enum FileType"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#enum-splittype","text":"Enumerator Value Description TRAIN TEST","title":"enum SplitType"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-deepssmjob","text":"DeepSSMJob ( ProjectHandle project , DeepSSMTool :: ToolMode tool_mode )","title":"function DeepSSMJob"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-deepssmjob_1","text":"~ DeepSSMJob ()","title":"function ~DeepSSMJob"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-run","text":"virtual void run () override run the job Reimplements : shapeworks::Job::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-name","text":"virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name","title":"function name"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-run_augmentation","text":"void run_augmentation ()","title":"function run_augmentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-run_training","text":"void run_training ()","title":"function run_training"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-run_testing","text":"void run_testing ()","title":"function run_testing"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-python_message","text":"void python_message ( std :: string str )","title":"function python_message"},{"location":"api/Classes/classshapeworks_1_1DeepSSMJob.html#function-get_list","text":"std :: vector < std :: string > get_list ( FileType file_type , SplitType split_type ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_list"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html","text":"shapeworks::DeepSSMParameters Public Functions Name DeepSSMParameters (ProjectHandle project) void save_to_project () int get_aug_num_samples () void set_aug_num_samples (int num_samples) int get_aug_num_dims () void set_aug_num_dims (int num_dims) int get_training_num_dims () void set_training_num_dims (int num_dims) double get_aug_percent_variability () void set_aug_percent_variability (double percent_variability) std::string get_aug_sampler_type () void set_aug_sampler_type (std::string sampler_type) int get_training_epochs () void set_training_epochs (int epochs) double get_training_learning_rate () void set_training_learning_rate (double rate) bool get_training_decay_learning_rate () void set_training_decay_learning_rate (bool decay) bool get_training_fine_tuning () void set_training_fine_tuning (bool fine_tuning) int get_training_fine_tuning_epochs () void set_training_fine_tuning_epochs (int epochs) double get_training_fine_tuning_learning_rate () void set_training_fine_tuning_learning_rate (double rate) int get_training_batch_size () void set_training_batch_size (int batch_size) double get_training_split () void set_training_split (double value) double get_validation_split () void set_validation_split (double value) double get_testing_split () void set_testing_split (double value) void restore_split_defaults () void restore_augmentation_defaults () void restore_training_defaults () void restore_defaults () Public Attributes Name const std::string DEEPSSM_SAMPLER_GAUSSIAN_C const std::string DEEPSSM_SAMPLER_MIXTURE_C const std::string DEEPSSM_SAMPLER_KDE_C Public Functions Documentation function DeepSSMParameters explicit DeepSSMParameters ( ProjectHandle project ) function save_to_project void save_to_project () function get_aug_num_samples int get_aug_num_samples () function set_aug_num_samples void set_aug_num_samples ( int num_samples ) function get_aug_num_dims int get_aug_num_dims () function set_aug_num_dims void set_aug_num_dims ( int num_dims ) function get_training_num_dims int get_training_num_dims () function set_training_num_dims void set_training_num_dims ( int num_dims ) function get_aug_percent_variability double get_aug_percent_variability () function set_aug_percent_variability void set_aug_percent_variability ( double percent_variability ) function get_aug_sampler_type std :: string get_aug_sampler_type () function set_aug_sampler_type void set_aug_sampler_type ( std :: string sampler_type ) function get_training_epochs int get_training_epochs () function set_training_epochs void set_training_epochs ( int epochs ) function get_training_learning_rate double get_training_learning_rate () function set_training_learning_rate void set_training_learning_rate ( double rate ) function get_training_decay_learning_rate bool get_training_decay_learning_rate () function set_training_decay_learning_rate void set_training_decay_learning_rate ( bool decay ) function get_training_fine_tuning bool get_training_fine_tuning () function set_training_fine_tuning void set_training_fine_tuning ( bool fine_tuning ) function get_training_fine_tuning_epochs int get_training_fine_tuning_epochs () function set_training_fine_tuning_epochs void set_training_fine_tuning_epochs ( int epochs ) function get_training_fine_tuning_learning_rate double get_training_fine_tuning_learning_rate () function set_training_fine_tuning_learning_rate void set_training_fine_tuning_learning_rate ( double rate ) function get_training_batch_size int get_training_batch_size () function set_training_batch_size void set_training_batch_size ( int batch_size ) function get_training_split double get_training_split () function set_training_split void set_training_split ( double value ) function get_validation_split double get_validation_split () function set_validation_split void set_validation_split ( double value ) function get_testing_split double get_testing_split () function set_testing_split void set_testing_split ( double value ) function restore_split_defaults void restore_split_defaults () function restore_augmentation_defaults void restore_augmentation_defaults () function restore_training_defaults void restore_training_defaults () function restore_defaults void restore_defaults () Public Attributes Documentation variable DEEPSSM_SAMPLER_GAUSSIAN_C static const std :: string DEEPSSM_SAMPLER_GAUSSIAN_C ; variable DEEPSSM_SAMPLER_MIXTURE_C static const std :: string DEEPSSM_SAMPLER_MIXTURE_C ; variable DEEPSSM_SAMPLER_KDE_C static const std :: string DEEPSSM_SAMPLER_KDE_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::DeepSSMParameters"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#shapeworksdeepssmparameters","text":"","title":"shapeworks::DeepSSMParameters"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#public-functions","text":"Name DeepSSMParameters (ProjectHandle project) void save_to_project () int get_aug_num_samples () void set_aug_num_samples (int num_samples) int get_aug_num_dims () void set_aug_num_dims (int num_dims) int get_training_num_dims () void set_training_num_dims (int num_dims) double get_aug_percent_variability () void set_aug_percent_variability (double percent_variability) std::string get_aug_sampler_type () void set_aug_sampler_type (std::string sampler_type) int get_training_epochs () void set_training_epochs (int epochs) double get_training_learning_rate () void set_training_learning_rate (double rate) bool get_training_decay_learning_rate () void set_training_decay_learning_rate (bool decay) bool get_training_fine_tuning () void set_training_fine_tuning (bool fine_tuning) int get_training_fine_tuning_epochs () void set_training_fine_tuning_epochs (int epochs) double get_training_fine_tuning_learning_rate () void set_training_fine_tuning_learning_rate (double rate) int get_training_batch_size () void set_training_batch_size (int batch_size) double get_training_split () void set_training_split (double value) double get_validation_split () void set_validation_split (double value) double get_testing_split () void set_testing_split (double value) void restore_split_defaults () void restore_augmentation_defaults () void restore_training_defaults () void restore_defaults ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#public-attributes","text":"Name const std::string DEEPSSM_SAMPLER_GAUSSIAN_C const std::string DEEPSSM_SAMPLER_MIXTURE_C const std::string DEEPSSM_SAMPLER_KDE_C","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-deepssmparameters","text":"explicit DeepSSMParameters ( ProjectHandle project )","title":"function DeepSSMParameters"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-save_to_project","text":"void save_to_project ()","title":"function save_to_project"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_aug_num_samples","text":"int get_aug_num_samples ()","title":"function get_aug_num_samples"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_aug_num_samples","text":"void set_aug_num_samples ( int num_samples )","title":"function set_aug_num_samples"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_aug_num_dims","text":"int get_aug_num_dims ()","title":"function get_aug_num_dims"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_aug_num_dims","text":"void set_aug_num_dims ( int num_dims )","title":"function set_aug_num_dims"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_num_dims","text":"int get_training_num_dims ()","title":"function get_training_num_dims"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_num_dims","text":"void set_training_num_dims ( int num_dims )","title":"function set_training_num_dims"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_aug_percent_variability","text":"double get_aug_percent_variability ()","title":"function get_aug_percent_variability"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_aug_percent_variability","text":"void set_aug_percent_variability ( double percent_variability )","title":"function set_aug_percent_variability"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_aug_sampler_type","text":"std :: string get_aug_sampler_type ()","title":"function get_aug_sampler_type"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_aug_sampler_type","text":"void set_aug_sampler_type ( std :: string sampler_type )","title":"function set_aug_sampler_type"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_epochs","text":"int get_training_epochs ()","title":"function get_training_epochs"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_epochs","text":"void set_training_epochs ( int epochs )","title":"function set_training_epochs"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_learning_rate","text":"double get_training_learning_rate ()","title":"function get_training_learning_rate"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_learning_rate","text":"void set_training_learning_rate ( double rate )","title":"function set_training_learning_rate"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_decay_learning_rate","text":"bool get_training_decay_learning_rate ()","title":"function get_training_decay_learning_rate"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_decay_learning_rate","text":"void set_training_decay_learning_rate ( bool decay )","title":"function set_training_decay_learning_rate"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_fine_tuning","text":"bool get_training_fine_tuning ()","title":"function get_training_fine_tuning"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_fine_tuning","text":"void set_training_fine_tuning ( bool fine_tuning )","title":"function set_training_fine_tuning"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_fine_tuning_epochs","text":"int get_training_fine_tuning_epochs ()","title":"function get_training_fine_tuning_epochs"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_fine_tuning_epochs","text":"void set_training_fine_tuning_epochs ( int epochs )","title":"function set_training_fine_tuning_epochs"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_fine_tuning_learning_rate","text":"double get_training_fine_tuning_learning_rate ()","title":"function get_training_fine_tuning_learning_rate"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_fine_tuning_learning_rate","text":"void set_training_fine_tuning_learning_rate ( double rate )","title":"function set_training_fine_tuning_learning_rate"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_batch_size","text":"int get_training_batch_size ()","title":"function get_training_batch_size"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_batch_size","text":"void set_training_batch_size ( int batch_size )","title":"function set_training_batch_size"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_training_split","text":"double get_training_split ()","title":"function get_training_split"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_training_split","text":"void set_training_split ( double value )","title":"function set_training_split"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_validation_split","text":"double get_validation_split ()","title":"function get_validation_split"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_validation_split","text":"void set_validation_split ( double value )","title":"function set_validation_split"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-get_testing_split","text":"double get_testing_split ()","title":"function get_testing_split"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-set_testing_split","text":"void set_testing_split ( double value )","title":"function set_testing_split"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-restore_split_defaults","text":"void restore_split_defaults ()","title":"function restore_split_defaults"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-restore_augmentation_defaults","text":"void restore_augmentation_defaults ()","title":"function restore_augmentation_defaults"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-restore_training_defaults","text":"void restore_training_defaults ()","title":"function restore_training_defaults"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#function-restore_defaults","text":"void restore_defaults ()","title":"function restore_defaults"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#variable-deepssm_sampler_gaussian_c","text":"static const std :: string DEEPSSM_SAMPLER_GAUSSIAN_C ;","title":"variable DEEPSSM_SAMPLER_GAUSSIAN_C"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#variable-deepssm_sampler_mixture_c","text":"static const std :: string DEEPSSM_SAMPLER_MIXTURE_C ;","title":"variable DEEPSSM_SAMPLER_MIXTURE_C"},{"location":"api/Classes/classshapeworks_1_1DeepSSMParameters.html#variable-deepssm_sampler_kde_c","text":"static const std :: string DEEPSSM_SAMPLER_KDE_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable DEEPSSM_SAMPLER_KDE_C"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html","text":"shapeworks::DeepSSMTool Inherits from QWidget Public Types Name enum class ToolMode Public Slots Name void run_clicked () void restore_defaults () void handle_thread_complete () void handle_progress (int val) void handle_error (QString msg) void tab_changed (int tab) void update_panels () void update_split (QLineEdit * source) void handle_new_mesh () void training_fine_tuning_changed () Public Signals Name void update_view () void progress (int ) Public Functions Name DeepSSMTool ( Preferences & prefs) ~DeepSSMTool () void set_session (QSharedPointer< Session > session) set the pointer to the session void set_app ( ShapeWorksStudioApp * app) set the pointer to the application bool is_active () Return if this tool is active. void load_params () void store_params () void shutdown () ShapeList get_shapes () void resizeEvent (QResizeEvent * event) override std::string get_display_feature () Public Types Documentation enum ToolMode Enumerator Value Description DeepSSM_SplitType DeepSSM_AugmentationType DeepSSM_TrainingType DeepSSM_TestingType Public Slots Documentation slot run_clicked void run_clicked () slot restore_defaults void restore_defaults () slot handle_thread_complete void handle_thread_complete () slot handle_progress void handle_progress ( int val ) slot handle_error void handle_error ( QString msg ) slot tab_changed void tab_changed ( int tab ) slot update_panels void update_panels () slot update_split void update_split ( QLineEdit * source ) slot handle_new_mesh void handle_new_mesh () slot training_fine_tuning_changed void training_fine_tuning_changed () Public Signals Documentation signal update_view void update_view () signal progress void progress ( int ) Public Functions Documentation function DeepSSMTool DeepSSMTool ( Preferences & prefs ) function ~DeepSSMTool ~ DeepSSMTool () function set_session void set_session ( QSharedPointer < Session > session ) set the pointer to the session function set_app void set_app ( ShapeWorksStudioApp * app ) set the pointer to the application function is_active bool is_active () Return if this tool is active. function load_params void load_params () function store_params void store_params () function shutdown void shutdown () function get_shapes ShapeList get_shapes () function resizeEvent void resizeEvent ( QResizeEvent * event ) override function get_display_feature std :: string get_display_feature () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::DeepSSMTool"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#shapeworksdeepssmtool","text":"Inherits from QWidget","title":"shapeworks::DeepSSMTool"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-types","text":"Name enum class ToolMode","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-slots","text":"Name void run_clicked () void restore_defaults () void handle_thread_complete () void handle_progress (int val) void handle_error (QString msg) void tab_changed (int tab) void update_panels () void update_split (QLineEdit * source) void handle_new_mesh () void training_fine_tuning_changed ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-signals","text":"Name void update_view () void progress (int )","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-functions","text":"Name DeepSSMTool ( Preferences & prefs) ~DeepSSMTool () void set_session (QSharedPointer< Session > session) set the pointer to the session void set_app ( ShapeWorksStudioApp * app) set the pointer to the application bool is_active () Return if this tool is active. void load_params () void store_params () void shutdown () ShapeList get_shapes () void resizeEvent (QResizeEvent * event) override std::string get_display_feature ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#enum-toolmode","text":"Enumerator Value Description DeepSSM_SplitType DeepSSM_AugmentationType DeepSSM_TrainingType DeepSSM_TestingType","title":"enum ToolMode"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-run_clicked","text":"void run_clicked ()","title":"slot run_clicked"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-restore_defaults","text":"void restore_defaults ()","title":"slot restore_defaults"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-handle_thread_complete","text":"void handle_thread_complete ()","title":"slot handle_thread_complete"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-handle_progress","text":"void handle_progress ( int val )","title":"slot handle_progress"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-handle_error","text":"void handle_error ( QString msg )","title":"slot handle_error"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-tab_changed","text":"void tab_changed ( int tab )","title":"slot tab_changed"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-update_panels","text":"void update_panels ()","title":"slot update_panels"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-update_split","text":"void update_split ( QLineEdit * source )","title":"slot update_split"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-handle_new_mesh","text":"void handle_new_mesh ()","title":"slot handle_new_mesh"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#slot-training_fine_tuning_changed","text":"void training_fine_tuning_changed ()","title":"slot training_fine_tuning_changed"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#signal-update_view","text":"void update_view ()","title":"signal update_view"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#signal-progress","text":"void progress ( int )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-deepssmtool","text":"DeepSSMTool ( Preferences & prefs )","title":"function DeepSSMTool"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-deepssmtool_1","text":"~ DeepSSMTool ()","title":"function ~DeepSSMTool"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session ) set the pointer to the session","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-set_app","text":"void set_app ( ShapeWorksStudioApp * app ) set the pointer to the application","title":"function set_app"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-is_active","text":"bool is_active () Return if this tool is active.","title":"function is_active"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-load_params","text":"void load_params ()","title":"function load_params"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-store_params","text":"void store_params ()","title":"function store_params"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-shutdown","text":"void shutdown ()","title":"function shutdown"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-get_shapes","text":"ShapeList get_shapes ()","title":"function get_shapes"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-resizeevent","text":"void resizeEvent ( QResizeEvent * event ) override","title":"function resizeEvent"},{"location":"api/Classes/classshapeworks_1_1DeepSSMTool.html#function-get_display_feature","text":"std :: string get_display_feature () Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_display_feature"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html","text":"shapeworks::DisentangledCorrespondenceFunction More... #include Inherits from shapeworks::VectorFunction , itk::LightObject Public Types Name typedef DisentangledCorrespondenceFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef LegacyShapeMatrix ShapeMatrixType typedef ShapeMatrixType::DataType DataType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type typedef std::shared_ptr< std::vector< vnl_matrix_type > > shared_vnl_matrix_array_type Public Functions Name itkTypeMacro ( DisentangledCorrespondenceFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const void WriteModes (const std::string & , int ) const void SetShapeMatrix ( ShapeMatrixType * s) ShapeMatrixType * GetShapeMatrix () const ShapeMatrixType * GetShapeMatrix () const virtual void BeforeIteration () virtual void AfterIteration () void SetMinimumVariance (double d) double GetMinimumVariance () const void SetMinimumVarianceDecay (double initial_value, double final_value, double time_period) bool GetMinimumVarianceDecayConstant () const void PrintShapeMatrix () void UseMeanEnergy () void UseEntropy () bool GetHoldMinimumVariance () const void SetHoldMinimumVariance (bool b) void SetRecomputeCovarianceInterval (int i) int GetRecomputeCovarianceInterval () const virtual VectorFunction::Pointer Clone () Protected Functions Name DisentangledCorrespondenceFunction () virtual ~DisentangledCorrespondenceFunction () void operator= (const DisentangledCorrespondenceFunction & ) DisentangledCorrespondenceFunction (const DisentangledCorrespondenceFunction & ) virtual void ComputeCovarianceMatrices () void Initialize () Public Attributes Name constexpr static unsigned int VDimension Protected Attributes Name ShapeMatrixType::Pointer m_ShapeMatrix double m_MinimumVariance double m_MinimumEigenValue std::vector< double > m_MinimumEigenValue_time_cohort std::vector< double > m_MinimumEigenValue_shape_cohort double m_CurrentEnergy bool m_HoldMinimumVariance double m_MinimumVarianceDecayConstant int m_RecomputeCovarianceInterval int m_Counter bool m_UseMeanEnergy std::shared_ptr< std::vector< Eigen::MatrixXd > > m_InverseCovMatrices_time_cohort std::shared_ptr< std::vector< Eigen::MatrixXd > > m_InverseCovMatrices_shape_cohort shared_vnl_matrix_array_type m_points_mean_time_cohort shared_vnl_matrix_array_type m_points_mean_shape_cohort shared_vnl_matrix_array_type m_Time_PointsUpdate shared_vnl_matrix_array_type m_Shape_PointsUpdate Additional inherited members Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber Detailed Description class shapeworks :: DisentangledCorrespondenceFunction ; This class implements the Correspondence Term where the entropy computation is disentangled across time and shape domain, and builds a Sapatiotemporal SSM. Public Types Documentation typedef Self typedef DisentangledCorrespondenceFunction shapeworks :: DisentangledCorrespondenceFunction :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: DisentangledCorrespondenceFunction :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: DisentangledCorrespondenceFunction :: ConstPointer ; typedef Superclass typedef VectorFunction shapeworks :: DisentangledCorrespondenceFunction :: Superclass ; typedef ShapeMatrixType typedef LegacyShapeMatrix shapeworks :: DisentangledCorrespondenceFunction :: ShapeMatrixType ; typedef DataType typedef ShapeMatrixType :: DataType shapeworks :: DisentangledCorrespondenceFunction :: DataType ; typedef VectorType typedef Superclass :: VectorType shapeworks :: DisentangledCorrespondenceFunction :: VectorType ; Vector & Point types. typedef PointType typedef ParticleSystem :: PointType shapeworks :: DisentangledCorrespondenceFunction :: PointType ; typedef vnl_vector_type typedef vnl_vector < DataType > shapeworks :: DisentangledCorrespondenceFunction :: vnl_vector_type ; typedef vnl_matrix_type typedef vnl_matrix < DataType > shapeworks :: DisentangledCorrespondenceFunction :: vnl_matrix_type ; typedef shared_vnl_matrix_array_type typedef std :: shared_ptr < std :: vector < vnl_matrix_type > > shapeworks :: DisentangledCorrespondenceFunction :: shared_vnl_matrix_array_type ; Public Functions Documentation function itkTypeMacro itkTypeMacro ( DisentangledCorrespondenceFunction , VectorFunction ) function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function Evaluate virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Evaluate inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Energy inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::VectorFunction::Energy function WriteModes void WriteModes ( const std :: string & , int ) const Write the first n modes to +- 3 std dev and the mean of the model described by the covariance matrix. The string argument is a prefix to the file names. function SetShapeMatrix inline void SetShapeMatrix ( ShapeMatrixType * s ) Access the shape matrix. function GetShapeMatrix inline ShapeMatrixType * GetShapeMatrix () function GetShapeMatrix inline const ShapeMatrixType * GetShapeMatrix () const function BeforeIteration inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration Called before each iteration of a solver. function AfterIteration inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration Called after each iteration of the solver. function SetMinimumVariance inline void SetMinimumVariance ( double d ) function GetMinimumVariance inline double GetMinimumVariance () const function SetMinimumVarianceDecay inline void SetMinimumVarianceDecay ( double initial_value , double final_value , double time_period ) function GetMinimumVarianceDecayConstant inline bool GetMinimumVarianceDecayConstant () const function PrintShapeMatrix inline void PrintShapeMatrix () function UseMeanEnergy inline void UseMeanEnergy () function UseEntropy inline void UseEntropy () function GetHoldMinimumVariance inline bool GetHoldMinimumVariance () const function SetHoldMinimumVariance inline void SetHoldMinimumVariance ( bool b ) function SetRecomputeCovarianceInterval inline void SetRecomputeCovarianceInterval ( int i ) function GetRecomputeCovarianceInterval inline int GetRecomputeCovarianceInterval () const function Clone inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone Protected Functions Documentation function DisentangledCorrespondenceFunction inline DisentangledCorrespondenceFunction () function ~DisentangledCorrespondenceFunction inline virtual ~ DisentangledCorrespondenceFunction () function operator= void operator = ( const DisentangledCorrespondenceFunction & ) function DisentangledCorrespondenceFunction DisentangledCorrespondenceFunction ( const DisentangledCorrespondenceFunction & ) function ComputeCovarianceMatrices virtual void ComputeCovarianceMatrices () function Initialize inline void Initialize () Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Protected Attributes Documentation variable m_ShapeMatrix ShapeMatrixType :: Pointer m_ShapeMatrix ; variable m_MinimumVariance double m_MinimumVariance ; variable m_MinimumEigenValue double m_MinimumEigenValue ; variable m_MinimumEigenValue_time_cohort std :: vector < double > m_MinimumEigenValue_time_cohort ; variable m_MinimumEigenValue_shape_cohort std :: vector < double > m_MinimumEigenValue_shape_cohort ; variable m_CurrentEnergy double m_CurrentEnergy ; variable m_HoldMinimumVariance bool m_HoldMinimumVariance ; variable m_MinimumVarianceDecayConstant double m_MinimumVarianceDecayConstant ; variable m_RecomputeCovarianceInterval int m_RecomputeCovarianceInterval ; variable m_Counter int m_Counter ; variable m_UseMeanEnergy bool m_UseMeanEnergy ; variable m_InverseCovMatrices_time_cohort std :: shared_ptr < std :: vector < Eigen :: MatrixXd > > m_InverseCovMatrices_time_cohort ; variable m_InverseCovMatrices_shape_cohort std :: shared_ptr < std :: vector < Eigen :: MatrixXd > > m_InverseCovMatrices_shape_cohort ; variable m_points_mean_time_cohort shared_vnl_matrix_array_type m_points_mean_time_cohort ; variable m_points_mean_shape_cohort shared_vnl_matrix_array_type m_points_mean_shape_cohort ; variable m_Time_PointsUpdate shared_vnl_matrix_array_type m_Time_PointsUpdate ; variable m_Shape_PointsUpdate shared_vnl_matrix_array_type m_Shape_PointsUpdate ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::DisentangledCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#shapeworksdisentangledcorrespondencefunction","text":"More... #include Inherits from shapeworks::VectorFunction , itk::LightObject","title":"shapeworks::DisentangledCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#public-types","text":"Name typedef DisentangledCorrespondenceFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef LegacyShapeMatrix ShapeMatrixType typedef ShapeMatrixType::DataType DataType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type typedef std::shared_ptr< std::vector< vnl_matrix_type > > shared_vnl_matrix_array_type","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#public-functions","text":"Name itkTypeMacro ( DisentangledCorrespondenceFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const void WriteModes (const std::string & , int ) const void SetShapeMatrix ( ShapeMatrixType * s) ShapeMatrixType * GetShapeMatrix () const ShapeMatrixType * GetShapeMatrix () const virtual void BeforeIteration () virtual void AfterIteration () void SetMinimumVariance (double d) double GetMinimumVariance () const void SetMinimumVarianceDecay (double initial_value, double final_value, double time_period) bool GetMinimumVarianceDecayConstant () const void PrintShapeMatrix () void UseMeanEnergy () void UseEntropy () bool GetHoldMinimumVariance () const void SetHoldMinimumVariance (bool b) void SetRecomputeCovarianceInterval (int i) int GetRecomputeCovarianceInterval () const virtual VectorFunction::Pointer Clone ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#protected-functions","text":"Name DisentangledCorrespondenceFunction () virtual ~DisentangledCorrespondenceFunction () void operator= (const DisentangledCorrespondenceFunction & ) DisentangledCorrespondenceFunction (const DisentangledCorrespondenceFunction & ) virtual void ComputeCovarianceMatrices () void Initialize ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#protected-attributes","text":"Name ShapeMatrixType::Pointer m_ShapeMatrix double m_MinimumVariance double m_MinimumEigenValue std::vector< double > m_MinimumEigenValue_time_cohort std::vector< double > m_MinimumEigenValue_shape_cohort double m_CurrentEnergy bool m_HoldMinimumVariance double m_MinimumVarianceDecayConstant int m_RecomputeCovarianceInterval int m_Counter bool m_UseMeanEnergy std::shared_ptr< std::vector< Eigen::MatrixXd > > m_InverseCovMatrices_time_cohort std::shared_ptr< std::vector< Eigen::MatrixXd > > m_InverseCovMatrices_shape_cohort shared_vnl_matrix_array_type m_points_mean_time_cohort shared_vnl_matrix_array_type m_points_mean_shape_cohort shared_vnl_matrix_array_type m_Time_PointsUpdate shared_vnl_matrix_array_type m_Shape_PointsUpdate","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#detailed-description","text":"class shapeworks :: DisentangledCorrespondenceFunction ; This class implements the Correspondence Term where the entropy computation is disentangled across time and shape domain, and builds a Sapatiotemporal SSM.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-self","text":"typedef DisentangledCorrespondenceFunction shapeworks :: DisentangledCorrespondenceFunction :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: DisentangledCorrespondenceFunction :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: DisentangledCorrespondenceFunction :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-superclass","text":"typedef VectorFunction shapeworks :: DisentangledCorrespondenceFunction :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-shapematrixtype","text":"typedef LegacyShapeMatrix shapeworks :: DisentangledCorrespondenceFunction :: ShapeMatrixType ;","title":"typedef ShapeMatrixType"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-datatype","text":"typedef ShapeMatrixType :: DataType shapeworks :: DisentangledCorrespondenceFunction :: DataType ;","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-vectortype","text":"typedef Superclass :: VectorType shapeworks :: DisentangledCorrespondenceFunction :: VectorType ; Vector & Point types.","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-pointtype","text":"typedef ParticleSystem :: PointType shapeworks :: DisentangledCorrespondenceFunction :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-vnl_vector_type","text":"typedef vnl_vector < DataType > shapeworks :: DisentangledCorrespondenceFunction :: vnl_vector_type ;","title":"typedef vnl_vector_type"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-vnl_matrix_type","text":"typedef vnl_matrix < DataType > shapeworks :: DisentangledCorrespondenceFunction :: vnl_matrix_type ;","title":"typedef vnl_matrix_type"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#typedef-shared_vnl_matrix_array_type","text":"typedef std :: shared_ptr < std :: vector < vnl_matrix_type > > shapeworks :: DisentangledCorrespondenceFunction :: shared_vnl_matrix_array_type ;","title":"typedef shared_vnl_matrix_array_type"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-itktypemacro","text":"itkTypeMacro ( DisentangledCorrespondenceFunction , VectorFunction )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-evaluate","text":"virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-evaluate_1","text":"inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-energy","text":"inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::VectorFunction::Energy","title":"function Energy"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-writemodes","text":"void WriteModes ( const std :: string & , int ) const Write the first n modes to +- 3 std dev and the mean of the model described by the covariance matrix. The string argument is a prefix to the file names.","title":"function WriteModes"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-setshapematrix","text":"inline void SetShapeMatrix ( ShapeMatrixType * s ) Access the shape matrix.","title":"function SetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-getshapematrix","text":"inline ShapeMatrixType * GetShapeMatrix ()","title":"function GetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-getshapematrix_1","text":"inline const ShapeMatrixType * GetShapeMatrix () const","title":"function GetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration Called before each iteration of a solver.","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-afteriteration","text":"inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration Called after each iteration of the solver.","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-setminimumvariance","text":"inline void SetMinimumVariance ( double d )","title":"function SetMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-getminimumvariance","text":"inline double GetMinimumVariance () const","title":"function GetMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-setminimumvariancedecay","text":"inline void SetMinimumVarianceDecay ( double initial_value , double final_value , double time_period )","title":"function SetMinimumVarianceDecay"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-getminimumvariancedecayconstant","text":"inline bool GetMinimumVarianceDecayConstant () const","title":"function GetMinimumVarianceDecayConstant"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-printshapematrix","text":"inline void PrintShapeMatrix ()","title":"function PrintShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-usemeanenergy","text":"inline void UseMeanEnergy ()","title":"function UseMeanEnergy"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-useentropy","text":"inline void UseEntropy ()","title":"function UseEntropy"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-getholdminimumvariance","text":"inline bool GetHoldMinimumVariance () const","title":"function GetHoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-setholdminimumvariance","text":"inline void SetHoldMinimumVariance ( bool b )","title":"function SetHoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-setrecomputecovarianceinterval","text":"inline void SetRecomputeCovarianceInterval ( int i )","title":"function SetRecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-getrecomputecovarianceinterval","text":"inline int GetRecomputeCovarianceInterval () const","title":"function GetRecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-clone","text":"inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone","title":"function Clone"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-disentangledcorrespondencefunction","text":"inline DisentangledCorrespondenceFunction ()","title":"function DisentangledCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-disentangledcorrespondencefunction_1","text":"inline virtual ~ DisentangledCorrespondenceFunction ()","title":"function ~DisentangledCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-operator","text":"void operator = ( const DisentangledCorrespondenceFunction & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-disentangledcorrespondencefunction_2","text":"DisentangledCorrespondenceFunction ( const DisentangledCorrespondenceFunction & )","title":"function DisentangledCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-computecovariancematrices","text":"virtual void ComputeCovarianceMatrices ()","title":"function ComputeCovarianceMatrices"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#function-initialize","text":"inline void Initialize ()","title":"function Initialize"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_shapematrix","text":"ShapeMatrixType :: Pointer m_ShapeMatrix ;","title":"variable m_ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_minimumvariance","text":"double m_MinimumVariance ;","title":"variable m_MinimumVariance"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_minimumeigenvalue","text":"double m_MinimumEigenValue ;","title":"variable m_MinimumEigenValue"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_minimumeigenvalue_time_cohort","text":"std :: vector < double > m_MinimumEigenValue_time_cohort ;","title":"variable m_MinimumEigenValue_time_cohort"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_minimumeigenvalue_shape_cohort","text":"std :: vector < double > m_MinimumEigenValue_shape_cohort ;","title":"variable m_MinimumEigenValue_shape_cohort"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_currentenergy","text":"double m_CurrentEnergy ;","title":"variable m_CurrentEnergy"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_holdminimumvariance","text":"bool m_HoldMinimumVariance ;","title":"variable m_HoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_minimumvariancedecayconstant","text":"double m_MinimumVarianceDecayConstant ;","title":"variable m_MinimumVarianceDecayConstant"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_recomputecovarianceinterval","text":"int m_RecomputeCovarianceInterval ;","title":"variable m_RecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_counter","text":"int m_Counter ;","title":"variable m_Counter"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_usemeanenergy","text":"bool m_UseMeanEnergy ;","title":"variable m_UseMeanEnergy"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_inversecovmatrices_time_cohort","text":"std :: shared_ptr < std :: vector < Eigen :: MatrixXd > > m_InverseCovMatrices_time_cohort ;","title":"variable m_InverseCovMatrices_time_cohort"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_inversecovmatrices_shape_cohort","text":"std :: shared_ptr < std :: vector < Eigen :: MatrixXd > > m_InverseCovMatrices_shape_cohort ;","title":"variable m_InverseCovMatrices_shape_cohort"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_points_mean_time_cohort","text":"shared_vnl_matrix_array_type m_points_mean_time_cohort ;","title":"variable m_points_mean_time_cohort"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_points_mean_shape_cohort","text":"shared_vnl_matrix_array_type m_points_mean_shape_cohort ;","title":"variable m_points_mean_shape_cohort"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_time_pointsupdate","text":"shared_vnl_matrix_array_type m_Time_PointsUpdate ;","title":"variable m_Time_PointsUpdate"},{"location":"api/Classes/classshapeworks_1_1DisentangledCorrespondenceFunction.html#variable-m_shape_pointsupdate","text":"shared_vnl_matrix_array_type m_Shape_PointsUpdate ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_Shape_PointsUpdate"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html","text":"shapeworks::DualVectorFunction More... #include Inherits from shapeworks::VectorFunction , itk::LightObject Public Types Name typedef DualVectorFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef Superclass::VectorType VectorType Public Functions Name itkTypeMacro ( DualVectorFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int idx, unsigned int d, const ParticleSystem * system, double & maxmove) const virtual double EnergyA (unsigned int idx, unsigned int d, const ParticleSystem * system) const virtual double EnergyB (unsigned int idx, unsigned int d, const ParticleSystem * system) const virtual double Energy (unsigned int idx, unsigned int d, const ParticleSystem * system) const virtual VectorType Evaluate (unsigned int idx, unsigned int d, const ParticleSystem * system, double & maxmove, double & energy) const virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void AfterIteration () virtual void BeforeIteration () virtual void SetParticleSystem ( ParticleSystem * p) virtual void SetDomainNumber (unsigned int i) void SetFunctionA ( VectorFunction * o) VectorFunction * GetFunctionA () VectorFunction * GetFunctionB () void SetFunctionB ( VectorFunction * o) void SetAOn () void SetAOff () void SetAOn (bool s) bool GetAOn () const void SetBOn () void SetBOff () void SetBOn (bool s) bool GetBOn () const virtual void SetRelativeEnergyScaling (double r) override virtual double GetRelativeEnergyScaling () const override void SetRelativeGradientScaling (double r) double GetRelativeGradientScaling () const double GetAverageGradMagA () const double GetAverageGradMagB () const double GetAverageEnergyA () const double GetAverageEnergyB () const virtual VectorFunction::Pointer Clone () Protected Functions Name DualVectorFunction () virtual ~DualVectorFunction () void operator= (const DualVectorFunction & ) DualVectorFunction (const DualVectorFunction & ) Public Attributes Name constexpr static int VDimension Protected Attributes Name bool m_AOn bool m_BOn double m_RelativeGradientScaling double m_RelativeEnergyScaling double m_AverageGradMagA double m_AverageGradMagB double m_AverageEnergyA double m_AverageEnergyB double m_Counter VectorFunction::Pointer m_FunctionA VectorFunction::Pointer m_FunctionB Additional inherited members Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual ParticleSystem * GetParticleSystem () const virtual int GetDomainNumber () const Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber Detailed Description class shapeworks :: DualVectorFunction ; This class combines the results of evaluating 2 VectorFunction and presents the interface of a single function evaluation. Optionally, only the first function can be used by calling SetLinkOff(). Public Types Documentation typedef Self typedef DualVectorFunction shapeworks :: DualVectorFunction :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: DualVectorFunction :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: DualVectorFunction :: ConstPointer ; typedef Superclass typedef VectorFunction shapeworks :: DualVectorFunction :: Superclass ; typedef VectorType typedef Superclass :: VectorType shapeworks :: DualVectorFunction :: VectorType ; Vector type. Public Functions Documentation function itkTypeMacro itkTypeMacro ( DualVectorFunction , VectorFunction ) function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function Evaluate inline virtual VectorType Evaluate ( unsigned int idx , unsigned int d , const ParticleSystem * system , double & maxmove ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function EnergyA inline virtual double EnergyA ( unsigned int idx , unsigned int d , const ParticleSystem * system ) const function EnergyB inline virtual double EnergyB ( unsigned int idx , unsigned int d , const ParticleSystem * system ) const function Energy inline virtual double Energy ( unsigned int idx , unsigned int d , const ParticleSystem * system ) const Reimplements : shapeworks::VectorFunction::Energy function Evaluate inline virtual VectorType Evaluate ( unsigned int idx , unsigned int d , const ParticleSystem * system , double & maxmove , double & energy ) const Reimplements : shapeworks::VectorFunction::Evaluate function BeforeEvaluate inline virtual void BeforeEvaluate ( unsigned int , unsigned int , const ParticleSystem * ) Reimplements : shapeworks::VectorFunction::BeforeEvaluate This method may be called to set up the state of the function object before a call to Evaluate. It is necessary in order to initialize certain constants and variables that may be used for calculating the Energy as well as the Gradients. Typically this is only necessary for the adaptive gradient descent algorithm. function AfterIteration inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration This method is called by a solver after each iteration. Subclasses may or may not implement this method. function BeforeIteration inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration This method is called by a solver before each iteration. Subclasses may or may not implement this method. function SetParticleSystem inline virtual void SetParticleSystem ( ParticleSystem * p ) Reimplements : shapeworks::VectorFunction::SetParticleSystem Some subclasses may require a pointer to the particle system and its domain number. These methods set/get those values. function SetDomainNumber inline virtual void SetDomainNumber ( unsigned int i ) Reimplements : shapeworks::VectorFunction::SetDomainNumber function SetFunctionA inline void SetFunctionA ( VectorFunction * o ) function GetFunctionA inline VectorFunction * GetFunctionA () function GetFunctionB inline VectorFunction * GetFunctionB () function SetFunctionB inline void SetFunctionB ( VectorFunction * o ) function SetAOn inline void SetAOn () Turn each term on and off. function SetAOff inline void SetAOff () function SetAOn inline void SetAOn ( bool s ) function GetAOn inline bool GetAOn () const function SetBOn inline void SetBOn () function SetBOff inline void SetBOff () function SetBOn inline void SetBOn ( bool s ) function GetBOn inline bool GetBOn () const function SetRelativeEnergyScaling inline virtual void SetRelativeEnergyScaling ( double r ) override Reimplements : shapeworks::VectorFunction::SetRelativeEnergyScaling The relative scaling scales the gradient B relative to A. By default this value is 1.0. function GetRelativeEnergyScaling inline virtual double GetRelativeEnergyScaling () const override Reimplements : shapeworks::VectorFunction::GetRelativeEnergyScaling function SetRelativeGradientScaling inline void SetRelativeGradientScaling ( double r ) function GetRelativeGradientScaling inline double GetRelativeGradientScaling () const function GetAverageGradMagA inline double GetAverageGradMagA () const function GetAverageGradMagB inline double GetAverageGradMagB () const function GetAverageEnergyA inline double GetAverageEnergyA () const function GetAverageEnergyB inline double GetAverageEnergyB () const function Clone inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone Protected Functions Documentation function DualVectorFunction inline DualVectorFunction () function ~DualVectorFunction inline virtual ~ DualVectorFunction () function operator= void operator = ( const DualVectorFunction & ) function DualVectorFunction DualVectorFunction ( const DualVectorFunction & ) Public Attributes Documentation variable VDimension static constexpr static int VDimension = 3 ; Protected Attributes Documentation variable m_AOn bool m_AOn ; variable m_BOn bool m_BOn ; variable m_RelativeGradientScaling double m_RelativeGradientScaling ; variable m_RelativeEnergyScaling double m_RelativeEnergyScaling ; variable m_AverageGradMagA double m_AverageGradMagA ; variable m_AverageGradMagB double m_AverageGradMagB ; variable m_AverageEnergyA double m_AverageEnergyA ; variable m_AverageEnergyB double m_AverageEnergyB ; variable m_Counter double m_Counter ; variable m_FunctionA VectorFunction :: Pointer m_FunctionA ; variable m_FunctionB VectorFunction :: Pointer m_FunctionB ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::DualVectorFunction"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#shapeworksdualvectorfunction","text":"More... #include Inherits from shapeworks::VectorFunction , itk::LightObject","title":"shapeworks::DualVectorFunction"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#public-types","text":"Name typedef DualVectorFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef Superclass::VectorType VectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#public-functions","text":"Name itkTypeMacro ( DualVectorFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int idx, unsigned int d, const ParticleSystem * system, double & maxmove) const virtual double EnergyA (unsigned int idx, unsigned int d, const ParticleSystem * system) const virtual double EnergyB (unsigned int idx, unsigned int d, const ParticleSystem * system) const virtual double Energy (unsigned int idx, unsigned int d, const ParticleSystem * system) const virtual VectorType Evaluate (unsigned int idx, unsigned int d, const ParticleSystem * system, double & maxmove, double & energy) const virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void AfterIteration () virtual void BeforeIteration () virtual void SetParticleSystem ( ParticleSystem * p) virtual void SetDomainNumber (unsigned int i) void SetFunctionA ( VectorFunction * o) VectorFunction * GetFunctionA () VectorFunction * GetFunctionB () void SetFunctionB ( VectorFunction * o) void SetAOn () void SetAOff () void SetAOn (bool s) bool GetAOn () const void SetBOn () void SetBOff () void SetBOn (bool s) bool GetBOn () const virtual void SetRelativeEnergyScaling (double r) override virtual double GetRelativeEnergyScaling () const override void SetRelativeGradientScaling (double r) double GetRelativeGradientScaling () const double GetAverageGradMagA () const double GetAverageGradMagB () const double GetAverageEnergyA () const double GetAverageEnergyB () const virtual VectorFunction::Pointer Clone ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#protected-functions","text":"Name DualVectorFunction () virtual ~DualVectorFunction () void operator= (const DualVectorFunction & ) DualVectorFunction (const DualVectorFunction & )","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#public-attributes","text":"Name constexpr static int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#protected-attributes","text":"Name bool m_AOn bool m_BOn double m_RelativeGradientScaling double m_RelativeEnergyScaling double m_AverageGradMagA double m_AverageGradMagB double m_AverageEnergyA double m_AverageEnergyB double m_Counter VectorFunction::Pointer m_FunctionA VectorFunction::Pointer m_FunctionB","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual ParticleSystem * GetParticleSystem () const virtual int GetDomainNumber () const Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#detailed-description","text":"class shapeworks :: DualVectorFunction ; This class combines the results of evaluating 2 VectorFunction and presents the interface of a single function evaluation. Optionally, only the first function can be used by calling SetLinkOff().","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#typedef-self","text":"typedef DualVectorFunction shapeworks :: DualVectorFunction :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: DualVectorFunction :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: DualVectorFunction :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#typedef-superclass","text":"typedef VectorFunction shapeworks :: DualVectorFunction :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#typedef-vectortype","text":"typedef Superclass :: VectorType shapeworks :: DualVectorFunction :: VectorType ; Vector type.","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-itktypemacro","text":"itkTypeMacro ( DualVectorFunction , VectorFunction )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-evaluate","text":"inline virtual VectorType Evaluate ( unsigned int idx , unsigned int d , const ParticleSystem * system , double & maxmove ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-energya","text":"inline virtual double EnergyA ( unsigned int idx , unsigned int d , const ParticleSystem * system ) const","title":"function EnergyA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-energyb","text":"inline virtual double EnergyB ( unsigned int idx , unsigned int d , const ParticleSystem * system ) const","title":"function EnergyB"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-energy","text":"inline virtual double Energy ( unsigned int idx , unsigned int d , const ParticleSystem * system ) const Reimplements : shapeworks::VectorFunction::Energy","title":"function Energy"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-evaluate_1","text":"inline virtual VectorType Evaluate ( unsigned int idx , unsigned int d , const ParticleSystem * system , double & maxmove , double & energy ) const Reimplements : shapeworks::VectorFunction::Evaluate","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-beforeevaluate","text":"inline virtual void BeforeEvaluate ( unsigned int , unsigned int , const ParticleSystem * ) Reimplements : shapeworks::VectorFunction::BeforeEvaluate This method may be called to set up the state of the function object before a call to Evaluate. It is necessary in order to initialize certain constants and variables that may be used for calculating the Energy as well as the Gradients. Typically this is only necessary for the adaptive gradient descent algorithm.","title":"function BeforeEvaluate"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-afteriteration","text":"inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration This method is called by a solver after each iteration. Subclasses may or may not implement this method.","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration This method is called by a solver before each iteration. Subclasses may or may not implement this method.","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setparticlesystem","text":"inline virtual void SetParticleSystem ( ParticleSystem * p ) Reimplements : shapeworks::VectorFunction::SetParticleSystem Some subclasses may require a pointer to the particle system and its domain number. These methods set/get those values.","title":"function SetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setdomainnumber","text":"inline virtual void SetDomainNumber ( unsigned int i ) Reimplements : shapeworks::VectorFunction::SetDomainNumber","title":"function SetDomainNumber"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setfunctiona","text":"inline void SetFunctionA ( VectorFunction * o )","title":"function SetFunctionA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getfunctiona","text":"inline VectorFunction * GetFunctionA ()","title":"function GetFunctionA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getfunctionb","text":"inline VectorFunction * GetFunctionB ()","title":"function GetFunctionB"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setfunctionb","text":"inline void SetFunctionB ( VectorFunction * o )","title":"function SetFunctionB"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setaon","text":"inline void SetAOn () Turn each term on and off.","title":"function SetAOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setaoff","text":"inline void SetAOff ()","title":"function SetAOff"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setaon_1","text":"inline void SetAOn ( bool s )","title":"function SetAOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getaon","text":"inline bool GetAOn () const","title":"function GetAOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setbon","text":"inline void SetBOn ()","title":"function SetBOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setboff","text":"inline void SetBOff ()","title":"function SetBOff"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setbon_1","text":"inline void SetBOn ( bool s )","title":"function SetBOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getbon","text":"inline bool GetBOn () const","title":"function GetBOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setrelativeenergyscaling","text":"inline virtual void SetRelativeEnergyScaling ( double r ) override Reimplements : shapeworks::VectorFunction::SetRelativeEnergyScaling The relative scaling scales the gradient B relative to A. By default this value is 1.0.","title":"function SetRelativeEnergyScaling"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getrelativeenergyscaling","text":"inline virtual double GetRelativeEnergyScaling () const override Reimplements : shapeworks::VectorFunction::GetRelativeEnergyScaling","title":"function GetRelativeEnergyScaling"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-setrelativegradientscaling","text":"inline void SetRelativeGradientScaling ( double r )","title":"function SetRelativeGradientScaling"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getrelativegradientscaling","text":"inline double GetRelativeGradientScaling () const","title":"function GetRelativeGradientScaling"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getaveragegradmaga","text":"inline double GetAverageGradMagA () const","title":"function GetAverageGradMagA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getaveragegradmagb","text":"inline double GetAverageGradMagB () const","title":"function GetAverageGradMagB"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getaverageenergya","text":"inline double GetAverageEnergyA () const","title":"function GetAverageEnergyA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-getaverageenergyb","text":"inline double GetAverageEnergyB () const","title":"function GetAverageEnergyB"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-clone","text":"inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone","title":"function Clone"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-dualvectorfunction","text":"inline DualVectorFunction ()","title":"function DualVectorFunction"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-dualvectorfunction_1","text":"inline virtual ~ DualVectorFunction ()","title":"function ~DualVectorFunction"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-operator","text":"void operator = ( const DualVectorFunction & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#function-dualvectorfunction_2","text":"DualVectorFunction ( const DualVectorFunction & )","title":"function DualVectorFunction"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-vdimension","text":"static constexpr static int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_aon","text":"bool m_AOn ;","title":"variable m_AOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_bon","text":"bool m_BOn ;","title":"variable m_BOn"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_relativegradientscaling","text":"double m_RelativeGradientScaling ;","title":"variable m_RelativeGradientScaling"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_relativeenergyscaling","text":"double m_RelativeEnergyScaling ;","title":"variable m_RelativeEnergyScaling"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_averagegradmaga","text":"double m_AverageGradMagA ;","title":"variable m_AverageGradMagA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_averagegradmagb","text":"double m_AverageGradMagB ;","title":"variable m_AverageGradMagB"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_averageenergya","text":"double m_AverageEnergyA ;","title":"variable m_AverageEnergyA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_averageenergyb","text":"double m_AverageEnergyB ;","title":"variable m_AverageEnergyB"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_counter","text":"double m_Counter ;","title":"variable m_Counter"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_functiona","text":"VectorFunction :: Pointer m_FunctionA ;","title":"variable m_FunctionA"},{"location":"api/Classes/classshapeworks_1_1DualVectorFunction.html#variable-m_functionb","text":"VectorFunction :: Pointer m_FunctionB ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_FunctionB"},{"location":"api/Classes/classshapeworks_1_1EigenUtils.html","text":"shapeworks::EigenUtils Public Functions Name std::pair< double, double > compute_mean_and_stddev (const Eigen::MatrixXd & matrix, int row_index) Public Functions Documentation function compute_mean_and_stddev static std :: pair < double , double > compute_mean_and_stddev ( const Eigen :: MatrixXd & matrix , int row_index ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::EigenUtils"},{"location":"api/Classes/classshapeworks_1_1EigenUtils.html#shapeworkseigenutils","text":"","title":"shapeworks::EigenUtils"},{"location":"api/Classes/classshapeworks_1_1EigenUtils.html#public-functions","text":"Name std::pair< double, double > compute_mean_and_stddev (const Eigen::MatrixXd & matrix, int row_index)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1EigenUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1EigenUtils.html#function-compute_mean_and_stddev","text":"static std :: pair < double , double > compute_mean_and_stddev ( const Eigen :: MatrixXd & matrix , int row_index ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function compute_mean_and_stddev"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html","text":"shapeworks::ExcelProjectReader Excel file format reader for Project . More... #include Inherits from shapeworks::ProjectReader Public Functions Name ExcelProjectReader ( Project & project) ~ExcelProjectReader () virtual bool read_project (std::string filename) override Read a project from a file. virtual StringMap get_parameters (std::string name) override virtual StringMultiMap get_multi_parameters (std::string name) override Additional inherited members Public Types inherited from shapeworks::ProjectReader Name using project::types::StringMapList StringMapList using project::types::StringMap StringMap using project::types::StringList StringList using project::types::StringMultiMap StringMultiMap Public Functions inherited from shapeworks::ProjectReader Name ProjectReader ( Project & project) Constructor. virtual ~ProjectReader () =default Destructor. Protected Functions inherited from shapeworks::ProjectReader Name void load_subjects (StringMapList list) Load subjects from string map list. void load_parameters () void load_parameter (std::string name, StringMap map) void load_landmark_definitions (StringMapList list) bool contains (StringMap map, std::string key) StringList get_keys (StringMap map) Protected Attributes inherited from shapeworks::ProjectReader Name Project & project_ Detailed Description class shapeworks :: ExcelProjectReader ; Excel file format reader for Project . This class enables reader of Project objects from XLSX file format Public Functions Documentation function ExcelProjectReader ExcelProjectReader ( Project & project ) function ~ExcelProjectReader ~ ExcelProjectReader () function read_project virtual bool read_project ( std :: string filename ) override Read a project from a file. Reimplements : shapeworks::ProjectReader::read_project function get_parameters virtual StringMap get_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_parameters function get_multi_parameters virtual StringMultiMap get_multi_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_multi_parameters Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ExcelProjectReader"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#shapeworksexcelprojectreader","text":"Excel file format reader for Project . More... #include Inherits from shapeworks::ProjectReader","title":"shapeworks::ExcelProjectReader"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#public-functions","text":"Name ExcelProjectReader ( Project & project) ~ExcelProjectReader () virtual bool read_project (std::string filename) override Read a project from a file. virtual StringMap get_parameters (std::string name) override virtual StringMultiMap get_multi_parameters (std::string name) override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ProjectReader Name using project::types::StringMapList StringMapList using project::types::StringMap StringMap using project::types::StringList StringList using project::types::StringMultiMap StringMultiMap Public Functions inherited from shapeworks::ProjectReader Name ProjectReader ( Project & project) Constructor. virtual ~ProjectReader () =default Destructor. Protected Functions inherited from shapeworks::ProjectReader Name void load_subjects (StringMapList list) Load subjects from string map list. void load_parameters () void load_parameter (std::string name, StringMap map) void load_landmark_definitions (StringMapList list) bool contains (StringMap map, std::string key) StringList get_keys (StringMap map) Protected Attributes inherited from shapeworks::ProjectReader Name Project & project_","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#detailed-description","text":"class shapeworks :: ExcelProjectReader ; Excel file format reader for Project . This class enables reader of Project objects from XLSX file format","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#function-excelprojectreader","text":"ExcelProjectReader ( Project & project )","title":"function ExcelProjectReader"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#function-excelprojectreader_1","text":"~ ExcelProjectReader ()","title":"function ~ExcelProjectReader"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#function-read_project","text":"virtual bool read_project ( std :: string filename ) override Read a project from a file. Reimplements : shapeworks::ProjectReader::read_project","title":"function read_project"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#function-get_parameters","text":"virtual StringMap get_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_parameters","title":"function get_parameters"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectReader.html#function-get_multi_parameters","text":"virtual StringMultiMap get_multi_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_multi_parameters Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_multi_parameters"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectWriter.html","text":"shapeworks::ExcelProjectWriter Excel file format writer for Project . More... #include Public Functions Name bool write_project ( Project & project, const std::string & filename) Detailed Description class shapeworks :: ExcelProjectWriter ; Excel file format writer for Project . This class enables writing of Project objects to Excel file format Public Functions Documentation function write_project static bool write_project ( Project & project , const std :: string & filename ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ExcelProjectWriter"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectWriter.html#shapeworksexcelprojectwriter","text":"Excel file format writer for Project . More... #include ","title":"shapeworks::ExcelProjectWriter"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectWriter.html#public-functions","text":"Name bool write_project ( Project & project, const std::string & filename)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectWriter.html#detailed-description","text":"class shapeworks :: ExcelProjectWriter ; Excel file format writer for Project . This class enables writing of Project objects to Excel file format","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectWriter.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ExcelProjectWriter.html#function-write_project","text":"static bool write_project ( Project & project , const std :: string & filename ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function write_project"},{"location":"api/Classes/classshapeworks_1_1Executable.html","text":"shapeworks::Executable Public Functions Name Executable () void addCommand ( Command & command) int run (int argc, char const *const * argv) Public Functions Documentation function Executable Executable () function addCommand void addCommand ( Command & command ) function run int run ( int argc , char const * const * argv ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Executable"},{"location":"api/Classes/classshapeworks_1_1Executable.html#shapeworksexecutable","text":"","title":"shapeworks::Executable"},{"location":"api/Classes/classshapeworks_1_1Executable.html#public-functions","text":"Name Executable () void addCommand ( Command & command) int run (int argc, char const *const * argv)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Executable.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Executable.html#function-executable","text":"Executable ()","title":"function Executable"},{"location":"api/Classes/classshapeworks_1_1Executable.html#function-addcommand","text":"void addCommand ( Command & command )","title":"function addCommand"},{"location":"api/Classes/classshapeworks_1_1Executable.html#function-run","text":"int run ( int argc , char const * const * argv ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function run"},{"location":"api/Classes/classshapeworks_1_1ExportImageDialog.html","text":"shapeworks::ExportImageDialog More... #include Inherits from QDialog Public Functions Name ExportImageDialog (QWidget * parent, Preferences & prefs, QSharedPointer< AnalysisTool > analysis_tool, QSharedPointer< Visualizer > visualizer, bool pca_mode) Detailed Description class shapeworks :: ExportImageDialog ; The ExportImageDialog is a QDialog that implements the user interface for exporting images Public Functions Documentation function ExportImageDialog ExportImageDialog ( QWidget * parent , Preferences & prefs , QSharedPointer < AnalysisTool > analysis_tool , QSharedPointer < Visualizer > visualizer , bool pca_mode ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ExportImageDialog"},{"location":"api/Classes/classshapeworks_1_1ExportImageDialog.html#shapeworksexportimagedialog","text":"More... #include Inherits from QDialog","title":"shapeworks::ExportImageDialog"},{"location":"api/Classes/classshapeworks_1_1ExportImageDialog.html#public-functions","text":"Name ExportImageDialog (QWidget * parent, Preferences & prefs, QSharedPointer< AnalysisTool > analysis_tool, QSharedPointer< Visualizer > visualizer, bool pca_mode)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ExportImageDialog.html#detailed-description","text":"class shapeworks :: ExportImageDialog ; The ExportImageDialog is a QDialog that implements the user interface for exporting images","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ExportImageDialog.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ExportImageDialog.html#function-exportimagedialog","text":"ExportImageDialog ( QWidget * parent , Preferences & prefs , QSharedPointer < AnalysisTool > analysis_tool , QSharedPointer < Visualizer > visualizer , bool pca_mode ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function ExportImageDialog"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html","text":"shapeworks::ExportUtils Export utilities for Studio. #include Public Functions Name QString get_save_filename ( ShapeWorksStudioApp * parent, QString title, QString filetypes, QString default_ext) void export_all_subjects_particle_scalars ( ShapeWorksStudioApp * parent, QSharedPointer< Session > session) bool write_scalars ( ShapeWorksStudioApp * app, vtkSmartPointer< vtkPolyData > poly_data, QString filename) bool write_particle_scalars ( ShapeWorksStudioApp * app, std::shared_ptr< Shape > shape, QString filename) Public Functions Documentation function get_save_filename static QString get_save_filename ( ShapeWorksStudioApp * parent , QString title , QString filetypes , QString default_ext ) function export_all_subjects_particle_scalars static void export_all_subjects_particle_scalars ( ShapeWorksStudioApp * parent , QSharedPointer < Session > session ) function write_scalars static bool write_scalars ( ShapeWorksStudioApp * app , vtkSmartPointer < vtkPolyData > poly_data , QString filename ) function write_particle_scalars static bool write_particle_scalars ( ShapeWorksStudioApp * app , std :: shared_ptr < Shape > shape , QString filename ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ExportUtils"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html#shapeworksexportutils","text":"Export utilities for Studio. #include ","title":"shapeworks::ExportUtils"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html#public-functions","text":"Name QString get_save_filename ( ShapeWorksStudioApp * parent, QString title, QString filetypes, QString default_ext) void export_all_subjects_particle_scalars ( ShapeWorksStudioApp * parent, QSharedPointer< Session > session) bool write_scalars ( ShapeWorksStudioApp * app, vtkSmartPointer< vtkPolyData > poly_data, QString filename) bool write_particle_scalars ( ShapeWorksStudioApp * app, std::shared_ptr< Shape > shape, QString filename)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html#function-get_save_filename","text":"static QString get_save_filename ( ShapeWorksStudioApp * parent , QString title , QString filetypes , QString default_ext )","title":"function get_save_filename"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html#function-export_all_subjects_particle_scalars","text":"static void export_all_subjects_particle_scalars ( ShapeWorksStudioApp * parent , QSharedPointer < Session > session )","title":"function export_all_subjects_particle_scalars"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html#function-write_scalars","text":"static bool write_scalars ( ShapeWorksStudioApp * app , vtkSmartPointer < vtkPolyData > poly_data , QString filename )","title":"function write_scalars"},{"location":"api/Classes/classshapeworks_1_1ExportUtils.html#function-write_particle_scalars","text":"static bool write_particle_scalars ( ShapeWorksStudioApp * app , std :: shared_ptr < Shape > shape , QString filename ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function write_particle_scalars"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html","text":"shapeworks::FreeFormConstraint More... #include Inherits from shapeworks::Constraint Public Functions Name FreeFormConstraint () void setMesh (std::shared_ptr< shapeworks::Mesh > mesh) Sets the mesh that defines the FFC. std::shared_ptr< shapeworks::Mesh > getMesh () Returns the mesh that defines the FFC. bool readyForOptimize () const Prepares for optimize. virtual bool isViolated (const Eigen::Vector3d & pt) const override Returns if pt in Eigen format is violated by the constraint. virtual void print () const override Prints the constraint neatly. virtual Eigen::Vector3d constraintGradient (const Eigen::Vector3d & pt) const override Returns the gradient of the constraint. virtual double constraintEval (const Eigen::Vector3d & pt) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. void setDefinition (vtkSmartPointer< vtkPolyData > polyData) Set polydata where per-vertex free form constraint definition exists. vtkSmartPointer< vtkPolyData > getDefinition () Get polydata where per-vertex free form constraint definition exists. void applyToPolyData (vtkSmartPointer< vtkPolyData > polyData) Apply the free form constraint to a polydata. std::vector< std::vector< Eigen::Vector3d > > & boundaries () Eigen::Vector3d getQueryPoint () void setQueryPoint (Eigen::Vector3d queryPoint) void computeBoundaries () void setInoutPolyData (vtkSmartPointer< vtkPolyData > polyData) Set the in/out polydata. vtkSmartPointer< vtkPolyData > getInoutPolyData () Get the in/out polydata. void createInoutPolyData () Create the in/out poly data from the definition poly data. bool isSet () Return if this FFC is set or not. void setPainted (bool painted) Set if this FFC has paint on it or not. void reset () Reset to initial state. void computeGradientFields (std::shared_ptr< Mesh > mesh) Compute gradient fields for a mesh. void convertLegacyFFC (vtkSmartPointer< vtkPolyData > polyData) Convert legacy FFC to new format. Additional inherited members Public Functions inherited from shapeworks::Constraint Name void setMus (std::vector< double > inmu) Initializes mu. std::vector< double > getMus () Gets mu. void updateMu (const Eigen::Vector3d & pt, double C, size_t index) Updates the value of mu according to the augmented lagrangian update. Eigen::Vector3d lagragianGradient (const Eigen::Vector3d & pt, double C, size_t index) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better. Protected Functions inherited from shapeworks::Constraint Name int sgn (double val) Returns the sign of the double. Protected Attributes inherited from shapeworks::Constraint Name std::vector< double > mus_ Mu is the lagrangian momentum term. Detailed Description class shapeworks :: FreeFormConstraint ; Encapsulate functionality related to free-form constraints (FFC). Inherits from Constraint . See [Constraint.h] for more information Public Functions Documentation function FreeFormConstraint inline FreeFormConstraint () function setMesh inline void setMesh ( std :: shared_ptr < shapeworks :: Mesh > mesh ) Sets the mesh that defines the FFC. function getMesh inline std :: shared_ptr < shapeworks :: Mesh > getMesh () Returns the mesh that defines the FFC. function readyForOptimize bool readyForOptimize () const Prepares for optimize. function isViolated virtual bool isViolated ( const Eigen :: Vector3d & pt ) const override Returns if pt in Eigen format is violated by the constraint. Reimplements : shapeworks::Constraint::isViolated function print inline virtual void print () const override Prints the constraint neatly. Reimplements : shapeworks::Constraint::print function constraintGradient inline virtual Eigen :: Vector3d constraintGradient ( const Eigen :: Vector3d & pt ) const override Returns the gradient of the constraint. Reimplements : shapeworks::Constraint::constraintGradient function constraintEval inline virtual double constraintEval ( const Eigen :: Vector3d & pt ) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. Reimplements : shapeworks::Constraint::constraintEval function setDefinition void setDefinition ( vtkSmartPointer < vtkPolyData > polyData ) Set polydata where per-vertex free form constraint definition exists. function getDefinition inline vtkSmartPointer < vtkPolyData > getDefinition () Get polydata where per-vertex free form constraint definition exists. function applyToPolyData void applyToPolyData ( vtkSmartPointer < vtkPolyData > polyData ) Apply the free form constraint to a polydata. function boundaries std :: vector < std :: vector < Eigen :: Vector3d > > & boundaries () Deprecated : Access the set of boundaries function getQueryPoint inline Eigen :: Vector3d getQueryPoint () Deprecated : Get query (inside) point function setQueryPoint inline void setQueryPoint ( Eigen :: Vector3d queryPoint ) Deprecated : Set query (inside) point function computeBoundaries void computeBoundaries () Deprecated : Compute boundaries from definition polydata with ffc_paint scalars function setInoutPolyData inline void setInoutPolyData ( vtkSmartPointer < vtkPolyData > polyData ) Set the in/out polydata. function getInoutPolyData inline vtkSmartPointer < vtkPolyData > getInoutPolyData () Get the in/out polydata. function createInoutPolyData void createInoutPolyData () Create the in/out poly data from the definition poly data. function isSet bool isSet () Return if this FFC is set or not. function setPainted void setPainted ( bool painted ) Set if this FFC has paint on it or not. function reset void reset () Reset to initial state. function computeGradientFields void computeGradientFields ( std :: shared_ptr < Mesh > mesh ) Compute gradient fields for a mesh. function convertLegacyFFC void convertLegacyFFC ( vtkSmartPointer < vtkPolyData > polyData ) Convert legacy FFC to new format. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::FreeFormConstraint"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#shapeworksfreeformconstraint","text":"More... #include Inherits from shapeworks::Constraint","title":"shapeworks::FreeFormConstraint"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#public-functions","text":"Name FreeFormConstraint () void setMesh (std::shared_ptr< shapeworks::Mesh > mesh) Sets the mesh that defines the FFC. std::shared_ptr< shapeworks::Mesh > getMesh () Returns the mesh that defines the FFC. bool readyForOptimize () const Prepares for optimize. virtual bool isViolated (const Eigen::Vector3d & pt) const override Returns if pt in Eigen format is violated by the constraint. virtual void print () const override Prints the constraint neatly. virtual Eigen::Vector3d constraintGradient (const Eigen::Vector3d & pt) const override Returns the gradient of the constraint. virtual double constraintEval (const Eigen::Vector3d & pt) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. void setDefinition (vtkSmartPointer< vtkPolyData > polyData) Set polydata where per-vertex free form constraint definition exists. vtkSmartPointer< vtkPolyData > getDefinition () Get polydata where per-vertex free form constraint definition exists. void applyToPolyData (vtkSmartPointer< vtkPolyData > polyData) Apply the free form constraint to a polydata. std::vector< std::vector< Eigen::Vector3d > > & boundaries () Eigen::Vector3d getQueryPoint () void setQueryPoint (Eigen::Vector3d queryPoint) void computeBoundaries () void setInoutPolyData (vtkSmartPointer< vtkPolyData > polyData) Set the in/out polydata. vtkSmartPointer< vtkPolyData > getInoutPolyData () Get the in/out polydata. void createInoutPolyData () Create the in/out poly data from the definition poly data. bool isSet () Return if this FFC is set or not. void setPainted (bool painted) Set if this FFC has paint on it or not. void reset () Reset to initial state. void computeGradientFields (std::shared_ptr< Mesh > mesh) Compute gradient fields for a mesh. void convertLegacyFFC (vtkSmartPointer< vtkPolyData > polyData) Convert legacy FFC to new format.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Constraint Name void setMus (std::vector< double > inmu) Initializes mu. std::vector< double > getMus () Gets mu. void updateMu (const Eigen::Vector3d & pt, double C, size_t index) Updates the value of mu according to the augmented lagrangian update. Eigen::Vector3d lagragianGradient (const Eigen::Vector3d & pt, double C, size_t index) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better. Protected Functions inherited from shapeworks::Constraint Name int sgn (double val) Returns the sign of the double. Protected Attributes inherited from shapeworks::Constraint Name std::vector< double > mus_ Mu is the lagrangian momentum term.","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#detailed-description","text":"class shapeworks :: FreeFormConstraint ; Encapsulate functionality related to free-form constraints (FFC). Inherits from Constraint . See [Constraint.h] for more information","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-freeformconstraint","text":"inline FreeFormConstraint ()","title":"function FreeFormConstraint"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-setmesh","text":"inline void setMesh ( std :: shared_ptr < shapeworks :: Mesh > mesh ) Sets the mesh that defines the FFC.","title":"function setMesh"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-getmesh","text":"inline std :: shared_ptr < shapeworks :: Mesh > getMesh () Returns the mesh that defines the FFC.","title":"function getMesh"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-readyforoptimize","text":"bool readyForOptimize () const Prepares for optimize.","title":"function readyForOptimize"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-isviolated","text":"virtual bool isViolated ( const Eigen :: Vector3d & pt ) const override Returns if pt in Eigen format is violated by the constraint. Reimplements : shapeworks::Constraint::isViolated","title":"function isViolated"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-print","text":"inline virtual void print () const override Prints the constraint neatly. Reimplements : shapeworks::Constraint::print","title":"function print"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-constraintgradient","text":"inline virtual Eigen :: Vector3d constraintGradient ( const Eigen :: Vector3d & pt ) const override Returns the gradient of the constraint. Reimplements : shapeworks::Constraint::constraintGradient","title":"function constraintGradient"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-constrainteval","text":"inline virtual double constraintEval ( const Eigen :: Vector3d & pt ) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. Reimplements : shapeworks::Constraint::constraintEval","title":"function constraintEval"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-setdefinition","text":"void setDefinition ( vtkSmartPointer < vtkPolyData > polyData ) Set polydata where per-vertex free form constraint definition exists.","title":"function setDefinition"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-getdefinition","text":"inline vtkSmartPointer < vtkPolyData > getDefinition () Get polydata where per-vertex free form constraint definition exists.","title":"function getDefinition"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-applytopolydata","text":"void applyToPolyData ( vtkSmartPointer < vtkPolyData > polyData ) Apply the free form constraint to a polydata.","title":"function applyToPolyData"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-boundaries","text":"std :: vector < std :: vector < Eigen :: Vector3d > > & boundaries () Deprecated : Access the set of boundaries","title":"function boundaries"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-getquerypoint","text":"inline Eigen :: Vector3d getQueryPoint () Deprecated : Get query (inside) point","title":"function getQueryPoint"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-setquerypoint","text":"inline void setQueryPoint ( Eigen :: Vector3d queryPoint ) Deprecated : Set query (inside) point","title":"function setQueryPoint"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-computeboundaries","text":"void computeBoundaries () Deprecated : Compute boundaries from definition polydata with ffc_paint scalars","title":"function computeBoundaries"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-setinoutpolydata","text":"inline void setInoutPolyData ( vtkSmartPointer < vtkPolyData > polyData ) Set the in/out polydata.","title":"function setInoutPolyData"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-getinoutpolydata","text":"inline vtkSmartPointer < vtkPolyData > getInoutPolyData () Get the in/out polydata.","title":"function getInoutPolyData"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-createinoutpolydata","text":"void createInoutPolyData () Create the in/out poly data from the definition poly data.","title":"function createInoutPolyData"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-isset","text":"bool isSet () Return if this FFC is set or not.","title":"function isSet"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-setpainted","text":"void setPainted ( bool painted ) Set if this FFC has paint on it or not.","title":"function setPainted"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-reset","text":"void reset () Reset to initial state.","title":"function reset"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-computegradientfields","text":"void computeGradientFields ( std :: shared_ptr < Mesh > mesh ) Compute gradient fields for a mesh.","title":"function computeGradientFields"},{"location":"api/Classes/classshapeworks_1_1FreeFormConstraint.html#function-convertlegacyffc","text":"void convertLegacyFFC ( vtkSmartPointer < vtkPolyData > polyData ) Convert legacy FFC to new format. Updated on 2023-10-24 at 22:16:01 +0000","title":"function convertLegacyFFC"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html","text":"shapeworks::GenericContainer This class seems to be only a wrapper around std::vector implementing ITK DataObject (for smart pointer?) More... #include Inherits from itk::DataObject Public Types Name typedef T DataType typedef GenericContainer Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer Public Functions Name itkNewMacro ( Self ) itkTypeMacro (ParticleContainer , itk::DataObject ) T & operator[] (size_t k) T & Get (size_t k) unsigned long int GetSize () const Protected Functions Name GenericContainer () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~GenericContainer () Detailed Description template < class T > class shapeworks :: GenericContainer ; This class seems to be only a wrapper around std::vector implementing ITK DataObject (for smart pointer?) One difference being that the set operator will expand the vector if the index is out of bounds. Public Types Documentation typedef DataType typedef T shapeworks :: GenericContainer < T >:: DataType ; Standard class typedefs typedef Self typedef GenericContainer shapeworks :: GenericContainer < T >:: Self ; typedef Superclass typedef DataObject shapeworks :: GenericContainer < T >:: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: GenericContainer < T >:: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: GenericContainer < T >:: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: GenericContainer < T >:: ConstWeakPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleContainer , itk :: DataObject ) Run-time type information (and related methods). function operator[] inline T & operator []( size_t k ) Returns a reference to the object associated with index k. If the index k does not already exist, this method inserts a new entry for k. function Get inline T & Get ( size_t k ) Convenience method since all usage of this function is via a pointer, leading ugly syntax like ->operator function GetSize inline unsigned long int GetSize () const Number of objects in the container. Protected Functions Documentation function GenericContainer inline GenericContainer () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function ~GenericContainer inline virtual ~ GenericContainer () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::GenericContainer"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#shapeworksgenericcontainer","text":"This class seems to be only a wrapper around std::vector implementing ITK DataObject (for smart pointer?) More... #include Inherits from itk::DataObject","title":"shapeworks::GenericContainer"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#public-types","text":"Name typedef T DataType typedef GenericContainer Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro (ParticleContainer , itk::DataObject ) T & operator[] (size_t k) T & Get (size_t k) unsigned long int GetSize () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#protected-functions","text":"Name GenericContainer () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~GenericContainer ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#detailed-description","text":"template < class T > class shapeworks :: GenericContainer ; This class seems to be only a wrapper around std::vector implementing ITK DataObject (for smart pointer?) One difference being that the set operator will expand the vector if the index is out of bounds.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#typedef-datatype","text":"typedef T shapeworks :: GenericContainer < T >:: DataType ; Standard class typedefs","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#typedef-self","text":"typedef GenericContainer shapeworks :: GenericContainer < T >:: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#typedef-superclass","text":"typedef DataObject shapeworks :: GenericContainer < T >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: GenericContainer < T >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: GenericContainer < T >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: GenericContainer < T >:: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-itktypemacro","text":"itkTypeMacro ( ParticleContainer , itk :: DataObject ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-operator","text":"inline T & operator []( size_t k ) Returns a reference to the object associated with index k. If the index k does not already exist, this method inserts a new entry for k.","title":"function operator[]"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-get","text":"inline T & Get ( size_t k ) Convenience method since all usage of this function is via a pointer, leading ugly syntax like ->operator","title":"function Get"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-getsize","text":"inline unsigned long int GetSize () const Number of objects in the container.","title":"function GetSize"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-genericcontainer","text":"inline GenericContainer ()","title":"function GenericContainer"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1GenericContainer.html#function-genericcontainer_1","text":"inline virtual ~ GenericContainer () Updated on 2023-10-24 at 22:16:01 +0000","title":"function ~GenericContainer"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html","text":"shapeworks::GenericContainerArray This class appears to be an array of GenericContainers (e.g. std::vector) that implements the Observer interface. The array size tracks the number of domains in the system. E.g. one per domain. More... #include Inherits from std::vector< GenericContainer< T >::Pointer >, shapeworks::Observer Public Types Name typedef T DataType typedef GenericContainerArray Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer Public Functions Name itkNewMacro ( Self ) itkTypeMacro (ParticleContainer , Observer ) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void ZeroAllValues () Protected Functions Name GenericContainerArray () virtual ~GenericContainerArray () void PrintSelf (std::ostream & os, itk::Indent indent) const Additional inherited members Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks Detailed Description template < class T > class shapeworks :: GenericContainerArray ; This class appears to be an array of GenericContainers (e.g. std::vector) that implements the Observer interface. The array size tracks the number of domains in the system. E.g. one per domain. Public Types Documentation typedef DataType typedef T shapeworks :: GenericContainerArray < T >:: DataType ; Standard class typedefs typedef Self typedef GenericContainerArray shapeworks :: GenericContainerArray < T >:: Self ; typedef Superclass typedef Observer shapeworks :: GenericContainerArray < T >:: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: GenericContainerArray < T >:: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: GenericContainerArray < T >:: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: GenericContainerArray < T >:: ConstWeakPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleContainer , Observer ) Run-time type information (and related methods). function DomainAddEventCallback inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method. function PositionAddEventCallback inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback function PositionRemoveEventCallback inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback function ZeroAllValues inline void ZeroAllValues () Protected Functions Documentation function GenericContainerArray inline GenericContainerArray () function ~GenericContainerArray inline virtual ~ GenericContainerArray () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::GenericContainerArray"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#shapeworksgenericcontainerarray","text":"This class appears to be an array of GenericContainers (e.g. std::vector) that implements the Observer interface. The array size tracks the number of domains in the system. E.g. one per domain. More... #include Inherits from std::vector< GenericContainer< T >::Pointer >, shapeworks::Observer","title":"shapeworks::GenericContainerArray"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#public-types","text":"Name typedef T DataType typedef GenericContainerArray Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro (ParticleContainer , Observer ) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void ZeroAllValues ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#protected-functions","text":"Name GenericContainerArray () virtual ~GenericContainerArray () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#additional-inherited-members","text":"Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#detailed-description","text":"template < class T > class shapeworks :: GenericContainerArray ; This class appears to be an array of GenericContainers (e.g. std::vector) that implements the Observer interface. The array size tracks the number of domains in the system. E.g. one per domain.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#typedef-datatype","text":"typedef T shapeworks :: GenericContainerArray < T >:: DataType ; Standard class typedefs","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#typedef-self","text":"typedef GenericContainerArray shapeworks :: GenericContainerArray < T >:: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#typedef-superclass","text":"typedef Observer shapeworks :: GenericContainerArray < T >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: GenericContainerArray < T >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: GenericContainerArray < T >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: GenericContainerArray < T >:: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-itktypemacro","text":"itkTypeMacro ( ParticleContainer , Observer ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-domainaddeventcallback","text":"inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method.","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-positionremoveeventcallback","text":"inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback","title":"function PositionRemoveEventCallback"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-zeroallvalues","text":"inline void ZeroAllValues ()","title":"function ZeroAllValues"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-genericcontainerarray","text":"inline GenericContainerArray ()","title":"function GenericContainerArray"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-genericcontainerarray_1","text":"inline virtual ~ GenericContainerArray ()","title":"function ~GenericContainerArray"},{"location":"api/Classes/classshapeworks_1_1GenericContainerArray.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html","text":"shapeworks::GradientDescentOptimizer Inherits from itk::Object Public Types Name using float TGradientNumericType typedef GradientDescentOptimizer Self typedef itk::Object Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef shapeworks::ImageDomainWithGradients < TGradientNumericType > DomainType typedef ParticleSystem ParticleSystemType typedef VectorFunction GradientFunctionType typedef GradientFunctionType::VectorType VectorType typedef ParticleSystemType::PointType PointType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ParticleGradientDescentPositionOptimizer , Object ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void StartOptimization () void StartAdaptiveGaussSeidelOptimization () void AugmentedLagrangianConstraints ( VectorType & gradient, const PointType & pt, const size_t & dom, const double & maximumUpdateAllowed, size_t index) void StopOptimization () void AbortProcessing () itkGetMacro (NumberOfIterations , unsigned int ) itkSetMacro (NumberOfIterations , unsigned int ) void SetVerbosity (unsigned int val) unsigned int GetVerbosity () itkGetMacro (TimeStep , double ) itkSetMacro (TimeStep , double ) itkGetMacro (MaximumNumberOfIterations , unsigned int ) itkSetMacro (MaximumNumberOfIterations , unsigned int ) itkGetMacro (Tolerance , double ) itkSetMacro (Tolerance , double ) itkGetObjectMacro ( ParticleSystem , ParticleSystemType ) itkSetObjectMacro ( ParticleSystem , ParticleSystemType ) itkGetObjectMacro (GradientFunction , GradientFunctionType ) itkSetObjectMacro (GradientFunction , GradientFunctionType ) void SetInitializationMode (bool b) Determines if this is an initialization (true) or an optimization (false) void SetCheckIterations (size_t si) Sets the number of iterations when we check for convergence. void SetInitializationStartScalingFactor (double si) Sets the scaling factor at the beginning of the initialization. Protected Functions Name GradientDescentOptimizer () GradientDescentOptimizer (const GradientDescentOptimizer & ) const GradientDescentOptimizer & operator= (const GradientDescentOptimizer & ) void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~GradientDescentOptimizer () Public Attributes Name constexpr static unsigned int VDimension Public Types Documentation using TGradientNumericType using shapeworks :: GradientDescentOptimizer :: TGradientNumericType = float ; typedef Self typedef GradientDescentOptimizer shapeworks :: GradientDescentOptimizer :: Self ; Standard class typedefs typedef Superclass typedef itk :: Object shapeworks :: GradientDescentOptimizer :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: GradientDescentOptimizer :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: GradientDescentOptimizer :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: GradientDescentOptimizer :: ConstWeakPointer ; typedef DomainType typedef shapeworks :: ImageDomainWithGradients < TGradientNumericType > shapeworks :: GradientDescentOptimizer :: DomainType ; Type of the domain. typedef ParticleSystemType typedef ParticleSystem shapeworks :: GradientDescentOptimizer :: ParticleSystemType ; Particle System type is based on the dimensionality. typedef GradientFunctionType typedef VectorFunction shapeworks :: GradientDescentOptimizer :: GradientFunctionType ; Type of the gradient function. typedef VectorType typedef GradientFunctionType :: VectorType shapeworks :: GradientDescentOptimizer :: VectorType ; Numerical vector type. typedef PointType typedef ParticleSystemType :: PointType shapeworks :: GradientDescentOptimizer :: PointType ; Point Type Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleGradientDescentPositionOptimizer , Object ) Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function StartOptimization inline void StartOptimization () Start the optimization. function StartAdaptiveGaussSeidelOptimization void StartAdaptiveGaussSeidelOptimization () function AugmentedLagrangianConstraints void AugmentedLagrangianConstraints ( VectorType & gradient , const PointType & pt , const size_t & dom , const double & maximumUpdateAllowed , size_t index ) function StopOptimization inline void StopOptimization () Stop the optimization. This method sets a flag that aborts the StartOptimization method after the current iteration. function AbortProcessing inline void AbortProcessing () function itkGetMacro itkGetMacro ( NumberOfIterations , unsigned int ) Get/Set the number of iterations performed by the solver. function itkSetMacro itkSetMacro ( NumberOfIterations , unsigned int ) function SetVerbosity inline void SetVerbosity ( unsigned int val ) function GetVerbosity inline unsigned int GetVerbosity () function itkGetMacro itkGetMacro ( TimeStep , double ) Get/Set a time step parameter for the update. Each update is simply scaled by this value. function itkSetMacro itkSetMacro ( TimeStep , double ) function itkGetMacro itkGetMacro ( MaximumNumberOfIterations , unsigned int ) Get/Set the maximum iterations to allow this solver to use. function itkSetMacro itkSetMacro ( MaximumNumberOfIterations , unsigned int ) function itkGetMacro itkGetMacro ( Tolerance , double ) Get/Set the precision of the solution. function itkSetMacro itkSetMacro ( Tolerance , double ) function itkGetObjectMacro itkGetObjectMacro ( ParticleSystem , ParticleSystemType ) Get/Set the ParticleSystem modified by this optimizer. function itkSetObjectMacro itkSetObjectMacro ( ParticleSystem , ParticleSystemType ) function itkGetObjectMacro itkGetObjectMacro ( GradientFunction , GradientFunctionType ) Get/Set the gradient function used by this optimizer. function itkSetObjectMacro itkSetObjectMacro ( GradientFunction , GradientFunctionType ) function SetInitializationMode inline void SetInitializationMode ( bool b ) Determines if this is an initialization (true) or an optimization (false) function SetCheckIterations inline void SetCheckIterations ( size_t si ) Sets the number of iterations when we check for convergence. function SetInitializationStartScalingFactor inline void SetInitializationStartScalingFactor ( double si ) Sets the scaling factor at the beginning of the initialization. Protected Functions Documentation function GradientDescentOptimizer GradientDescentOptimizer () function GradientDescentOptimizer GradientDescentOptimizer ( const GradientDescentOptimizer & ) function operator= const GradientDescentOptimizer & operator = ( const GradientDescentOptimizer & ) function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function ~GradientDescentOptimizer inline virtual ~ GradientDescentOptimizer () Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::GradientDescentOptimizer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#shapeworksgradientdescentoptimizer","text":"Inherits from itk::Object","title":"shapeworks::GradientDescentOptimizer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#public-types","text":"Name using float TGradientNumericType typedef GradientDescentOptimizer Self typedef itk::Object Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef shapeworks::ImageDomainWithGradients < TGradientNumericType > DomainType typedef ParticleSystem ParticleSystemType typedef VectorFunction GradientFunctionType typedef GradientFunctionType::VectorType VectorType typedef ParticleSystemType::PointType PointType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ParticleGradientDescentPositionOptimizer , Object ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void StartOptimization () void StartAdaptiveGaussSeidelOptimization () void AugmentedLagrangianConstraints ( VectorType & gradient, const PointType & pt, const size_t & dom, const double & maximumUpdateAllowed, size_t index) void StopOptimization () void AbortProcessing () itkGetMacro (NumberOfIterations , unsigned int ) itkSetMacro (NumberOfIterations , unsigned int ) void SetVerbosity (unsigned int val) unsigned int GetVerbosity () itkGetMacro (TimeStep , double ) itkSetMacro (TimeStep , double ) itkGetMacro (MaximumNumberOfIterations , unsigned int ) itkSetMacro (MaximumNumberOfIterations , unsigned int ) itkGetMacro (Tolerance , double ) itkSetMacro (Tolerance , double ) itkGetObjectMacro ( ParticleSystem , ParticleSystemType ) itkSetObjectMacro ( ParticleSystem , ParticleSystemType ) itkGetObjectMacro (GradientFunction , GradientFunctionType ) itkSetObjectMacro (GradientFunction , GradientFunctionType ) void SetInitializationMode (bool b) Determines if this is an initialization (true) or an optimization (false) void SetCheckIterations (size_t si) Sets the number of iterations when we check for convergence. void SetInitializationStartScalingFactor (double si) Sets the scaling factor at the beginning of the initialization.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#protected-functions","text":"Name GradientDescentOptimizer () GradientDescentOptimizer (const GradientDescentOptimizer & ) const GradientDescentOptimizer & operator= (const GradientDescentOptimizer & ) void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~GradientDescentOptimizer ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#using-tgradientnumerictype","text":"using shapeworks :: GradientDescentOptimizer :: TGradientNumericType = float ;","title":"using TGradientNumericType"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-self","text":"typedef GradientDescentOptimizer shapeworks :: GradientDescentOptimizer :: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-superclass","text":"typedef itk :: Object shapeworks :: GradientDescentOptimizer :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: GradientDescentOptimizer :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: GradientDescentOptimizer :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: GradientDescentOptimizer :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-domaintype","text":"typedef shapeworks :: ImageDomainWithGradients < TGradientNumericType > shapeworks :: GradientDescentOptimizer :: DomainType ; Type of the domain.","title":"typedef DomainType"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-particlesystemtype","text":"typedef ParticleSystem shapeworks :: GradientDescentOptimizer :: ParticleSystemType ; Particle System type is based on the dimensionality.","title":"typedef ParticleSystemType"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-gradientfunctiontype","text":"typedef VectorFunction shapeworks :: GradientDescentOptimizer :: GradientFunctionType ; Type of the gradient function.","title":"typedef GradientFunctionType"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-vectortype","text":"typedef GradientFunctionType :: VectorType shapeworks :: GradientDescentOptimizer :: VectorType ; Numerical vector type.","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#typedef-pointtype","text":"typedef ParticleSystemType :: PointType shapeworks :: GradientDescentOptimizer :: PointType ; Point Type","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itktypemacro","text":"itkTypeMacro ( ParticleGradientDescentPositionOptimizer , Object ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-startoptimization","text":"inline void StartOptimization () Start the optimization.","title":"function StartOptimization"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-startadaptivegaussseideloptimization","text":"void StartAdaptiveGaussSeidelOptimization ()","title":"function StartAdaptiveGaussSeidelOptimization"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-augmentedlagrangianconstraints","text":"void AugmentedLagrangianConstraints ( VectorType & gradient , const PointType & pt , const size_t & dom , const double & maximumUpdateAllowed , size_t index )","title":"function AugmentedLagrangianConstraints"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-stopoptimization","text":"inline void StopOptimization () Stop the optimization. This method sets a flag that aborts the StartOptimization method after the current iteration.","title":"function StopOptimization"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-abortprocessing","text":"inline void AbortProcessing ()","title":"function AbortProcessing"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itkgetmacro","text":"itkGetMacro ( NumberOfIterations , unsigned int ) Get/Set the number of iterations performed by the solver.","title":"function itkGetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itksetmacro","text":"itkSetMacro ( NumberOfIterations , unsigned int )","title":"function itkSetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-setverbosity","text":"inline void SetVerbosity ( unsigned int val )","title":"function SetVerbosity"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-getverbosity","text":"inline unsigned int GetVerbosity ()","title":"function GetVerbosity"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itkgetmacro_1","text":"itkGetMacro ( TimeStep , double ) Get/Set a time step parameter for the update. Each update is simply scaled by this value.","title":"function itkGetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itksetmacro_1","text":"itkSetMacro ( TimeStep , double )","title":"function itkSetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itkgetmacro_2","text":"itkGetMacro ( MaximumNumberOfIterations , unsigned int ) Get/Set the maximum iterations to allow this solver to use.","title":"function itkGetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itksetmacro_2","text":"itkSetMacro ( MaximumNumberOfIterations , unsigned int )","title":"function itkSetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itkgetmacro_3","text":"itkGetMacro ( Tolerance , double ) Get/Set the precision of the solution.","title":"function itkGetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itksetmacro_3","text":"itkSetMacro ( Tolerance , double )","title":"function itkSetMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itkgetobjectmacro","text":"itkGetObjectMacro ( ParticleSystem , ParticleSystemType ) Get/Set the ParticleSystem modified by this optimizer.","title":"function itkGetObjectMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itksetobjectmacro","text":"itkSetObjectMacro ( ParticleSystem , ParticleSystemType )","title":"function itkSetObjectMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itkgetobjectmacro_1","text":"itkGetObjectMacro ( GradientFunction , GradientFunctionType ) Get/Set the gradient function used by this optimizer.","title":"function itkGetObjectMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-itksetobjectmacro_1","text":"itkSetObjectMacro ( GradientFunction , GradientFunctionType )","title":"function itkSetObjectMacro"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-setinitializationmode","text":"inline void SetInitializationMode ( bool b ) Determines if this is an initialization (true) or an optimization (false)","title":"function SetInitializationMode"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-setcheckiterations","text":"inline void SetCheckIterations ( size_t si ) Sets the number of iterations when we check for convergence.","title":"function SetCheckIterations"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-setinitializationstartscalingfactor","text":"inline void SetInitializationStartScalingFactor ( double si ) Sets the scaling factor at the beginning of the initialization.","title":"function SetInitializationStartScalingFactor"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-gradientdescentoptimizer","text":"GradientDescentOptimizer ()","title":"function GradientDescentOptimizer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-gradientdescentoptimizer_1","text":"GradientDescentOptimizer ( const GradientDescentOptimizer & )","title":"function GradientDescentOptimizer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-operator","text":"const GradientDescentOptimizer & operator = ( const GradientDescentOptimizer & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#function-gradientdescentoptimizer_2","text":"inline virtual ~ GradientDescentOptimizer ()","title":"function ~GradientDescentOptimizer"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1GradientDescentOptimizer.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1Groom.html","text":"shapeworks::Groom High level groom API. More... #include Public Functions Name Groom (ProjectHandle project) bool run () Run the grooming. void abort () Set abort as soon as possible. bool get_aborted () Return if grooming was aborted. double compute_landmark_distance (vtkSmartPointer< vtkPoints > one, vtkSmartPointer< vtkPoints > two) Util to compute square distance between paired landmarks. vtkSmartPointer< vtkMatrix4x4 > compute_landmark_transform (vtkSmartPointer< vtkPoints > source, vtkSmartPointer< vtkPoints > target) Util to compute landmark transform. Protected Attributes Name std::atomic< float > progress_ std::atomic< int > total_ops_ std::atomic< int > progress_counter_ Detailed Description class shapeworks :: Groom ; High level groom API. The Groom class operates on a Project . It is used by Studio and other tools to perform Grooming operations. Public Functions Documentation function Groom Groom ( ProjectHandle project ) function run bool run () Run the grooming. function abort void abort () Set abort as soon as possible. function get_aborted bool get_aborted () Return if grooming was aborted. function compute_landmark_distance static double compute_landmark_distance ( vtkSmartPointer < vtkPoints > one , vtkSmartPointer < vtkPoints > two ) Util to compute square distance between paired landmarks. function compute_landmark_transform static vtkSmartPointer < vtkMatrix4x4 > compute_landmark_transform ( vtkSmartPointer < vtkPoints > source , vtkSmartPointer < vtkPoints > target ) Util to compute landmark transform. Protected Attributes Documentation variable progress_ std :: atomic < float > progress_ = 0 ; variable total_ops_ std :: atomic < int > total_ops_ = 0 ; variable progress_counter_ std :: atomic < int > progress_counter_ = 0 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Groom"},{"location":"api/Classes/classshapeworks_1_1Groom.html#shapeworksgroom","text":"High level groom API. More... #include ","title":"shapeworks::Groom"},{"location":"api/Classes/classshapeworks_1_1Groom.html#public-functions","text":"Name Groom (ProjectHandle project) bool run () Run the grooming. void abort () Set abort as soon as possible. bool get_aborted () Return if grooming was aborted. double compute_landmark_distance (vtkSmartPointer< vtkPoints > one, vtkSmartPointer< vtkPoints > two) Util to compute square distance between paired landmarks. vtkSmartPointer< vtkMatrix4x4 > compute_landmark_transform (vtkSmartPointer< vtkPoints > source, vtkSmartPointer< vtkPoints > target) Util to compute landmark transform.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Groom.html#protected-attributes","text":"Name std::atomic< float > progress_ std::atomic< int > total_ops_ std::atomic< int > progress_counter_","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1Groom.html#detailed-description","text":"class shapeworks :: Groom ; High level groom API. The Groom class operates on a Project . It is used by Studio and other tools to perform Grooming operations.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Groom.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Groom.html#function-groom","text":"Groom ( ProjectHandle project )","title":"function Groom"},{"location":"api/Classes/classshapeworks_1_1Groom.html#function-run","text":"bool run () Run the grooming.","title":"function run"},{"location":"api/Classes/classshapeworks_1_1Groom.html#function-abort","text":"void abort () Set abort as soon as possible.","title":"function abort"},{"location":"api/Classes/classshapeworks_1_1Groom.html#function-get_aborted","text":"bool get_aborted () Return if grooming was aborted.","title":"function get_aborted"},{"location":"api/Classes/classshapeworks_1_1Groom.html#function-compute_landmark_distance","text":"static double compute_landmark_distance ( vtkSmartPointer < vtkPoints > one , vtkSmartPointer < vtkPoints > two ) Util to compute square distance between paired landmarks.","title":"function compute_landmark_distance"},{"location":"api/Classes/classshapeworks_1_1Groom.html#function-compute_landmark_transform","text":"static vtkSmartPointer < vtkMatrix4x4 > compute_landmark_transform ( vtkSmartPointer < vtkPoints > source , vtkSmartPointer < vtkPoints > target ) Util to compute landmark transform.","title":"function compute_landmark_transform"},{"location":"api/Classes/classshapeworks_1_1Groom.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Groom.html#variable-progress_","text":"std :: atomic < float > progress_ = 0 ;","title":"variable progress_"},{"location":"api/Classes/classshapeworks_1_1Groom.html#variable-total_ops_","text":"std :: atomic < int > total_ops_ = 0 ;","title":"variable total_ops_"},{"location":"api/Classes/classshapeworks_1_1Groom.html#variable-progress_counter_","text":"std :: atomic < int > progress_counter_ = 0 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable progress_counter_"},{"location":"api/Classes/classshapeworks_1_1GroomCommandGroup.html","text":"shapeworks::GroomCommandGroup Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::GroomCommandGroup"},{"location":"api/Classes/classshapeworks_1_1GroomCommandGroup.html#shapeworksgroomcommandgroup","text":"Inherits from shapeworks::Command","title":"shapeworks::GroomCommandGroup"},{"location":"api/Classes/classshapeworks_1_1GroomCommandGroup.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1GroomCommandGroup.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1GroomCommandGroup.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GroomCommandGroup.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html","text":"shapeworks::GroomParameters More... #include Public Functions Name GroomParameters (ProjectHandle project, std::string domain_name =\"\") void set_domain_name (std::string domain_name) void save_to_project () std::string get_groom_output_prefix () void set_groom_output_prefix (std::string prefix) bool get_groom_all_domains_the_same () void set_groom_all_domains_the_same (bool value) bool get_alignment_enabled () void set_alignment_enabled (bool value) std::string get_alignment_method () void set_alignment_method (std::string method) bool get_isolate_tool () void set_isolate_tool (bool value) bool get_fill_holes_tool () void set_fill_holes_tool (bool value) bool get_fill_mesh_holes_tool () void set_fill_mesh_holes_tool (bool value) bool get_auto_pad_tool () void set_auto_pad_tool (bool value) int get_padding_amount () void set_padding_amount (int padding_amount) bool get_antialias_tool () void set_antialias_tool (bool value) int get_antialias_iterations () void set_antialias_iterations (int iterations) bool get_blur_tool () void set_blur_tool (bool value) double get_blur_amount () void set_blur_amount (double blur_amount) bool get_fast_marching () void set_fast_marching (bool value) bool get_mesh_smooth () void set_mesh_smooth (bool value) std::string get_mesh_smoothing_method () void set_mesh_smoothing_method (std::string method) int get_mesh_vtk_laplacian_iterations () void set_mesh_vtk_laplacian_iterations (int iterations) double get_mesh_vtk_laplacian_relaxation () void set_mesh_vtk_laplacian_relaxation (double relaxation) int get_mesh_vtk_windowed_sinc_iterations () void set_mesh_vtk_windowed_sinc_iterations (int iterations) double get_mesh_vtk_windowed_sinc_passband () void set_mesh_vtk_windowed_sinc_passband (double passband) bool get_use_icp () bool get_use_center () bool get_use_landmarks () bool get_crop () void set_crop (bool crop) bool get_convert_to_mesh () void set_convert_to_mesh (bool value) bool get_reflect () void set_reflect (bool reflect) std::string get_reflect_column () void set_reflect_column (std::string column) std::string get_reflect_choice () void set_reflect_choice (std::string choice) std::string get_reflect_axis () void set_reflect_axis (std::string axies) bool get_resample () void set_resample (bool resample) bool get_isotropic () void set_isotropic (bool isotropic) double get_iso_spacing () void set_iso_spacing (double spacing) std::vector< double > get_spacing () void set_spacing (std::vector< double > spacing) bool get_remesh () void set_remesh (bool remesh) bool get_remesh_percent_mode () void set_remesh_percent_mode (bool mode) double get_remesh_percent () void set_remesh_percent (double percent) int get_remesh_num_vertices () void set_remesh_num_vertices (int num_vertices) double get_remesh_gradation () void set_remesh_gradation (double gradation) bool get_skip_grooming () void set_skip_grooming (bool skip) void restore_defaults () Public Attributes Name const std::string GROOM_SMOOTH_VTK_LAPLACIAN_C const std::string GROOM_SMOOTH_VTK_WINDOWED_SINC_C const std::string GROOM_ALIGNMENT_CENTER_C const std::string GROOM_ALIGNMENT_ICP_C const std::string GROOM_ALIGNMENT_LANDMARK_C Detailed Description class shapeworks :: GroomParameters ; This class encapsulated processing of Groom parameters Public Functions Documentation function GroomParameters explicit GroomParameters ( ProjectHandle project , std :: string domain_name = \"\" ) function set_domain_name void set_domain_name ( std :: string domain_name ) function save_to_project void save_to_project () function get_groom_output_prefix std :: string get_groom_output_prefix () function set_groom_output_prefix void set_groom_output_prefix ( std :: string prefix ) function get_groom_all_domains_the_same bool get_groom_all_domains_the_same () function set_groom_all_domains_the_same void set_groom_all_domains_the_same ( bool value ) function get_alignment_enabled bool get_alignment_enabled () function set_alignment_enabled void set_alignment_enabled ( bool value ) function get_alignment_method std :: string get_alignment_method () function set_alignment_method void set_alignment_method ( std :: string method ) function get_isolate_tool bool get_isolate_tool () function set_isolate_tool void set_isolate_tool ( bool value ) function get_fill_holes_tool bool get_fill_holes_tool () function set_fill_holes_tool void set_fill_holes_tool ( bool value ) function get_fill_mesh_holes_tool bool get_fill_mesh_holes_tool () function set_fill_mesh_holes_tool void set_fill_mesh_holes_tool ( bool value ) function get_auto_pad_tool bool get_auto_pad_tool () function set_auto_pad_tool void set_auto_pad_tool ( bool value ) function get_padding_amount int get_padding_amount () function set_padding_amount void set_padding_amount ( int padding_amount ) function get_antialias_tool bool get_antialias_tool () function set_antialias_tool void set_antialias_tool ( bool value ) function get_antialias_iterations int get_antialias_iterations () function set_antialias_iterations void set_antialias_iterations ( int iterations ) function get_blur_tool bool get_blur_tool () function set_blur_tool void set_blur_tool ( bool value ) function get_blur_amount double get_blur_amount () function set_blur_amount void set_blur_amount ( double blur_amount ) function get_fast_marching bool get_fast_marching () function set_fast_marching void set_fast_marching ( bool value ) function get_mesh_smooth bool get_mesh_smooth () function set_mesh_smooth void set_mesh_smooth ( bool value ) function get_mesh_smoothing_method std :: string get_mesh_smoothing_method () function set_mesh_smoothing_method void set_mesh_smoothing_method ( std :: string method ) function get_mesh_vtk_laplacian_iterations int get_mesh_vtk_laplacian_iterations () function set_mesh_vtk_laplacian_iterations void set_mesh_vtk_laplacian_iterations ( int iterations ) function get_mesh_vtk_laplacian_relaxation double get_mesh_vtk_laplacian_relaxation () function set_mesh_vtk_laplacian_relaxation void set_mesh_vtk_laplacian_relaxation ( double relaxation ) function get_mesh_vtk_windowed_sinc_iterations int get_mesh_vtk_windowed_sinc_iterations () function set_mesh_vtk_windowed_sinc_iterations void set_mesh_vtk_windowed_sinc_iterations ( int iterations ) function get_mesh_vtk_windowed_sinc_passband double get_mesh_vtk_windowed_sinc_passband () function set_mesh_vtk_windowed_sinc_passband void set_mesh_vtk_windowed_sinc_passband ( double passband ) function get_use_icp bool get_use_icp () function get_use_center bool get_use_center () function get_use_landmarks bool get_use_landmarks () function get_crop bool get_crop () function set_crop void set_crop ( bool crop ) function get_convert_to_mesh bool get_convert_to_mesh () function set_convert_to_mesh void set_convert_to_mesh ( bool value ) function get_reflect bool get_reflect () function set_reflect void set_reflect ( bool reflect ) function get_reflect_column std :: string get_reflect_column () function set_reflect_column void set_reflect_column ( std :: string column ) function get_reflect_choice std :: string get_reflect_choice () function set_reflect_choice void set_reflect_choice ( std :: string choice ) function get_reflect_axis std :: string get_reflect_axis () function set_reflect_axis void set_reflect_axis ( std :: string axies ) function get_resample bool get_resample () function set_resample void set_resample ( bool resample ) function get_isotropic bool get_isotropic () function set_isotropic void set_isotropic ( bool isotropic ) function get_iso_spacing double get_iso_spacing () function set_iso_spacing void set_iso_spacing ( double spacing ) function get_spacing std :: vector < double > get_spacing () function set_spacing void set_spacing ( std :: vector < double > spacing ) function get_remesh bool get_remesh () function set_remesh void set_remesh ( bool remesh ) function get_remesh_percent_mode bool get_remesh_percent_mode () function set_remesh_percent_mode void set_remesh_percent_mode ( bool mode ) function get_remesh_percent double get_remesh_percent () function set_remesh_percent void set_remesh_percent ( double percent ) function get_remesh_num_vertices int get_remesh_num_vertices () function set_remesh_num_vertices void set_remesh_num_vertices ( int num_vertices ) function get_remesh_gradation double get_remesh_gradation () function set_remesh_gradation void set_remesh_gradation ( double gradation ) function get_skip_grooming bool get_skip_grooming () function set_skip_grooming void set_skip_grooming ( bool skip ) function restore_defaults void restore_defaults () Public Attributes Documentation variable GROOM_SMOOTH_VTK_LAPLACIAN_C static const std :: string GROOM_SMOOTH_VTK_LAPLACIAN_C ; variable GROOM_SMOOTH_VTK_WINDOWED_SINC_C static const std :: string GROOM_SMOOTH_VTK_WINDOWED_SINC_C ; variable GROOM_ALIGNMENT_CENTER_C static const std :: string GROOM_ALIGNMENT_CENTER_C ; variable GROOM_ALIGNMENT_ICP_C static const std :: string GROOM_ALIGNMENT_ICP_C ; variable GROOM_ALIGNMENT_LANDMARK_C static const std :: string GROOM_ALIGNMENT_LANDMARK_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::GroomParameters"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#shapeworksgroomparameters","text":"More... #include ","title":"shapeworks::GroomParameters"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#public-functions","text":"Name GroomParameters (ProjectHandle project, std::string domain_name =\"\") void set_domain_name (std::string domain_name) void save_to_project () std::string get_groom_output_prefix () void set_groom_output_prefix (std::string prefix) bool get_groom_all_domains_the_same () void set_groom_all_domains_the_same (bool value) bool get_alignment_enabled () void set_alignment_enabled (bool value) std::string get_alignment_method () void set_alignment_method (std::string method) bool get_isolate_tool () void set_isolate_tool (bool value) bool get_fill_holes_tool () void set_fill_holes_tool (bool value) bool get_fill_mesh_holes_tool () void set_fill_mesh_holes_tool (bool value) bool get_auto_pad_tool () void set_auto_pad_tool (bool value) int get_padding_amount () void set_padding_amount (int padding_amount) bool get_antialias_tool () void set_antialias_tool (bool value) int get_antialias_iterations () void set_antialias_iterations (int iterations) bool get_blur_tool () void set_blur_tool (bool value) double get_blur_amount () void set_blur_amount (double blur_amount) bool get_fast_marching () void set_fast_marching (bool value) bool get_mesh_smooth () void set_mesh_smooth (bool value) std::string get_mesh_smoothing_method () void set_mesh_smoothing_method (std::string method) int get_mesh_vtk_laplacian_iterations () void set_mesh_vtk_laplacian_iterations (int iterations) double get_mesh_vtk_laplacian_relaxation () void set_mesh_vtk_laplacian_relaxation (double relaxation) int get_mesh_vtk_windowed_sinc_iterations () void set_mesh_vtk_windowed_sinc_iterations (int iterations) double get_mesh_vtk_windowed_sinc_passband () void set_mesh_vtk_windowed_sinc_passband (double passband) bool get_use_icp () bool get_use_center () bool get_use_landmarks () bool get_crop () void set_crop (bool crop) bool get_convert_to_mesh () void set_convert_to_mesh (bool value) bool get_reflect () void set_reflect (bool reflect) std::string get_reflect_column () void set_reflect_column (std::string column) std::string get_reflect_choice () void set_reflect_choice (std::string choice) std::string get_reflect_axis () void set_reflect_axis (std::string axies) bool get_resample () void set_resample (bool resample) bool get_isotropic () void set_isotropic (bool isotropic) double get_iso_spacing () void set_iso_spacing (double spacing) std::vector< double > get_spacing () void set_spacing (std::vector< double > spacing) bool get_remesh () void set_remesh (bool remesh) bool get_remesh_percent_mode () void set_remesh_percent_mode (bool mode) double get_remesh_percent () void set_remesh_percent (double percent) int get_remesh_num_vertices () void set_remesh_num_vertices (int num_vertices) double get_remesh_gradation () void set_remesh_gradation (double gradation) bool get_skip_grooming () void set_skip_grooming (bool skip) void restore_defaults ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#public-attributes","text":"Name const std::string GROOM_SMOOTH_VTK_LAPLACIAN_C const std::string GROOM_SMOOTH_VTK_WINDOWED_SINC_C const std::string GROOM_ALIGNMENT_CENTER_C const std::string GROOM_ALIGNMENT_ICP_C const std::string GROOM_ALIGNMENT_LANDMARK_C","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#detailed-description","text":"class shapeworks :: GroomParameters ; This class encapsulated processing of Groom parameters","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-groomparameters","text":"explicit GroomParameters ( ProjectHandle project , std :: string domain_name = \"\" )","title":"function GroomParameters"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_domain_name","text":"void set_domain_name ( std :: string domain_name )","title":"function set_domain_name"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-save_to_project","text":"void save_to_project ()","title":"function save_to_project"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_groom_output_prefix","text":"std :: string get_groom_output_prefix ()","title":"function get_groom_output_prefix"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_groom_output_prefix","text":"void set_groom_output_prefix ( std :: string prefix )","title":"function set_groom_output_prefix"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_groom_all_domains_the_same","text":"bool get_groom_all_domains_the_same ()","title":"function get_groom_all_domains_the_same"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_groom_all_domains_the_same","text":"void set_groom_all_domains_the_same ( bool value )","title":"function set_groom_all_domains_the_same"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_alignment_enabled","text":"bool get_alignment_enabled ()","title":"function get_alignment_enabled"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_alignment_enabled","text":"void set_alignment_enabled ( bool value )","title":"function set_alignment_enabled"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_alignment_method","text":"std :: string get_alignment_method ()","title":"function get_alignment_method"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_alignment_method","text":"void set_alignment_method ( std :: string method )","title":"function set_alignment_method"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_isolate_tool","text":"bool get_isolate_tool ()","title":"function get_isolate_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_isolate_tool","text":"void set_isolate_tool ( bool value )","title":"function set_isolate_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_fill_holes_tool","text":"bool get_fill_holes_tool ()","title":"function get_fill_holes_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_fill_holes_tool","text":"void set_fill_holes_tool ( bool value )","title":"function set_fill_holes_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_fill_mesh_holes_tool","text":"bool get_fill_mesh_holes_tool ()","title":"function get_fill_mesh_holes_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_fill_mesh_holes_tool","text":"void set_fill_mesh_holes_tool ( bool value )","title":"function set_fill_mesh_holes_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_auto_pad_tool","text":"bool get_auto_pad_tool ()","title":"function get_auto_pad_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_auto_pad_tool","text":"void set_auto_pad_tool ( bool value )","title":"function set_auto_pad_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_padding_amount","text":"int get_padding_amount ()","title":"function get_padding_amount"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_padding_amount","text":"void set_padding_amount ( int padding_amount )","title":"function set_padding_amount"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_antialias_tool","text":"bool get_antialias_tool ()","title":"function get_antialias_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_antialias_tool","text":"void set_antialias_tool ( bool value )","title":"function set_antialias_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_antialias_iterations","text":"int get_antialias_iterations ()","title":"function get_antialias_iterations"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_antialias_iterations","text":"void set_antialias_iterations ( int iterations )","title":"function set_antialias_iterations"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_blur_tool","text":"bool get_blur_tool ()","title":"function get_blur_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_blur_tool","text":"void set_blur_tool ( bool value )","title":"function set_blur_tool"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_blur_amount","text":"double get_blur_amount ()","title":"function get_blur_amount"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_blur_amount","text":"void set_blur_amount ( double blur_amount )","title":"function set_blur_amount"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_fast_marching","text":"bool get_fast_marching ()","title":"function get_fast_marching"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_fast_marching","text":"void set_fast_marching ( bool value )","title":"function set_fast_marching"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_mesh_smooth","text":"bool get_mesh_smooth ()","title":"function get_mesh_smooth"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_mesh_smooth","text":"void set_mesh_smooth ( bool value )","title":"function set_mesh_smooth"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_mesh_smoothing_method","text":"std :: string get_mesh_smoothing_method ()","title":"function get_mesh_smoothing_method"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_mesh_smoothing_method","text":"void set_mesh_smoothing_method ( std :: string method )","title":"function set_mesh_smoothing_method"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_mesh_vtk_laplacian_iterations","text":"int get_mesh_vtk_laplacian_iterations ()","title":"function get_mesh_vtk_laplacian_iterations"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_mesh_vtk_laplacian_iterations","text":"void set_mesh_vtk_laplacian_iterations ( int iterations )","title":"function set_mesh_vtk_laplacian_iterations"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_mesh_vtk_laplacian_relaxation","text":"double get_mesh_vtk_laplacian_relaxation ()","title":"function get_mesh_vtk_laplacian_relaxation"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_mesh_vtk_laplacian_relaxation","text":"void set_mesh_vtk_laplacian_relaxation ( double relaxation )","title":"function set_mesh_vtk_laplacian_relaxation"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_mesh_vtk_windowed_sinc_iterations","text":"int get_mesh_vtk_windowed_sinc_iterations ()","title":"function get_mesh_vtk_windowed_sinc_iterations"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_mesh_vtk_windowed_sinc_iterations","text":"void set_mesh_vtk_windowed_sinc_iterations ( int iterations )","title":"function set_mesh_vtk_windowed_sinc_iterations"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_mesh_vtk_windowed_sinc_passband","text":"double get_mesh_vtk_windowed_sinc_passband ()","title":"function get_mesh_vtk_windowed_sinc_passband"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_mesh_vtk_windowed_sinc_passband","text":"void set_mesh_vtk_windowed_sinc_passband ( double passband )","title":"function set_mesh_vtk_windowed_sinc_passband"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_use_icp","text":"bool get_use_icp ()","title":"function get_use_icp"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_use_center","text":"bool get_use_center ()","title":"function get_use_center"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_use_landmarks","text":"bool get_use_landmarks ()","title":"function get_use_landmarks"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_crop","text":"bool get_crop ()","title":"function get_crop"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_crop","text":"void set_crop ( bool crop )","title":"function set_crop"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_convert_to_mesh","text":"bool get_convert_to_mesh ()","title":"function get_convert_to_mesh"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_convert_to_mesh","text":"void set_convert_to_mesh ( bool value )","title":"function set_convert_to_mesh"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_reflect","text":"bool get_reflect ()","title":"function get_reflect"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_reflect","text":"void set_reflect ( bool reflect )","title":"function set_reflect"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_reflect_column","text":"std :: string get_reflect_column ()","title":"function get_reflect_column"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_reflect_column","text":"void set_reflect_column ( std :: string column )","title":"function set_reflect_column"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_reflect_choice","text":"std :: string get_reflect_choice ()","title":"function get_reflect_choice"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_reflect_choice","text":"void set_reflect_choice ( std :: string choice )","title":"function set_reflect_choice"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_reflect_axis","text":"std :: string get_reflect_axis ()","title":"function get_reflect_axis"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_reflect_axis","text":"void set_reflect_axis ( std :: string axies )","title":"function set_reflect_axis"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_resample","text":"bool get_resample ()","title":"function get_resample"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_resample","text":"void set_resample ( bool resample )","title":"function set_resample"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_isotropic","text":"bool get_isotropic ()","title":"function get_isotropic"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_isotropic","text":"void set_isotropic ( bool isotropic )","title":"function set_isotropic"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_iso_spacing","text":"double get_iso_spacing ()","title":"function get_iso_spacing"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_iso_spacing","text":"void set_iso_spacing ( double spacing )","title":"function set_iso_spacing"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_spacing","text":"std :: vector < double > get_spacing ()","title":"function get_spacing"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_spacing","text":"void set_spacing ( std :: vector < double > spacing )","title":"function set_spacing"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_remesh","text":"bool get_remesh ()","title":"function get_remesh"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_remesh","text":"void set_remesh ( bool remesh )","title":"function set_remesh"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_remesh_percent_mode","text":"bool get_remesh_percent_mode ()","title":"function get_remesh_percent_mode"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_remesh_percent_mode","text":"void set_remesh_percent_mode ( bool mode )","title":"function set_remesh_percent_mode"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_remesh_percent","text":"double get_remesh_percent ()","title":"function get_remesh_percent"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_remesh_percent","text":"void set_remesh_percent ( double percent )","title":"function set_remesh_percent"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_remesh_num_vertices","text":"int get_remesh_num_vertices ()","title":"function get_remesh_num_vertices"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_remesh_num_vertices","text":"void set_remesh_num_vertices ( int num_vertices )","title":"function set_remesh_num_vertices"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_remesh_gradation","text":"double get_remesh_gradation ()","title":"function get_remesh_gradation"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_remesh_gradation","text":"void set_remesh_gradation ( double gradation )","title":"function set_remesh_gradation"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-get_skip_grooming","text":"bool get_skip_grooming ()","title":"function get_skip_grooming"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-set_skip_grooming","text":"void set_skip_grooming ( bool skip )","title":"function set_skip_grooming"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#function-restore_defaults","text":"void restore_defaults ()","title":"function restore_defaults"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#variable-groom_smooth_vtk_laplacian_c","text":"static const std :: string GROOM_SMOOTH_VTK_LAPLACIAN_C ;","title":"variable GROOM_SMOOTH_VTK_LAPLACIAN_C"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#variable-groom_smooth_vtk_windowed_sinc_c","text":"static const std :: string GROOM_SMOOTH_VTK_WINDOWED_SINC_C ;","title":"variable GROOM_SMOOTH_VTK_WINDOWED_SINC_C"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#variable-groom_alignment_center_c","text":"static const std :: string GROOM_ALIGNMENT_CENTER_C ;","title":"variable GROOM_ALIGNMENT_CENTER_C"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#variable-groom_alignment_icp_c","text":"static const std :: string GROOM_ALIGNMENT_ICP_C ;","title":"variable GROOM_ALIGNMENT_ICP_C"},{"location":"api/Classes/classshapeworks_1_1GroomParameters.html#variable-groom_alignment_landmark_c","text":"static const std :: string GROOM_ALIGNMENT_LANDMARK_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable GROOM_ALIGNMENT_LANDMARK_C"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html","text":"shapeworks::GroomTool Inherits from QWidget Public Slots Name void on_antialias_checkbox_stateChanged (int state) void on_blur_checkbox_stateChanged (int state) void on_autopad_checkbox_stateChanged (int state) void skip_grooming_toggled () void on_restore_defaults_clicked () void update_ui () void domain_changed () void alignment_checkbox_changed (int state) void alignment_option_changed (int index) void reflect_checkbox_changed (int state) void reflect_column_changed (int index) void reflect_choice_changed (int index) void reflect_axis_changed (int index) void on_run_groom_button_clicked () Run groom tool. void handle_thread_complete () void handle_progress (int val) void handle_error (QString msg) Public Signals Name void groom_start () void groom_complete () void progress (int ) Public Functions Name GroomTool ( Preferences & prefs, Telemetry & telemetry) ~GroomTool () void set_session (QSharedPointer< Session > session) Set the pointer to the session. void activate () activate this tool void load_params () Load params from project. void store_params () Store params to project. void disable_actions () Disable action buttons. void enable_actions () Enable action buttons. void shutdown_threads () shut down any running threads Public Slots Documentation slot on_antialias_checkbox_stateChanged void on_antialias_checkbox_stateChanged ( int state ) slot on_blur_checkbox_stateChanged void on_blur_checkbox_stateChanged ( int state ) slot on_autopad_checkbox_stateChanged void on_autopad_checkbox_stateChanged ( int state ) slot skip_grooming_toggled void skip_grooming_toggled () slot on_restore_defaults_clicked void on_restore_defaults_clicked () slot update_ui void update_ui () slot domain_changed void domain_changed () slot alignment_checkbox_changed void alignment_checkbox_changed ( int state ) slot alignment_option_changed void alignment_option_changed ( int index ) slot reflect_checkbox_changed void reflect_checkbox_changed ( int state ) slot reflect_column_changed void reflect_column_changed ( int index ) slot reflect_choice_changed void reflect_choice_changed ( int index ) slot reflect_axis_changed void reflect_axis_changed ( int index ) slot on_run_groom_button_clicked void on_run_groom_button_clicked () Run groom tool. slot handle_thread_complete void handle_thread_complete () slot handle_progress void handle_progress ( int val ) slot handle_error void handle_error ( QString msg ) Public Signals Documentation signal groom_start void groom_start () signal groom_complete void groom_complete () signal progress void progress ( int ) Public Functions Documentation function GroomTool GroomTool ( Preferences & prefs , Telemetry & telemetry ) function ~GroomTool ~ GroomTool () function set_session void set_session ( QSharedPointer < Session > session ) Set the pointer to the session. function activate void activate () activate this tool function load_params void load_params () Load params from project. function store_params void store_params () Store params to project. function disable_actions void disable_actions () Disable action buttons. function enable_actions void enable_actions () Enable action buttons. function shutdown_threads void shutdown_threads () shut down any running threads Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::GroomTool"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#shapeworksgroomtool","text":"Inherits from QWidget","title":"shapeworks::GroomTool"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#public-slots","text":"Name void on_antialias_checkbox_stateChanged (int state) void on_blur_checkbox_stateChanged (int state) void on_autopad_checkbox_stateChanged (int state) void skip_grooming_toggled () void on_restore_defaults_clicked () void update_ui () void domain_changed () void alignment_checkbox_changed (int state) void alignment_option_changed (int index) void reflect_checkbox_changed (int state) void reflect_column_changed (int index) void reflect_choice_changed (int index) void reflect_axis_changed (int index) void on_run_groom_button_clicked () Run groom tool. void handle_thread_complete () void handle_progress (int val) void handle_error (QString msg)","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#public-signals","text":"Name void groom_start () void groom_complete () void progress (int )","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#public-functions","text":"Name GroomTool ( Preferences & prefs, Telemetry & telemetry) ~GroomTool () void set_session (QSharedPointer< Session > session) Set the pointer to the session. void activate () activate this tool void load_params () Load params from project. void store_params () Store params to project. void disable_actions () Disable action buttons. void enable_actions () Enable action buttons. void shutdown_threads () shut down any running threads","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-on_antialias_checkbox_statechanged","text":"void on_antialias_checkbox_stateChanged ( int state )","title":"slot on_antialias_checkbox_stateChanged"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-on_blur_checkbox_statechanged","text":"void on_blur_checkbox_stateChanged ( int state )","title":"slot on_blur_checkbox_stateChanged"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-on_autopad_checkbox_statechanged","text":"void on_autopad_checkbox_stateChanged ( int state )","title":"slot on_autopad_checkbox_stateChanged"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-skip_grooming_toggled","text":"void skip_grooming_toggled ()","title":"slot skip_grooming_toggled"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-on_restore_defaults_clicked","text":"void on_restore_defaults_clicked ()","title":"slot on_restore_defaults_clicked"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-update_ui","text":"void update_ui ()","title":"slot update_ui"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-domain_changed","text":"void domain_changed ()","title":"slot domain_changed"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-alignment_checkbox_changed","text":"void alignment_checkbox_changed ( int state )","title":"slot alignment_checkbox_changed"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-alignment_option_changed","text":"void alignment_option_changed ( int index )","title":"slot alignment_option_changed"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-reflect_checkbox_changed","text":"void reflect_checkbox_changed ( int state )","title":"slot reflect_checkbox_changed"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-reflect_column_changed","text":"void reflect_column_changed ( int index )","title":"slot reflect_column_changed"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-reflect_choice_changed","text":"void reflect_choice_changed ( int index )","title":"slot reflect_choice_changed"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-reflect_axis_changed","text":"void reflect_axis_changed ( int index )","title":"slot reflect_axis_changed"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-on_run_groom_button_clicked","text":"void on_run_groom_button_clicked () Run groom tool.","title":"slot on_run_groom_button_clicked"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-handle_thread_complete","text":"void handle_thread_complete ()","title":"slot handle_thread_complete"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-handle_progress","text":"void handle_progress ( int val )","title":"slot handle_progress"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#slot-handle_error","text":"void handle_error ( QString msg )","title":"slot handle_error"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#signal-groom_start","text":"void groom_start ()","title":"signal groom_start"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#signal-groom_complete","text":"void groom_complete ()","title":"signal groom_complete"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#signal-progress","text":"void progress ( int )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-groomtool","text":"GroomTool ( Preferences & prefs , Telemetry & telemetry )","title":"function GroomTool"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-groomtool_1","text":"~ GroomTool ()","title":"function ~GroomTool"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session ) Set the pointer to the session.","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-activate","text":"void activate () activate this tool","title":"function activate"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-load_params","text":"void load_params () Load params from project.","title":"function load_params"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-store_params","text":"void store_params () Store params to project.","title":"function store_params"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-disable_actions","text":"void disable_actions () Disable action buttons.","title":"function disable_actions"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-enable_actions","text":"void enable_actions () Enable action buttons.","title":"function enable_actions"},{"location":"api/Classes/classshapeworks_1_1GroomTool.html#function-shutdown_threads","text":"void shutdown_threads () shut down any running threads Updated on 2023-10-24 at 22:16:01 +0000","title":"function shutdown_threads"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html","text":"shapeworks::GroupPvalueJob Inherits from shapeworks::Job , QObject Public Functions Name GroupPvalueJob ( ParticleShapeStatistics stats) virtual void run () override run the job virtual QString name () override get the name of the job Eigen::VectorXf get_group_pvalues () Additional inherited members Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Public Functions Documentation function GroupPvalueJob GroupPvalueJob ( ParticleShapeStatistics stats ) function run virtual void run () override run the job Reimplements : shapeworks::Job::run function name virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name function get_group_pvalues Eigen :: VectorXf get_group_pvalues () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::GroupPvalueJob"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#shapeworksgrouppvaluejob","text":"Inherits from shapeworks::Job , QObject","title":"shapeworks::GroupPvalueJob"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#public-functions","text":"Name GroupPvalueJob ( ParticleShapeStatistics stats) virtual void run () override run the job virtual QString name () override get the name of the job Eigen::VectorXf get_group_pvalues ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#additional-inherited-members","text":"Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#function-grouppvaluejob","text":"GroupPvalueJob ( ParticleShapeStatistics stats )","title":"function GroupPvalueJob"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#function-run","text":"virtual void run () override run the job Reimplements : shapeworks::Job::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#function-name","text":"virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name","title":"function name"},{"location":"api/Classes/classshapeworks_1_1GroupPvalueJob.html#function-get_group_pvalues","text":"Eigen :: VectorXf get_group_pvalues () Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_group_pvalues"},{"location":"api/Classes/classshapeworks_1_1Image.html","text":"shapeworks::Image Module: Image Classes More... #include Public Types Name enum InterpolationType using float PixelType using itk::Image< PixelType, 3 > ImageType using itk::StatisticsImageFilter< ImageType >::Pointer StatsPtr using itk::ImageRegionIterator< ImageType > ImageIterator using itk::LinearInterpolateImageFunction< ImageType > InterpolatorType Public Functions Name Image (const Dims dims) Image (const std::string & pathname) Image (ImageType::Pointer imagePtr) Image (const vtkSmartPointer< vtkImageData > vtkImage) Image ( Image && img) Image (const Image & img) Image & operator= (const Image & img) Image & operator= ( Image && img) lvalue assignment operator operator ImageType::Pointer () rvalue assignment operator ImageType::Pointer getITKImage () const vtkSmartPointer< vtkImageData > getVTKImage () const creates a VTK filter for the given image Image & operator- () negation operator Image operator+ (const Image & other) const plus operator to add two images Image & operator+= (const Image & other) Image operator- (const Image & other) const minus operator to add two images Image & operator-= (const Image & other) Image operator* (const Image & other) const multiply operator to multiply two images Image operator* (const PixelType x) const multiply operator to scale contents of an image Image & operator*= (const PixelType x) Image operator/ (const PixelType x) const divide operator to scale contents of an image Image & operator/= (const PixelType x) Image operator+ (const PixelType x) const plus operator to shift contents of an image Image & operator+= (const PixelType x) Image operator- (const PixelType x) const minus operator to shift contents of an image Image & operator-= (const PixelType x) Image & antialias (unsigned iterations =50, double maxRMSErr =0.01f, int layers =3) antialiases image Image & recenter () Image & resample (const TransformPtr transform, const Point3 origin, const Dims dims, const Vector3 spacing, const ImageType::DirectionType direction, InterpolationType interp =NearestNeighbor) Image & resample (const Vector & physicalSpacing, InterpolationType interp =Linear) resamples image using new physical spacing, updating logical dims to keep all image data for this spacing Image & resample (double isoSpacing =1.0, InterpolationType interp =Linear) resamples image using isotropic physical spacing Image & resize (Dims logicalDims, InterpolationType interp =Linear) Image & pad (int padding, PixelType value =0.0) pads an image by same number of voxels in all directions with constant value Image & pad (int padx, int pady, int padz, PixelType value =0.0) pads an image by desired number of voxels in each direction with constant value Image & pad ( IndexRegion & region, PixelType value =0.0) pads an image to include the given region with constant value Image & translate (const Vector3 & v) helper to simply translate image Image & scale (const Vector3 & v) helper to simply scale image around center (not origin) Image & rotate (const double angle, const Vector3 & axis) helper to simply rotate around axis through center (not origin) by given angle (in radians) Image & rotate (const double angle, Axis axis) helper to simply rotate around axis through center (not origin) by given angle (in radians) TransformPtr createCenterOfMassTransform () creates a transform that translates center of mass to center of image TransformPtr createRigidRegistrationTransform (const Image & target_dt, float isoValue =0.0, unsigned iterations =20) Image & applyTransform (const TransformPtr transform, InterpolationType interp =Linear) applies the given transformation to the image by using resampling filter Image & applyTransform (const TransformPtr transform, const Point3 origin, const Dims dims, const Vector3 spacing, const ImageType::DirectionType direction, InterpolationType interp =NearestNeighbor) Image & extractLabel (const PixelType label =1.0) Image & closeHoles (const PixelType foreground =0.0) closes holes in a given volume, default foreground value assumes a binary volume Image & binarize (PixelType minVal =0.0, PixelType maxVal =std::numeric_limits< PixelType >:: max (), PixelType innerVal =1.0, PixelType outerVal =0.0) threholds image into binary label based on upper and lower intensity bounds given by user Image & computeDT (PixelType isoValue =0.0) computes distance transform volume from a (preferably antialiased) binary image using the specified isovalue Image & applyCurvatureFilter (unsigned iterations =10) denoises an image using curvature driven flow using curvature flow image filter Image & applyGradientFilter () computes gradient magnitude at each pixel using gradient magnitude filter Image & applySigmoidFilter (double alpha =10.0, double beta =10.0) computes sigmoid function pixel-wise using sigmoid image filter Image & applyTPLevelSetFilter (const Image & featureImage, double scaling =20.0) segements structures in images using topology preserving geodesic active contour level set filter Image & topologyPreservingSmooth (float scaling =20.0, float sigmoidAlpha =10.5, float sigmoidBeta =10.0) Image & applyIntensityFilter (double minVal, double maxVal) applies intensity windowing image filter Image & gaussianBlur (double sigma =0.0) applies gaussian blur with given sigma Image & crop ( PhysicalRegion region, const int padding =0) crops the image down to the given region, with optional padding added Image & clip (const Plane plane, const PixelType val =0.0) clips an image using a cutting plane Image & reflect (const Axis & axis) Image & setOrigin (Point3 origin =Point3({0, 0, 0})) sets the image origin in physical space to the given value Image & setSpacing (Vector3 spacing) sets the image spacing to the given value Image & setCoordsys (ImageType::DirectionType coordsys) sets the coordinate system in which this image lives in physical space Image & isolate () isolate the largest object in a binary segmentation Dims dims () const logical dimensions of the image Point3 size () const physical dimensions of the image (dims * spacing) Vector spacing () const physical spacing of the image Point3 origin () const physical coordinates of image origin Point3 center () const physical coordinates of center of this image ImageType::DirectionType coordsys () const return coordinate system in which this image lives in physical space Point3 centerOfMass (PixelType minVal =0.0, PixelType maxVal =1.0) const returns average physical coordinate of pixels in range (minval, maxval] PixelType min () minimum of image PixelType max () maximum of image PixelType mean () mean of image PixelType std () standard deviation of image IndexRegion logicalBoundingBox () const bounding box of complete image in logical (index) space PhysicalRegion physicalBoundingBox () const bounding box of complete image in physical space PhysicalRegion physicalBoundingBox (PixelType isovalue) const bounding box of largest region of data >= the given isoValue in physical space PhysicalRegion logicalToPhysical ( IndexRegion region) const converts a bounding box in logical (index) space to this image's index coordinates IndexRegion physicalToLogical ( PhysicalRegion region) const converts a bounding box in physical space to this image's logical (index) coordinates Point3 logicalToPhysical (const Coord & c) const converts from pixel coordinates to physical space Coord physicalToLogical (const Point3 & p) const converts from a physical coordinate to a logical coordinate bool isInside (const Point3 & p) const checks if a given point is inside the image ImageIterator iterator () creates an image iterator and returns it bool compare (const Image & other, bool verifyall =true, double tolerance =0.0, double precision =1e-12) const compares this with another image using the region of interest filter bool operator== (const Image & other) const compares this with another image using the region of interest filter Image & write (const std::string & filename, bool compressed =true) writes image, format specified by filename extension Mesh toMesh (PixelType isovalue) const converts image to mesh Image::PixelType evaluate (Point p) Evaluates the image at a given position. std::vector< std::string > getSupportedTypes () Return supported file types. Friends Name struct SharedCommandData Detailed Description class shapeworks :: Image ; This class represents a 3D image volume and operations that can be performed on images. Public Types Documentation enum InterpolationType Enumerator Value Description Linear NearestNeighbor using PixelType using shapeworks :: Image :: PixelType = float ; using ImageType using shapeworks :: Image :: ImageType = itk :: Image < PixelType , 3 > ; using StatsPtr using shapeworks :: Image :: StatsPtr = itk :: StatisticsImageFilter < ImageType >:: Pointer ; using ImageIterator using shapeworks :: Image :: ImageIterator = itk :: ImageRegionIterator < ImageType > ; using InterpolatorType using shapeworks :: Image :: InterpolatorType = itk :: LinearInterpolateImageFunction < ImageType > ; Public Functions Documentation function Image Image ( const Dims dims ) function Image inline Image ( const std :: string & pathname ) function Image inline Image ( ImageType :: Pointer imagePtr ) function Image Image ( const vtkSmartPointer < vtkImageData > vtkImage ) function Image inline Image ( Image && img ) function Image inline Image ( const Image & img ) function operator= Image & operator = ( const Image & img ) function operator= Image & operator = ( Image && img ) lvalue assignment operator function operator ImageType::Pointer inline operator ImageType :: Pointer () rvalue assignment operator return this as an ITK image function getITKImage inline ImageType :: Pointer getITKImage () const function getVTKImage vtkSmartPointer < vtkImageData > getVTKImage () const creates a VTK filter for the given image function operator- Image & operator - () negation operator function operator+ Image operator + ( const Image & other ) const plus operator to add two images function operator+= Image & operator += ( const Image & other ) function operator- Image operator - ( const Image & other ) const minus operator to add two images function operator-= Image & operator -= ( const Image & other ) function operator* Image operator * ( const Image & other ) const multiply operator to multiply two images function operator* Image operator * ( const PixelType x ) const multiply operator to scale contents of an image function operator*= Image & operator *= ( const PixelType x ) function operator/ Image operator / ( const PixelType x ) const divide operator to scale contents of an image function operator/= Image & operator /= ( const PixelType x ) function operator+ Image operator + ( const PixelType x ) const plus operator to shift contents of an image function operator+= Image & operator += ( const PixelType x ) function operator- Image operator - ( const PixelType x ) const minus operator to shift contents of an image function operator-= Image & operator -= ( const PixelType x ) function antialias Image & antialias ( unsigned iterations = 50 , double maxRMSErr = 0.01f , int layers = 3 ) antialiases image function recenter Image & recenter () helper identical to setOrigin(image.center()) changing origin (in the image header) to physcial center of the image function resample Image & resample ( const TransformPtr transform , const Point3 origin , const Dims dims , const Vector3 spacing , const ImageType :: DirectionType direction , InterpolationType interp = NearestNeighbor ) resamples by applying transform then sampling from given origin along direction axes at spacing physical units per pixel for dims pixels using specified interpolator function resample Image & resample ( const Vector & physicalSpacing , InterpolationType interp = Linear ) resamples image using new physical spacing, updating logical dims to keep all image data for this spacing function resample Image & resample ( double isoSpacing = 1.0 , InterpolationType interp = Linear ) resamples image using isotropic physical spacing function resize Image & resize ( Dims logicalDims , InterpolationType interp = Linear ) changes logical image size, computing new physical spacing based on this size (i.e., physical image size remains the same) function pad Image & pad ( int padding , PixelType value = 0.0 ) pads an image by same number of voxels in all directions with constant value function pad Image & pad ( int padx , int pady , int padz , PixelType value = 0.0 ) pads an image by desired number of voxels in each direction with constant value function pad Image & pad ( IndexRegion & region , PixelType value = 0.0 ) pads an image to include the given region with constant value function translate Image & translate ( const Vector3 & v ) helper to simply translate image function scale Image & scale ( const Vector3 & v ) helper to simply scale image around center (not origin) function rotate Image & rotate ( const double angle , const Vector3 & axis ) helper to simply rotate around axis through center (not origin) by given angle (in radians) function rotate Image & rotate ( const double angle , Axis axis ) helper to simply rotate around axis through center (not origin) by given angle (in radians) function createCenterOfMassTransform TransformPtr createCenterOfMassTransform () creates a transform that translates center of mass to center of image function createRigidRegistrationTransform TransformPtr createRigidRegistrationTransform ( const Image & target_dt , float isoValue = 0.0 , unsigned iterations = 20 ) creates transform to target image using iterative closest point (ICP) registration; images MUST be distance transforms; isovalue is used to create meshes from these distance transform images, which are then passed to ICP for the given number of iterations function applyTransform Image & applyTransform ( const TransformPtr transform , InterpolationType interp = Linear ) applies the given transformation to the image by using resampling filter function applyTransform Image & applyTransform ( const TransformPtr transform , const Point3 origin , const Dims dims , const Vector3 spacing , const ImageType :: DirectionType direction , InterpolationType interp = NearestNeighbor ) applies the given transformation to the image by using resampling filter with new origin, dims, spacing and direction values function extractLabel Image & extractLabel ( const PixelType label = 1.0 ) extracts/isolates a specific voxel label from a given multi-label volume and outputs the corresponding binary image function closeHoles Image & closeHoles ( const PixelType foreground = 0.0 ) closes holes in a given volume, default foreground value assumes a binary volume function binarize Image & binarize ( PixelType minVal = 0.0 , PixelType maxVal = std :: numeric_limits < PixelType >:: max (), PixelType innerVal = 1.0 , PixelType outerVal = 0.0 ) threholds image into binary label based on upper and lower intensity bounds given by user function computeDT Image & computeDT ( PixelType isoValue = 0.0 ) computes distance transform volume from a (preferably antialiased) binary image using the specified isovalue function applyCurvatureFilter Image & applyCurvatureFilter ( unsigned iterations = 10 ) denoises an image using curvature driven flow using curvature flow image filter function applyGradientFilter Image & applyGradientFilter () computes gradient magnitude at each pixel using gradient magnitude filter function applySigmoidFilter Image & applySigmoidFilter ( double alpha = 10.0 , double beta = 10.0 ) computes sigmoid function pixel-wise using sigmoid image filter function applyTPLevelSetFilter Image & applyTPLevelSetFilter ( const Image & featureImage , double scaling = 20.0 ) segements structures in images using topology preserving geodesic active contour level set filter function topologyPreservingSmooth Image & topologyPreservingSmooth ( float scaling = 20.0 , float sigmoidAlpha = 10.5 , float sigmoidBeta = 10.0 ) creates a feature image (by applying gradient then sigmoid filters), then passes it to the TPLevelSet filter [curvature flow filter is often applied to the image before this filter] function applyIntensityFilter Image & applyIntensityFilter ( double minVal , double maxVal ) applies intensity windowing image filter function gaussianBlur Image & gaussianBlur ( double sigma = 0.0 ) applies gaussian blur with given sigma function crop Image & crop ( PhysicalRegion region , const int padding = 0 ) crops the image down to the given region, with optional padding added function clip Image & clip ( const Plane plane , const PixelType val = 0.0 ) clips an image using a cutting plane function reflect Image & reflect ( const Axis & axis ) reflect image around the plane specified by the logical center and the given normal (ex: <1,0,0> reflects across YZ-plane). function setOrigin Image & setOrigin ( Point3 origin = Point3 ({ 0 , 0 , 0 }) ) sets the image origin in physical space to the given value function setSpacing Image & setSpacing ( Vector3 spacing ) sets the image spacing to the given value function setCoordsys Image & setCoordsys ( ImageType :: DirectionType coordsys ) sets the coordinate system in which this image lives in physical space function isolate Image & isolate () isolate the largest object in a binary segmentation function dims inline Dims dims () const logical dimensions of the image function size inline Point3 size () const physical dimensions of the image (dims * spacing) function spacing inline Vector spacing () const physical spacing of the image function origin inline Point3 origin () const physical coordinates of image origin function center inline Point3 center () const physical coordinates of center of this image function coordsys inline ImageType :: DirectionType coordsys () const return coordinate system in which this image lives in physical space function centerOfMass Point3 centerOfMass ( PixelType minVal = 0.0 , PixelType maxVal = 1.0 ) const returns average physical coordinate of pixels in range (minval, maxval] function min PixelType min () minimum of image function max PixelType max () maximum of image function mean PixelType mean () mean of image function std PixelType std () standard deviation of image function logicalBoundingBox IndexRegion logicalBoundingBox () const bounding box of complete image in logical (index) space function physicalBoundingBox PhysicalRegion physicalBoundingBox () const bounding box of complete image in physical space function physicalBoundingBox PhysicalRegion physicalBoundingBox ( PixelType isovalue ) const bounding box of largest region of data >= the given isoValue in physical space function logicalToPhysical PhysicalRegion logicalToPhysical ( IndexRegion region ) const converts a bounding box in logical (index) space to this image's index coordinates function physicalToLogical IndexRegion physicalToLogical ( PhysicalRegion region ) const converts a bounding box in physical space to this image's logical (index) coordinates function logicalToPhysical Point3 logicalToPhysical ( const Coord & c ) const converts from pixel coordinates to physical space function physicalToLogical Coord physicalToLogical ( const Point3 & p ) const converts from a physical coordinate to a logical coordinate function isInside bool isInside ( const Point3 & p ) const checks if a given point is inside the image function iterator ImageIterator iterator () creates an image iterator and returns it function compare bool compare ( const Image & other , bool verifyall = true , double tolerance = 0.0 , double precision = 1e-12 ) const compares this with another image using the region of interest filter function operator== inline bool operator == ( const Image & other ) const compares this with another image using the region of interest filter function write Image & write ( const std :: string & filename , bool compressed = true ) writes image, format specified by filename extension function toMesh Mesh toMesh ( PixelType isovalue ) const converts image to mesh function evaluate Image :: PixelType evaluate ( Point p ) Evaluates the image at a given position. function getSupportedTypes static inline std :: vector < std :: string > getSupportedTypes () Return supported file types. Friends friend SharedCommandData friend struct SharedCommandData ( SharedCommandData ); Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#shapeworksimage","text":"Module: Image Classes More... #include ","title":"shapeworks::Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#public-types","text":"Name enum InterpolationType using float PixelType using itk::Image< PixelType, 3 > ImageType using itk::StatisticsImageFilter< ImageType >::Pointer StatsPtr using itk::ImageRegionIterator< ImageType > ImageIterator using itk::LinearInterpolateImageFunction< ImageType > InterpolatorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Image.html#public-functions","text":"Name Image (const Dims dims) Image (const std::string & pathname) Image (ImageType::Pointer imagePtr) Image (const vtkSmartPointer< vtkImageData > vtkImage) Image ( Image && img) Image (const Image & img) Image & operator= (const Image & img) Image & operator= ( Image && img) lvalue assignment operator operator ImageType::Pointer () rvalue assignment operator ImageType::Pointer getITKImage () const vtkSmartPointer< vtkImageData > getVTKImage () const creates a VTK filter for the given image Image & operator- () negation operator Image operator+ (const Image & other) const plus operator to add two images Image & operator+= (const Image & other) Image operator- (const Image & other) const minus operator to add two images Image & operator-= (const Image & other) Image operator* (const Image & other) const multiply operator to multiply two images Image operator* (const PixelType x) const multiply operator to scale contents of an image Image & operator*= (const PixelType x) Image operator/ (const PixelType x) const divide operator to scale contents of an image Image & operator/= (const PixelType x) Image operator+ (const PixelType x) const plus operator to shift contents of an image Image & operator+= (const PixelType x) Image operator- (const PixelType x) const minus operator to shift contents of an image Image & operator-= (const PixelType x) Image & antialias (unsigned iterations =50, double maxRMSErr =0.01f, int layers =3) antialiases image Image & recenter () Image & resample (const TransformPtr transform, const Point3 origin, const Dims dims, const Vector3 spacing, const ImageType::DirectionType direction, InterpolationType interp =NearestNeighbor) Image & resample (const Vector & physicalSpacing, InterpolationType interp =Linear) resamples image using new physical spacing, updating logical dims to keep all image data for this spacing Image & resample (double isoSpacing =1.0, InterpolationType interp =Linear) resamples image using isotropic physical spacing Image & resize (Dims logicalDims, InterpolationType interp =Linear) Image & pad (int padding, PixelType value =0.0) pads an image by same number of voxels in all directions with constant value Image & pad (int padx, int pady, int padz, PixelType value =0.0) pads an image by desired number of voxels in each direction with constant value Image & pad ( IndexRegion & region, PixelType value =0.0) pads an image to include the given region with constant value Image & translate (const Vector3 & v) helper to simply translate image Image & scale (const Vector3 & v) helper to simply scale image around center (not origin) Image & rotate (const double angle, const Vector3 & axis) helper to simply rotate around axis through center (not origin) by given angle (in radians) Image & rotate (const double angle, Axis axis) helper to simply rotate around axis through center (not origin) by given angle (in radians) TransformPtr createCenterOfMassTransform () creates a transform that translates center of mass to center of image TransformPtr createRigidRegistrationTransform (const Image & target_dt, float isoValue =0.0, unsigned iterations =20) Image & applyTransform (const TransformPtr transform, InterpolationType interp =Linear) applies the given transformation to the image by using resampling filter Image & applyTransform (const TransformPtr transform, const Point3 origin, const Dims dims, const Vector3 spacing, const ImageType::DirectionType direction, InterpolationType interp =NearestNeighbor) Image & extractLabel (const PixelType label =1.0) Image & closeHoles (const PixelType foreground =0.0) closes holes in a given volume, default foreground value assumes a binary volume Image & binarize (PixelType minVal =0.0, PixelType maxVal =std::numeric_limits< PixelType >:: max (), PixelType innerVal =1.0, PixelType outerVal =0.0) threholds image into binary label based on upper and lower intensity bounds given by user Image & computeDT (PixelType isoValue =0.0) computes distance transform volume from a (preferably antialiased) binary image using the specified isovalue Image & applyCurvatureFilter (unsigned iterations =10) denoises an image using curvature driven flow using curvature flow image filter Image & applyGradientFilter () computes gradient magnitude at each pixel using gradient magnitude filter Image & applySigmoidFilter (double alpha =10.0, double beta =10.0) computes sigmoid function pixel-wise using sigmoid image filter Image & applyTPLevelSetFilter (const Image & featureImage, double scaling =20.0) segements structures in images using topology preserving geodesic active contour level set filter Image & topologyPreservingSmooth (float scaling =20.0, float sigmoidAlpha =10.5, float sigmoidBeta =10.0) Image & applyIntensityFilter (double minVal, double maxVal) applies intensity windowing image filter Image & gaussianBlur (double sigma =0.0) applies gaussian blur with given sigma Image & crop ( PhysicalRegion region, const int padding =0) crops the image down to the given region, with optional padding added Image & clip (const Plane plane, const PixelType val =0.0) clips an image using a cutting plane Image & reflect (const Axis & axis) Image & setOrigin (Point3 origin =Point3({0, 0, 0})) sets the image origin in physical space to the given value Image & setSpacing (Vector3 spacing) sets the image spacing to the given value Image & setCoordsys (ImageType::DirectionType coordsys) sets the coordinate system in which this image lives in physical space Image & isolate () isolate the largest object in a binary segmentation Dims dims () const logical dimensions of the image Point3 size () const physical dimensions of the image (dims * spacing) Vector spacing () const physical spacing of the image Point3 origin () const physical coordinates of image origin Point3 center () const physical coordinates of center of this image ImageType::DirectionType coordsys () const return coordinate system in which this image lives in physical space Point3 centerOfMass (PixelType minVal =0.0, PixelType maxVal =1.0) const returns average physical coordinate of pixels in range (minval, maxval] PixelType min () minimum of image PixelType max () maximum of image PixelType mean () mean of image PixelType std () standard deviation of image IndexRegion logicalBoundingBox () const bounding box of complete image in logical (index) space PhysicalRegion physicalBoundingBox () const bounding box of complete image in physical space PhysicalRegion physicalBoundingBox (PixelType isovalue) const bounding box of largest region of data >= the given isoValue in physical space PhysicalRegion logicalToPhysical ( IndexRegion region) const converts a bounding box in logical (index) space to this image's index coordinates IndexRegion physicalToLogical ( PhysicalRegion region) const converts a bounding box in physical space to this image's logical (index) coordinates Point3 logicalToPhysical (const Coord & c) const converts from pixel coordinates to physical space Coord physicalToLogical (const Point3 & p) const converts from a physical coordinate to a logical coordinate bool isInside (const Point3 & p) const checks if a given point is inside the image ImageIterator iterator () creates an image iterator and returns it bool compare (const Image & other, bool verifyall =true, double tolerance =0.0, double precision =1e-12) const compares this with another image using the region of interest filter bool operator== (const Image & other) const compares this with another image using the region of interest filter Image & write (const std::string & filename, bool compressed =true) writes image, format specified by filename extension Mesh toMesh (PixelType isovalue) const converts image to mesh Image::PixelType evaluate (Point p) Evaluates the image at a given position. std::vector< std::string > getSupportedTypes () Return supported file types.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Image.html#friends","text":"Name struct SharedCommandData","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1Image.html#detailed-description","text":"class shapeworks :: Image ; This class represents a 3D image volume and operations that can be performed on images.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Image.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Image.html#enum-interpolationtype","text":"Enumerator Value Description Linear NearestNeighbor","title":"enum InterpolationType"},{"location":"api/Classes/classshapeworks_1_1Image.html#using-pixeltype","text":"using shapeworks :: Image :: PixelType = float ;","title":"using PixelType"},{"location":"api/Classes/classshapeworks_1_1Image.html#using-imagetype","text":"using shapeworks :: Image :: ImageType = itk :: Image < PixelType , 3 > ;","title":"using ImageType"},{"location":"api/Classes/classshapeworks_1_1Image.html#using-statsptr","text":"using shapeworks :: Image :: StatsPtr = itk :: StatisticsImageFilter < ImageType >:: Pointer ;","title":"using StatsPtr"},{"location":"api/Classes/classshapeworks_1_1Image.html#using-imageiterator","text":"using shapeworks :: Image :: ImageIterator = itk :: ImageRegionIterator < ImageType > ;","title":"using ImageIterator"},{"location":"api/Classes/classshapeworks_1_1Image.html#using-interpolatortype","text":"using shapeworks :: Image :: InterpolatorType = itk :: LinearInterpolateImageFunction < ImageType > ;","title":"using InterpolatorType"},{"location":"api/Classes/classshapeworks_1_1Image.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-image","text":"Image ( const Dims dims )","title":"function Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-image_1","text":"inline Image ( const std :: string & pathname )","title":"function Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-image_2","text":"inline Image ( ImageType :: Pointer imagePtr )","title":"function Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-image_3","text":"Image ( const vtkSmartPointer < vtkImageData > vtkImage )","title":"function Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-image_4","text":"inline Image ( Image && img )","title":"function Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-image_5","text":"inline Image ( const Image & img )","title":"function Image"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator","text":"Image & operator = ( const Image & img )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_1","text":"Image & operator = ( Image && img ) lvalue assignment operator","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator-imagetypepointer","text":"inline operator ImageType :: Pointer () rvalue assignment operator return this as an ITK image","title":"function operator ImageType::Pointer"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-getitkimage","text":"inline ImageType :: Pointer getITKImage () const","title":"function getITKImage"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-getvtkimage","text":"vtkSmartPointer < vtkImageData > getVTKImage () const creates a VTK filter for the given image","title":"function getVTKImage"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator-","text":"Image & operator - () negation operator","title":"function operator-"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_2","text":"Image operator + ( const Image & other ) const plus operator to add two images","title":"function operator+"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_3","text":"Image & operator += ( const Image & other )","title":"function operator+="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator-_1","text":"Image operator - ( const Image & other ) const minus operator to add two images","title":"function operator-"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator-_2","text":"Image & operator -= ( const Image & other )","title":"function operator-="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_4","text":"Image operator * ( const Image & other ) const multiply operator to multiply two images","title":"function operator*"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_5","text":"Image operator * ( const PixelType x ) const multiply operator to scale contents of an image","title":"function operator*"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_6","text":"Image & operator *= ( const PixelType x )","title":"function operator*="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_7","text":"Image operator / ( const PixelType x ) const divide operator to scale contents of an image","title":"function operator/"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_8","text":"Image & operator /= ( const PixelType x )","title":"function operator/="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_9","text":"Image operator + ( const PixelType x ) const plus operator to shift contents of an image","title":"function operator+"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_10","text":"Image & operator += ( const PixelType x )","title":"function operator+="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator-_3","text":"Image operator - ( const PixelType x ) const minus operator to shift contents of an image","title":"function operator-"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator-_4","text":"Image & operator -= ( const PixelType x )","title":"function operator-="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-antialias","text":"Image & antialias ( unsigned iterations = 50 , double maxRMSErr = 0.01f , int layers = 3 ) antialiases image","title":"function antialias"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-recenter","text":"Image & recenter () helper identical to setOrigin(image.center()) changing origin (in the image header) to physcial center of the image","title":"function recenter"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-resample","text":"Image & resample ( const TransformPtr transform , const Point3 origin , const Dims dims , const Vector3 spacing , const ImageType :: DirectionType direction , InterpolationType interp = NearestNeighbor ) resamples by applying transform then sampling from given origin along direction axes at spacing physical units per pixel for dims pixels using specified interpolator","title":"function resample"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-resample_1","text":"Image & resample ( const Vector & physicalSpacing , InterpolationType interp = Linear ) resamples image using new physical spacing, updating logical dims to keep all image data for this spacing","title":"function resample"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-resample_2","text":"Image & resample ( double isoSpacing = 1.0 , InterpolationType interp = Linear ) resamples image using isotropic physical spacing","title":"function resample"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-resize","text":"Image & resize ( Dims logicalDims , InterpolationType interp = Linear ) changes logical image size, computing new physical spacing based on this size (i.e., physical image size remains the same)","title":"function resize"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-pad","text":"Image & pad ( int padding , PixelType value = 0.0 ) pads an image by same number of voxels in all directions with constant value","title":"function pad"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-pad_1","text":"Image & pad ( int padx , int pady , int padz , PixelType value = 0.0 ) pads an image by desired number of voxels in each direction with constant value","title":"function pad"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-pad_2","text":"Image & pad ( IndexRegion & region , PixelType value = 0.0 ) pads an image to include the given region with constant value","title":"function pad"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-translate","text":"Image & translate ( const Vector3 & v ) helper to simply translate image","title":"function translate"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-scale","text":"Image & scale ( const Vector3 & v ) helper to simply scale image around center (not origin)","title":"function scale"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-rotate","text":"Image & rotate ( const double angle , const Vector3 & axis ) helper to simply rotate around axis through center (not origin) by given angle (in radians)","title":"function rotate"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-rotate_1","text":"Image & rotate ( const double angle , Axis axis ) helper to simply rotate around axis through center (not origin) by given angle (in radians)","title":"function rotate"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-createcenterofmasstransform","text":"TransformPtr createCenterOfMassTransform () creates a transform that translates center of mass to center of image","title":"function createCenterOfMassTransform"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-createrigidregistrationtransform","text":"TransformPtr createRigidRegistrationTransform ( const Image & target_dt , float isoValue = 0.0 , unsigned iterations = 20 ) creates transform to target image using iterative closest point (ICP) registration; images MUST be distance transforms; isovalue is used to create meshes from these distance transform images, which are then passed to ICP for the given number of iterations","title":"function createRigidRegistrationTransform"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-applytransform","text":"Image & applyTransform ( const TransformPtr transform , InterpolationType interp = Linear ) applies the given transformation to the image by using resampling filter","title":"function applyTransform"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-applytransform_1","text":"Image & applyTransform ( const TransformPtr transform , const Point3 origin , const Dims dims , const Vector3 spacing , const ImageType :: DirectionType direction , InterpolationType interp = NearestNeighbor ) applies the given transformation to the image by using resampling filter with new origin, dims, spacing and direction values","title":"function applyTransform"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-extractlabel","text":"Image & extractLabel ( const PixelType label = 1.0 ) extracts/isolates a specific voxel label from a given multi-label volume and outputs the corresponding binary image","title":"function extractLabel"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-closeholes","text":"Image & closeHoles ( const PixelType foreground = 0.0 ) closes holes in a given volume, default foreground value assumes a binary volume","title":"function closeHoles"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-binarize","text":"Image & binarize ( PixelType minVal = 0.0 , PixelType maxVal = std :: numeric_limits < PixelType >:: max (), PixelType innerVal = 1.0 , PixelType outerVal = 0.0 ) threholds image into binary label based on upper and lower intensity bounds given by user","title":"function binarize"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-computedt","text":"Image & computeDT ( PixelType isoValue = 0.0 ) computes distance transform volume from a (preferably antialiased) binary image using the specified isovalue","title":"function computeDT"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-applycurvaturefilter","text":"Image & applyCurvatureFilter ( unsigned iterations = 10 ) denoises an image using curvature driven flow using curvature flow image filter","title":"function applyCurvatureFilter"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-applygradientfilter","text":"Image & applyGradientFilter () computes gradient magnitude at each pixel using gradient magnitude filter","title":"function applyGradientFilter"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-applysigmoidfilter","text":"Image & applySigmoidFilter ( double alpha = 10.0 , double beta = 10.0 ) computes sigmoid function pixel-wise using sigmoid image filter","title":"function applySigmoidFilter"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-applytplevelsetfilter","text":"Image & applyTPLevelSetFilter ( const Image & featureImage , double scaling = 20.0 ) segements structures in images using topology preserving geodesic active contour level set filter","title":"function applyTPLevelSetFilter"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-topologypreservingsmooth","text":"Image & topologyPreservingSmooth ( float scaling = 20.0 , float sigmoidAlpha = 10.5 , float sigmoidBeta = 10.0 ) creates a feature image (by applying gradient then sigmoid filters), then passes it to the TPLevelSet filter [curvature flow filter is often applied to the image before this filter]","title":"function topologyPreservingSmooth"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-applyintensityfilter","text":"Image & applyIntensityFilter ( double minVal , double maxVal ) applies intensity windowing image filter","title":"function applyIntensityFilter"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-gaussianblur","text":"Image & gaussianBlur ( double sigma = 0.0 ) applies gaussian blur with given sigma","title":"function gaussianBlur"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-crop","text":"Image & crop ( PhysicalRegion region , const int padding = 0 ) crops the image down to the given region, with optional padding added","title":"function crop"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-clip","text":"Image & clip ( const Plane plane , const PixelType val = 0.0 ) clips an image using a cutting plane","title":"function clip"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-reflect","text":"Image & reflect ( const Axis & axis ) reflect image around the plane specified by the logical center and the given normal (ex: <1,0,0> reflects across YZ-plane).","title":"function reflect"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-setorigin","text":"Image & setOrigin ( Point3 origin = Point3 ({ 0 , 0 , 0 }) ) sets the image origin in physical space to the given value","title":"function setOrigin"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-setspacing","text":"Image & setSpacing ( Vector3 spacing ) sets the image spacing to the given value","title":"function setSpacing"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-setcoordsys","text":"Image & setCoordsys ( ImageType :: DirectionType coordsys ) sets the coordinate system in which this image lives in physical space","title":"function setCoordsys"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-isolate","text":"Image & isolate () isolate the largest object in a binary segmentation","title":"function isolate"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-dims","text":"inline Dims dims () const logical dimensions of the image","title":"function dims"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-size","text":"inline Point3 size () const physical dimensions of the image (dims * spacing)","title":"function size"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-spacing","text":"inline Vector spacing () const physical spacing of the image","title":"function spacing"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-origin","text":"inline Point3 origin () const physical coordinates of image origin","title":"function origin"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-center","text":"inline Point3 center () const physical coordinates of center of this image","title":"function center"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-coordsys","text":"inline ImageType :: DirectionType coordsys () const return coordinate system in which this image lives in physical space","title":"function coordsys"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-centerofmass","text":"Point3 centerOfMass ( PixelType minVal = 0.0 , PixelType maxVal = 1.0 ) const returns average physical coordinate of pixels in range (minval, maxval]","title":"function centerOfMass"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-min","text":"PixelType min () minimum of image","title":"function min"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-max","text":"PixelType max () maximum of image","title":"function max"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-mean","text":"PixelType mean () mean of image","title":"function mean"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-std","text":"PixelType std () standard deviation of image","title":"function std"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-logicalboundingbox","text":"IndexRegion logicalBoundingBox () const bounding box of complete image in logical (index) space","title":"function logicalBoundingBox"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-physicalboundingbox","text":"PhysicalRegion physicalBoundingBox () const bounding box of complete image in physical space","title":"function physicalBoundingBox"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-physicalboundingbox_1","text":"PhysicalRegion physicalBoundingBox ( PixelType isovalue ) const bounding box of largest region of data >= the given isoValue in physical space","title":"function physicalBoundingBox"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-logicaltophysical","text":"PhysicalRegion logicalToPhysical ( IndexRegion region ) const converts a bounding box in logical (index) space to this image's index coordinates","title":"function logicalToPhysical"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-physicaltological","text":"IndexRegion physicalToLogical ( PhysicalRegion region ) const converts a bounding box in physical space to this image's logical (index) coordinates","title":"function physicalToLogical"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-logicaltophysical_1","text":"Point3 logicalToPhysical ( const Coord & c ) const converts from pixel coordinates to physical space","title":"function logicalToPhysical"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-physicaltological_1","text":"Coord physicalToLogical ( const Point3 & p ) const converts from a physical coordinate to a logical coordinate","title":"function physicalToLogical"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-isinside","text":"bool isInside ( const Point3 & p ) const checks if a given point is inside the image","title":"function isInside"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-iterator","text":"ImageIterator iterator () creates an image iterator and returns it","title":"function iterator"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-compare","text":"bool compare ( const Image & other , bool verifyall = true , double tolerance = 0.0 , double precision = 1e-12 ) const compares this with another image using the region of interest filter","title":"function compare"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-operator_11","text":"inline bool operator == ( const Image & other ) const compares this with another image using the region of interest filter","title":"function operator=="},{"location":"api/Classes/classshapeworks_1_1Image.html#function-write","text":"Image & write ( const std :: string & filename , bool compressed = true ) writes image, format specified by filename extension","title":"function write"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-tomesh","text":"Mesh toMesh ( PixelType isovalue ) const converts image to mesh","title":"function toMesh"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-evaluate","text":"Image :: PixelType evaluate ( Point p ) Evaluates the image at a given position.","title":"function evaluate"},{"location":"api/Classes/classshapeworks_1_1Image.html#function-getsupportedtypes","text":"static inline std :: vector < std :: string > getSupportedTypes () Return supported file types.","title":"function getSupportedTypes"},{"location":"api/Classes/classshapeworks_1_1Image.html#friends_1","text":"","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1Image.html#friend-sharedcommanddata","text":"friend struct SharedCommandData ( SharedCommandData ); Updated on 2023-10-24 at 22:16:02 +0000","title":"friend SharedCommandData"},{"location":"api/Classes/classshapeworks_1_1ImageCommand.html","text":"shapeworks::ImageCommand Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImageCommand"},{"location":"api/Classes/classshapeworks_1_1ImageCommand.html#shapeworksimagecommand","text":"Inherits from shapeworks::Command","title":"shapeworks::ImageCommand"},{"location":"api/Classes/classshapeworks_1_1ImageCommand.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImageCommand.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ImageCommand.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageCommand.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html","text":"shapeworks::ImageDomain More... Inherits from shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImageDomainWithGradients< T > Public Types Name using std::shared_ptr< ImageDomain > Pointer using itk::Image< T, DIMENSION > ImageType using ParticleRegionDomain::PointType PointType Public Functions Name void SetImage ( ImageType * I, double narrow_band) virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void DeleteImages () override virtual void UpdateZeroCrossingPoint () override Protected Functions Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () void PrintSelf (std::ostream & os, itk::Indent indent) const openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Additional inherited members Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual void DeletePartialDerivativeImages () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Detailed Description template < class T > class shapeworks :: ImageDomain ; Public Types Documentation using Pointer using shapeworks :: ImageDomain < T >:: Pointer = std :: shared_ptr < ImageDomain > ; Standard class typedefs using ImageType using shapeworks :: ImageDomain < T >:: ImageType = itk :: Image < T , DIMENSION > ; Type of the ITK image used by this class. using PointType using shapeworks :: ImageDomain < T >:: PointType = ParticleRegionDomain :: PointType ; Point type of the domain (not the image). Public Functions Documentation function SetImage inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound. function GetSurfaceArea inline virtual double GetSurfaceArea () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceArea Use for neighborhood radius. function GetOrigin inline PointType GetOrigin () const function GetSize inline ImageType :: SizeType GetSize () const function GetSpacing inline ImageType :: SpacingType GetSpacing () const function GetIndex inline ImageType :: RegionType :: IndexType GetIndex () const function GetValidLocationNear inline virtual PointType GetValidLocationNear ( PointType p ) const override Reimplements : shapeworks::ParticleDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle. function Sample inline T Sample ( const PointType & p ) const Sample the image at a point. This method performs bounds checking. function GetMaxDiameter inline virtual double GetMaxDiameter () const override Reimplements : shapeworks::ParticleDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma function DeleteImages inline virtual void DeleteImages () override Reimplements : shapeworks::ParticleDomain::DeleteImages Reimplemented by : shapeworks::ImageDomainWithGradients::DeleteImages , shapeworks::ImageDomainWithGradN::DeleteImages Used when a domain is fixed. function UpdateZeroCrossingPoint inline virtual void UpdateZeroCrossingPoint () override Reimplements : shapeworks::ParticleDomain::UpdateZeroCrossingPoint Protected Functions Documentation function GetVDBImage inline openvdb :: FloatGrid :: Ptr GetVDBImage () const function ImageDomain inline ImageDomain () function ~ImageDomain inline virtual ~ ImageDomain () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function transform inline openvdb :: math :: Transform :: Ptr transform () const function ToVDBCoord inline openvdb :: Vec3R ToVDBCoord ( const PointType & p ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImageDomain"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#shapeworksimagedomain","text":"More... Inherits from shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImageDomainWithGradients< T >","title":"shapeworks::ImageDomain"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#public-types","text":"Name using std::shared_ptr< ImageDomain > Pointer using itk::Image< T, DIMENSION > ImageType using ParticleRegionDomain::PointType PointType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#public-functions","text":"Name void SetImage ( ImageType * I, double narrow_band) virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void DeleteImages () override virtual void UpdateZeroCrossingPoint () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#protected-functions","text":"Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () void PrintSelf (std::ostream & os, itk::Indent indent) const openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual void DeletePartialDerivativeImages () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#detailed-description","text":"template < class T > class shapeworks :: ImageDomain ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#using-pointer","text":"using shapeworks :: ImageDomain < T >:: Pointer = std :: shared_ptr < ImageDomain > ; Standard class typedefs","title":"using Pointer"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#using-imagetype","text":"using shapeworks :: ImageDomain < T >:: ImageType = itk :: Image < T , DIMENSION > ; Type of the ITK image used by this class.","title":"using ImageType"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#using-pointtype","text":"using shapeworks :: ImageDomain < T >:: PointType = ParticleRegionDomain :: PointType ; Point type of the domain (not the image).","title":"using PointType"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-setimage","text":"inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound.","title":"function SetImage"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getsurfacearea","text":"inline virtual double GetSurfaceArea () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceArea Use for neighborhood radius.","title":"function GetSurfaceArea"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getorigin","text":"inline PointType GetOrigin () const","title":"function GetOrigin"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getsize","text":"inline ImageType :: SizeType GetSize () const","title":"function GetSize"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getspacing","text":"inline ImageType :: SpacingType GetSpacing () const","title":"function GetSpacing"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getindex","text":"inline ImageType :: RegionType :: IndexType GetIndex () const","title":"function GetIndex"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getvalidlocationnear","text":"inline virtual PointType GetValidLocationNear ( PointType p ) const override Reimplements : shapeworks::ParticleDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle.","title":"function GetValidLocationNear"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-sample","text":"inline T Sample ( const PointType & p ) const Sample the image at a point. This method performs bounds checking.","title":"function Sample"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getmaxdiameter","text":"inline virtual double GetMaxDiameter () const override Reimplements : shapeworks::ParticleDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma","title":"function GetMaxDiameter"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-deleteimages","text":"inline virtual void DeleteImages () override Reimplements : shapeworks::ParticleDomain::DeleteImages Reimplemented by : shapeworks::ImageDomainWithGradients::DeleteImages , shapeworks::ImageDomainWithGradN::DeleteImages Used when a domain is fixed.","title":"function DeleteImages"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-updatezerocrossingpoint","text":"inline virtual void UpdateZeroCrossingPoint () override Reimplements : shapeworks::ParticleDomain::UpdateZeroCrossingPoint","title":"function UpdateZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-getvdbimage","text":"inline openvdb :: FloatGrid :: Ptr GetVDBImage () const","title":"function GetVDBImage"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-imagedomain","text":"inline ImageDomain ()","title":"function ImageDomain"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-imagedomain_1","text":"inline virtual ~ ImageDomain ()","title":"function ~ImageDomain"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-transform","text":"inline openvdb :: math :: Transform :: Ptr transform () const","title":"function transform"},{"location":"api/Classes/classshapeworks_1_1ImageDomain.html#function-tovdbcoord","text":"inline openvdb :: Vec3R ToVDBCoord ( const PointType & p ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function ToVDBCoord"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html","text":"shapeworks::ImageDomainWithCurvature More... Inherits from shapeworks::ImageDomainWithGradN< T > , shapeworks::ImageDomainWithGradients< T > , shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImplicitSurfaceDomain< T > Public Types Name typedef ImageDomainWithGradN < T > Superclass typedef Superclass::PointType PointType typedef Superclass::ImageType ImageType typedef Superclass::VnlMatrixType VnlMatrixType Public Functions Name void SetImage ( ImageType * I, double narrow_band) virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override Protected Functions Name ImageDomainWithCurvature () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ImageDomainWithCurvature () Additional inherited members Public Types inherited from shapeworks::ImageDomainWithGradN< T > Name using std::shared_ptr< ImageDomainWithGradN > Pointer typedef Superclass::GradNType GradNType Public Functions inherited from shapeworks::ImageDomainWithGradN< T > Name virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual void DeletePartialDerivativeImages () override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradN< T > Name ImageDomainWithGradN () virtual ~ImageDomainWithGradN () Public Types inherited from shapeworks::ImageDomainWithGradients< T > Name using std::shared_ptr< ImageDomainWithGradients < T > > Pointer typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType Public Functions inherited from shapeworks::ImageDomainWithGradients< T > Name virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradients< T > Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () openvdb::VectorGrid::Ptr GetVDBGradient () Public Types inherited from shapeworks::ImageDomain< T > Name using std::shared_ptr< ImageDomain > Pointer Public Functions inherited from shapeworks::ImageDomain< T > Name virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void DeleteImages () override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Types inherited from shapeworks::ParticleRegionDomain Name using std::shared_ptr< ParticleRegionDomain > Pointer Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name typedef std::shared_ptr< ParticleDomain > Pointer using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Detailed Description template < class T > class shapeworks :: ImageDomainWithCurvature ; Public Types Documentation typedef Superclass typedef ImageDomainWithGradN < T > shapeworks :: ImageDomainWithCurvature < T >:: Superclass ; Standard class typedefs typedef PointType typedef Superclass :: PointType shapeworks :: ImageDomainWithCurvature < T >:: PointType ; typedef ImageType typedef Superclass :: ImageType shapeworks :: ImageDomainWithCurvature < T >:: ImageType ; typedef VnlMatrixType typedef Superclass :: VnlMatrixType shapeworks :: ImageDomainWithCurvature < T >:: VnlMatrixType ; Public Functions Documentation function SetImage inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound. function GetCurvature inline virtual double GetCurvature ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::GetCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceMeanCurvature inline virtual double GetSurfaceMeanCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceStdDevCurvature inline virtual double GetSurfaceStdDevCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute Protected Functions Documentation function ImageDomainWithCurvature inline ImageDomainWithCurvature () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function ~ImageDomainWithCurvature inline virtual ~ ImageDomainWithCurvature () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImageDomainWithCurvature"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#shapeworksimagedomainwithcurvature","text":"More... Inherits from shapeworks::ImageDomainWithGradN< T > , shapeworks::ImageDomainWithGradients< T > , shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImplicitSurfaceDomain< T >","title":"shapeworks::ImageDomainWithCurvature"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#public-types","text":"Name typedef ImageDomainWithGradN < T > Superclass typedef Superclass::PointType PointType typedef Superclass::ImageType ImageType typedef Superclass::VnlMatrixType VnlMatrixType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#public-functions","text":"Name void SetImage ( ImageType * I, double narrow_band) virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#protected-functions","text":"Name ImageDomainWithCurvature () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ImageDomainWithCurvature ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ImageDomainWithGradN< T > Name using std::shared_ptr< ImageDomainWithGradN > Pointer typedef Superclass::GradNType GradNType Public Functions inherited from shapeworks::ImageDomainWithGradN< T > Name virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual void DeletePartialDerivativeImages () override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradN< T > Name ImageDomainWithGradN () virtual ~ImageDomainWithGradN () Public Types inherited from shapeworks::ImageDomainWithGradients< T > Name using std::shared_ptr< ImageDomainWithGradients < T > > Pointer typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType Public Functions inherited from shapeworks::ImageDomainWithGradients< T > Name virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradients< T > Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () openvdb::VectorGrid::Ptr GetVDBGradient () Public Types inherited from shapeworks::ImageDomain< T > Name using std::shared_ptr< ImageDomain > Pointer Public Functions inherited from shapeworks::ImageDomain< T > Name virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void DeleteImages () override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Types inherited from shapeworks::ParticleRegionDomain Name using std::shared_ptr< ParticleRegionDomain > Pointer Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name typedef std::shared_ptr< ParticleDomain > Pointer using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#detailed-description","text":"template < class T > class shapeworks :: ImageDomainWithCurvature ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#typedef-superclass","text":"typedef ImageDomainWithGradN < T > shapeworks :: ImageDomainWithCurvature < T >:: Superclass ; Standard class typedefs","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#typedef-pointtype","text":"typedef Superclass :: PointType shapeworks :: ImageDomainWithCurvature < T >:: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#typedef-imagetype","text":"typedef Superclass :: ImageType shapeworks :: ImageDomainWithCurvature < T >:: ImageType ;","title":"typedef ImageType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#typedef-vnlmatrixtype","text":"typedef Superclass :: VnlMatrixType shapeworks :: ImageDomainWithCurvature < T >:: VnlMatrixType ;","title":"typedef VnlMatrixType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#function-setimage","text":"inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound.","title":"function SetImage"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#function-getcurvature","text":"inline virtual double GetCurvature ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::GetCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetCurvature"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#function-getsurfacemeancurvature","text":"inline virtual double GetSurfaceMeanCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceMeanCurvature"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#function-getsurfacestddevcurvature","text":"inline virtual double GetSurfaceStdDevCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceStdDevCurvature"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#function-imagedomainwithcurvature","text":"inline ImageDomainWithCurvature ()","title":"function ImageDomainWithCurvature"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithCurvature.html#function-imagedomainwithcurvature_1","text":"inline virtual ~ ImageDomainWithCurvature () Updated on 2023-10-24 at 22:16:01 +0000","title":"function ~ImageDomainWithCurvature"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html","text":"shapeworks::ImageDomainWithGradN More... Inherits from shapeworks::ImageDomainWithGradients< T > , shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImageDomainWithCurvature< T > Public Types Name typedef ImageDomainWithGradients < T > Superclass using std::shared_ptr< ImageDomainWithGradN > Pointer typedef Superclass::PointType PointType typedef Superclass::ImageType ImageType typedef Superclass::GradNType GradNType typedef Superclass::GradNType VnlMatrixType Public Functions Name void SetImage ( ImageType * I, double narrow_band) virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual void DeletePartialDerivativeImages () override virtual void DeleteImages () override Protected Functions Name ImageDomainWithGradN () virtual ~ImageDomainWithGradN () void PrintSelf (std::ostream & os, itk::Indent indent) const Additional inherited members Public Types inherited from shapeworks::ImageDomainWithGradients< T > Name typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType Public Functions inherited from shapeworks::ImageDomainWithGradients< T > Name virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override Protected Functions inherited from shapeworks::ImageDomainWithGradients< T > Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () openvdb::VectorGrid::Ptr GetVDBGradient () Public Functions inherited from shapeworks::ImageDomain< T > Name virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Detailed Description template < class T > class shapeworks :: ImageDomainWithGradN ; Public Types Documentation typedef Superclass typedef ImageDomainWithGradients < T > shapeworks :: ImageDomainWithGradN < T >:: Superclass ; Standard class typedefs using Pointer using shapeworks :: ImageDomainWithGradN < T >:: Pointer = std :: shared_ptr < ImageDomainWithGradN > ; typedef PointType typedef Superclass :: PointType shapeworks :: ImageDomainWithGradN < T >:: PointType ; Point type of the domain (not necessarily of the image). typedef ImageType typedef Superclass :: ImageType shapeworks :: ImageDomainWithGradN < T >:: ImageType ; typedef GradNType typedef Superclass :: GradNType shapeworks :: ImageDomainWithGradN < T >:: GradNType ; typedef VnlMatrixType typedef Superclass :: GradNType shapeworks :: ImageDomainWithGradN < T >:: VnlMatrixType ; Public Functions Documentation function SetImage inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound. function SampleGradNAtPoint inline virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradNAtPoint Sample the GradN at a point. This method performs no bounds checking. To check bounds, use IsInsideBuffer. SampleGradN returns a vnl matrix of size VDimension x VDimension. function DeletePartialDerivativeImages inline virtual void DeletePartialDerivativeImages () override Reimplements : shapeworks::ParticleDomain::DeletePartialDerivativeImages function DeleteImages inline virtual void DeleteImages () override Reimplements : shapeworks::ImageDomainWithGradients::DeleteImages Used when a domain is fixed. Protected Functions Documentation function ImageDomainWithGradN inline ImageDomainWithGradN () function ~ImageDomainWithGradN inline virtual ~ ImageDomainWithGradN () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImageDomainWithGradN"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#shapeworksimagedomainwithgradn","text":"More... Inherits from shapeworks::ImageDomainWithGradients< T > , shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImageDomainWithCurvature< T >","title":"shapeworks::ImageDomainWithGradN"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#public-types","text":"Name typedef ImageDomainWithGradients < T > Superclass using std::shared_ptr< ImageDomainWithGradN > Pointer typedef Superclass::PointType PointType typedef Superclass::ImageType ImageType typedef Superclass::GradNType GradNType typedef Superclass::GradNType VnlMatrixType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#public-functions","text":"Name void SetImage ( ImageType * I, double narrow_band) virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual void DeletePartialDerivativeImages () override virtual void DeleteImages () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#protected-functions","text":"Name ImageDomainWithGradN () virtual ~ImageDomainWithGradN () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ImageDomainWithGradients< T > Name typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType Public Functions inherited from shapeworks::ImageDomainWithGradients< T > Name virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override Protected Functions inherited from shapeworks::ImageDomainWithGradients< T > Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () openvdb::VectorGrid::Ptr GetVDBGradient () Public Functions inherited from shapeworks::ImageDomain< T > Name virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#detailed-description","text":"template < class T > class shapeworks :: ImageDomainWithGradN ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#typedef-superclass","text":"typedef ImageDomainWithGradients < T > shapeworks :: ImageDomainWithGradN < T >:: Superclass ; Standard class typedefs","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#using-pointer","text":"using shapeworks :: ImageDomainWithGradN < T >:: Pointer = std :: shared_ptr < ImageDomainWithGradN > ;","title":"using Pointer"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#typedef-pointtype","text":"typedef Superclass :: PointType shapeworks :: ImageDomainWithGradN < T >:: PointType ; Point type of the domain (not necessarily of the image).","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#typedef-imagetype","text":"typedef Superclass :: ImageType shapeworks :: ImageDomainWithGradN < T >:: ImageType ;","title":"typedef ImageType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#typedef-gradntype","text":"typedef Superclass :: GradNType shapeworks :: ImageDomainWithGradN < T >:: GradNType ;","title":"typedef GradNType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#typedef-vnlmatrixtype","text":"typedef Superclass :: GradNType shapeworks :: ImageDomainWithGradN < T >:: VnlMatrixType ;","title":"typedef VnlMatrixType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#function-setimage","text":"inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound.","title":"function SetImage"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#function-samplegradnatpoint","text":"inline virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradNAtPoint Sample the GradN at a point. This method performs no bounds checking. To check bounds, use IsInsideBuffer. SampleGradN returns a vnl matrix of size VDimension x VDimension.","title":"function SampleGradNAtPoint"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#function-deletepartialderivativeimages","text":"inline virtual void DeletePartialDerivativeImages () override Reimplements : shapeworks::ParticleDomain::DeletePartialDerivativeImages","title":"function DeletePartialDerivativeImages"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#function-deleteimages","text":"inline virtual void DeleteImages () override Reimplements : shapeworks::ImageDomainWithGradients::DeleteImages Used when a domain is fixed.","title":"function DeleteImages"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#function-imagedomainwithgradn","text":"inline ImageDomainWithGradN ()","title":"function ImageDomainWithGradN"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#function-imagedomainwithgradn_1","text":"inline virtual ~ ImageDomainWithGradN ()","title":"function ~ImageDomainWithGradN"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradN.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html","text":"shapeworks::ImageDomainWithGradients More... Inherits from shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImageDomainWithGradN< T > Public Types Name using std::shared_ptr< ImageDomainWithGradients < T > > Pointer typedef ImageDomain < T >:: PointType PointType typedef ImageDomain < T >:: ImageType ImageType typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType Public Functions Name void SetImage ( ImageType * I, double narrow_band) virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override virtual void DeleteImages () override Protected Functions Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () void PrintSelf (std::ostream & os, itk::Indent indent) const openvdb::VectorGrid::Ptr GetVDBGradient () Additional inherited members Public Functions inherited from shapeworks::ImageDomain< T > Name virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Detailed Description template < class T > class shapeworks :: ImageDomainWithGradients ; Public Types Documentation using Pointer using shapeworks :: ImageDomainWithGradients < T >:: Pointer = std :: shared_ptr < ImageDomainWithGradients < T > > ; typedef PointType typedef ImageDomain < T >:: PointType shapeworks :: ImageDomainWithGradients < T >:: PointType ; Point type of the domain (not necessarily of the image). typedef ImageType typedef ImageDomain < T >:: ImageType shapeworks :: ImageDomainWithGradients < T >:: ImageType ; typedef VectorType typedef itk :: FixedArray < T , DIMENSION > shapeworks :: ImageDomainWithGradients < T >:: VectorType ; typedef VnlVectorType typedef vnl_vector_fixed < T , DIMENSION > shapeworks :: ImageDomainWithGradients < T >:: VnlVectorType ; Public Functions Documentation function SetImage inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound. function SampleGradientAtPoint inline virtual vnl_vector_fixed < float , DIMENSION > SampleGradientAtPoint ( const PointType & p , int idx ) const Reimplements : shapeworks::ParticleDomain::SampleGradientAtPoint function SampleNormalAtPoint inline virtual vnl_vector_fixed < float , DIMENSION > SampleNormalAtPoint ( const PointType & p , int idx ) const Reimplements : shapeworks::ParticleDomain::SampleNormalAtPoint function ProjectVectorToSurfaceTangent inline vnl_vector_fixed < double , DIMENSION > ProjectVectorToSurfaceTangent ( vnl_vector_fixed < double , DIMENSION > & gradE , const PointType & pos , int idx ) const override This method is called by an optimizer after a call to Evaluate and may be used to apply any constraints the resulting vector, such as a projection to the surface tangent plane. Returns true if the gradient was modified. function DeleteImages inline virtual void DeleteImages () override Reimplements : shapeworks::ImageDomain::DeleteImages Reimplemented by : shapeworks::ImageDomainWithGradN::DeleteImages Used when a domain is fixed. Protected Functions Documentation function ImageDomainWithGradients inline ImageDomainWithGradients () function ~ImageDomainWithGradients inline virtual ~ ImageDomainWithGradients () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function GetVDBGradient inline openvdb :: VectorGrid :: Ptr GetVDBGradient () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImageDomainWithGradients"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#shapeworksimagedomainwithgradients","text":"More... Inherits from shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Inherited by shapeworks::ImageDomainWithGradN< T >","title":"shapeworks::ImageDomainWithGradients"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#public-types","text":"Name using std::shared_ptr< ImageDomainWithGradients < T > > Pointer typedef ImageDomain < T >:: PointType PointType typedef ImageDomain < T >:: ImageType ImageType typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#public-functions","text":"Name void SetImage ( ImageType * I, double narrow_band) virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override virtual void DeleteImages () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#protected-functions","text":"Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () void PrintSelf (std::ostream & os, itk::Indent indent) const openvdb::VectorGrid::Ptr GetVDBGradient ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::ImageDomain< T > Name virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#detailed-description","text":"template < class T > class shapeworks :: ImageDomainWithGradients ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#using-pointer","text":"using shapeworks :: ImageDomainWithGradients < T >:: Pointer = std :: shared_ptr < ImageDomainWithGradients < T > > ;","title":"using Pointer"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#typedef-pointtype","text":"typedef ImageDomain < T >:: PointType shapeworks :: ImageDomainWithGradients < T >:: PointType ; Point type of the domain (not necessarily of the image).","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#typedef-imagetype","text":"typedef ImageDomain < T >:: ImageType shapeworks :: ImageDomainWithGradients < T >:: ImageType ;","title":"typedef ImageType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#typedef-vectortype","text":"typedef itk :: FixedArray < T , DIMENSION > shapeworks :: ImageDomainWithGradients < T >:: VectorType ;","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#typedef-vnlvectortype","text":"typedef vnl_vector_fixed < T , DIMENSION > shapeworks :: ImageDomainWithGradients < T >:: VnlVectorType ;","title":"typedef VnlVectorType"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-setimage","text":"inline void SetImage ( ImageType * I , double narrow_band ) Set/Get the itk::Image specifying the particle domain. The set method modifies the parent class LowerBound and UpperBound.","title":"function SetImage"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-samplegradientatpoint","text":"inline virtual vnl_vector_fixed < float , DIMENSION > SampleGradientAtPoint ( const PointType & p , int idx ) const Reimplements : shapeworks::ParticleDomain::SampleGradientAtPoint","title":"function SampleGradientAtPoint"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-samplenormalatpoint","text":"inline virtual vnl_vector_fixed < float , DIMENSION > SampleNormalAtPoint ( const PointType & p , int idx ) const Reimplements : shapeworks::ParticleDomain::SampleNormalAtPoint","title":"function SampleNormalAtPoint"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-projectvectortosurfacetangent","text":"inline vnl_vector_fixed < double , DIMENSION > ProjectVectorToSurfaceTangent ( vnl_vector_fixed < double , DIMENSION > & gradE , const PointType & pos , int idx ) const override This method is called by an optimizer after a call to Evaluate and may be used to apply any constraints the resulting vector, such as a projection to the surface tangent plane. Returns true if the gradient was modified.","title":"function ProjectVectorToSurfaceTangent"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-deleteimages","text":"inline virtual void DeleteImages () override Reimplements : shapeworks::ImageDomain::DeleteImages Reimplemented by : shapeworks::ImageDomainWithGradN::DeleteImages Used when a domain is fixed.","title":"function DeleteImages"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-imagedomainwithgradients","text":"inline ImageDomainWithGradients ()","title":"function ImageDomainWithGradients"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-imagedomainwithgradients_1","text":"inline virtual ~ ImageDomainWithGradients ()","title":"function ~ImageDomainWithGradients"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ImageDomainWithGradients.html#function-getvdbgradient","text":"inline openvdb :: VectorGrid :: Ptr GetVDBGradient () Updated on 2023-10-24 at 22:16:01 +0000","title":"function GetVDBGradient"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html","text":"shapeworks::ImageLabel An extention of QLabel especially for scaled images. #include Inherits from QLabel Public Functions Name ImageLabel (QWidget * parent) void setPixmap (const QPixmap & pixmap) Protected Functions Name void resizeEvent (QResizeEvent * reisze_event) override Public Functions Documentation function ImageLabel inline ImageLabel ( QWidget * parent ) function setPixmap inline void setPixmap ( const QPixmap & pixmap ) Protected Functions Documentation function resizeEvent void resizeEvent ( QResizeEvent * reisze_event ) override Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImageLabel"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#shapeworksimagelabel","text":"An extention of QLabel especially for scaled images. #include Inherits from QLabel","title":"shapeworks::ImageLabel"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#public-functions","text":"Name ImageLabel (QWidget * parent) void setPixmap (const QPixmap & pixmap)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#protected-functions","text":"Name void resizeEvent (QResizeEvent * reisze_event) override","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#function-imagelabel","text":"inline ImageLabel ( QWidget * parent )","title":"function ImageLabel"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#function-setpixmap","text":"inline void setPixmap ( const QPixmap & pixmap )","title":"function setPixmap"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageLabel.html#function-resizeevent","text":"void resizeEvent ( QResizeEvent * reisze_event ) override Updated on 2023-10-24 at 22:16:01 +0000","title":"function resizeEvent"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html","text":"shapeworks::ImageUtils Helper functions for image. #include Public Types Name using itk::ThinPlateSplineKernelTransform< double, 3 > TPSTransform computes a thin plate spline (TSP) transform from the source to the target landmarks (in the given files) using every stride points Public Functions Name PhysicalRegion boundingBox (const std::vector< std::string > & filenames, Image::PixelType isoValue =1.0) calculate bounding box for images using the region of data <= the given isoValue PhysicalRegion boundingBox (const std::vector< std::reference_wrapper< const Image > > & images, Image::PixelType isoValue =1.0) calculate bounding box for shapework images using the region of data <= the given isoValue TPSTransform::Pointer createWarpTransform (const std::string & source_landmarks_file, const std::string & target_landmarks_file, const int stride =1) Public Types Documentation using TPSTransform using shapeworks :: ImageUtils :: TPSTransform = itk :: ThinPlateSplineKernelTransform < double , 3 > ; computes a thin plate spline (TSP) transform from the source to the target landmarks (in the given files) using every stride points Public Functions Documentation function boundingBox static PhysicalRegion boundingBox ( const std :: vector < std :: string > & filenames , Image :: PixelType isoValue = 1.0 ) calculate bounding box for images using the region of data <= the given isoValue function boundingBox static PhysicalRegion boundingBox ( const std :: vector < std :: reference_wrapper < const Image > > & images , Image :: PixelType isoValue = 1.0 ) calculate bounding box for shapework images using the region of data <= the given isoValue function createWarpTransform static TPSTransform :: Pointer createWarpTransform ( const std :: string & source_landmarks_file , const std :: string & target_landmarks_file , const int stride = 1 ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImageUtils"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#shapeworksimageutils","text":"Helper functions for image. #include ","title":"shapeworks::ImageUtils"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#public-types","text":"Name using itk::ThinPlateSplineKernelTransform< double, 3 > TPSTransform computes a thin plate spline (TSP) transform from the source to the target landmarks (in the given files) using every stride points","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#public-functions","text":"Name PhysicalRegion boundingBox (const std::vector< std::string > & filenames, Image::PixelType isoValue =1.0) calculate bounding box for images using the region of data <= the given isoValue PhysicalRegion boundingBox (const std::vector< std::reference_wrapper< const Image > > & images, Image::PixelType isoValue =1.0) calculate bounding box for shapework images using the region of data <= the given isoValue TPSTransform::Pointer createWarpTransform (const std::string & source_landmarks_file, const std::string & target_landmarks_file, const int stride =1)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#using-tpstransform","text":"using shapeworks :: ImageUtils :: TPSTransform = itk :: ThinPlateSplineKernelTransform < double , 3 > ; computes a thin plate spline (TSP) transform from the source to the target landmarks (in the given files) using every stride points","title":"using TPSTransform"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#function-boundingbox","text":"static PhysicalRegion boundingBox ( const std :: vector < std :: string > & filenames , Image :: PixelType isoValue = 1.0 ) calculate bounding box for images using the region of data <= the given isoValue","title":"function boundingBox"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#function-boundingbox_1","text":"static PhysicalRegion boundingBox ( const std :: vector < std :: reference_wrapper < const Image > > & images , Image :: PixelType isoValue = 1.0 ) calculate bounding box for shapework images using the region of data <= the given isoValue","title":"function boundingBox"},{"location":"api/Classes/classshapeworks_1_1ImageUtils.html#function-createwarptransform","text":"static TPSTransform :: Pointer createWarpTransform ( const std :: string & source_landmarks_file , const std :: string & target_landmarks_file , const int stride = 1 ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function createWarpTransform"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html","text":"shapeworks::ImplicitSurfaceDomain More... Inherits from shapeworks::ImageDomainWithCurvature< T > , shapeworks::ImageDomainWithGradN< T > , shapeworks::ImageDomainWithGradients< T > , shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain Public Types Name typedef ImageDomainWithCurvature < T > Superclass typedef std::shared_ptr< ImplicitSurfaceDomain > Pointer typedef Superclass::ImageType ImageType typedef Superclass::PointType PointType Public Functions Name virtual void SetTolerance (const T _Tolerance) virtual T GetTolerance () virtual shapeworks::DomainType GetDomainType () const override virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const override PointType UpdateParticlePosition (const PointType & point, int idx, vnl_vector_fixed< double, DIMENSION > & update) const override virtual PointType GetZeroCrossingPoint () const override ImplicitSurfaceDomain () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ImplicitSurfaceDomain () Additional inherited members Public Types inherited from shapeworks::ImageDomainWithCurvature< T > Name typedef Superclass::VnlMatrixType VnlMatrixType Public Functions inherited from shapeworks::ImageDomainWithCurvature< T > Name void SetImage ( ImageType * I, double narrow_band) virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override Protected Functions inherited from shapeworks::ImageDomainWithCurvature< T > Name ImageDomainWithCurvature () virtual ~ImageDomainWithCurvature () Public Types inherited from shapeworks::ImageDomainWithGradN< T > Name typedef Superclass::GradNType GradNType typedef Superclass::GradNType VnlMatrixType Public Functions inherited from shapeworks::ImageDomainWithGradN< T > Name void SetImage ( ImageType * I, double narrow_band) virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual void DeletePartialDerivativeImages () override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradN< T > Name ImageDomainWithGradN () virtual ~ImageDomainWithGradN () Public Types inherited from shapeworks::ImageDomainWithGradients< T > Name typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType Public Functions inherited from shapeworks::ImageDomainWithGradients< T > Name void SetImage ( ImageType * I, double narrow_band) virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradients< T > Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () openvdb::VectorGrid::Ptr GetVDBGradient () Public Functions inherited from shapeworks::ImageDomain< T > Name void SetImage ( ImageType * I, double narrow_band) virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void DeleteImages () override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Detailed Description template < class T > class shapeworks :: ImplicitSurfaceDomain ; Public Types Documentation typedef Superclass typedef ImageDomainWithCurvature < T > shapeworks :: ImplicitSurfaceDomain < T >:: Superclass ; Standard class typedefs typedef Pointer typedef std :: shared_ptr < ImplicitSurfaceDomain > shapeworks :: ImplicitSurfaceDomain < T >:: Pointer ; typedef ImageType typedef Superclass :: ImageType shapeworks :: ImplicitSurfaceDomain < T >:: ImageType ; typedef PointType typedef Superclass :: PointType shapeworks :: ImplicitSurfaceDomain < T >:: PointType ; Public Functions Documentation function SetTolerance inline virtual void SetTolerance ( const T _Tolerance ) Set/Get the precision of the projection operation. The resulting projection will be within the specified tolerance. function GetTolerance inline virtual T GetTolerance () function GetDomainType inline virtual shapeworks :: DomainType GetDomainType () const override Reimplements : shapeworks::ParticleDomain::GetDomainType function ApplyConstraints inline virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const override Reimplements : shapeworks::ParticleDomain::ApplyConstraints Apply any constraints to the given point location. This method constrains points to lie within the given domain and on a given implicit surface. If the point is not already on the surface, it is projected back to the surface using a Newton-Raphson iteration. IMPORTANT: This method returns the true/false value of its superclass, and does not indicate changes only due to projection. This is done for speed: we typically will only want to know if a point tried to move outside of the bounding box domain, since movement off the surface will be very common. Consider subclassing this method to add a check for significant differences in the input and output points. function UpdateParticlePosition inline PointType UpdateParticlePosition ( const PointType & point , int idx , vnl_vector_fixed < double , DIMENSION > & update ) const override function GetZeroCrossingPoint inline virtual PointType GetZeroCrossingPoint () const override Reimplements : shapeworks::ParticleDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle. function ImplicitSurfaceDomain inline ImplicitSurfaceDomain () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function ~ImplicitSurfaceDomain inline virtual ~ ImplicitSurfaceDomain () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ImplicitSurfaceDomain"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#shapeworksimplicitsurfacedomain","text":"More... Inherits from shapeworks::ImageDomainWithCurvature< T > , shapeworks::ImageDomainWithGradN< T > , shapeworks::ImageDomainWithGradients< T > , shapeworks::ImageDomain< T > , shapeworks::ParticleRegionDomain , shapeworks::ParticleDomain","title":"shapeworks::ImplicitSurfaceDomain"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#public-types","text":"Name typedef ImageDomainWithCurvature < T > Superclass typedef std::shared_ptr< ImplicitSurfaceDomain > Pointer typedef Superclass::ImageType ImageType typedef Superclass::PointType PointType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#public-functions","text":"Name virtual void SetTolerance (const T _Tolerance) virtual T GetTolerance () virtual shapeworks::DomainType GetDomainType () const override virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const override PointType UpdateParticlePosition (const PointType & point, int idx, vnl_vector_fixed< double, DIMENSION > & update) const override virtual PointType GetZeroCrossingPoint () const override ImplicitSurfaceDomain () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ImplicitSurfaceDomain ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ImageDomainWithCurvature< T > Name typedef Superclass::VnlMatrixType VnlMatrixType Public Functions inherited from shapeworks::ImageDomainWithCurvature< T > Name void SetImage ( ImageType * I, double narrow_band) virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override Protected Functions inherited from shapeworks::ImageDomainWithCurvature< T > Name ImageDomainWithCurvature () virtual ~ImageDomainWithCurvature () Public Types inherited from shapeworks::ImageDomainWithGradN< T > Name typedef Superclass::GradNType GradNType typedef Superclass::GradNType VnlMatrixType Public Functions inherited from shapeworks::ImageDomainWithGradN< T > Name void SetImage ( ImageType * I, double narrow_band) virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override virtual void DeletePartialDerivativeImages () override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradN< T > Name ImageDomainWithGradN () virtual ~ImageDomainWithGradN () Public Types inherited from shapeworks::ImageDomainWithGradients< T > Name typedef itk::FixedArray< T, DIMENSION > VectorType typedef vnl_vector_fixed< T, DIMENSION > VnlVectorType Public Functions inherited from shapeworks::ImageDomainWithGradients< T > Name void SetImage ( ImageType * I, double narrow_band) virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & p, int idx) const virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & p, int idx) const vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (vnl_vector_fixed< double, DIMENSION > & gradE, const PointType & pos, int idx) const override virtual void DeleteImages () override Protected Functions inherited from shapeworks::ImageDomainWithGradients< T > Name ImageDomainWithGradients () virtual ~ImageDomainWithGradients () openvdb::VectorGrid::Ptr GetVDBGradient () Public Functions inherited from shapeworks::ImageDomain< T > Name void SetImage ( ImageType * I, double narrow_band) virtual double GetSurfaceArea () const override PointType GetOrigin () const ImageType::SizeType GetSize () const ImageType::SpacingType GetSpacing () const ImageType::RegionType::IndexType GetIndex () const virtual PointType GetValidLocationNear ( PointType p) const override T Sample (const PointType & p) const virtual double GetMaxDiameter () const override virtual void DeleteImages () override virtual void UpdateZeroCrossingPoint () override Protected Functions inherited from shapeworks::ImageDomain< T > Name openvdb::FloatGrid::Ptr GetVDBImage () const ImageDomain () virtual ~ImageDomain () openvdb::math::Transform::Ptr transform () const openvdb::Vec3R ToVDBCoord (const PointType & p) const Public Functions inherited from shapeworks::ParticleRegionDomain Name virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions inherited from shapeworks::ParticleRegionDomain Name ParticleRegionDomain () virtual ~ParticleRegionDomain () bool IsInsideBuffer (const PointType & p) const Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#detailed-description","text":"template < class T > class shapeworks :: ImplicitSurfaceDomain ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#typedef-superclass","text":"typedef ImageDomainWithCurvature < T > shapeworks :: ImplicitSurfaceDomain < T >:: Superclass ; Standard class typedefs","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#typedef-pointer","text":"typedef std :: shared_ptr < ImplicitSurfaceDomain > shapeworks :: ImplicitSurfaceDomain < T >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#typedef-imagetype","text":"typedef Superclass :: ImageType shapeworks :: ImplicitSurfaceDomain < T >:: ImageType ;","title":"typedef ImageType"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#typedef-pointtype","text":"typedef Superclass :: PointType shapeworks :: ImplicitSurfaceDomain < T >:: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-settolerance","text":"inline virtual void SetTolerance ( const T _Tolerance ) Set/Get the precision of the projection operation. The resulting projection will be within the specified tolerance.","title":"function SetTolerance"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-gettolerance","text":"inline virtual T GetTolerance ()","title":"function GetTolerance"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-getdomaintype","text":"inline virtual shapeworks :: DomainType GetDomainType () const override Reimplements : shapeworks::ParticleDomain::GetDomainType","title":"function GetDomainType"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-applyconstraints","text":"inline virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const override Reimplements : shapeworks::ParticleDomain::ApplyConstraints Apply any constraints to the given point location. This method constrains points to lie within the given domain and on a given implicit surface. If the point is not already on the surface, it is projected back to the surface using a Newton-Raphson iteration. IMPORTANT: This method returns the true/false value of its superclass, and does not indicate changes only due to projection. This is done for speed: we typically will only want to know if a point tried to move outside of the bounding box domain, since movement off the surface will be very common. Consider subclassing this method to add a check for significant differences in the input and output points.","title":"function ApplyConstraints"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-updateparticleposition","text":"inline PointType UpdateParticlePosition ( const PointType & point , int idx , vnl_vector_fixed < double , DIMENSION > & update ) const override","title":"function UpdateParticlePosition"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-getzerocrossingpoint","text":"inline virtual PointType GetZeroCrossingPoint () const override Reimplements : shapeworks::ParticleDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle.","title":"function GetZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-implicitsurfacedomain","text":"inline ImplicitSurfaceDomain ()","title":"function ImplicitSurfaceDomain"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ImplicitSurfaceDomain.html#function-implicitsurfacedomain_1","text":"inline virtual ~ ImplicitSurfaceDomain () Updated on 2023-10-24 at 22:16:01 +0000","title":"function ~ImplicitSurfaceDomain"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html","text":"shapeworks::IndexRegion Indices into a 3d region of memory (can be negative, e.g., for the purpose of padding an image) #include Public Functions Name IndexRegion () =default IndexRegion (const IndexRegion & ) =default IndexRegion (const Dims & dims) IndexRegion (const Coord & _min, const Coord & _max) bool operator== (const IndexRegion & other) const bool valid () const verified min/max do not create an inverted or an empty region Coord origin () const Dims size () const IndexRegion & pad (int padding) uniformly grows or shrinks the region by the specified amount Public Attributes Name Coord min Coord max Public Functions Documentation function IndexRegion IndexRegion () = default function IndexRegion IndexRegion ( const IndexRegion & ) = default function IndexRegion inline IndexRegion ( const Dims & dims ) function IndexRegion inline IndexRegion ( const Coord & _min , const Coord & _max ) function operator== inline bool operator == ( const IndexRegion & other ) const function valid inline bool valid () const verified min/max do not create an inverted or an empty region function origin inline Coord origin () const function size inline Dims size () const function pad IndexRegion & pad ( int padding ) uniformly grows or shrinks the region by the specified amount Public Attributes Documentation variable min Coord min { 1000000000 , 1000000000 , 1000000000 }; variable max Coord max { -1000000000 , -1000000000 , -1000000000 }; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::IndexRegion"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#shapeworksindexregion","text":"Indices into a 3d region of memory (can be negative, e.g., for the purpose of padding an image) #include ","title":"shapeworks::IndexRegion"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#public-functions","text":"Name IndexRegion () =default IndexRegion (const IndexRegion & ) =default IndexRegion (const Dims & dims) IndexRegion (const Coord & _min, const Coord & _max) bool operator== (const IndexRegion & other) const bool valid () const verified min/max do not create an inverted or an empty region Coord origin () const Dims size () const IndexRegion & pad (int padding) uniformly grows or shrinks the region by the specified amount","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#public-attributes","text":"Name Coord min Coord max","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-indexregion","text":"IndexRegion () = default","title":"function IndexRegion"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-indexregion_1","text":"IndexRegion ( const IndexRegion & ) = default","title":"function IndexRegion"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-indexregion_2","text":"inline IndexRegion ( const Dims & dims )","title":"function IndexRegion"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-indexregion_3","text":"inline IndexRegion ( const Coord & _min , const Coord & _max )","title":"function IndexRegion"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-operator","text":"inline bool operator == ( const IndexRegion & other ) const","title":"function operator=="},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-valid","text":"inline bool valid () const verified min/max do not create an inverted or an empty region","title":"function valid"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-origin","text":"inline Coord origin () const","title":"function origin"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-size","text":"inline Dims size () const","title":"function size"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#function-pad","text":"IndexRegion & pad ( int padding ) uniformly grows or shrinks the region by the specified amount","title":"function pad"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#variable-min","text":"Coord min { 1000000000 , 1000000000 , 1000000000 };","title":"variable min"},{"location":"api/Classes/classshapeworks_1_1IndexRegion.html#variable-max","text":"Coord max { -1000000000 , -1000000000 , -1000000000 }; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable max"},{"location":"api/Classes/classshapeworks_1_1Job.html","text":"shapeworks::Job Inherits from QObject Inherited by shapeworks::DeepSSMJob , shapeworks::GroupPvalueJob , shapeworks::NetworkAnalysisJob , shapeworks::ParticleAreaJob , shapeworks::ParticleNormalEvaluationJob , shapeworks::ShapeEvaluationJob , shapeworks::StatsGroupLDAJob Public Signals Name void progress (double ) void finished () Public Functions Name Job () virtual ~Job () virtual void run () =0 run the job virtual QString name () =0 get the name of the job virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Public Signals Documentation signal progress void progress ( double ) signal finished void finished () Public Functions Documentation function Job Job () function ~Job virtual ~ Job () function run virtual void run () = 0 run the job Reimplemented by : shapeworks::ShapeEvaluationJob::run , shapeworks::DeepSSMJob::run , shapeworks::GroupPvalueJob::run , shapeworks::NetworkAnalysisJob::run , shapeworks::ParticleAreaJob::run , shapeworks::ParticleNormalEvaluationJob::run , shapeworks::StatsGroupLDAJob::run function name virtual QString name () = 0 get the name of the job Reimplemented by : shapeworks::ShapeEvaluationJob::name , shapeworks::DeepSSMJob::name , shapeworks::GroupPvalueJob::name , shapeworks::NetworkAnalysisJob::name , shapeworks::ParticleAreaJob::name , shapeworks::ParticleNormalEvaluationJob::name , shapeworks::StatsGroupLDAJob::name function get_completion_message virtual QString get_completion_message () get a message to display when the job is complete function get_abort_message virtual QString get_abort_message () get a message to display when the job is aborted function start_timer void start_timer () start the timer function timer_elapsed qint64 timer_elapsed () how much time has elapsed since the timer was started function set_complete inline void set_complete ( bool complete ) set the job as complete function is_complete inline bool is_complete () const is the job complete? function abort inline void abort () abort the job function is_aborted inline bool is_aborted () const was the job aborted? Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Job"},{"location":"api/Classes/classshapeworks_1_1Job.html#shapeworksjob","text":"Inherits from QObject Inherited by shapeworks::DeepSSMJob , shapeworks::GroupPvalueJob , shapeworks::NetworkAnalysisJob , shapeworks::ParticleAreaJob , shapeworks::ParticleNormalEvaluationJob , shapeworks::ShapeEvaluationJob , shapeworks::StatsGroupLDAJob","title":"shapeworks::Job"},{"location":"api/Classes/classshapeworks_1_1Job.html#public-signals","text":"Name void progress (double ) void finished ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1Job.html#public-functions","text":"Name Job () virtual ~Job () virtual void run () =0 run the job virtual QString name () =0 get the name of the job virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Job.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1Job.html#signal-progress","text":"void progress ( double )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1Job.html#signal-finished","text":"void finished ()","title":"signal finished"},{"location":"api/Classes/classshapeworks_1_1Job.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-job","text":"Job ()","title":"function Job"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-job_1","text":"virtual ~ Job ()","title":"function ~Job"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-run","text":"virtual void run () = 0 run the job Reimplemented by : shapeworks::ShapeEvaluationJob::run , shapeworks::DeepSSMJob::run , shapeworks::GroupPvalueJob::run , shapeworks::NetworkAnalysisJob::run , shapeworks::ParticleAreaJob::run , shapeworks::ParticleNormalEvaluationJob::run , shapeworks::StatsGroupLDAJob::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-name","text":"virtual QString name () = 0 get the name of the job Reimplemented by : shapeworks::ShapeEvaluationJob::name , shapeworks::DeepSSMJob::name , shapeworks::GroupPvalueJob::name , shapeworks::NetworkAnalysisJob::name , shapeworks::ParticleAreaJob::name , shapeworks::ParticleNormalEvaluationJob::name , shapeworks::StatsGroupLDAJob::name","title":"function name"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-get_completion_message","text":"virtual QString get_completion_message () get a message to display when the job is complete","title":"function get_completion_message"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-get_abort_message","text":"virtual QString get_abort_message () get a message to display when the job is aborted","title":"function get_abort_message"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-start_timer","text":"void start_timer () start the timer","title":"function start_timer"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-timer_elapsed","text":"qint64 timer_elapsed () how much time has elapsed since the timer was started","title":"function timer_elapsed"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-set_complete","text":"inline void set_complete ( bool complete ) set the job as complete","title":"function set_complete"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-is_complete","text":"inline bool is_complete () const is the job complete?","title":"function is_complete"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-abort","text":"inline void abort () abort the job","title":"function abort"},{"location":"api/Classes/classshapeworks_1_1Job.html#function-is_aborted","text":"inline bool is_aborted () const was the job aborted? Updated on 2023-10-24 at 22:16:01 +0000","title":"function is_aborted"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html","text":"shapeworks::JsonProjectReader JSON file format reader for Project . More... #include Inherits from shapeworks::ProjectReader Public Functions Name JsonProjectReader ( Project & project) ~JsonProjectReader () virtual bool read_project (std::string filename) override Read a project from a file. virtual StringMap get_parameters (std::string name) override virtual StringMultiMap get_multi_parameters (std::string name) override Additional inherited members Public Types inherited from shapeworks::ProjectReader Name using project::types::StringMapList StringMapList using project::types::StringMap StringMap using project::types::StringList StringList using project::types::StringMultiMap StringMultiMap Public Functions inherited from shapeworks::ProjectReader Name ProjectReader ( Project & project) Constructor. virtual ~ProjectReader () =default Destructor. Protected Functions inherited from shapeworks::ProjectReader Name void load_subjects (StringMapList list) Load subjects from string map list. void load_parameters () void load_parameter (std::string name, StringMap map) void load_landmark_definitions (StringMapList list) bool contains (StringMap map, std::string key) StringList get_keys (StringMap map) Protected Attributes inherited from shapeworks::ProjectReader Name Project & project_ Detailed Description class shapeworks :: JsonProjectReader ; JSON file format reader for Project . This class enables reader of Project objects from JSON file format Public Functions Documentation function JsonProjectReader JsonProjectReader ( Project & project ) function ~JsonProjectReader ~ JsonProjectReader () function read_project virtual bool read_project ( std :: string filename ) override Read a project from a file. Reimplements : shapeworks::ProjectReader::read_project function get_parameters virtual StringMap get_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_parameters function get_multi_parameters virtual StringMultiMap get_multi_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_multi_parameters Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::JsonProjectReader"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#shapeworksjsonprojectreader","text":"JSON file format reader for Project . More... #include Inherits from shapeworks::ProjectReader","title":"shapeworks::JsonProjectReader"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#public-functions","text":"Name JsonProjectReader ( Project & project) ~JsonProjectReader () virtual bool read_project (std::string filename) override Read a project from a file. virtual StringMap get_parameters (std::string name) override virtual StringMultiMap get_multi_parameters (std::string name) override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ProjectReader Name using project::types::StringMapList StringMapList using project::types::StringMap StringMap using project::types::StringList StringList using project::types::StringMultiMap StringMultiMap Public Functions inherited from shapeworks::ProjectReader Name ProjectReader ( Project & project) Constructor. virtual ~ProjectReader () =default Destructor. Protected Functions inherited from shapeworks::ProjectReader Name void load_subjects (StringMapList list) Load subjects from string map list. void load_parameters () void load_parameter (std::string name, StringMap map) void load_landmark_definitions (StringMapList list) bool contains (StringMap map, std::string key) StringList get_keys (StringMap map) Protected Attributes inherited from shapeworks::ProjectReader Name Project & project_","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#detailed-description","text":"class shapeworks :: JsonProjectReader ; JSON file format reader for Project . This class enables reader of Project objects from JSON file format","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#function-jsonprojectreader","text":"JsonProjectReader ( Project & project )","title":"function JsonProjectReader"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#function-jsonprojectreader_1","text":"~ JsonProjectReader ()","title":"function ~JsonProjectReader"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#function-read_project","text":"virtual bool read_project ( std :: string filename ) override Read a project from a file. Reimplements : shapeworks::ProjectReader::read_project","title":"function read_project"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#function-get_parameters","text":"virtual StringMap get_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_parameters","title":"function get_parameters"},{"location":"api/Classes/classshapeworks_1_1JsonProjectReader.html#function-get_multi_parameters","text":"virtual StringMultiMap get_multi_parameters ( std :: string name ) override Reimplements : shapeworks::ProjectReader::get_multi_parameters Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_multi_parameters"},{"location":"api/Classes/classshapeworks_1_1JsonProjectWriter.html","text":"shapeworks::JsonProjectWriter JSON file format writer for Project . More... #include Public Functions Name bool write_project ( Project & project, std::string filename) Detailed Description class shapeworks :: JsonProjectWriter ; JSON file format writer for Project . This class enables writing of Project objects to JSON file format Public Functions Documentation function write_project static bool write_project ( Project & project , std :: string filename ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::JsonProjectWriter"},{"location":"api/Classes/classshapeworks_1_1JsonProjectWriter.html#shapeworksjsonprojectwriter","text":"JSON file format writer for Project . More... #include ","title":"shapeworks::JsonProjectWriter"},{"location":"api/Classes/classshapeworks_1_1JsonProjectWriter.html#public-functions","text":"Name bool write_project ( Project & project, std::string filename)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1JsonProjectWriter.html#detailed-description","text":"class shapeworks :: JsonProjectWriter ; JSON file format writer for Project . This class enables writing of Project objects to JSON file format","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1JsonProjectWriter.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1JsonProjectWriter.html#function-write_project","text":"static bool write_project ( Project & project , std :: string filename ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function write_project"},{"location":"api/Classes/classshapeworks_1_1KeyboardShortcuts.html","text":"shapeworks::KeyboardShortcuts More... #include Inherits from QDialog Public Functions Name KeyboardShortcuts (QWidget * parent) constructor virtual ~KeyboardShortcuts () destructor Detailed Description class shapeworks :: KeyboardShortcuts ; The KeyboardShortcuts is a QDialog that implements the dialog for displaying the keyboard shortcuts Public Functions Documentation function KeyboardShortcuts KeyboardShortcuts ( QWidget * parent ) constructor function ~KeyboardShortcuts virtual ~ KeyboardShortcuts () destructor Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::KeyboardShortcuts"},{"location":"api/Classes/classshapeworks_1_1KeyboardShortcuts.html#shapeworkskeyboardshortcuts","text":"More... #include Inherits from QDialog","title":"shapeworks::KeyboardShortcuts"},{"location":"api/Classes/classshapeworks_1_1KeyboardShortcuts.html#public-functions","text":"Name KeyboardShortcuts (QWidget * parent) constructor virtual ~KeyboardShortcuts () destructor","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1KeyboardShortcuts.html#detailed-description","text":"class shapeworks :: KeyboardShortcuts ; The KeyboardShortcuts is a QDialog that implements the dialog for displaying the keyboard shortcuts","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1KeyboardShortcuts.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1KeyboardShortcuts.html#function-keyboardshortcuts","text":"KeyboardShortcuts ( QWidget * parent ) constructor","title":"function KeyboardShortcuts"},{"location":"api/Classes/classshapeworks_1_1KeyboardShortcuts.html#function-keyboardshortcuts_1","text":"virtual ~ KeyboardShortcuts () destructor Updated on 2023-10-24 at 22:16:01 +0000","title":"function ~KeyboardShortcuts"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html","text":"shapeworks::LandmarkDefinition Landmark class containing properties of each landmark. #include Public Attributes Name std::string domain_ int domain_id_ int landmark_id std::string name_ bool visible_ std::string color_ std::string comment_ Public Attributes Documentation variable domain_ std :: string domain_ ; variable domain_id_ int domain_id_ = -1 ; variable landmark_id int landmark_id = -1 ; variable name_ std :: string name_ ; variable visible_ bool visible_ = true ; variable color_ std :: string color_ ; variable comment_ std :: string comment_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LandmarkDefinition"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#shapeworkslandmarkdefinition","text":"Landmark class containing properties of each landmark. #include ","title":"shapeworks::LandmarkDefinition"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#public-attributes","text":"Name std::string domain_ int domain_id_ int landmark_id std::string name_ bool visible_ std::string color_ std::string comment_","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#variable-domain_","text":"std :: string domain_ ;","title":"variable domain_"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#variable-domain_id_","text":"int domain_id_ = -1 ;","title":"variable domain_id_"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#variable-landmark_id","text":"int landmark_id = -1 ;","title":"variable landmark_id"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#variable-name_","text":"std :: string name_ ;","title":"variable name_"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#variable-visible_","text":"bool visible_ = true ;","title":"variable visible_"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#variable-color_","text":"std :: string color_ ;","title":"variable color_"},{"location":"api/Classes/classshapeworks_1_1LandmarkDefinition.html#variable-comment_","text":"std :: string comment_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable comment_"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html","text":"shapeworks::LandmarkItemDelegate Inherits from QStyledItemDelegate Public Signals Name void button_clicked (int row) Public Functions Name LandmarkItemDelegate (QObject * parent =0) void paint (QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const override QWidget * createEditor (QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index) const override void setEditorData (QWidget * editor, const QModelIndex & index) const override void setModelData (QWidget * editor, QAbstractItemModel * model, const QModelIndex & index) const override QSize sizeHint (const QStyleOptionViewItem & option, const QModelIndex & index) const override void updateEditorGeometry (QWidget * editor, const QStyleOptionViewItem & option, const QModelIndex & index) const override void set_button_text (std::string button_text) void set_model (std::shared_ptr< LandmarkTableModel > model) Public Signals Documentation signal button_clicked void button_clicked ( int row ) Public Functions Documentation function LandmarkItemDelegate LandmarkItemDelegate ( QObject * parent = 0 ) function paint void paint ( QPainter * painter , const QStyleOptionViewItem & option , const QModelIndex & index ) const override function createEditor QWidget * createEditor ( QWidget * parent , const QStyleOptionViewItem & option , const QModelIndex & index ) const override function setEditorData void setEditorData ( QWidget * editor , const QModelIndex & index ) const override function setModelData void setModelData ( QWidget * editor , QAbstractItemModel * model , const QModelIndex & index ) const override function sizeHint QSize sizeHint ( const QStyleOptionViewItem & option , const QModelIndex & index ) const override function updateEditorGeometry void updateEditorGeometry ( QWidget * editor , const QStyleOptionViewItem & option , const QModelIndex & index ) const override function set_button_text void set_button_text ( std :: string button_text ) function set_model void set_model ( std :: shared_ptr < LandmarkTableModel > model ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LandmarkItemDelegate"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#shapeworkslandmarkitemdelegate","text":"Inherits from QStyledItemDelegate","title":"shapeworks::LandmarkItemDelegate"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#public-signals","text":"Name void button_clicked (int row)","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#public-functions","text":"Name LandmarkItemDelegate (QObject * parent =0) void paint (QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const override QWidget * createEditor (QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index) const override void setEditorData (QWidget * editor, const QModelIndex & index) const override void setModelData (QWidget * editor, QAbstractItemModel * model, const QModelIndex & index) const override QSize sizeHint (const QStyleOptionViewItem & option, const QModelIndex & index) const override void updateEditorGeometry (QWidget * editor, const QStyleOptionViewItem & option, const QModelIndex & index) const override void set_button_text (std::string button_text) void set_model (std::shared_ptr< LandmarkTableModel > model)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#signal-button_clicked","text":"void button_clicked ( int row )","title":"signal button_clicked"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-landmarkitemdelegate","text":"LandmarkItemDelegate ( QObject * parent = 0 )","title":"function LandmarkItemDelegate"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-paint","text":"void paint ( QPainter * painter , const QStyleOptionViewItem & option , const QModelIndex & index ) const override","title":"function paint"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-createeditor","text":"QWidget * createEditor ( QWidget * parent , const QStyleOptionViewItem & option , const QModelIndex & index ) const override","title":"function createEditor"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-seteditordata","text":"void setEditorData ( QWidget * editor , const QModelIndex & index ) const override","title":"function setEditorData"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-setmodeldata","text":"void setModelData ( QWidget * editor , QAbstractItemModel * model , const QModelIndex & index ) const override","title":"function setModelData"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-sizehint","text":"QSize sizeHint ( const QStyleOptionViewItem & option , const QModelIndex & index ) const override","title":"function sizeHint"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-updateeditorgeometry","text":"void updateEditorGeometry ( QWidget * editor , const QStyleOptionViewItem & option , const QModelIndex & index ) const override","title":"function updateEditorGeometry"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-set_button_text","text":"void set_button_text ( std :: string button_text )","title":"function set_button_text"},{"location":"api/Classes/classshapeworks_1_1LandmarkItemDelegate.html#function-set_model","text":"void set_model ( std :: shared_ptr < LandmarkTableModel > model ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function set_model"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html","text":"shapeworks::LandmarkTableModel Inherits from QAbstractTableModel Public Slots Name void new_landmark () create a new landmark void handle_click (const QModelIndex & index) Handler for when table cells are clicked. void handle_double_click (const QModelIndex & index) Handler for when table cells are double clicked. void handle_header_click (int index) Handle header click. Public Functions Name LandmarkTableModel (QObject * parent =0) Constructor. virtual ~LandmarkTableModel () Destructor. void set_session (QSharedPointer< Session > session) Attach to a session. void store_landmarks () Store landmarks back to project. void set_active_domain (int domain) Set the currently active domain. void update_table () Update the table of landmarks from the project. void update_cells () Update table cells. void remove_rows (const std::vector< int > & rows) Remove landmarks with specified row indices. void toggle_visible () Toggle tri-state button for visibility in horizontal header. void set_placing_landmark (int row) Set the currently placing landmark. void delete_landmarks (const QModelIndexList & list) delete the selected landmarks int rowCount (const QModelIndex & index) const override QAbstractTableModel::rowCount implementation. int columnCount (const QModelIndex & index) const override QAbstractTableModel::columnCount implementation. QVariant data (const QModelIndex & index, int role) const override QAbstractTableModel::data implementation. bool setData (const QModelIndex & index, const QVariant & value, int role) override QAbstractTableModel::setData implementation. QVariant headerData (int section, Qt::Orientation orientation, int role) const override QAbstractTableModel::headerData implementation. Qt::ItemFlags flags (const QModelIndex & index) const override QAbstractTableModel::flags implementation. Public Slots Documentation slot new_landmark void new_landmark () create a new landmark slot handle_click void handle_click ( const QModelIndex & index ) Handler for when table cells are clicked. slot handle_double_click void handle_double_click ( const QModelIndex & index ) Handler for when table cells are double clicked. slot handle_header_click void handle_header_click ( int index ) Handle header click. Public Functions Documentation function LandmarkTableModel LandmarkTableModel ( QObject * parent = 0 ) Constructor. function ~LandmarkTableModel virtual ~ LandmarkTableModel () Destructor. function set_session void set_session ( QSharedPointer < Session > session ) Attach to a session. function store_landmarks void store_landmarks () Store landmarks back to project. function set_active_domain void set_active_domain ( int domain ) Set the currently active domain. function update_table void update_table () Update the table of landmarks from the project. function update_cells void update_cells () Update table cells. function remove_rows void remove_rows ( const std :: vector < int > & rows ) Remove landmarks with specified row indices. function toggle_visible void toggle_visible () Toggle tri-state button for visibility in horizontal header. function set_placing_landmark void set_placing_landmark ( int row ) Set the currently placing landmark. function delete_landmarks void delete_landmarks ( const QModelIndexList & list ) delete the selected landmarks function rowCount int rowCount ( const QModelIndex & index ) const override QAbstractTableModel::rowCount implementation. function columnCount int columnCount ( const QModelIndex & index ) const override QAbstractTableModel::columnCount implementation. function data QVariant data ( const QModelIndex & index , int role ) const override QAbstractTableModel::data implementation. function setData bool setData ( const QModelIndex & index , const QVariant & value , int role ) override QAbstractTableModel::setData implementation. function headerData QVariant headerData ( int section , Qt :: Orientation orientation , int role ) const override QAbstractTableModel::headerData implementation. function flags Qt :: ItemFlags flags ( const QModelIndex & index ) const override QAbstractTableModel::flags implementation. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LandmarkTableModel"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#shapeworkslandmarktablemodel","text":"Inherits from QAbstractTableModel","title":"shapeworks::LandmarkTableModel"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#public-slots","text":"Name void new_landmark () create a new landmark void handle_click (const QModelIndex & index) Handler for when table cells are clicked. void handle_double_click (const QModelIndex & index) Handler for when table cells are double clicked. void handle_header_click (int index) Handle header click.","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#public-functions","text":"Name LandmarkTableModel (QObject * parent =0) Constructor. virtual ~LandmarkTableModel () Destructor. void set_session (QSharedPointer< Session > session) Attach to a session. void store_landmarks () Store landmarks back to project. void set_active_domain (int domain) Set the currently active domain. void update_table () Update the table of landmarks from the project. void update_cells () Update table cells. void remove_rows (const std::vector< int > & rows) Remove landmarks with specified row indices. void toggle_visible () Toggle tri-state button for visibility in horizontal header. void set_placing_landmark (int row) Set the currently placing landmark. void delete_landmarks (const QModelIndexList & list) delete the selected landmarks int rowCount (const QModelIndex & index) const override QAbstractTableModel::rowCount implementation. int columnCount (const QModelIndex & index) const override QAbstractTableModel::columnCount implementation. QVariant data (const QModelIndex & index, int role) const override QAbstractTableModel::data implementation. bool setData (const QModelIndex & index, const QVariant & value, int role) override QAbstractTableModel::setData implementation. QVariant headerData (int section, Qt::Orientation orientation, int role) const override QAbstractTableModel::headerData implementation. Qt::ItemFlags flags (const QModelIndex & index) const override QAbstractTableModel::flags implementation.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#slot-new_landmark","text":"void new_landmark () create a new landmark","title":"slot new_landmark"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#slot-handle_click","text":"void handle_click ( const QModelIndex & index ) Handler for when table cells are clicked.","title":"slot handle_click"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#slot-handle_double_click","text":"void handle_double_click ( const QModelIndex & index ) Handler for when table cells are double clicked.","title":"slot handle_double_click"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#slot-handle_header_click","text":"void handle_header_click ( int index ) Handle header click.","title":"slot handle_header_click"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-landmarktablemodel","text":"LandmarkTableModel ( QObject * parent = 0 ) Constructor.","title":"function LandmarkTableModel"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-landmarktablemodel_1","text":"virtual ~ LandmarkTableModel () Destructor.","title":"function ~LandmarkTableModel"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session ) Attach to a session.","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-store_landmarks","text":"void store_landmarks () Store landmarks back to project.","title":"function store_landmarks"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-set_active_domain","text":"void set_active_domain ( int domain ) Set the currently active domain.","title":"function set_active_domain"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-update_table","text":"void update_table () Update the table of landmarks from the project.","title":"function update_table"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-update_cells","text":"void update_cells () Update table cells.","title":"function update_cells"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-remove_rows","text":"void remove_rows ( const std :: vector < int > & rows ) Remove landmarks with specified row indices.","title":"function remove_rows"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-toggle_visible","text":"void toggle_visible () Toggle tri-state button for visibility in horizontal header.","title":"function toggle_visible"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-set_placing_landmark","text":"void set_placing_landmark ( int row ) Set the currently placing landmark.","title":"function set_placing_landmark"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-delete_landmarks","text":"void delete_landmarks ( const QModelIndexList & list ) delete the selected landmarks","title":"function delete_landmarks"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-rowcount","text":"int rowCount ( const QModelIndex & index ) const override QAbstractTableModel::rowCount implementation.","title":"function rowCount"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-columncount","text":"int columnCount ( const QModelIndex & index ) const override QAbstractTableModel::columnCount implementation.","title":"function columnCount"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-data","text":"QVariant data ( const QModelIndex & index , int role ) const override QAbstractTableModel::data implementation.","title":"function data"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-setdata","text":"bool setData ( const QModelIndex & index , const QVariant & value , int role ) override QAbstractTableModel::setData implementation.","title":"function setData"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-headerdata","text":"QVariant headerData ( int section , Qt :: Orientation orientation , int role ) const override QAbstractTableModel::headerData implementation.","title":"function headerData"},{"location":"api/Classes/classshapeworks_1_1LandmarkTableModel.html#function-flags","text":"Qt :: ItemFlags flags ( const QModelIndex & index ) const override QAbstractTableModel::flags implementation. Updated on 2023-10-24 at 22:16:01 +0000","title":"function flags"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html","text":"shapeworks::LandmarkWidget LandmarkWidget . More... #include Public Functions Name LandmarkWidget ( Viewer * viewer) ~LandmarkWidget () void update_landmarks () void store_positions () void update_glyph_properties () void clear_landmark_handles () Detailed Description class shapeworks :: LandmarkWidget ; LandmarkWidget . Widget to display and manipulate landmarks Public Functions Documentation function LandmarkWidget LandmarkWidget ( Viewer * viewer ) function ~LandmarkWidget ~ LandmarkWidget () function update_landmarks void update_landmarks () function store_positions void store_positions () function update_glyph_properties void update_glyph_properties () function clear_landmark_handles void clear_landmark_handles () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LandmarkWidget"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#shapeworkslandmarkwidget","text":"LandmarkWidget . More... #include ","title":"shapeworks::LandmarkWidget"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#public-functions","text":"Name LandmarkWidget ( Viewer * viewer) ~LandmarkWidget () void update_landmarks () void store_positions () void update_glyph_properties () void clear_landmark_handles ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#detailed-description","text":"class shapeworks :: LandmarkWidget ; LandmarkWidget . Widget to display and manipulate landmarks","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#function-landmarkwidget","text":"LandmarkWidget ( Viewer * viewer )","title":"function LandmarkWidget"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#function-landmarkwidget_1","text":"~ LandmarkWidget ()","title":"function ~LandmarkWidget"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#function-update_landmarks","text":"void update_landmarks ()","title":"function update_landmarks"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#function-store_positions","text":"void store_positions ()","title":"function store_positions"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#function-update_glyph_properties","text":"void update_glyph_properties ()","title":"function update_glyph_properties"},{"location":"api/Classes/classshapeworks_1_1LandmarkWidget.html#function-clear_landmark_handles","text":"void clear_landmark_handles () Updated on 2023-10-24 at 22:16:01 +0000","title":"function clear_landmark_handles"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html","text":"shapeworks::LegacyCorrespondenceFunction Inherits from shapeworks::VectorFunction , itk::LightObject Public Types Name typedef LegacyCorrespondenceFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef LegacyShapeMatrix ShapeMatrixType typedef ShapeMatrixType::DataType DataType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type Public Functions Name itkTypeMacro ( LegacyCorrespondenceFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const void WriteModes (const std::string & , int ) const void SetShapeMatrix ( ShapeMatrixType * s) ShapeMatrixType * GetShapeMatrix () const ShapeMatrixType * GetShapeMatrix () const virtual void BeforeIteration () virtual void AfterIteration () void SetMinimumVariance (double d) double GetMinimumVariance () const void SetMinimumVarianceDecay (double initial_value, double final_value, double time_period) bool GetMinimumVarianceDecayConstant () const void PrintShapeMatrix () void UseMeanEnergy () void UseEntropy () bool GetHoldMinimumVariance () const void SetHoldMinimumVariance (bool b) void SetRecomputeCovarianceInterval (int i) int GetRecomputeCovarianceInterval () const virtual VectorFunction::Pointer Clone () Protected Functions Name LegacyCorrespondenceFunction () virtual ~LegacyCorrespondenceFunction () void operator= (const LegacyCorrespondenceFunction & ) LegacyCorrespondenceFunction (const LegacyCorrespondenceFunction & ) virtual void ComputeCovarianceMatrix () Public Attributes Name constexpr static unsigned int VDimension Protected Attributes Name ShapeMatrixType::Pointer m_ShapeMatrix std::shared_ptr< vnl_matrix_type > m_PointsUpdate double m_MinimumVariance double m_MinimumEigenValue double m_CurrentEnergy bool m_HoldMinimumVariance double m_MinimumVarianceDecayConstant int m_RecomputeCovarianceInterval int m_Counter bool m_UseMeanEnergy std::shared_ptr< vnl_matrix_type > m_points_mean std::shared_ptr< Eigen::MatrixXd > m_InverseCovMatrix Additional inherited members Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber Public Types Documentation typedef Self typedef LegacyCorrespondenceFunction shapeworks :: LegacyCorrespondenceFunction :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: LegacyCorrespondenceFunction :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: LegacyCorrespondenceFunction :: ConstPointer ; typedef Superclass typedef VectorFunction shapeworks :: LegacyCorrespondenceFunction :: Superclass ; typedef ShapeMatrixType typedef LegacyShapeMatrix shapeworks :: LegacyCorrespondenceFunction :: ShapeMatrixType ; typedef DataType typedef ShapeMatrixType :: DataType shapeworks :: LegacyCorrespondenceFunction :: DataType ; typedef VectorType typedef Superclass :: VectorType shapeworks :: LegacyCorrespondenceFunction :: VectorType ; Vector & Point types. typedef PointType typedef ParticleSystem :: PointType shapeworks :: LegacyCorrespondenceFunction :: PointType ; typedef vnl_vector_type typedef vnl_vector < DataType > shapeworks :: LegacyCorrespondenceFunction :: vnl_vector_type ; typedef vnl_matrix_type typedef vnl_matrix < DataType > shapeworks :: LegacyCorrespondenceFunction :: vnl_matrix_type ; Public Functions Documentation function itkTypeMacro itkTypeMacro ( LegacyCorrespondenceFunction , VectorFunction ) function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function Evaluate virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Evaluate inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Energy inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::VectorFunction::Energy function WriteModes void WriteModes ( const std :: string & , int ) const Write the first n modes to +- 3 std dev and the mean of the model described by the covariance matrix. The string argument is a prefix to the file names. function SetShapeMatrix inline void SetShapeMatrix ( ShapeMatrixType * s ) Access the shape matrix. function GetShapeMatrix inline ShapeMatrixType * GetShapeMatrix () function GetShapeMatrix inline const ShapeMatrixType * GetShapeMatrix () const function BeforeIteration inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration Called before each iteration of a solver. function AfterIteration inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration Called after each iteration of the solver. function SetMinimumVariance inline void SetMinimumVariance ( double d ) function GetMinimumVariance inline double GetMinimumVariance () const function SetMinimumVarianceDecay inline void SetMinimumVarianceDecay ( double initial_value , double final_value , double time_period ) function GetMinimumVarianceDecayConstant inline bool GetMinimumVarianceDecayConstant () const function PrintShapeMatrix inline void PrintShapeMatrix () function UseMeanEnergy inline void UseMeanEnergy () function UseEntropy inline void UseEntropy () function GetHoldMinimumVariance inline bool GetHoldMinimumVariance () const function SetHoldMinimumVariance inline void SetHoldMinimumVariance ( bool b ) function SetRecomputeCovarianceInterval inline void SetRecomputeCovarianceInterval ( int i ) function GetRecomputeCovarianceInterval inline int GetRecomputeCovarianceInterval () const function Clone inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone Protected Functions Documentation function LegacyCorrespondenceFunction inline LegacyCorrespondenceFunction () function ~LegacyCorrespondenceFunction inline virtual ~ LegacyCorrespondenceFunction () function operator= void operator = ( const LegacyCorrespondenceFunction & ) function LegacyCorrespondenceFunction LegacyCorrespondenceFunction ( const LegacyCorrespondenceFunction & ) function ComputeCovarianceMatrix virtual void ComputeCovarianceMatrix () Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Protected Attributes Documentation variable m_ShapeMatrix ShapeMatrixType :: Pointer m_ShapeMatrix ; variable m_PointsUpdate std :: shared_ptr < vnl_matrix_type > m_PointsUpdate ; variable m_MinimumVariance double m_MinimumVariance ; variable m_MinimumEigenValue double m_MinimumEigenValue ; variable m_CurrentEnergy double m_CurrentEnergy ; variable m_HoldMinimumVariance bool m_HoldMinimumVariance ; variable m_MinimumVarianceDecayConstant double m_MinimumVarianceDecayConstant ; variable m_RecomputeCovarianceInterval int m_RecomputeCovarianceInterval ; variable m_Counter int m_Counter ; variable m_UseMeanEnergy bool m_UseMeanEnergy ; variable m_points_mean std :: shared_ptr < vnl_matrix_type > m_points_mean ; variable m_InverseCovMatrix std :: shared_ptr < Eigen :: MatrixXd > m_InverseCovMatrix ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LegacyCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#shapeworkslegacycorrespondencefunction","text":"Inherits from shapeworks::VectorFunction , itk::LightObject","title":"shapeworks::LegacyCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#public-types","text":"Name typedef LegacyCorrespondenceFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef LegacyShapeMatrix ShapeMatrixType typedef ShapeMatrixType::DataType DataType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#public-functions","text":"Name itkTypeMacro ( LegacyCorrespondenceFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual double Energy (unsigned int a, unsigned int b, const ParticleSystem * c) const void WriteModes (const std::string & , int ) const void SetShapeMatrix ( ShapeMatrixType * s) ShapeMatrixType * GetShapeMatrix () const ShapeMatrixType * GetShapeMatrix () const virtual void BeforeIteration () virtual void AfterIteration () void SetMinimumVariance (double d) double GetMinimumVariance () const void SetMinimumVarianceDecay (double initial_value, double final_value, double time_period) bool GetMinimumVarianceDecayConstant () const void PrintShapeMatrix () void UseMeanEnergy () void UseEntropy () bool GetHoldMinimumVariance () const void SetHoldMinimumVariance (bool b) void SetRecomputeCovarianceInterval (int i) int GetRecomputeCovarianceInterval () const virtual VectorFunction::Pointer Clone ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#protected-functions","text":"Name LegacyCorrespondenceFunction () virtual ~LegacyCorrespondenceFunction () void operator= (const LegacyCorrespondenceFunction & ) LegacyCorrespondenceFunction (const LegacyCorrespondenceFunction & ) virtual void ComputeCovarianceMatrix ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#protected-attributes","text":"Name ShapeMatrixType::Pointer m_ShapeMatrix std::shared_ptr< vnl_matrix_type > m_PointsUpdate double m_MinimumVariance double m_MinimumEigenValue double m_CurrentEnergy bool m_HoldMinimumVariance double m_MinimumVarianceDecayConstant int m_RecomputeCovarianceInterval int m_Counter bool m_UseMeanEnergy std::shared_ptr< vnl_matrix_type > m_points_mean std::shared_ptr< Eigen::MatrixXd > m_InverseCovMatrix","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::VectorFunction Name virtual void ResetBuffers () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-self","text":"typedef LegacyCorrespondenceFunction shapeworks :: LegacyCorrespondenceFunction :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: LegacyCorrespondenceFunction :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: LegacyCorrespondenceFunction :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-superclass","text":"typedef VectorFunction shapeworks :: LegacyCorrespondenceFunction :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-shapematrixtype","text":"typedef LegacyShapeMatrix shapeworks :: LegacyCorrespondenceFunction :: ShapeMatrixType ;","title":"typedef ShapeMatrixType"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-datatype","text":"typedef ShapeMatrixType :: DataType shapeworks :: LegacyCorrespondenceFunction :: DataType ;","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-vectortype","text":"typedef Superclass :: VectorType shapeworks :: LegacyCorrespondenceFunction :: VectorType ; Vector & Point types.","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-pointtype","text":"typedef ParticleSystem :: PointType shapeworks :: LegacyCorrespondenceFunction :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-vnl_vector_type","text":"typedef vnl_vector < DataType > shapeworks :: LegacyCorrespondenceFunction :: vnl_vector_type ;","title":"typedef vnl_vector_type"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#typedef-vnl_matrix_type","text":"typedef vnl_matrix < DataType > shapeworks :: LegacyCorrespondenceFunction :: vnl_matrix_type ;","title":"typedef vnl_matrix_type"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-itktypemacro","text":"itkTypeMacro ( LegacyCorrespondenceFunction , VectorFunction )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-evaluate","text":"virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-evaluate_1","text":"inline virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-energy","text":"inline virtual double Energy ( unsigned int a , unsigned int b , const ParticleSystem * c ) const Reimplements : shapeworks::VectorFunction::Energy","title":"function Energy"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-writemodes","text":"void WriteModes ( const std :: string & , int ) const Write the first n modes to +- 3 std dev and the mean of the model described by the covariance matrix. The string argument is a prefix to the file names.","title":"function WriteModes"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-setshapematrix","text":"inline void SetShapeMatrix ( ShapeMatrixType * s ) Access the shape matrix.","title":"function SetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-getshapematrix","text":"inline ShapeMatrixType * GetShapeMatrix ()","title":"function GetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-getshapematrix_1","text":"inline const ShapeMatrixType * GetShapeMatrix () const","title":"function GetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplements : shapeworks::VectorFunction::BeforeIteration Called before each iteration of a solver.","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-afteriteration","text":"inline virtual void AfterIteration () Reimplements : shapeworks::VectorFunction::AfterIteration Called after each iteration of the solver.","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-setminimumvariance","text":"inline void SetMinimumVariance ( double d )","title":"function SetMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-getminimumvariance","text":"inline double GetMinimumVariance () const","title":"function GetMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-setminimumvariancedecay","text":"inline void SetMinimumVarianceDecay ( double initial_value , double final_value , double time_period )","title":"function SetMinimumVarianceDecay"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-getminimumvariancedecayconstant","text":"inline bool GetMinimumVarianceDecayConstant () const","title":"function GetMinimumVarianceDecayConstant"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-printshapematrix","text":"inline void PrintShapeMatrix ()","title":"function PrintShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-usemeanenergy","text":"inline void UseMeanEnergy ()","title":"function UseMeanEnergy"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-useentropy","text":"inline void UseEntropy ()","title":"function UseEntropy"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-getholdminimumvariance","text":"inline bool GetHoldMinimumVariance () const","title":"function GetHoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-setholdminimumvariance","text":"inline void SetHoldMinimumVariance ( bool b )","title":"function SetHoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-setrecomputecovarianceinterval","text":"inline void SetRecomputeCovarianceInterval ( int i )","title":"function SetRecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-getrecomputecovarianceinterval","text":"inline int GetRecomputeCovarianceInterval () const","title":"function GetRecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-clone","text":"inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone","title":"function Clone"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-legacycorrespondencefunction","text":"inline LegacyCorrespondenceFunction ()","title":"function LegacyCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-legacycorrespondencefunction_1","text":"inline virtual ~ LegacyCorrespondenceFunction ()","title":"function ~LegacyCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-operator","text":"void operator = ( const LegacyCorrespondenceFunction & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-legacycorrespondencefunction_2","text":"LegacyCorrespondenceFunction ( const LegacyCorrespondenceFunction & )","title":"function LegacyCorrespondenceFunction"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#function-computecovariancematrix","text":"virtual void ComputeCovarianceMatrix ()","title":"function ComputeCovarianceMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_shapematrix","text":"ShapeMatrixType :: Pointer m_ShapeMatrix ;","title":"variable m_ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_pointsupdate","text":"std :: shared_ptr < vnl_matrix_type > m_PointsUpdate ;","title":"variable m_PointsUpdate"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_minimumvariance","text":"double m_MinimumVariance ;","title":"variable m_MinimumVariance"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_minimumeigenvalue","text":"double m_MinimumEigenValue ;","title":"variable m_MinimumEigenValue"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_currentenergy","text":"double m_CurrentEnergy ;","title":"variable m_CurrentEnergy"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_holdminimumvariance","text":"bool m_HoldMinimumVariance ;","title":"variable m_HoldMinimumVariance"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_minimumvariancedecayconstant","text":"double m_MinimumVarianceDecayConstant ;","title":"variable m_MinimumVarianceDecayConstant"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_recomputecovarianceinterval","text":"int m_RecomputeCovarianceInterval ;","title":"variable m_RecomputeCovarianceInterval"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_counter","text":"int m_Counter ;","title":"variable m_Counter"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_usemeanenergy","text":"bool m_UseMeanEnergy ;","title":"variable m_UseMeanEnergy"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_points_mean","text":"std :: shared_ptr < vnl_matrix_type > m_points_mean ;","title":"variable m_points_mean"},{"location":"api/Classes/classshapeworks_1_1LegacyCorrespondenceFunction.html#variable-m_inversecovmatrix","text":"std :: shared_ptr < Eigen :: MatrixXd > m_InverseCovMatrix ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_InverseCovMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html","text":"shapeworks::LegacyShapeMatrix Inherits from vnl_matrix< double >, shapeworks::Observer Inherited by shapeworks::LinearRegressionShapeMatrix , shapeworks::MixedEffectsShapeMatrix Public Types Name typedef double DataType typedef LegacyShapeMatrix Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer Public Functions Name itkNewMacro ( Self ) virtual Observer void DomainAddEventCallback (Object * , const itk::EventObject & e) virtual void ResizeMatrix (int rs, int cs) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void PrintMatrix () bool CheckForNans () void SetDomainsPerShape (int i) int GetDomainsPerShape () const virtual void BeforeIteration () virtual void AfterIteration () virtual void SetMatrix (const vnl_matrix< double > & m) Protected Functions Name LegacyShapeMatrix () virtual ~LegacyShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const Protected Attributes Name int m_DomainsPerShape Additional inherited members Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name itkTypeMacro ( Observer , DataObject ) virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks Public Types Documentation typedef DataType typedef double shapeworks :: LegacyShapeMatrix :: DataType ; Standard class typedefs typedef Self typedef LegacyShapeMatrix shapeworks :: LegacyShapeMatrix :: Self ; typedef Superclass typedef Observer shapeworks :: LegacyShapeMatrix :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: LegacyShapeMatrix :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: LegacyShapeMatrix :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: LegacyShapeMatrix :: ConstWeakPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. Run-time type information (and related methods). function DomainAddEventCallback inline virtual Observer void DomainAddEventCallback ( Object * , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::DomainAddEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::DomainAddEventCallback , shapeworks::MixedEffectsShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method. function ResizeMatrix inline virtual void ResizeMatrix ( int rs , int cs ) function PositionAddEventCallback inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::PositionAddEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionAddEventCallback function PositionSetEventCallback inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionSetEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::PositionSetEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionSetEventCallback function PositionRemoveEventCallback inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::PositionRemoveEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionRemoveEventCallback function PrintMatrix inline void PrintMatrix () function CheckForNans inline bool CheckForNans () function SetDomainsPerShape inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points! function GetDomainsPerShape inline int GetDomainsPerShape () const function BeforeIteration inline virtual void BeforeIteration () Reimplemented by : shapeworks::LinearRegressionShapeMatrix::BeforeIteration , shapeworks::MixedEffectsShapeMatrix::BeforeIteration function AfterIteration inline virtual void AfterIteration () function SetMatrix inline virtual void SetMatrix ( const vnl_matrix < double > & m ) Protected Functions Documentation function LegacyShapeMatrix inline LegacyShapeMatrix () function ~LegacyShapeMatrix inline virtual ~ LegacyShapeMatrix () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Protected Attributes Documentation variable m_DomainsPerShape int m_DomainsPerShape ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LegacyShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#shapeworkslegacyshapematrix","text":"Inherits from vnl_matrix< double >, shapeworks::Observer Inherited by shapeworks::LinearRegressionShapeMatrix , shapeworks::MixedEffectsShapeMatrix","title":"shapeworks::LegacyShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#public-types","text":"Name typedef double DataType typedef LegacyShapeMatrix Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#public-functions","text":"Name itkNewMacro ( Self ) virtual Observer void DomainAddEventCallback (Object * , const itk::EventObject & e) virtual void ResizeMatrix (int rs, int cs) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void PrintMatrix () bool CheckForNans () void SetDomainsPerShape (int i) int GetDomainsPerShape () const virtual void BeforeIteration () virtual void AfterIteration () virtual void SetMatrix (const vnl_matrix< double > & m)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#protected-functions","text":"Name LegacyShapeMatrix () virtual ~LegacyShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#protected-attributes","text":"Name int m_DomainsPerShape","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#additional-inherited-members","text":"Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name itkTypeMacro ( Observer , DataObject ) virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#typedef-datatype","text":"typedef double shapeworks :: LegacyShapeMatrix :: DataType ; Standard class typedefs","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#typedef-self","text":"typedef LegacyShapeMatrix shapeworks :: LegacyShapeMatrix :: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#typedef-superclass","text":"typedef Observer shapeworks :: LegacyShapeMatrix :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: LegacyShapeMatrix :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: LegacyShapeMatrix :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: LegacyShapeMatrix :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory. Run-time type information (and related methods).","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-domainaddeventcallback","text":"inline virtual Observer void DomainAddEventCallback ( Object * , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::DomainAddEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::DomainAddEventCallback , shapeworks::MixedEffectsShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method.","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-resizematrix","text":"inline virtual void ResizeMatrix ( int rs , int cs )","title":"function ResizeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::PositionAddEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionAddEventCallback","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-positionseteventcallback","text":"inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionSetEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::PositionSetEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionSetEventCallback","title":"function PositionSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-positionremoveeventcallback","text":"inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback Reimplemented by : shapeworks::LinearRegressionShapeMatrix::PositionRemoveEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionRemoveEventCallback","title":"function PositionRemoveEventCallback"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-printmatrix","text":"inline void PrintMatrix ()","title":"function PrintMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-checkfornans","text":"inline bool CheckForNans ()","title":"function CheckForNans"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points!","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-getdomainspershape","text":"inline int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplemented by : shapeworks::LinearRegressionShapeMatrix::BeforeIteration , shapeworks::MixedEffectsShapeMatrix::BeforeIteration","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-afteriteration","text":"inline virtual void AfterIteration ()","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-setmatrix","text":"inline virtual void SetMatrix ( const vnl_matrix < double > & m )","title":"function SetMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-legacyshapematrix","text":"inline LegacyShapeMatrix ()","title":"function LegacyShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-legacyshapematrix_1","text":"inline virtual ~ LegacyShapeMatrix ()","title":"function ~LegacyShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1LegacyShapeMatrix.html#variable-m_domainspershape","text":"int m_DomainsPerShape ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_DomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html","text":"shapeworks::Lightbox Display multiple Viewers in a tiled display. More... #include Inherits from QObject Public Slots Name void handle_timer_callback () Public Signals Name void right_click (int index) Public Functions Name Lightbox () ~Lightbox () void set_shapes (ShapeList shapes) ShapeList get_shapes () void set_interactor (vtkRenderWindowInteractor * interactor) void set_render_window (vtkRenderWindow * render_window) void set_tile_layout (int width, int height) void setup_renderers () int get_num_rows () int get_num_rows_visible () void set_start_row (int row) ViewerList get_viewers () void redraw () void handle_pick (int * click_pos, bool one, bool ctrl) void handle_hover (int * click_pos) void handle_key (int * click_pos, std::string key) void handle_right_click (int * click_pos, vtkRenderer * renderer) Handle a right click that did not involve any movement. void set_glyph_lut (vtkSmartPointer< vtkLookupTable > lut) void set_session (QSharedPointer< Session > session) void set_visualizer ( Visualizer * visualizer) bool render_window_ready () void clear_renderers () std::array< double, 3 > initPos () void handle_new_mesh () void reset_camera () void reset_camera_clipping_range () void set_orientation_marker (Preferences::OrientationMarkerType type, Preferences::OrientationMarkerCorner corner) void set_orientation_marker_viewport () void update_feature_range () void update_interactor_style () void set_shared_window_and_level (double window, double level) vtkRenderWindow * get_render_window () Detailed Description class shapeworks :: Lightbox ; Display multiple Viewers in a tiled display. The LightBox class displays multiple Viewers in a tiled display Public Slots Documentation slot handle_timer_callback void handle_timer_callback () Public Signals Documentation signal right_click void right_click ( int index ) Public Functions Documentation function Lightbox Lightbox () function ~Lightbox ~ Lightbox () function set_shapes void set_shapes ( ShapeList shapes ) function get_shapes ShapeList get_shapes () function set_interactor void set_interactor ( vtkRenderWindowInteractor * interactor ) function set_render_window void set_render_window ( vtkRenderWindow * render_window ) function set_tile_layout void set_tile_layout ( int width , int height ) function setup_renderers void setup_renderers () function get_num_rows int get_num_rows () function get_num_rows_visible int get_num_rows_visible () function set_start_row void set_start_row ( int row ) function get_viewers ViewerList get_viewers () function redraw void redraw () function handle_pick void handle_pick ( int * click_pos , bool one , bool ctrl ) function handle_hover void handle_hover ( int * click_pos ) function handle_key void handle_key ( int * click_pos , std :: string key ) function handle_right_click void handle_right_click ( int * click_pos , vtkRenderer * renderer ) Handle a right click that did not involve any movement. function set_glyph_lut void set_glyph_lut ( vtkSmartPointer < vtkLookupTable > lut ) function set_session void set_session ( QSharedPointer < Session > session ) function set_visualizer void set_visualizer ( Visualizer * visualizer ) function render_window_ready inline bool render_window_ready () function clear_renderers void clear_renderers () function initPos std :: array < double , 3 > initPos () function handle_new_mesh void handle_new_mesh () function reset_camera void reset_camera () function reset_camera_clipping_range void reset_camera_clipping_range () function set_orientation_marker void set_orientation_marker ( Preferences :: OrientationMarkerType type , Preferences :: OrientationMarkerCorner corner ) function set_orientation_marker_viewport void set_orientation_marker_viewport () function update_feature_range void update_feature_range () function update_interactor_style void update_interactor_style () function set_shared_window_and_level void set_shared_window_and_level ( double window , double level ) function get_render_window vtkRenderWindow * get_render_window () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Lightbox"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#shapeworkslightbox","text":"Display multiple Viewers in a tiled display. More... #include Inherits from QObject","title":"shapeworks::Lightbox"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#public-slots","text":"Name void handle_timer_callback ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#public-signals","text":"Name void right_click (int index)","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#public-functions","text":"Name Lightbox () ~Lightbox () void set_shapes (ShapeList shapes) ShapeList get_shapes () void set_interactor (vtkRenderWindowInteractor * interactor) void set_render_window (vtkRenderWindow * render_window) void set_tile_layout (int width, int height) void setup_renderers () int get_num_rows () int get_num_rows_visible () void set_start_row (int row) ViewerList get_viewers () void redraw () void handle_pick (int * click_pos, bool one, bool ctrl) void handle_hover (int * click_pos) void handle_key (int * click_pos, std::string key) void handle_right_click (int * click_pos, vtkRenderer * renderer) Handle a right click that did not involve any movement. void set_glyph_lut (vtkSmartPointer< vtkLookupTable > lut) void set_session (QSharedPointer< Session > session) void set_visualizer ( Visualizer * visualizer) bool render_window_ready () void clear_renderers () std::array< double, 3 > initPos () void handle_new_mesh () void reset_camera () void reset_camera_clipping_range () void set_orientation_marker (Preferences::OrientationMarkerType type, Preferences::OrientationMarkerCorner corner) void set_orientation_marker_viewport () void update_feature_range () void update_interactor_style () void set_shared_window_and_level (double window, double level) vtkRenderWindow * get_render_window ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#detailed-description","text":"class shapeworks :: Lightbox ; Display multiple Viewers in a tiled display. The LightBox class displays multiple Viewers in a tiled display","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#slot-handle_timer_callback","text":"void handle_timer_callback ()","title":"slot handle_timer_callback"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#signal-right_click","text":"void right_click ( int index )","title":"signal right_click"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-lightbox","text":"Lightbox ()","title":"function Lightbox"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-lightbox_1","text":"~ Lightbox ()","title":"function ~Lightbox"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_shapes","text":"void set_shapes ( ShapeList shapes )","title":"function set_shapes"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-get_shapes","text":"ShapeList get_shapes ()","title":"function get_shapes"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_interactor","text":"void set_interactor ( vtkRenderWindowInteractor * interactor )","title":"function set_interactor"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_render_window","text":"void set_render_window ( vtkRenderWindow * render_window )","title":"function set_render_window"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_tile_layout","text":"void set_tile_layout ( int width , int height )","title":"function set_tile_layout"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-setup_renderers","text":"void setup_renderers ()","title":"function setup_renderers"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-get_num_rows","text":"int get_num_rows ()","title":"function get_num_rows"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-get_num_rows_visible","text":"int get_num_rows_visible ()","title":"function get_num_rows_visible"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_start_row","text":"void set_start_row ( int row )","title":"function set_start_row"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-get_viewers","text":"ViewerList get_viewers ()","title":"function get_viewers"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-redraw","text":"void redraw ()","title":"function redraw"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-handle_pick","text":"void handle_pick ( int * click_pos , bool one , bool ctrl )","title":"function handle_pick"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-handle_hover","text":"void handle_hover ( int * click_pos )","title":"function handle_hover"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-handle_key","text":"void handle_key ( int * click_pos , std :: string key )","title":"function handle_key"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-handle_right_click","text":"void handle_right_click ( int * click_pos , vtkRenderer * renderer ) Handle a right click that did not involve any movement.","title":"function handle_right_click"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_glyph_lut","text":"void set_glyph_lut ( vtkSmartPointer < vtkLookupTable > lut )","title":"function set_glyph_lut"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session )","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_visualizer","text":"void set_visualizer ( Visualizer * visualizer )","title":"function set_visualizer"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-render_window_ready","text":"inline bool render_window_ready ()","title":"function render_window_ready"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-clear_renderers","text":"void clear_renderers ()","title":"function clear_renderers"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-initpos","text":"std :: array < double , 3 > initPos ()","title":"function initPos"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-handle_new_mesh","text":"void handle_new_mesh ()","title":"function handle_new_mesh"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-reset_camera","text":"void reset_camera ()","title":"function reset_camera"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-reset_camera_clipping_range","text":"void reset_camera_clipping_range ()","title":"function reset_camera_clipping_range"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_orientation_marker","text":"void set_orientation_marker ( Preferences :: OrientationMarkerType type , Preferences :: OrientationMarkerCorner corner )","title":"function set_orientation_marker"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_orientation_marker_viewport","text":"void set_orientation_marker_viewport ()","title":"function set_orientation_marker_viewport"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-update_feature_range","text":"void update_feature_range ()","title":"function update_feature_range"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-update_interactor_style","text":"void update_interactor_style ()","title":"function update_interactor_style"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-set_shared_window_and_level","text":"void set_shared_window_and_level ( double window , double level )","title":"function set_shared_window_and_level"},{"location":"api/Classes/classshapeworks_1_1Lightbox.html#function-get_render_window","text":"vtkRenderWindow * get_render_window () Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_render_window"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html","text":"shapeworks::LinearRegressionShapeMatrix Inherits from shapeworks::LegacyShapeMatrix , vnl_matrix< double >, shapeworks::Observer Public Types Name typedef double DataType typedef LinearRegressionShapeMatrix Self typedef LegacyShapeMatrix Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( LinearRegressionShapeMatrix , LegacyShapeMatrix ) void UpdateMeanMatrix () vnl_vector< double > ComputeMean (double k) const void ResizeParameters (unsigned int n) virtual void ResizeMeanMatrix (int rs, int cs) void ResizeExplanatory (unsigned int n) virtual void DomainAddEventCallback (Object * , const itk::EventObject & e) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetExplanatory (std::vector< double > v) void SetExplanatory (unsigned int i, double q) const double & GetExplanatory (unsigned int i) const double & GetExplanatory (unsigned int i) const vnl_vector< double > & GetSlope () const const vnl_vector< double > & GetIntercept () const void SetSlope (const std::vector< double > & v) void SetIntercept (const std::vector< double > & v) void EstimateParameters () void Initialize () virtual void BeforeIteration () void SetRegressionInterval (int i) int GetRegressionInterval () const Protected Functions Name LinearRegressionShapeMatrix () virtual ~LinearRegressionShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const Additional inherited members Public Functions inherited from shapeworks::LegacyShapeMatrix Name virtual void ResizeMatrix (int rs, int cs) void PrintMatrix () bool CheckForNans () virtual void AfterIteration () virtual void SetMatrix (const vnl_matrix< double > & m) Protected Functions inherited from shapeworks::LegacyShapeMatrix Name LegacyShapeMatrix () virtual ~LegacyShapeMatrix () Protected Attributes inherited from shapeworks::LegacyShapeMatrix Name int m_DomainsPerShape Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks Public Types Documentation typedef DataType typedef double shapeworks :: LinearRegressionShapeMatrix :: DataType ; Standard class typedefs typedef Self typedef LinearRegressionShapeMatrix shapeworks :: LinearRegressionShapeMatrix :: Self ; typedef Superclass typedef LegacyShapeMatrix shapeworks :: LinearRegressionShapeMatrix :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: LinearRegressionShapeMatrix :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: LinearRegressionShapeMatrix :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: LinearRegressionShapeMatrix :: ConstWeakPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( LinearRegressionShapeMatrix , LegacyShapeMatrix ) Run-time type information (and related methods). function UpdateMeanMatrix inline void UpdateMeanMatrix () function ComputeMean inline vnl_vector < double > ComputeMean ( double k ) const function ResizeParameters inline void ResizeParameters ( unsigned int n ) function ResizeMeanMatrix inline virtual void ResizeMeanMatrix ( int rs , int cs ) function ResizeExplanatory inline void ResizeExplanatory ( unsigned int n ) function DomainAddEventCallback inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method. function PositionAddEventCallback inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionAddEventCallback function PositionSetEventCallback inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionSetEventCallback function PositionRemoveEventCallback inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::LegacyShapeMatrix::PositionRemoveEventCallback function SetDomainsPerShape inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points! function GetDomainsPerShape inline int GetDomainsPerShape () const function SetExplanatory inline void SetExplanatory ( std :: vector < double > v ) function SetExplanatory inline void SetExplanatory ( unsigned int i , double q ) function GetExplanatory inline const double & GetExplanatory ( unsigned int i ) const function GetExplanatory inline double & GetExplanatory ( unsigned int i ) function GetSlope inline const vnl_vector < double > & GetSlope () const function GetIntercept inline const vnl_vector < double > & GetIntercept () const function SetSlope inline void SetSlope ( const std :: vector < double > & v ) function SetIntercept inline void SetIntercept ( const std :: vector < double > & v ) function EstimateParameters inline void EstimateParameters () function Initialize inline void Initialize () function BeforeIteration inline virtual void BeforeIteration () Reimplements : shapeworks::LegacyShapeMatrix::BeforeIteration function SetRegressionInterval inline void SetRegressionInterval ( int i ) function GetRegressionInterval inline int GetRegressionInterval () const Protected Functions Documentation function LinearRegressionShapeMatrix inline LinearRegressionShapeMatrix () function ~LinearRegressionShapeMatrix inline virtual ~ LinearRegressionShapeMatrix () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LinearRegressionShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#shapeworkslinearregressionshapematrix","text":"Inherits from shapeworks::LegacyShapeMatrix , vnl_matrix< double >, shapeworks::Observer","title":"shapeworks::LinearRegressionShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#public-types","text":"Name typedef double DataType typedef LinearRegressionShapeMatrix Self typedef LegacyShapeMatrix Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( LinearRegressionShapeMatrix , LegacyShapeMatrix ) void UpdateMeanMatrix () vnl_vector< double > ComputeMean (double k) const void ResizeParameters (unsigned int n) virtual void ResizeMeanMatrix (int rs, int cs) void ResizeExplanatory (unsigned int n) virtual void DomainAddEventCallback (Object * , const itk::EventObject & e) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetExplanatory (std::vector< double > v) void SetExplanatory (unsigned int i, double q) const double & GetExplanatory (unsigned int i) const double & GetExplanatory (unsigned int i) const vnl_vector< double > & GetSlope () const const vnl_vector< double > & GetIntercept () const void SetSlope (const std::vector< double > & v) void SetIntercept (const std::vector< double > & v) void EstimateParameters () void Initialize () virtual void BeforeIteration () void SetRegressionInterval (int i) int GetRegressionInterval () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#protected-functions","text":"Name LinearRegressionShapeMatrix () virtual ~LinearRegressionShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::LegacyShapeMatrix Name virtual void ResizeMatrix (int rs, int cs) void PrintMatrix () bool CheckForNans () virtual void AfterIteration () virtual void SetMatrix (const vnl_matrix< double > & m) Protected Functions inherited from shapeworks::LegacyShapeMatrix Name LegacyShapeMatrix () virtual ~LegacyShapeMatrix () Protected Attributes inherited from shapeworks::LegacyShapeMatrix Name int m_DomainsPerShape Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#typedef-datatype","text":"typedef double shapeworks :: LinearRegressionShapeMatrix :: DataType ; Standard class typedefs","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#typedef-self","text":"typedef LinearRegressionShapeMatrix shapeworks :: LinearRegressionShapeMatrix :: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#typedef-superclass","text":"typedef LegacyShapeMatrix shapeworks :: LinearRegressionShapeMatrix :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: LinearRegressionShapeMatrix :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: LinearRegressionShapeMatrix :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: LinearRegressionShapeMatrix :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-itktypemacro","text":"itkTypeMacro ( LinearRegressionShapeMatrix , LegacyShapeMatrix ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-updatemeanmatrix","text":"inline void UpdateMeanMatrix ()","title":"function UpdateMeanMatrix"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-computemean","text":"inline vnl_vector < double > ComputeMean ( double k ) const","title":"function ComputeMean"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-resizeparameters","text":"inline void ResizeParameters ( unsigned int n )","title":"function ResizeParameters"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-resizemeanmatrix","text":"inline virtual void ResizeMeanMatrix ( int rs , int cs )","title":"function ResizeMeanMatrix"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-resizeexplanatory","text":"inline void ResizeExplanatory ( unsigned int n )","title":"function ResizeExplanatory"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-domainaddeventcallback","text":"inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method.","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionAddEventCallback","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-positionseteventcallback","text":"inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionSetEventCallback","title":"function PositionSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-positionremoveeventcallback","text":"inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::LegacyShapeMatrix::PositionRemoveEventCallback","title":"function PositionRemoveEventCallback"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points!","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-getdomainspershape","text":"inline int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-setexplanatory","text":"inline void SetExplanatory ( std :: vector < double > v )","title":"function SetExplanatory"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-setexplanatory_1","text":"inline void SetExplanatory ( unsigned int i , double q )","title":"function SetExplanatory"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-getexplanatory","text":"inline const double & GetExplanatory ( unsigned int i ) const","title":"function GetExplanatory"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-getexplanatory_1","text":"inline double & GetExplanatory ( unsigned int i )","title":"function GetExplanatory"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-getslope","text":"inline const vnl_vector < double > & GetSlope () const","title":"function GetSlope"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-getintercept","text":"inline const vnl_vector < double > & GetIntercept () const","title":"function GetIntercept"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-setslope","text":"inline void SetSlope ( const std :: vector < double > & v )","title":"function SetSlope"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-setintercept","text":"inline void SetIntercept ( const std :: vector < double > & v )","title":"function SetIntercept"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-estimateparameters","text":"inline void EstimateParameters ()","title":"function EstimateParameters"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-initialize","text":"inline void Initialize ()","title":"function Initialize"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplements : shapeworks::LegacyShapeMatrix::BeforeIteration","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-setregressioninterval","text":"inline void SetRegressionInterval ( int i )","title":"function SetRegressionInterval"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-getregressioninterval","text":"inline int GetRegressionInterval () const","title":"function GetRegressionInterval"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-linearregressionshapematrix","text":"inline LinearRegressionShapeMatrix ()","title":"function LinearRegressionShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-linearregressionshapematrix_1","text":"inline virtual ~ LinearRegressionShapeMatrix ()","title":"function ~LinearRegressionShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1LinearRegressionShapeMatrix.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1LogWindow.html","text":"shapeworks::LogWindow Log Window. More... #include Inherits from QDialog Public Functions Name LogWindow (QWidget * parent =0) void add_message (MessageType message_type, QString message) add a message to the history Detailed Description class shapeworks :: LogWindow ; Log Window. This dialog displays the history of messages (e.g. status bar messages) Public Functions Documentation function LogWindow LogWindow ( QWidget * parent = 0 ) function add_message void add_message ( MessageType message_type , QString message ) add a message to the history Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::LogWindow"},{"location":"api/Classes/classshapeworks_1_1LogWindow.html#shapeworkslogwindow","text":"Log Window. More... #include Inherits from QDialog","title":"shapeworks::LogWindow"},{"location":"api/Classes/classshapeworks_1_1LogWindow.html#public-functions","text":"Name LogWindow (QWidget * parent =0) void add_message (MessageType message_type, QString message) add a message to the history","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1LogWindow.html#detailed-description","text":"class shapeworks :: LogWindow ; Log Window. This dialog displays the history of messages (e.g. status bar messages)","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1LogWindow.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1LogWindow.html#function-logwindow","text":"LogWindow ( QWidget * parent = 0 )","title":"function LogWindow"},{"location":"api/Classes/classshapeworks_1_1LogWindow.html#function-add_message","text":"void add_message ( MessageType message_type , QString message ) add a message to the history Updated on 2023-10-24 at 22:16:01 +0000","title":"function add_message"},{"location":"api/Classes/classshapeworks_1_1Logging.html","text":"shapeworks::Logging Module: Common Classes ShapeWorks Logging Library. More... #include Public Functions Name Logging & Instance () Return the singleton instance. void open_file_log (const std::string & filename) Create a file log. bool check_log_open () const Return if the log is open. std::string get_log_filename () const Return the log filename. void log_message (const std::string & message, const int line, const char * file) const Log a message, use SW_LOG macro. void log_stack (const std::string & message) const Log a stack trace message, use SW_LOG_STACK macro. void log_error (const std::string & message, const int line, const char * file) const Log an error, use SW_ERROR macro. void show_message (const std::string & message, const int line, const char * file) const Log a message, use SW_MESSAGE macro. void show_status (const std::string & message, const int line, const char * file) const Log a message, use SW_STATUS macro. void show_progress (double value, const std::string & message) Display progress (0-100) void log_debug (const std::string & message, const int line, const char * file) const Log a debug message, use SW_DEBUG macro. void log_warning (const std::string & message, const int line, const char * file) const Log a warning message, use SW_WARN macro. void close_log () Close the log, use SW_CLOSE_LOG macro. void set_error_callback (const std::function< void(std::string)> & callback) Set an error callback function to be called whenever an error is raised. void set_message_callback (const std::function< void(std::string)> & callback) Set a message callback function to be called whenever an message is posted. void set_warning_callback (const std::function< void(std::string)> & callback) Set a warning callback function to be called whenever a warning is posted. void set_debug_callback (const std::function< void(std::string)> & callback) Set a debug message callback function to be called whenever a debug message is posted. void set_status_callback (const std::function< void(std::string)> & callback) Set a status callback function to be called whenever a status message is posted. void set_progress_callback (const std::function< void(double, std::string)> & callback) Set a progress callback function to be called whenever a progress update is posted. Detailed Description class shapeworks :: Logging ; ShapeWorks Logging Library. The Logging class supports univeral console and file logging. To use the ShapeWorks logging library, use the pre-defined macros: Normal log message: SW_LOG ( \"message\" ) Warning: SW_WARN ( \"warning\" ) Error: SW_ERROR ( \"error\" ) Debug: SW_DEBUG ( \"debug\" ) Output (assuming it was line 25 of Analyze.cpp and SW_LOG_LEVEL=debug): [ 2022-08-18 11 : 40 : 01.021 ] [ debug ] [ Analyze . cpp | 25 ] debug The logging macros using the fmt library. Read more here: https://github.com/fmtlib/fmt Example: int mode = 10 ; double eigen_value = 42.3 ; SW_LOG ( \"eigen value [{}]: {:.2f}\" , mode , eigen_value ); Output: [ 2022-08-18 11 : 37 : 42.613 ] [ info ] eigen value [ 10 ] : 42.32 Public Functions Documentation function Instance static Logging & Instance () Return the singleton instance. function open_file_log void open_file_log ( const std :: string & filename ) Create a file log. function check_log_open bool check_log_open () const Return if the log is open. function get_log_filename std :: string get_log_filename () const Return the log filename. function log_message void log_message ( const std :: string & message , const int line , const char * file ) const Log a message, use SW_LOG macro. function log_stack void log_stack ( const std :: string & message ) const Log a stack trace message, use SW_LOG_STACK macro. function log_error void log_error ( const std :: string & message , const int line , const char * file ) const Log an error, use SW_ERROR macro. function show_message void show_message ( const std :: string & message , const int line , const char * file ) const Log a message, use SW_MESSAGE macro. function show_status void show_status ( const std :: string & message , const int line , const char * file ) const Log a message, use SW_STATUS macro. function show_progress void show_progress ( double value , const std :: string & message ) Display progress (0-100) function log_debug void log_debug ( const std :: string & message , const int line , const char * file ) const Log a debug message, use SW_DEBUG macro. function log_warning void log_warning ( const std :: string & message , const int line , const char * file ) const Log a warning message, use SW_WARN macro. function close_log void close_log () Close the log, use SW_CLOSE_LOG macro. function set_error_callback void set_error_callback ( const std :: function < void ( std :: string ) > & callback ) Set an error callback function to be called whenever an error is raised. function set_message_callback void set_message_callback ( const std :: function < void ( std :: string ) > & callback ) Set a message callback function to be called whenever an message is posted. function set_warning_callback void set_warning_callback ( const std :: function < void ( std :: string ) > & callback ) Set a warning callback function to be called whenever a warning is posted. function set_debug_callback void set_debug_callback ( const std :: function < void ( std :: string ) > & callback ) Set a debug message callback function to be called whenever a debug message is posted. function set_status_callback void set_status_callback ( const std :: function < void ( std :: string ) > & callback ) Set a status callback function to be called whenever a status message is posted. function set_progress_callback void set_progress_callback ( const std :: function < void ( double , std :: string ) > & callback ) Set a progress callback function to be called whenever a progress update is posted. Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Logging"},{"location":"api/Classes/classshapeworks_1_1Logging.html#shapeworkslogging","text":"Module: Common Classes ShapeWorks Logging Library. More... #include ","title":"shapeworks::Logging"},{"location":"api/Classes/classshapeworks_1_1Logging.html#public-functions","text":"Name Logging & Instance () Return the singleton instance. void open_file_log (const std::string & filename) Create a file log. bool check_log_open () const Return if the log is open. std::string get_log_filename () const Return the log filename. void log_message (const std::string & message, const int line, const char * file) const Log a message, use SW_LOG macro. void log_stack (const std::string & message) const Log a stack trace message, use SW_LOG_STACK macro. void log_error (const std::string & message, const int line, const char * file) const Log an error, use SW_ERROR macro. void show_message (const std::string & message, const int line, const char * file) const Log a message, use SW_MESSAGE macro. void show_status (const std::string & message, const int line, const char * file) const Log a message, use SW_STATUS macro. void show_progress (double value, const std::string & message) Display progress (0-100) void log_debug (const std::string & message, const int line, const char * file) const Log a debug message, use SW_DEBUG macro. void log_warning (const std::string & message, const int line, const char * file) const Log a warning message, use SW_WARN macro. void close_log () Close the log, use SW_CLOSE_LOG macro. void set_error_callback (const std::function< void(std::string)> & callback) Set an error callback function to be called whenever an error is raised. void set_message_callback (const std::function< void(std::string)> & callback) Set a message callback function to be called whenever an message is posted. void set_warning_callback (const std::function< void(std::string)> & callback) Set a warning callback function to be called whenever a warning is posted. void set_debug_callback (const std::function< void(std::string)> & callback) Set a debug message callback function to be called whenever a debug message is posted. void set_status_callback (const std::function< void(std::string)> & callback) Set a status callback function to be called whenever a status message is posted. void set_progress_callback (const std::function< void(double, std::string)> & callback) Set a progress callback function to be called whenever a progress update is posted.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Logging.html#detailed-description","text":"class shapeworks :: Logging ; ShapeWorks Logging Library. The Logging class supports univeral console and file logging. To use the ShapeWorks logging library, use the pre-defined macros: Normal log message: SW_LOG ( \"message\" ) Warning: SW_WARN ( \"warning\" ) Error: SW_ERROR ( \"error\" ) Debug: SW_DEBUG ( \"debug\" ) Output (assuming it was line 25 of Analyze.cpp and SW_LOG_LEVEL=debug): [ 2022-08-18 11 : 40 : 01.021 ] [ debug ] [ Analyze . cpp | 25 ] debug The logging macros using the fmt library. Read more here: https://github.com/fmtlib/fmt Example: int mode = 10 ; double eigen_value = 42.3 ; SW_LOG ( \"eigen value [{}]: {:.2f}\" , mode , eigen_value ); Output: [ 2022-08-18 11 : 37 : 42.613 ] [ info ] eigen value [ 10 ] : 42.32","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Logging.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-instance","text":"static Logging & Instance () Return the singleton instance.","title":"function Instance"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-open_file_log","text":"void open_file_log ( const std :: string & filename ) Create a file log.","title":"function open_file_log"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-check_log_open","text":"bool check_log_open () const Return if the log is open.","title":"function check_log_open"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-get_log_filename","text":"std :: string get_log_filename () const Return the log filename.","title":"function get_log_filename"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-log_message","text":"void log_message ( const std :: string & message , const int line , const char * file ) const Log a message, use SW_LOG macro.","title":"function log_message"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-log_stack","text":"void log_stack ( const std :: string & message ) const Log a stack trace message, use SW_LOG_STACK macro.","title":"function log_stack"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-log_error","text":"void log_error ( const std :: string & message , const int line , const char * file ) const Log an error, use SW_ERROR macro.","title":"function log_error"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-show_message","text":"void show_message ( const std :: string & message , const int line , const char * file ) const Log a message, use SW_MESSAGE macro.","title":"function show_message"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-show_status","text":"void show_status ( const std :: string & message , const int line , const char * file ) const Log a message, use SW_STATUS macro.","title":"function show_status"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-show_progress","text":"void show_progress ( double value , const std :: string & message ) Display progress (0-100)","title":"function show_progress"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-log_debug","text":"void log_debug ( const std :: string & message , const int line , const char * file ) const Log a debug message, use SW_DEBUG macro.","title":"function log_debug"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-log_warning","text":"void log_warning ( const std :: string & message , const int line , const char * file ) const Log a warning message, use SW_WARN macro.","title":"function log_warning"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-close_log","text":"void close_log () Close the log, use SW_CLOSE_LOG macro.","title":"function close_log"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-set_error_callback","text":"void set_error_callback ( const std :: function < void ( std :: string ) > & callback ) Set an error callback function to be called whenever an error is raised.","title":"function set_error_callback"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-set_message_callback","text":"void set_message_callback ( const std :: function < void ( std :: string ) > & callback ) Set a message callback function to be called whenever an message is posted.","title":"function set_message_callback"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-set_warning_callback","text":"void set_warning_callback ( const std :: function < void ( std :: string ) > & callback ) Set a warning callback function to be called whenever a warning is posted.","title":"function set_warning_callback"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-set_debug_callback","text":"void set_debug_callback ( const std :: function < void ( std :: string ) > & callback ) Set a debug message callback function to be called whenever a debug message is posted.","title":"function set_debug_callback"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-set_status_callback","text":"void set_status_callback ( const std :: function < void ( std :: string ) > & callback ) Set a status callback function to be called whenever a status message is posted.","title":"function set_status_callback"},{"location":"api/Classes/classshapeworks_1_1Logging.html#function-set_progress_callback","text":"void set_progress_callback ( const std :: function < void ( double , std :: string ) > & callback ) Set a progress callback function to be called whenever a progress update is posted. Updated on 2023-10-24 at 22:16:02 +0000","title":"function set_progress_callback"},{"location":"api/Classes/classshapeworks_1_1MatrixContainer.html","text":"shapeworks::MatrixContainer Public Attributes Name Eigen::MatrixXd matrix_ Public Attributes Documentation variable matrix_ Eigen :: MatrixXd matrix_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MatrixContainer"},{"location":"api/Classes/classshapeworks_1_1MatrixContainer.html#shapeworksmatrixcontainer","text":"","title":"shapeworks::MatrixContainer"},{"location":"api/Classes/classshapeworks_1_1MatrixContainer.html#public-attributes","text":"Name Eigen::MatrixXd matrix_","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1MatrixContainer.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1MatrixContainer.html#variable-matrix_","text":"Eigen :: MatrixXd matrix_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable matrix_"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html","text":"shapeworks::MeanCurvatureContainer More... Inherits from shapeworks::GenericContainerArray< TNumericType > , std::vector< GenericContainer< T >::Pointer >, shapeworks::Observer Public Types Name typedef TNumericType NumericType typedef MeanCurvatureContainer Self typedef GenericContainerArray < TNumericType > Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef ParticleSystem ParticleSystemType typedef ParticleSystemType::PointType PointType typedef vnl_vector_fixed< TNumericType, VDimension > VnlVectorType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ParticleMeanCurvatureAttribute , GenericContainerArray ) void SetVerbosity (unsigned int val) unsigned int GetVerbosity () virtual void PositionAddEventCallback (itk::Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (itk::Object * o, const itk::EventObject & e) virtual void DomainAddEventCallback (itk::Object * o, const itk::EventObject & e) void ComputeMeanCurvature (const ParticleSystemType * system, unsigned int idx, unsigned int dom) virtual void ComputeCurvatureStatistics (const ParticleSystemType * , unsigned int d) double GetMeanCurvature (int d) double GetCurvatureStandardDeviation (int d) Protected Functions Name MeanCurvatureContainer () virtual ~MeanCurvatureContainer () void PrintSelf (std::ostream & os, itk::Indent indent) const Additional inherited members Public Types inherited from shapeworks::GenericContainerArray< TNumericType > Name typedef T DataType Public Functions inherited from shapeworks::GenericContainerArray< TNumericType > Name virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void ZeroAllValues () Protected Functions inherited from shapeworks::GenericContainerArray< TNumericType > Name GenericContainerArray () virtual ~GenericContainerArray () Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks Detailed Description template < class TNumericType , unsigned int VDimension > class shapeworks :: MeanCurvatureContainer ; Public Types Documentation typedef NumericType typedef TNumericType shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: NumericType ; Standard class typedefs typedef Self typedef MeanCurvatureContainer shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: Self ; typedef Superclass typedef GenericContainerArray < TNumericType > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: ConstWeakPointer ; typedef ParticleSystemType typedef ParticleSystem shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: ParticleSystemType ; Numeric types. typedef PointType typedef ParticleSystemType :: PointType shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: PointType ; typedef VnlVectorType typedef vnl_vector_fixed < TNumericType , VDimension > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: VnlVectorType ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleMeanCurvatureAttribute , GenericContainerArray ) Run-time type information (and related methods). function SetVerbosity inline void SetVerbosity ( unsigned int val ) function GetVerbosity inline unsigned int GetVerbosity () function PositionAddEventCallback inline virtual void PositionAddEventCallback ( itk :: Object * o , const itk :: EventObject & e ) function PositionSetEventCallback inline virtual void PositionSetEventCallback ( itk :: Object * o , const itk :: EventObject & e ) function DomainAddEventCallback inline virtual void DomainAddEventCallback ( itk :: Object * o , const itk :: EventObject & e ) function ComputeMeanCurvature inline void ComputeMeanCurvature ( const ParticleSystemType * system , unsigned int idx , unsigned int dom ) function ComputeCurvatureStatistics virtual void ComputeCurvatureStatistics ( const ParticleSystemType * , unsigned int d ) Compute the mean and std deviation of the curvature on the image surface. function GetMeanCurvature inline double GetMeanCurvature ( int d ) function GetCurvatureStandardDeviation inline double GetCurvatureStandardDeviation ( int d ) Protected Functions Documentation function MeanCurvatureContainer inline MeanCurvatureContainer () function ~MeanCurvatureContainer inline virtual ~ MeanCurvatureContainer () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeanCurvatureContainer"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#shapeworksmeancurvaturecontainer","text":"More... Inherits from shapeworks::GenericContainerArray< TNumericType > , std::vector< GenericContainer< T >::Pointer >, shapeworks::Observer","title":"shapeworks::MeanCurvatureContainer"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#public-types","text":"Name typedef TNumericType NumericType typedef MeanCurvatureContainer Self typedef GenericContainerArray < TNumericType > Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef ParticleSystem ParticleSystemType typedef ParticleSystemType::PointType PointType typedef vnl_vector_fixed< TNumericType, VDimension > VnlVectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ParticleMeanCurvatureAttribute , GenericContainerArray ) void SetVerbosity (unsigned int val) unsigned int GetVerbosity () virtual void PositionAddEventCallback (itk::Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (itk::Object * o, const itk::EventObject & e) virtual void DomainAddEventCallback (itk::Object * o, const itk::EventObject & e) void ComputeMeanCurvature (const ParticleSystemType * system, unsigned int idx, unsigned int dom) virtual void ComputeCurvatureStatistics (const ParticleSystemType * , unsigned int d) double GetMeanCurvature (int d) double GetCurvatureStandardDeviation (int d)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#protected-functions","text":"Name MeanCurvatureContainer () virtual ~MeanCurvatureContainer () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#additional-inherited-members","text":"Public Types inherited from shapeworks::GenericContainerArray< TNumericType > Name typedef T DataType Public Functions inherited from shapeworks::GenericContainerArray< TNumericType > Name virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void ZeroAllValues () Protected Functions inherited from shapeworks::GenericContainerArray< TNumericType > Name GenericContainerArray () virtual ~GenericContainerArray () Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#detailed-description","text":"template < class TNumericType , unsigned int VDimension > class shapeworks :: MeanCurvatureContainer ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-numerictype","text":"typedef TNumericType shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: NumericType ; Standard class typedefs","title":"typedef NumericType"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-self","text":"typedef MeanCurvatureContainer shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-superclass","text":"typedef GenericContainerArray < TNumericType > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-particlesystemtype","text":"typedef ParticleSystem shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: ParticleSystemType ; Numeric types.","title":"typedef ParticleSystemType"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-pointtype","text":"typedef ParticleSystemType :: PointType shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#typedef-vnlvectortype","text":"typedef vnl_vector_fixed < TNumericType , VDimension > shapeworks :: MeanCurvatureContainer < TNumericType , VDimension >:: VnlVectorType ;","title":"typedef VnlVectorType"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-itktypemacro","text":"itkTypeMacro ( ParticleMeanCurvatureAttribute , GenericContainerArray ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-setverbosity","text":"inline void SetVerbosity ( unsigned int val )","title":"function SetVerbosity"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-getverbosity","text":"inline unsigned int GetVerbosity ()","title":"function GetVerbosity"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( itk :: Object * o , const itk :: EventObject & e )","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-positionseteventcallback","text":"inline virtual void PositionSetEventCallback ( itk :: Object * o , const itk :: EventObject & e )","title":"function PositionSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-domainaddeventcallback","text":"inline virtual void DomainAddEventCallback ( itk :: Object * o , const itk :: EventObject & e )","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-computemeancurvature","text":"inline void ComputeMeanCurvature ( const ParticleSystemType * system , unsigned int idx , unsigned int dom )","title":"function ComputeMeanCurvature"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-computecurvaturestatistics","text":"virtual void ComputeCurvatureStatistics ( const ParticleSystemType * , unsigned int d ) Compute the mean and std deviation of the curvature on the image surface.","title":"function ComputeCurvatureStatistics"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-getmeancurvature","text":"inline double GetMeanCurvature ( int d )","title":"function GetMeanCurvature"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-getcurvaturestandarddeviation","text":"inline double GetCurvatureStandardDeviation ( int d )","title":"function GetCurvatureStandardDeviation"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-meancurvaturecontainer","text":"inline MeanCurvatureContainer ()","title":"function MeanCurvatureContainer"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-meancurvaturecontainer_1","text":"inline virtual ~ MeanCurvatureContainer ()","title":"function ~MeanCurvatureContainer"},{"location":"api/Classes/classshapeworks_1_1MeanCurvatureContainer.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1Mesh.html","text":"shapeworks::Mesh Module: Mesh Classes More... #include Public Types Name enum FieldType enum AlignmentType enum DistanceMethod enum CurvatureType enum SubdivisionType using vtkSmartPointer< vtkPolyData > MeshType using vtkSmartPointer< vtkPoints > MeshPoints Public Functions Name Mesh (const std::string & pathname) Mesh (MeshType meshPtr) Mesh (const Mesh & orig) Mesh ( Mesh && orig) Mesh & operator= (const Mesh & orig) Mesh (const Eigen::MatrixXd & points, const Eigen::MatrixXi & faces) Mesh & operator= ( Mesh && orig) Mesh & operator+= (const Mesh & otherMesh) append two meshes MeshType getVTKMesh () const return the current mesh Mesh & write (const std::string & pathname, bool binaryFile =false) writes mesh, format specified by filename extension Mesh & coverage (const Mesh & otherMesh, bool allowBackIntersections =true, double angleThreshold =0, double backSearchRadius =0) determines coverage between current mesh and another mesh (e.g. acetabular cup / femoral head) Mesh & smooth (int iterations =0, double relaxation =0.0) applies laplacian smoothing Mesh & smoothSinc (int iterations =0, double passband =0.0) applies vtk windowed sinc smoothing Mesh & remesh (int numVertices, double adaptivity =1.0) applies remeshing using approximated centroidal voronoi diagrams for a given number of vertices and adaptivity Mesh & remeshPercent (double percentage, double adaptivity =1.0) applies remeshing using approximated centroidal voronoi diagrams for a given percentage of vertices and adaptivity Mesh & invertNormals () handle flipping normals Mesh & reflect (const Axis & axis, const Vector3 & origin = makeVector ({0.0, 0.0, 0.0})) reflect meshes with respect to a specified center and specific axis MeshTransform createTransform (const Mesh & target, AlignmentType align =Similarity, unsigned iterations =10) Mesh & applyTransform (const MeshTransform transform) applies the given transformation to the mesh Mesh & rotate (const double angle, const Axis axis) applies the given rotation to the given axis Mesh & fillHoles (double hole_size =1000.0) finds holes in a mesh and closes them Mesh & clean () clean mesh Mesh & probeVolume (const Image & image) samples image data values at point locations specified by image Mesh & clip (const Plane plane) clips a mesh using a cutting plane Mesh & translate (const Vector3 & v) helper to translate mesh Mesh & scale (const Vector3 & v) helper to scale mesh PhysicalRegion boundingBox () const computes bounding box of current mesh Mesh & fixElement () fix element winding of mesh Mesh & fixNonManifold () Attempt to fix non-manifold edges. bool detectNonManifold () Detect if mesh contain non-manifold edges. bool detectTriangular () Detect if mesh is triangular;. std::vector< Field > distance (const Mesh & target, const DistanceMethod method =PointToCell) const Mesh & clipClosedSurface (const Plane plane) clips a mesh using a cutting plane resulting in a closed surface Mesh & computeNormals () computes and adds oriented point and cell normals Point3 closestPoint (const Point3 point, double & distance, vtkIdType & face_id) const int closestPointId (const Point3 point) const returns closest point id in this mesh to the given point in space double geodesicDistance (int source, int target) const computes geodesic distance between two vertices (specified by their indices) on mesh Field geodesicDistance (const Point3 landmark) const computes geodesic distance between a point (landmark) and each vertex on mesh Field geodesicDistance (const std::vector< Point3 > curve) const computes geodesic distance between a set of points (curve) and each vertex on mesh Field curvature (const CurvatureType type =Principal) const computes curvature using principal (default) or gaussian or mean algorithms void computeFieldGradient (const std::string & field) const compute the gradient of a scalar field for all vertices Eigen::Vector3d computeFieldGradientAtPoint (const std::string & field, const Point3 & query) const compute the gradient of a scalar field at a point double interpolateFieldAtPoint (const std::string & field, const Point3 & query) const interpolate a scalar field at a given point Mesh & applySubdivisionFilter (const SubdivisionType type =Butterfly, int subdivision =1) applies subdivision filter (butterfly (default) or loop) Image toImage ( PhysicalRegion region = PhysicalRegion (), Point3 spacing =Point3({1., 1., 1.})) const rasterizes specified region to create binary image of desired dims (default: unit spacing) Image toDistanceTransform ( PhysicalRegion region = PhysicalRegion (), const Point3 spacing =Point3({1., 1., 1.}), const Dims padding =Dims({1, 1, 1})) const converts specified region to distance transform image (default: unit spacing) with (logical) padding Mesh & computeThickness ( Image & image, Image * dt =nullptr, double max_dist =10000, double median_radius =5.0, std::string distance_mesh =\"\") assign cortical thickness values from mesh points Mesh & computeLandmarkGeodesics (const std::vector< Point3 > & landmarks) compute geodesic distances to landmarks and assign as fields Point3 center () const center of mesh Point3 centerOfMass () const center of mass of mesh int numPoints () const number of points int numFaces () const number of faces Eigen::MatrixXd points () const matrix with number of points with (x,y,z) coordinates of each point Eigen::MatrixXi faces () const matrix with number of faces with indices of the three points from which each face is composed Point3 getPoint (int id) const (x,y,z) coordinates of vertex at given index IPoint3 getFace (int id) const return indices of the three points with which the face at the given index is composed std::vector< std::string > getFieldNames () const print all field names in mesh Mesh & setField (const std::string name, Array array, const FieldType type) sets the given field for points or faces with array (*does not copy array's values) Field getField (const std::string & name, const FieldType type) const gets a pointer to the requested field of points or faces, null if field doesn't exist void setFieldValue (const std::string & name, int idx, double value) sets the given index of field to value double getFieldValue (const std::string & name, int idx) const gets the value at the given index of field (NOTE: returns first component of vector fields) Eigen::VectorXd getMultiFieldValue (const std::string & name, int idx) const gets the multi value at the given index of [vertex] field bool compareAllPoints (const Mesh & other_mesh) const compare if values of the points in two (corresponding) meshes are (eps)equal bool compareAllFaces (const Mesh & other_mesh) const compare if face indices in two (corresponding) meshes are equal bool compareAllFields (const Mesh & other_mesh, const double eps =-1.0) const compare if all fields in two meshes are (eps)equal bool compareField (const Mesh & other_mesh, const std::string & name1, const std::string & name2 =\"\", const double eps =-1.0) const compare field of meshes to be (eps)equal (same field for both if only one specified) bool compare (const Mesh & other_mesh, const double eps =-1.0) const compare meshes bool operator== (const Mesh & other) const compare meshes double getFFCValue (Eigen::Vector3d query) const Gets values for FFCs. Eigen::Vector3d getFFCGradient (Eigen::Vector3d query) const Gets gradients for FFCs. MeshPoints getIGLMesh (Eigen::MatrixXd & V, Eigen::MatrixXi & F) const Formats mesh into an IGL format. vtkSmartPointer< vtkPolyData > clipByField (const std::string & name, double value) Clips the mesh according to a field value. vtkSmartPointer< vtkStaticCellLocator > getCellLocator () const Returns the cell locator. int getClosestFace (const Point3 & point) const Eigen::Vector3d computeBarycentricCoordinates (const Eigen::Vector3d & pt, int face) const Computes baricentric coordinates given a query point and a face number. std::vector< std::string > getSupportedTypes () Return supported file types. Friends Name struct SharedCommandData Detailed Description class shapeworks :: Mesh ; This class encapsulates a Mesh and operations that can be performed on meshes Public Types Documentation enum FieldType Enumerator Value Description Point Face enum AlignmentType Enumerator Value Description Rigid Similarity Affine enum DistanceMethod Enumerator Value Description PointToPoint PointToCell enum CurvatureType Enumerator Value Description Principal Gaussian Mean enum SubdivisionType Enumerator Value Description Butterfly Loop using MeshType using shapeworks :: Mesh :: MeshType = vtkSmartPointer < vtkPolyData > ; using MeshPoints using shapeworks :: Mesh :: MeshPoints = vtkSmartPointer < vtkPoints > ; Public Functions Documentation function Mesh Mesh ( const std :: string & pathname ) function Mesh inline Mesh ( MeshType meshPtr ) function Mesh inline Mesh ( const Mesh & orig ) function Mesh inline Mesh ( Mesh && orig ) function operator= inline Mesh & operator = ( const Mesh & orig ) function Mesh Mesh ( const Eigen :: MatrixXd & points , const Eigen :: MatrixXi & faces ) function operator= inline Mesh & operator = ( Mesh && orig ) function operator+= Mesh & operator += ( const Mesh & otherMesh ) append two meshes function getVTKMesh inline MeshType getVTKMesh () const return the current mesh function write Mesh & write ( const std :: string & pathname , bool binaryFile = false ) writes mesh, format specified by filename extension function coverage Mesh & coverage ( const Mesh & otherMesh , bool allowBackIntersections = true , double angleThreshold = 0 , double backSearchRadius = 0 ) determines coverage between current mesh and another mesh (e.g. acetabular cup / femoral head) function smooth Mesh & smooth ( int iterations = 0 , double relaxation = 0.0 ) applies laplacian smoothing function smoothSinc Mesh & smoothSinc ( int iterations = 0 , double passband = 0.0 ) applies vtk windowed sinc smoothing function remesh Mesh & remesh ( int numVertices , double adaptivity = 1.0 ) applies remeshing using approximated centroidal voronoi diagrams for a given number of vertices and adaptivity function remeshPercent Mesh & remeshPercent ( double percentage , double adaptivity = 1.0 ) applies remeshing using approximated centroidal voronoi diagrams for a given percentage of vertices and adaptivity function invertNormals Mesh & invertNormals () handle flipping normals function reflect Mesh & reflect ( const Axis & axis , const Vector3 & origin = makeVector ({ 0.0 , 0.0 , 0.0 }) ) reflect meshes with respect to a specified center and specific axis function createTransform MeshTransform createTransform ( const Mesh & target , AlignmentType align = Similarity , unsigned iterations = 10 ) creates transform to target mesh using specified AlignmentType (Mesh::Rigid, Mesh::Similarity, Mesh::Affine) for specified number of iterations function applyTransform Mesh & applyTransform ( const MeshTransform transform ) applies the given transformation to the mesh function rotate Mesh & rotate ( const double angle , const Axis axis ) applies the given rotation to the given axis function fillHoles Mesh & fillHoles ( double hole_size = 1000.0 ) finds holes in a mesh and closes them function clean Mesh & clean () clean mesh function probeVolume Mesh & probeVolume ( const Image & image ) samples image data values at point locations specified by image function clip Mesh & clip ( const Plane plane ) clips a mesh using a cutting plane function translate Mesh & translate ( const Vector3 & v ) helper to translate mesh function scale Mesh & scale ( const Vector3 & v ) helper to scale mesh function boundingBox PhysicalRegion boundingBox () const computes bounding box of current mesh function fixElement Mesh & fixElement () fix element winding of mesh function fixNonManifold Mesh & fixNonManifold () Attempt to fix non-manifold edges. function detectNonManifold bool detectNonManifold () Detect if mesh contain non-manifold edges. function detectTriangular bool detectTriangular () Detect if mesh is triangular;. function distance std :: vector < Field > distance ( const Mesh & target , const DistanceMethod method = PointToCell ) const Computes distance from each vertex to closest cell or point in target mesh, specified as PointToCell (default) or PointToPoint. Returns Fields containing distance to target and ids of the associated cells or points. function clipClosedSurface Mesh & clipClosedSurface ( const Plane plane ) clips a mesh using a cutting plane resulting in a closed surface function computeNormals Mesh & computeNormals () computes and adds oriented point and cell normals function closestPoint Point3 closestPoint ( const Point3 point , double & distance , vtkIdType & face_id ) const Returns closest point on this mesh to the given point in space. In addition, returns by reference: the distance of the point in space from this mesh the face_id containing the closest point function closestPointId int closestPointId ( const Point3 point ) const returns closest point id in this mesh to the given point in space function geodesicDistance double geodesicDistance ( int source , int target ) const computes geodesic distance between two vertices (specified by their indices) on mesh function geodesicDistance Field geodesicDistance ( const Point3 landmark ) const computes geodesic distance between a point (landmark) and each vertex on mesh function geodesicDistance Field geodesicDistance ( const std :: vector < Point3 > curve ) const computes geodesic distance between a set of points (curve) and each vertex on mesh function curvature Field curvature ( const CurvatureType type = Principal ) const computes curvature using principal (default) or gaussian or mean algorithms function computeFieldGradient void computeFieldGradient ( const std :: string & field ) const compute the gradient of a scalar field for all vertices function computeFieldGradientAtPoint Eigen :: Vector3d computeFieldGradientAtPoint ( const std :: string & field , const Point3 & query ) const compute the gradient of a scalar field at a point function interpolateFieldAtPoint double interpolateFieldAtPoint ( const std :: string & field , const Point3 & query ) const interpolate a scalar field at a given point function applySubdivisionFilter Mesh & applySubdivisionFilter ( const SubdivisionType type = Butterfly , int subdivision = 1 ) applies subdivision filter (butterfly (default) or loop) function toImage Image toImage ( PhysicalRegion region = PhysicalRegion (), Point3 spacing = Point3 ({ 1. , 1. , 1. }) ) const rasterizes specified region to create binary image of desired dims (default: unit spacing) function toDistanceTransform Image toDistanceTransform ( PhysicalRegion region = PhysicalRegion (), const Point3 spacing = Point3 ({ 1. , 1. , 1. }), const Dims padding = Dims ({ 1 , 1 , 1 }) ) const converts specified region to distance transform image (default: unit spacing) with (logical) padding function computeThickness Mesh & computeThickness ( Image & image , Image * dt = nullptr , double max_dist = 10000 , double median_radius = 5.0 , std :: string distance_mesh = \"\" ) assign cortical thickness values from mesh points function computeLandmarkGeodesics Mesh & computeLandmarkGeodesics ( const std :: vector < Point3 > & landmarks ) compute geodesic distances to landmarks and assign as fields function center Point3 center () const center of mesh function centerOfMass Point3 centerOfMass () const center of mass of mesh function numPoints inline int numPoints () const number of points function numFaces inline int numFaces () const number of faces function points Eigen :: MatrixXd points () const matrix with number of points with (x,y,z) coordinates of each point function faces Eigen :: MatrixXi faces () const matrix with number of faces with indices of the three points from which each face is composed function getPoint Point3 getPoint ( int id ) const (x,y,z) coordinates of vertex at given index function getFace IPoint3 getFace ( int id ) const return indices of the three points with which the face at the given index is composed function getFieldNames std :: vector < std :: string > getFieldNames () const print all field names in mesh function setField Mesh & setField ( const std :: string name , Array array , const FieldType type ) sets the given field for points or faces with array (*does not copy array's values) function getField Field getField ( const std :: string & name , const FieldType type ) const gets a pointer to the requested field of points or faces, null if field doesn't exist function setFieldValue void setFieldValue ( const std :: string & name , int idx , double value ) sets the given index of field to value function getFieldValue double getFieldValue ( const std :: string & name , int idx ) const gets the value at the given index of field (NOTE: returns first component of vector fields) function getMultiFieldValue Eigen :: VectorXd getMultiFieldValue ( const std :: string & name , int idx ) const gets the multi value at the given index of [vertex] field function compareAllPoints bool compareAllPoints ( const Mesh & other_mesh ) const compare if values of the points in two (corresponding) meshes are (eps)equal function compareAllFaces bool compareAllFaces ( const Mesh & other_mesh ) const compare if face indices in two (corresponding) meshes are equal function compareAllFields bool compareAllFields ( const Mesh & other_mesh , const double eps = -1.0 ) const compare if all fields in two meshes are (eps)equal function compareField bool compareField ( const Mesh & other_mesh , const std :: string & name1 , const std :: string & name2 = \"\" , const double eps = -1.0 ) const compare field of meshes to be (eps)equal (same field for both if only one specified) function compare bool compare ( const Mesh & other_mesh , const double eps = -1.0 ) const compare meshes function operator== inline bool operator == ( const Mesh & other ) const compare meshes function getFFCValue double getFFCValue ( Eigen :: Vector3d query ) const Gets values for FFCs. function getFFCGradient Eigen :: Vector3d getFFCGradient ( Eigen :: Vector3d query ) const Gets gradients for FFCs. function getIGLMesh MeshPoints getIGLMesh ( Eigen :: MatrixXd & V , Eigen :: MatrixXi & F ) const Formats mesh into an IGL format. function clipByField vtkSmartPointer < vtkPolyData > clipByField ( const std :: string & name , double value ) Clips the mesh according to a field value. function getCellLocator inline vtkSmartPointer < vtkStaticCellLocator > getCellLocator () const Returns the cell locator. function getClosestFace int getClosestFace ( const Point3 & point ) const function computeBarycentricCoordinates Eigen :: Vector3d computeBarycentricCoordinates ( const Eigen :: Vector3d & pt , int face ) const Computes baricentric coordinates given a query point and a face number. function getSupportedTypes static inline std :: vector < std :: string > getSupportedTypes () Return supported file types. Friends friend SharedCommandData friend struct SharedCommandData ( SharedCommandData ); Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Mesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#shapeworksmesh","text":"Module: Mesh Classes More... #include ","title":"shapeworks::Mesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#public-types","text":"Name enum FieldType enum AlignmentType enum DistanceMethod enum CurvatureType enum SubdivisionType using vtkSmartPointer< vtkPolyData > MeshType using vtkSmartPointer< vtkPoints > MeshPoints","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#public-functions","text":"Name Mesh (const std::string & pathname) Mesh (MeshType meshPtr) Mesh (const Mesh & orig) Mesh ( Mesh && orig) Mesh & operator= (const Mesh & orig) Mesh (const Eigen::MatrixXd & points, const Eigen::MatrixXi & faces) Mesh & operator= ( Mesh && orig) Mesh & operator+= (const Mesh & otherMesh) append two meshes MeshType getVTKMesh () const return the current mesh Mesh & write (const std::string & pathname, bool binaryFile =false) writes mesh, format specified by filename extension Mesh & coverage (const Mesh & otherMesh, bool allowBackIntersections =true, double angleThreshold =0, double backSearchRadius =0) determines coverage between current mesh and another mesh (e.g. acetabular cup / femoral head) Mesh & smooth (int iterations =0, double relaxation =0.0) applies laplacian smoothing Mesh & smoothSinc (int iterations =0, double passband =0.0) applies vtk windowed sinc smoothing Mesh & remesh (int numVertices, double adaptivity =1.0) applies remeshing using approximated centroidal voronoi diagrams for a given number of vertices and adaptivity Mesh & remeshPercent (double percentage, double adaptivity =1.0) applies remeshing using approximated centroidal voronoi diagrams for a given percentage of vertices and adaptivity Mesh & invertNormals () handle flipping normals Mesh & reflect (const Axis & axis, const Vector3 & origin = makeVector ({0.0, 0.0, 0.0})) reflect meshes with respect to a specified center and specific axis MeshTransform createTransform (const Mesh & target, AlignmentType align =Similarity, unsigned iterations =10) Mesh & applyTransform (const MeshTransform transform) applies the given transformation to the mesh Mesh & rotate (const double angle, const Axis axis) applies the given rotation to the given axis Mesh & fillHoles (double hole_size =1000.0) finds holes in a mesh and closes them Mesh & clean () clean mesh Mesh & probeVolume (const Image & image) samples image data values at point locations specified by image Mesh & clip (const Plane plane) clips a mesh using a cutting plane Mesh & translate (const Vector3 & v) helper to translate mesh Mesh & scale (const Vector3 & v) helper to scale mesh PhysicalRegion boundingBox () const computes bounding box of current mesh Mesh & fixElement () fix element winding of mesh Mesh & fixNonManifold () Attempt to fix non-manifold edges. bool detectNonManifold () Detect if mesh contain non-manifold edges. bool detectTriangular () Detect if mesh is triangular;. std::vector< Field > distance (const Mesh & target, const DistanceMethod method =PointToCell) const Mesh & clipClosedSurface (const Plane plane) clips a mesh using a cutting plane resulting in a closed surface Mesh & computeNormals () computes and adds oriented point and cell normals Point3 closestPoint (const Point3 point, double & distance, vtkIdType & face_id) const int closestPointId (const Point3 point) const returns closest point id in this mesh to the given point in space double geodesicDistance (int source, int target) const computes geodesic distance between two vertices (specified by their indices) on mesh Field geodesicDistance (const Point3 landmark) const computes geodesic distance between a point (landmark) and each vertex on mesh Field geodesicDistance (const std::vector< Point3 > curve) const computes geodesic distance between a set of points (curve) and each vertex on mesh Field curvature (const CurvatureType type =Principal) const computes curvature using principal (default) or gaussian or mean algorithms void computeFieldGradient (const std::string & field) const compute the gradient of a scalar field for all vertices Eigen::Vector3d computeFieldGradientAtPoint (const std::string & field, const Point3 & query) const compute the gradient of a scalar field at a point double interpolateFieldAtPoint (const std::string & field, const Point3 & query) const interpolate a scalar field at a given point Mesh & applySubdivisionFilter (const SubdivisionType type =Butterfly, int subdivision =1) applies subdivision filter (butterfly (default) or loop) Image toImage ( PhysicalRegion region = PhysicalRegion (), Point3 spacing =Point3({1., 1., 1.})) const rasterizes specified region to create binary image of desired dims (default: unit spacing) Image toDistanceTransform ( PhysicalRegion region = PhysicalRegion (), const Point3 spacing =Point3({1., 1., 1.}), const Dims padding =Dims({1, 1, 1})) const converts specified region to distance transform image (default: unit spacing) with (logical) padding Mesh & computeThickness ( Image & image, Image * dt =nullptr, double max_dist =10000, double median_radius =5.0, std::string distance_mesh =\"\") assign cortical thickness values from mesh points Mesh & computeLandmarkGeodesics (const std::vector< Point3 > & landmarks) compute geodesic distances to landmarks and assign as fields Point3 center () const center of mesh Point3 centerOfMass () const center of mass of mesh int numPoints () const number of points int numFaces () const number of faces Eigen::MatrixXd points () const matrix with number of points with (x,y,z) coordinates of each point Eigen::MatrixXi faces () const matrix with number of faces with indices of the three points from which each face is composed Point3 getPoint (int id) const (x,y,z) coordinates of vertex at given index IPoint3 getFace (int id) const return indices of the three points with which the face at the given index is composed std::vector< std::string > getFieldNames () const print all field names in mesh Mesh & setField (const std::string name, Array array, const FieldType type) sets the given field for points or faces with array (*does not copy array's values) Field getField (const std::string & name, const FieldType type) const gets a pointer to the requested field of points or faces, null if field doesn't exist void setFieldValue (const std::string & name, int idx, double value) sets the given index of field to value double getFieldValue (const std::string & name, int idx) const gets the value at the given index of field (NOTE: returns first component of vector fields) Eigen::VectorXd getMultiFieldValue (const std::string & name, int idx) const gets the multi value at the given index of [vertex] field bool compareAllPoints (const Mesh & other_mesh) const compare if values of the points in two (corresponding) meshes are (eps)equal bool compareAllFaces (const Mesh & other_mesh) const compare if face indices in two (corresponding) meshes are equal bool compareAllFields (const Mesh & other_mesh, const double eps =-1.0) const compare if all fields in two meshes are (eps)equal bool compareField (const Mesh & other_mesh, const std::string & name1, const std::string & name2 =\"\", const double eps =-1.0) const compare field of meshes to be (eps)equal (same field for both if only one specified) bool compare (const Mesh & other_mesh, const double eps =-1.0) const compare meshes bool operator== (const Mesh & other) const compare meshes double getFFCValue (Eigen::Vector3d query) const Gets values for FFCs. Eigen::Vector3d getFFCGradient (Eigen::Vector3d query) const Gets gradients for FFCs. MeshPoints getIGLMesh (Eigen::MatrixXd & V, Eigen::MatrixXi & F) const Formats mesh into an IGL format. vtkSmartPointer< vtkPolyData > clipByField (const std::string & name, double value) Clips the mesh according to a field value. vtkSmartPointer< vtkStaticCellLocator > getCellLocator () const Returns the cell locator. int getClosestFace (const Point3 & point) const Eigen::Vector3d computeBarycentricCoordinates (const Eigen::Vector3d & pt, int face) const Computes baricentric coordinates given a query point and a face number. std::vector< std::string > getSupportedTypes () Return supported file types.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#friends","text":"Name struct SharedCommandData","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#detailed-description","text":"class shapeworks :: Mesh ; This class encapsulates a Mesh and operations that can be performed on meshes","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#enum-fieldtype","text":"Enumerator Value Description Point Face","title":"enum FieldType"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#enum-alignmenttype","text":"Enumerator Value Description Rigid Similarity Affine","title":"enum AlignmentType"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#enum-distancemethod","text":"Enumerator Value Description PointToPoint PointToCell","title":"enum DistanceMethod"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#enum-curvaturetype","text":"Enumerator Value Description Principal Gaussian Mean","title":"enum CurvatureType"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#enum-subdivisiontype","text":"Enumerator Value Description Butterfly Loop","title":"enum SubdivisionType"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#using-meshtype","text":"using shapeworks :: Mesh :: MeshType = vtkSmartPointer < vtkPolyData > ;","title":"using MeshType"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#using-meshpoints","text":"using shapeworks :: Mesh :: MeshPoints = vtkSmartPointer < vtkPoints > ;","title":"using MeshPoints"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-mesh","text":"Mesh ( const std :: string & pathname )","title":"function Mesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-mesh_1","text":"inline Mesh ( MeshType meshPtr )","title":"function Mesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-mesh_2","text":"inline Mesh ( const Mesh & orig )","title":"function Mesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-mesh_3","text":"inline Mesh ( Mesh && orig )","title":"function Mesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-operator","text":"inline Mesh & operator = ( const Mesh & orig )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-mesh_4","text":"Mesh ( const Eigen :: MatrixXd & points , const Eigen :: MatrixXi & faces )","title":"function Mesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-operator_1","text":"inline Mesh & operator = ( Mesh && orig )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-operator_2","text":"Mesh & operator += ( const Mesh & otherMesh ) append two meshes","title":"function operator+="},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getvtkmesh","text":"inline MeshType getVTKMesh () const return the current mesh","title":"function getVTKMesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-write","text":"Mesh & write ( const std :: string & pathname , bool binaryFile = false ) writes mesh, format specified by filename extension","title":"function write"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-coverage","text":"Mesh & coverage ( const Mesh & otherMesh , bool allowBackIntersections = true , double angleThreshold = 0 , double backSearchRadius = 0 ) determines coverage between current mesh and another mesh (e.g. acetabular cup / femoral head)","title":"function coverage"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-smooth","text":"Mesh & smooth ( int iterations = 0 , double relaxation = 0.0 ) applies laplacian smoothing","title":"function smooth"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-smoothsinc","text":"Mesh & smoothSinc ( int iterations = 0 , double passband = 0.0 ) applies vtk windowed sinc smoothing","title":"function smoothSinc"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-remesh","text":"Mesh & remesh ( int numVertices , double adaptivity = 1.0 ) applies remeshing using approximated centroidal voronoi diagrams for a given number of vertices and adaptivity","title":"function remesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-remeshpercent","text":"Mesh & remeshPercent ( double percentage , double adaptivity = 1.0 ) applies remeshing using approximated centroidal voronoi diagrams for a given percentage of vertices and adaptivity","title":"function remeshPercent"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-invertnormals","text":"Mesh & invertNormals () handle flipping normals","title":"function invertNormals"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-reflect","text":"Mesh & reflect ( const Axis & axis , const Vector3 & origin = makeVector ({ 0.0 , 0.0 , 0.0 }) ) reflect meshes with respect to a specified center and specific axis","title":"function reflect"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-createtransform","text":"MeshTransform createTransform ( const Mesh & target , AlignmentType align = Similarity , unsigned iterations = 10 ) creates transform to target mesh using specified AlignmentType (Mesh::Rigid, Mesh::Similarity, Mesh::Affine) for specified number of iterations","title":"function createTransform"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-applytransform","text":"Mesh & applyTransform ( const MeshTransform transform ) applies the given transformation to the mesh","title":"function applyTransform"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-rotate","text":"Mesh & rotate ( const double angle , const Axis axis ) applies the given rotation to the given axis","title":"function rotate"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-fillholes","text":"Mesh & fillHoles ( double hole_size = 1000.0 ) finds holes in a mesh and closes them","title":"function fillHoles"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-clean","text":"Mesh & clean () clean mesh","title":"function clean"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-probevolume","text":"Mesh & probeVolume ( const Image & image ) samples image data values at point locations specified by image","title":"function probeVolume"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-clip","text":"Mesh & clip ( const Plane plane ) clips a mesh using a cutting plane","title":"function clip"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-translate","text":"Mesh & translate ( const Vector3 & v ) helper to translate mesh","title":"function translate"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-scale","text":"Mesh & scale ( const Vector3 & v ) helper to scale mesh","title":"function scale"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-boundingbox","text":"PhysicalRegion boundingBox () const computes bounding box of current mesh","title":"function boundingBox"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-fixelement","text":"Mesh & fixElement () fix element winding of mesh","title":"function fixElement"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-fixnonmanifold","text":"Mesh & fixNonManifold () Attempt to fix non-manifold edges.","title":"function fixNonManifold"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-detectnonmanifold","text":"bool detectNonManifold () Detect if mesh contain non-manifold edges.","title":"function detectNonManifold"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-detecttriangular","text":"bool detectTriangular () Detect if mesh is triangular;.","title":"function detectTriangular"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-distance","text":"std :: vector < Field > distance ( const Mesh & target , const DistanceMethod method = PointToCell ) const Computes distance from each vertex to closest cell or point in target mesh, specified as PointToCell (default) or PointToPoint. Returns Fields containing distance to target and ids of the associated cells or points.","title":"function distance"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-clipclosedsurface","text":"Mesh & clipClosedSurface ( const Plane plane ) clips a mesh using a cutting plane resulting in a closed surface","title":"function clipClosedSurface"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-computenormals","text":"Mesh & computeNormals () computes and adds oriented point and cell normals","title":"function computeNormals"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-closestpoint","text":"Point3 closestPoint ( const Point3 point , double & distance , vtkIdType & face_id ) const Returns closest point on this mesh to the given point in space. In addition, returns by reference: the distance of the point in space from this mesh the face_id containing the closest point","title":"function closestPoint"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-closestpointid","text":"int closestPointId ( const Point3 point ) const returns closest point id in this mesh to the given point in space","title":"function closestPointId"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-geodesicdistance","text":"double geodesicDistance ( int source , int target ) const computes geodesic distance between two vertices (specified by their indices) on mesh","title":"function geodesicDistance"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-geodesicdistance_1","text":"Field geodesicDistance ( const Point3 landmark ) const computes geodesic distance between a point (landmark) and each vertex on mesh","title":"function geodesicDistance"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-geodesicdistance_2","text":"Field geodesicDistance ( const std :: vector < Point3 > curve ) const computes geodesic distance between a set of points (curve) and each vertex on mesh","title":"function geodesicDistance"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-curvature","text":"Field curvature ( const CurvatureType type = Principal ) const computes curvature using principal (default) or gaussian or mean algorithms","title":"function curvature"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-computefieldgradient","text":"void computeFieldGradient ( const std :: string & field ) const compute the gradient of a scalar field for all vertices","title":"function computeFieldGradient"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-computefieldgradientatpoint","text":"Eigen :: Vector3d computeFieldGradientAtPoint ( const std :: string & field , const Point3 & query ) const compute the gradient of a scalar field at a point","title":"function computeFieldGradientAtPoint"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-interpolatefieldatpoint","text":"double interpolateFieldAtPoint ( const std :: string & field , const Point3 & query ) const interpolate a scalar field at a given point","title":"function interpolateFieldAtPoint"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-applysubdivisionfilter","text":"Mesh & applySubdivisionFilter ( const SubdivisionType type = Butterfly , int subdivision = 1 ) applies subdivision filter (butterfly (default) or loop)","title":"function applySubdivisionFilter"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-toimage","text":"Image toImage ( PhysicalRegion region = PhysicalRegion (), Point3 spacing = Point3 ({ 1. , 1. , 1. }) ) const rasterizes specified region to create binary image of desired dims (default: unit spacing)","title":"function toImage"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-todistancetransform","text":"Image toDistanceTransform ( PhysicalRegion region = PhysicalRegion (), const Point3 spacing = Point3 ({ 1. , 1. , 1. }), const Dims padding = Dims ({ 1 , 1 , 1 }) ) const converts specified region to distance transform image (default: unit spacing) with (logical) padding","title":"function toDistanceTransform"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-computethickness","text":"Mesh & computeThickness ( Image & image , Image * dt = nullptr , double max_dist = 10000 , double median_radius = 5.0 , std :: string distance_mesh = \"\" ) assign cortical thickness values from mesh points","title":"function computeThickness"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-computelandmarkgeodesics","text":"Mesh & computeLandmarkGeodesics ( const std :: vector < Point3 > & landmarks ) compute geodesic distances to landmarks and assign as fields","title":"function computeLandmarkGeodesics"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-center","text":"Point3 center () const center of mesh","title":"function center"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-centerofmass","text":"Point3 centerOfMass () const center of mass of mesh","title":"function centerOfMass"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-numpoints","text":"inline int numPoints () const number of points","title":"function numPoints"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-numfaces","text":"inline int numFaces () const number of faces","title":"function numFaces"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-points","text":"Eigen :: MatrixXd points () const matrix with number of points with (x,y,z) coordinates of each point","title":"function points"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-faces","text":"Eigen :: MatrixXi faces () const matrix with number of faces with indices of the three points from which each face is composed","title":"function faces"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getpoint","text":"Point3 getPoint ( int id ) const (x,y,z) coordinates of vertex at given index","title":"function getPoint"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getface","text":"IPoint3 getFace ( int id ) const return indices of the three points with which the face at the given index is composed","title":"function getFace"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getfieldnames","text":"std :: vector < std :: string > getFieldNames () const print all field names in mesh","title":"function getFieldNames"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-setfield","text":"Mesh & setField ( const std :: string name , Array array , const FieldType type ) sets the given field for points or faces with array (*does not copy array's values)","title":"function setField"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getfield","text":"Field getField ( const std :: string & name , const FieldType type ) const gets a pointer to the requested field of points or faces, null if field doesn't exist","title":"function getField"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-setfieldvalue","text":"void setFieldValue ( const std :: string & name , int idx , double value ) sets the given index of field to value","title":"function setFieldValue"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getfieldvalue","text":"double getFieldValue ( const std :: string & name , int idx ) const gets the value at the given index of field (NOTE: returns first component of vector fields)","title":"function getFieldValue"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getmultifieldvalue","text":"Eigen :: VectorXd getMultiFieldValue ( const std :: string & name , int idx ) const gets the multi value at the given index of [vertex] field","title":"function getMultiFieldValue"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-compareallpoints","text":"bool compareAllPoints ( const Mesh & other_mesh ) const compare if values of the points in two (corresponding) meshes are (eps)equal","title":"function compareAllPoints"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-compareallfaces","text":"bool compareAllFaces ( const Mesh & other_mesh ) const compare if face indices in two (corresponding) meshes are equal","title":"function compareAllFaces"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-compareallfields","text":"bool compareAllFields ( const Mesh & other_mesh , const double eps = -1.0 ) const compare if all fields in two meshes are (eps)equal","title":"function compareAllFields"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-comparefield","text":"bool compareField ( const Mesh & other_mesh , const std :: string & name1 , const std :: string & name2 = \"\" , const double eps = -1.0 ) const compare field of meshes to be (eps)equal (same field for both if only one specified)","title":"function compareField"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-compare","text":"bool compare ( const Mesh & other_mesh , const double eps = -1.0 ) const compare meshes","title":"function compare"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-operator_3","text":"inline bool operator == ( const Mesh & other ) const compare meshes","title":"function operator=="},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getffcvalue","text":"double getFFCValue ( Eigen :: Vector3d query ) const Gets values for FFCs.","title":"function getFFCValue"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getffcgradient","text":"Eigen :: Vector3d getFFCGradient ( Eigen :: Vector3d query ) const Gets gradients for FFCs.","title":"function getFFCGradient"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getiglmesh","text":"MeshPoints getIGLMesh ( Eigen :: MatrixXd & V , Eigen :: MatrixXi & F ) const Formats mesh into an IGL format.","title":"function getIGLMesh"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-clipbyfield","text":"vtkSmartPointer < vtkPolyData > clipByField ( const std :: string & name , double value ) Clips the mesh according to a field value.","title":"function clipByField"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getcelllocator","text":"inline vtkSmartPointer < vtkStaticCellLocator > getCellLocator () const Returns the cell locator.","title":"function getCellLocator"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getclosestface","text":"int getClosestFace ( const Point3 & point ) const","title":"function getClosestFace"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-computebarycentriccoordinates","text":"Eigen :: Vector3d computeBarycentricCoordinates ( const Eigen :: Vector3d & pt , int face ) const Computes baricentric coordinates given a query point and a face number.","title":"function computeBarycentricCoordinates"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#function-getsupportedtypes","text":"static inline std :: vector < std :: string > getSupportedTypes () Return supported file types.","title":"function getSupportedTypes"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#friends_1","text":"","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1Mesh.html#friend-sharedcommanddata","text":"friend struct SharedCommandData ( SharedCommandData ); Updated on 2023-10-24 at 22:16:02 +0000","title":"friend SharedCommandData"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html","text":"shapeworks::MeshCache Thread safe cache for meshes index by shape. More... #include Public Functions Name MeshCache () void set_cache_enabled (bool enabled) void set_memory_percent (int percent) MeshHandle get_mesh (const MeshWorkItem & vector) void insert_mesh (const MeshWorkItem & item, MeshHandle mesh) void clear () Detailed Description class shapeworks :: MeshCache ; Thread safe cache for meshes index by shape. The MeshCache implements a std::map keyed by shape (list of points) with MeshHandle values. It is thread-safe and can be used from any thread. Public Functions Documentation function MeshCache MeshCache () function set_cache_enabled inline void set_cache_enabled ( bool enabled ) function set_memory_percent inline void set_memory_percent ( int percent ) function get_mesh MeshHandle get_mesh ( const MeshWorkItem & vector ) function insert_mesh void insert_mesh ( const MeshWorkItem & item , MeshHandle mesh ) function clear void clear () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshCache"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#shapeworksmeshcache","text":"Thread safe cache for meshes index by shape. More... #include ","title":"shapeworks::MeshCache"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#public-functions","text":"Name MeshCache () void set_cache_enabled (bool enabled) void set_memory_percent (int percent) MeshHandle get_mesh (const MeshWorkItem & vector) void insert_mesh (const MeshWorkItem & item, MeshHandle mesh) void clear ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#detailed-description","text":"class shapeworks :: MeshCache ; Thread safe cache for meshes index by shape. The MeshCache implements a std::map keyed by shape (list of points) with MeshHandle values. It is thread-safe and can be used from any thread.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#function-meshcache","text":"MeshCache ()","title":"function MeshCache"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#function-set_cache_enabled","text":"inline void set_cache_enabled ( bool enabled )","title":"function set_cache_enabled"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#function-set_memory_percent","text":"inline void set_memory_percent ( int percent )","title":"function set_memory_percent"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#function-get_mesh","text":"MeshHandle get_mesh ( const MeshWorkItem & vector )","title":"function get_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#function-insert_mesh","text":"void insert_mesh ( const MeshWorkItem & item , MeshHandle mesh )","title":"function insert_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshCache.html#function-clear","text":"void clear () Updated on 2023-10-24 at 22:16:01 +0000","title":"function clear"},{"location":"api/Classes/classshapeworks_1_1MeshCommand.html","text":"shapeworks::MeshCommand Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshCommand"},{"location":"api/Classes/classshapeworks_1_1MeshCommand.html#shapeworksmeshcommand","text":"Inherits from shapeworks::Command","title":"shapeworks::MeshCommand"},{"location":"api/Classes/classshapeworks_1_1MeshCommand.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshCommand.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1MeshCommand.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshCommand.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html","text":"shapeworks::MeshDomain Inherits from shapeworks::ParticleDomain Public Types Name using std::shared_ptr< MeshDomain > Pointer Public Functions Name virtual DomainType GetDomainType () const override virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const override bool ApplyVectorConstraints (VectorDoubleType & gradE, const PointType & pos) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const override virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const override virtual void InvalidateParticlePosition (int idx) const override virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override virtual const PointType & GetLowerBound () const override virtual const PointType & GetUpperBound () const override virtual PointType GetZeroCrossingPoint () const override virtual PointType GetValidLocationNear ( PointType p) const override virtual double GetSurfaceArea () const override virtual double GetMaxDiameter () const override virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & point, int idx) const override virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & point, int idx) const override virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, vnl_vector_fixed< double, DIMENSION > * out_grad =nullptr) const override virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const override virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const override virtual void DeleteImages () override virtual void DeletePartialDerivativeImages () override void SetMesh (std::shared_ptr< shapeworks::MeshWrapper > mesh_) std::shared_ptr< Mesh > GetSWMesh () const virtual void UpdateZeroCrossingPoint () override Additional inherited members Public Types inherited from shapeworks::ParticleDomain Name using itk::Point< double, 3 > PointType using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name bool IsDomainFixed () const std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Public Types Documentation using Pointer using shapeworks :: MeshDomain :: Pointer = std :: shared_ptr < MeshDomain > ; Public Functions Documentation function GetDomainType inline virtual DomainType GetDomainType () const override Reimplements : shapeworks::ParticleDomain::GetDomainType function ApplyConstraints virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const override Reimplements : shapeworks::ParticleDomain::ApplyConstraints Apply any constraints to the given point location. This should force the point to a position on the surface that satisfies all constraints. function ApplyVectorConstraints bool ApplyVectorConstraints ( VectorDoubleType & gradE , const PointType & pos ) const function ProjectVectorToSurfaceTangent virtual VectorDoubleType ProjectVectorToSurfaceTangent ( VectorDoubleType & gradE , const PointType & pos , int idx ) const override Reimplements : shapeworks::ParticleDomain::ProjectVectorToSurfaceTangent Projects the vector to the surface tangent at the point. function UpdateParticlePosition virtual PointType UpdateParticlePosition ( const PointType & point , int idx , VectorDoubleType & update ) const override Reimplements : shapeworks::ParticleDomain::UpdateParticlePosition Applies the update to the point and returns the new point position. function InvalidateParticlePosition virtual void InvalidateParticlePosition ( int idx ) const override Reimplements : shapeworks::ParticleDomain::InvalidateParticlePosition function GetCurvature inline virtual double GetCurvature ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::GetCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceMeanCurvature inline virtual double GetSurfaceMeanCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceStdDevCurvature inline virtual double GetSurfaceStdDevCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute function GetLowerBound inline virtual const PointType & GetLowerBound () const override Reimplements : shapeworks::ParticleDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function GetUpperBound inline virtual const PointType & GetUpperBound () const override Reimplements : shapeworks::ParticleDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function GetZeroCrossingPoint inline virtual PointType GetZeroCrossingPoint () const override Reimplements : shapeworks::ParticleDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle. function GetValidLocationNear inline virtual PointType GetValidLocationNear ( PointType p ) const override Reimplements : shapeworks::ParticleDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle. function GetSurfaceArea inline virtual double GetSurfaceArea () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceArea Use for neighborhood radius. function GetMaxDiameter virtual double GetMaxDiameter () const override Reimplements : shapeworks::ParticleDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma function SampleGradientAtPoint inline virtual vnl_vector_fixed < float , DIMENSION > SampleGradientAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradientAtPoint function SampleNormalAtPoint inline virtual vnl_vector_fixed < float , DIMENSION > SampleNormalAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleNormalAtPoint function SampleGradNAtPoint inline virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradNAtPoint function Distance inline double Distance ( const PointType & a , int idx_a , const PointType & b , int idx_b , vnl_vector_fixed < double , DIMENSION > * out_grad = nullptr ) const override function SquaredDistance inline virtual double SquaredDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b ) const override Reimplements : shapeworks::ParticleDomain::SquaredDistance Squared Distance between locations is used for computing sigma. function IsWithinDistance inline virtual bool IsWithinDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b , double test_dist , double & distance ) const override Reimplements : shapeworks::ParticleDomain::IsWithinDistance Returns whether or not the two points are separated by the given distance function DeleteImages inline virtual void DeleteImages () override Reimplements : shapeworks::ParticleDomain::DeleteImages function DeletePartialDerivativeImages inline virtual void DeletePartialDerivativeImages () override Reimplements : shapeworks::ParticleDomain::DeletePartialDerivativeImages function SetMesh inline void SetMesh ( std :: shared_ptr < shapeworks :: MeshWrapper > mesh_ ) function GetSWMesh inline std :: shared_ptr < Mesh > GetSWMesh () const function UpdateZeroCrossingPoint inline virtual void UpdateZeroCrossingPoint () override Reimplements : shapeworks::ParticleDomain::UpdateZeroCrossingPoint Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshDomain"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#shapeworksmeshdomain","text":"Inherits from shapeworks::ParticleDomain","title":"shapeworks::MeshDomain"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#public-types","text":"Name using std::shared_ptr< MeshDomain > Pointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#public-functions","text":"Name virtual DomainType GetDomainType () const override virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const override bool ApplyVectorConstraints (VectorDoubleType & gradE, const PointType & pos) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const override virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const override virtual void InvalidateParticlePosition (int idx) const override virtual double GetCurvature (const PointType & p, int idx) const override virtual double GetSurfaceMeanCurvature () const override virtual double GetSurfaceStdDevCurvature () const override virtual const PointType & GetLowerBound () const override virtual const PointType & GetUpperBound () const override virtual PointType GetZeroCrossingPoint () const override virtual PointType GetValidLocationNear ( PointType p) const override virtual double GetSurfaceArea () const override virtual double GetMaxDiameter () const override virtual vnl_vector_fixed< float, DIMENSION > SampleGradientAtPoint (const PointType & point, int idx) const override virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (const PointType & point, int idx) const override virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const override double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, vnl_vector_fixed< double, DIMENSION > * out_grad =nullptr) const override virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const override virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const override virtual void DeleteImages () override virtual void DeletePartialDerivativeImages () override void SetMesh (std::shared_ptr< shapeworks::MeshWrapper > mesh_) std::shared_ptr< Mesh > GetSWMesh () const virtual void UpdateZeroCrossingPoint () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ParticleDomain Name using itk::Point< double, 3 > PointType using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name bool IsDomainFixed () const std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#using-pointer","text":"using shapeworks :: MeshDomain :: Pointer = std :: shared_ptr < MeshDomain > ;","title":"using Pointer"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getdomaintype","text":"inline virtual DomainType GetDomainType () const override Reimplements : shapeworks::ParticleDomain::GetDomainType","title":"function GetDomainType"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-applyconstraints","text":"virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const override Reimplements : shapeworks::ParticleDomain::ApplyConstraints Apply any constraints to the given point location. This should force the point to a position on the surface that satisfies all constraints.","title":"function ApplyConstraints"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-applyvectorconstraints","text":"bool ApplyVectorConstraints ( VectorDoubleType & gradE , const PointType & pos ) const","title":"function ApplyVectorConstraints"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-projectvectortosurfacetangent","text":"virtual VectorDoubleType ProjectVectorToSurfaceTangent ( VectorDoubleType & gradE , const PointType & pos , int idx ) const override Reimplements : shapeworks::ParticleDomain::ProjectVectorToSurfaceTangent Projects the vector to the surface tangent at the point.","title":"function ProjectVectorToSurfaceTangent"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-updateparticleposition","text":"virtual PointType UpdateParticlePosition ( const PointType & point , int idx , VectorDoubleType & update ) const override Reimplements : shapeworks::ParticleDomain::UpdateParticlePosition Applies the update to the point and returns the new point position.","title":"function UpdateParticlePosition"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-invalidateparticleposition","text":"virtual void InvalidateParticlePosition ( int idx ) const override Reimplements : shapeworks::ParticleDomain::InvalidateParticlePosition","title":"function InvalidateParticlePosition"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getcurvature","text":"inline virtual double GetCurvature ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::GetCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetCurvature"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getsurfacemeancurvature","text":"inline virtual double GetSurfaceMeanCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceMeanCurvature"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getsurfacestddevcurvature","text":"inline virtual double GetSurfaceStdDevCurvature () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceStdDevCurvature"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getlowerbound","text":"inline virtual const PointType & GetLowerBound () const override Reimplements : shapeworks::ParticleDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetLowerBound"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getupperbound","text":"inline virtual const PointType & GetUpperBound () const override Reimplements : shapeworks::ParticleDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetUpperBound"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getzerocrossingpoint","text":"inline virtual PointType GetZeroCrossingPoint () const override Reimplements : shapeworks::ParticleDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle.","title":"function GetZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getvalidlocationnear","text":"inline virtual PointType GetValidLocationNear ( PointType p ) const override Reimplements : shapeworks::ParticleDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle.","title":"function GetValidLocationNear"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getsurfacearea","text":"inline virtual double GetSurfaceArea () const override Reimplements : shapeworks::ParticleDomain::GetSurfaceArea Use for neighborhood radius.","title":"function GetSurfaceArea"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getmaxdiameter","text":"virtual double GetMaxDiameter () const override Reimplements : shapeworks::ParticleDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma","title":"function GetMaxDiameter"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-samplegradientatpoint","text":"inline virtual vnl_vector_fixed < float , DIMENSION > SampleGradientAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradientAtPoint","title":"function SampleGradientAtPoint"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-samplenormalatpoint","text":"inline virtual vnl_vector_fixed < float , DIMENSION > SampleNormalAtPoint ( const PointType & point , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleNormalAtPoint","title":"function SampleNormalAtPoint"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-samplegradnatpoint","text":"inline virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const override Reimplements : shapeworks::ParticleDomain::SampleGradNAtPoint","title":"function SampleGradNAtPoint"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-distance","text":"inline double Distance ( const PointType & a , int idx_a , const PointType & b , int idx_b , vnl_vector_fixed < double , DIMENSION > * out_grad = nullptr ) const override","title":"function Distance"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-squareddistance","text":"inline virtual double SquaredDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b ) const override Reimplements : shapeworks::ParticleDomain::SquaredDistance Squared Distance between locations is used for computing sigma.","title":"function SquaredDistance"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-iswithindistance","text":"inline virtual bool IsWithinDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b , double test_dist , double & distance ) const override Reimplements : shapeworks::ParticleDomain::IsWithinDistance Returns whether or not the two points are separated by the given distance","title":"function IsWithinDistance"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-deleteimages","text":"inline virtual void DeleteImages () override Reimplements : shapeworks::ParticleDomain::DeleteImages","title":"function DeleteImages"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-deletepartialderivativeimages","text":"inline virtual void DeletePartialDerivativeImages () override Reimplements : shapeworks::ParticleDomain::DeletePartialDerivativeImages","title":"function DeletePartialDerivativeImages"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-setmesh","text":"inline void SetMesh ( std :: shared_ptr < shapeworks :: MeshWrapper > mesh_ )","title":"function SetMesh"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-getswmesh","text":"inline std :: shared_ptr < Mesh > GetSWMesh () const","title":"function GetSWMesh"},{"location":"api/Classes/classshapeworks_1_1MeshDomain.html#function-updatezerocrossingpoint","text":"inline virtual void UpdateZeroCrossingPoint () override Reimplements : shapeworks::ParticleDomain::UpdateZeroCrossingPoint Updated on 2023-10-24 at 22:16:01 +0000","title":"function UpdateZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html","text":"shapeworks::MeshGenerator Public Functions Name MeshGenerator () ~MeshGenerator () MeshHandle build_mesh (const MeshWorkItem & item) MeshHandle build_mesh_from_points (const Eigen::VectorXd & shape, int domain) MeshHandle build_mesh_from_image (ImageType::Pointer image, float iso_value =0.0001) MeshHandle build_mesh_from_file (std::string filename, float iso_value =0.0001) void set_mesh_reconstructors (std::shared_ptr< MeshReconstructors > reconstructors) void set_reconstruction_method (std::string method) std::string get_reconstruction_method () Public Attributes Name const std::string RECONSTRUCTION_LEGACY_C const std::string RECONSTRUCTION_DISTANCE_TRANSFORM_C const std::string RECONSTRUCTION_MESH_WARPER_C Public Functions Documentation function MeshGenerator MeshGenerator () function ~MeshGenerator ~ MeshGenerator () function build_mesh MeshHandle build_mesh ( const MeshWorkItem & item ) function build_mesh_from_points MeshHandle build_mesh_from_points ( const Eigen :: VectorXd & shape , int domain ) function build_mesh_from_image MeshHandle build_mesh_from_image ( ImageType :: Pointer image , float iso_value = 0.0001 ) function build_mesh_from_file MeshHandle build_mesh_from_file ( std :: string filename , float iso_value = 0.0001 ) function set_mesh_reconstructors void set_mesh_reconstructors ( std :: shared_ptr < MeshReconstructors > reconstructors ) function set_reconstruction_method void set_reconstruction_method ( std :: string method ) function get_reconstruction_method std :: string get_reconstruction_method () Public Attributes Documentation variable RECONSTRUCTION_LEGACY_C static const std :: string RECONSTRUCTION_LEGACY_C ; variable RECONSTRUCTION_DISTANCE_TRANSFORM_C static const std :: string RECONSTRUCTION_DISTANCE_TRANSFORM_C ; variable RECONSTRUCTION_MESH_WARPER_C static const std :: string RECONSTRUCTION_MESH_WARPER_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshGenerator"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#shapeworksmeshgenerator","text":"","title":"shapeworks::MeshGenerator"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#public-functions","text":"Name MeshGenerator () ~MeshGenerator () MeshHandle build_mesh (const MeshWorkItem & item) MeshHandle build_mesh_from_points (const Eigen::VectorXd & shape, int domain) MeshHandle build_mesh_from_image (ImageType::Pointer image, float iso_value =0.0001) MeshHandle build_mesh_from_file (std::string filename, float iso_value =0.0001) void set_mesh_reconstructors (std::shared_ptr< MeshReconstructors > reconstructors) void set_reconstruction_method (std::string method) std::string get_reconstruction_method ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#public-attributes","text":"Name const std::string RECONSTRUCTION_LEGACY_C const std::string RECONSTRUCTION_DISTANCE_TRANSFORM_C const std::string RECONSTRUCTION_MESH_WARPER_C","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-meshgenerator","text":"MeshGenerator ()","title":"function MeshGenerator"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-meshgenerator_1","text":"~ MeshGenerator ()","title":"function ~MeshGenerator"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-build_mesh","text":"MeshHandle build_mesh ( const MeshWorkItem & item )","title":"function build_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-build_mesh_from_points","text":"MeshHandle build_mesh_from_points ( const Eigen :: VectorXd & shape , int domain )","title":"function build_mesh_from_points"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-build_mesh_from_image","text":"MeshHandle build_mesh_from_image ( ImageType :: Pointer image , float iso_value = 0.0001 )","title":"function build_mesh_from_image"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-build_mesh_from_file","text":"MeshHandle build_mesh_from_file ( std :: string filename , float iso_value = 0.0001 )","title":"function build_mesh_from_file"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-set_mesh_reconstructors","text":"void set_mesh_reconstructors ( std :: shared_ptr < MeshReconstructors > reconstructors )","title":"function set_mesh_reconstructors"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-set_reconstruction_method","text":"void set_reconstruction_method ( std :: string method )","title":"function set_reconstruction_method"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#function-get_reconstruction_method","text":"std :: string get_reconstruction_method ()","title":"function get_reconstruction_method"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#variable-reconstruction_legacy_c","text":"static const std :: string RECONSTRUCTION_LEGACY_C ;","title":"variable RECONSTRUCTION_LEGACY_C"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#variable-reconstruction_distance_transform_c","text":"static const std :: string RECONSTRUCTION_DISTANCE_TRANSFORM_C ;","title":"variable RECONSTRUCTION_DISTANCE_TRANSFORM_C"},{"location":"api/Classes/classshapeworks_1_1MeshGenerator.html#variable-reconstruction_mesh_warper_c","text":"static const std :: string RECONSTRUCTION_MESH_WARPER_C ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable RECONSTRUCTION_MESH_WARPER_C"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html","text":"shapeworks::MeshGroup Representation of a group of meshes. More... #include Public Functions Name MeshGroup () MeshGroup (unsigned long num_meshes) ~MeshGroup () void set_number_of_meshes (int n) bool valid () void set_mesh (int i, MeshHandle mesh) MeshList & meshes () Return a reference to the list of meshes. vtkSmartPointer< vtkPolyData > get_combined_poly_data () Return polydata of all meshes, combined. Detailed Description class shapeworks :: MeshGroup ; Representation of a group of meshes. The MeshGroup class encapsulates a group of meshes (e.g. from a single subject) A subject will have one mesh for each anatomy/domain Public Functions Documentation function MeshGroup MeshGroup () function MeshGroup MeshGroup ( unsigned long num_meshes ) function ~MeshGroup ~ MeshGroup () function set_number_of_meshes void set_number_of_meshes ( int n ) function valid bool valid () function set_mesh void set_mesh ( int i , MeshHandle mesh ) function meshes MeshList & meshes () Return a reference to the list of meshes. function get_combined_poly_data vtkSmartPointer < vtkPolyData > get_combined_poly_data () Return polydata of all meshes, combined. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshGroup"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#shapeworksmeshgroup","text":"Representation of a group of meshes. More... #include ","title":"shapeworks::MeshGroup"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#public-functions","text":"Name MeshGroup () MeshGroup (unsigned long num_meshes) ~MeshGroup () void set_number_of_meshes (int n) bool valid () void set_mesh (int i, MeshHandle mesh) MeshList & meshes () Return a reference to the list of meshes. vtkSmartPointer< vtkPolyData > get_combined_poly_data () Return polydata of all meshes, combined.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#detailed-description","text":"class shapeworks :: MeshGroup ; Representation of a group of meshes. The MeshGroup class encapsulates a group of meshes (e.g. from a single subject) A subject will have one mesh for each anatomy/domain","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-meshgroup","text":"MeshGroup ()","title":"function MeshGroup"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-meshgroup_1","text":"MeshGroup ( unsigned long num_meshes )","title":"function MeshGroup"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-meshgroup_2","text":"~ MeshGroup ()","title":"function ~MeshGroup"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-set_number_of_meshes","text":"void set_number_of_meshes ( int n )","title":"function set_number_of_meshes"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-valid","text":"bool valid ()","title":"function valid"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-set_mesh","text":"void set_mesh ( int i , MeshHandle mesh )","title":"function set_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-meshes","text":"MeshList & meshes () Return a reference to the list of meshes.","title":"function meshes"},{"location":"api/Classes/classshapeworks_1_1MeshGroup.html#function-get_combined_poly_data","text":"vtkSmartPointer < vtkPolyData > get_combined_poly_data () Return polydata of all meshes, combined. Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_combined_poly_data"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html","text":"shapeworks::MeshManager Class to manage meshes. More... #include Inherits from QObject Public Slots Name void handle_thread_complete (const MeshWorkItem & item, MeshHandle mesh) void handle_warper_progress () Public Signals Name void new_mesh () void error_encountered (QString message) void progress (int ) void status (std::string ) Public Functions Name MeshManager () ~MeshManager () void set_cache_enabled (bool enabled) Set if the cache should be enabled. void set_cache_memory_percent (int percent) Set the memory cache size. void set_parallel_enabled (bool enabled) Set if parallel reconstruction should be enabled. void set_num_threads (int num_threads) Set the number of threads for parallel reconstruction. void generate_mesh (const MeshWorkItem item) generate and cache a mesh for this shape in a different thread MeshHandle get_mesh (const MeshWorkItem & item, bool wait =false) get a mesh for a MeshWorkItem MeshHandle get_mesh (const Eigen::VectorXd & points, int domain, bool wait =false) get a mesh for a set of points std::shared_ptr< SurfaceReconstructor > get_surface_reconstructor (int domain) return the surface reconstructor for a given domain std::shared_ptr< MeshWarper > get_mesh_warper (int domain) return the mesh warper for a given domain std::shared_ptr< MeshGenerator > get_mesh_generator () return the mesh generator void clear_cache () clear the cache Detailed Description class shapeworks :: MeshManager ; Class to manage meshes. The MeshManager handles all aspects of mesh generation and caching. It houses the cache and manages threads to work on mesh generation in the background. Public Slots Documentation slot handle_thread_complete void handle_thread_complete ( const MeshWorkItem & item , MeshHandle mesh ) slot handle_warper_progress void handle_warper_progress () Public Signals Documentation signal new_mesh void new_mesh () signal error_encountered void error_encountered ( QString message ) signal progress void progress ( int ) signal status void status ( std :: string ) Public Functions Documentation function MeshManager MeshManager () function ~MeshManager ~ MeshManager () function set_cache_enabled void set_cache_enabled ( bool enabled ) Set if the cache should be enabled. function set_cache_memory_percent void set_cache_memory_percent ( int percent ) Set the memory cache size. function set_parallel_enabled inline void set_parallel_enabled ( bool enabled ) Set if parallel reconstruction should be enabled. function set_num_threads inline void set_num_threads ( int num_threads ) Set the number of threads for parallel reconstruction. function generate_mesh void generate_mesh ( const MeshWorkItem item ) generate and cache a mesh for this shape in a different thread function get_mesh MeshHandle get_mesh ( const MeshWorkItem & item , bool wait = false ) get a mesh for a MeshWorkItem function get_mesh MeshHandle get_mesh ( const Eigen :: VectorXd & points , int domain , bool wait = false ) get a mesh for a set of points function get_surface_reconstructor std :: shared_ptr < SurfaceReconstructor > get_surface_reconstructor ( int domain ) return the surface reconstructor for a given domain function get_mesh_warper std :: shared_ptr < MeshWarper > get_mesh_warper ( int domain ) return the mesh warper for a given domain function get_mesh_generator inline std :: shared_ptr < MeshGenerator > get_mesh_generator () return the mesh generator function clear_cache void clear_cache () clear the cache Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshManager"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#shapeworksmeshmanager","text":"Class to manage meshes. More... #include Inherits from QObject","title":"shapeworks::MeshManager"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#public-slots","text":"Name void handle_thread_complete (const MeshWorkItem & item, MeshHandle mesh) void handle_warper_progress ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#public-signals","text":"Name void new_mesh () void error_encountered (QString message) void progress (int ) void status (std::string )","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#public-functions","text":"Name MeshManager () ~MeshManager () void set_cache_enabled (bool enabled) Set if the cache should be enabled. void set_cache_memory_percent (int percent) Set the memory cache size. void set_parallel_enabled (bool enabled) Set if parallel reconstruction should be enabled. void set_num_threads (int num_threads) Set the number of threads for parallel reconstruction. void generate_mesh (const MeshWorkItem item) generate and cache a mesh for this shape in a different thread MeshHandle get_mesh (const MeshWorkItem & item, bool wait =false) get a mesh for a MeshWorkItem MeshHandle get_mesh (const Eigen::VectorXd & points, int domain, bool wait =false) get a mesh for a set of points std::shared_ptr< SurfaceReconstructor > get_surface_reconstructor (int domain) return the surface reconstructor for a given domain std::shared_ptr< MeshWarper > get_mesh_warper (int domain) return the mesh warper for a given domain std::shared_ptr< MeshGenerator > get_mesh_generator () return the mesh generator void clear_cache () clear the cache","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#detailed-description","text":"class shapeworks :: MeshManager ; Class to manage meshes. The MeshManager handles all aspects of mesh generation and caching. It houses the cache and manages threads to work on mesh generation in the background.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#slot-handle_thread_complete","text":"void handle_thread_complete ( const MeshWorkItem & item , MeshHandle mesh )","title":"slot handle_thread_complete"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#slot-handle_warper_progress","text":"void handle_warper_progress ()","title":"slot handle_warper_progress"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#signal-new_mesh","text":"void new_mesh ()","title":"signal new_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#signal-error_encountered","text":"void error_encountered ( QString message )","title":"signal error_encountered"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#signal-progress","text":"void progress ( int )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#signal-status","text":"void status ( std :: string )","title":"signal status"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-meshmanager","text":"MeshManager ()","title":"function MeshManager"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-meshmanager_1","text":"~ MeshManager ()","title":"function ~MeshManager"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-set_cache_enabled","text":"void set_cache_enabled ( bool enabled ) Set if the cache should be enabled.","title":"function set_cache_enabled"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-set_cache_memory_percent","text":"void set_cache_memory_percent ( int percent ) Set the memory cache size.","title":"function set_cache_memory_percent"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-set_parallel_enabled","text":"inline void set_parallel_enabled ( bool enabled ) Set if parallel reconstruction should be enabled.","title":"function set_parallel_enabled"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-set_num_threads","text":"inline void set_num_threads ( int num_threads ) Set the number of threads for parallel reconstruction.","title":"function set_num_threads"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-generate_mesh","text":"void generate_mesh ( const MeshWorkItem item ) generate and cache a mesh for this shape in a different thread","title":"function generate_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-get_mesh","text":"MeshHandle get_mesh ( const MeshWorkItem & item , bool wait = false ) get a mesh for a MeshWorkItem","title":"function get_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-get_mesh_1","text":"MeshHandle get_mesh ( const Eigen :: VectorXd & points , int domain , bool wait = false ) get a mesh for a set of points","title":"function get_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-get_surface_reconstructor","text":"std :: shared_ptr < SurfaceReconstructor > get_surface_reconstructor ( int domain ) return the surface reconstructor for a given domain","title":"function get_surface_reconstructor"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-get_mesh_warper","text":"std :: shared_ptr < MeshWarper > get_mesh_warper ( int domain ) return the mesh warper for a given domain","title":"function get_mesh_warper"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-get_mesh_generator","text":"inline std :: shared_ptr < MeshGenerator > get_mesh_generator () return the mesh generator","title":"function get_mesh_generator"},{"location":"api/Classes/classshapeworks_1_1MeshManager.html#function-clear_cache","text":"void clear_cache () clear the cache Updated on 2023-10-24 at 22:16:01 +0000","title":"function clear_cache"},{"location":"api/Classes/classshapeworks_1_1MeshReader.html","text":"shapeworks::MeshReader reads mesh (used only by one of the Mesh constructors) #include Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshReader"},{"location":"api/Classes/classshapeworks_1_1MeshReader.html#shapeworksmeshreader","text":"reads mesh (used only by one of the Mesh constructors) #include Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshReader"},{"location":"api/Classes/classshapeworks_1_1MeshReconstructors.html","text":"shapeworks::MeshReconstructors Public Attributes Name std::vector< std::shared_ptr< SurfaceReconstructor > > surface_reconstructors_ std::vector< std::shared_ptr< QMeshWarper > > mesh_warpers_ Public Attributes Documentation variable surface_reconstructors_ std :: vector < std :: shared_ptr < SurfaceReconstructor > > surface_reconstructors_ ; variable mesh_warpers_ std :: vector < std :: shared_ptr < QMeshWarper > > mesh_warpers_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshReconstructors"},{"location":"api/Classes/classshapeworks_1_1MeshReconstructors.html#shapeworksmeshreconstructors","text":"","title":"shapeworks::MeshReconstructors"},{"location":"api/Classes/classshapeworks_1_1MeshReconstructors.html#public-attributes","text":"Name std::vector< std::shared_ptr< SurfaceReconstructor > > surface_reconstructors_ std::vector< std::shared_ptr< QMeshWarper > > mesh_warpers_","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1MeshReconstructors.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshReconstructors.html#variable-surface_reconstructors_","text":"std :: vector < std :: shared_ptr < SurfaceReconstructor > > surface_reconstructors_ ;","title":"variable surface_reconstructors_"},{"location":"api/Classes/classshapeworks_1_1MeshReconstructors.html#variable-mesh_warpers_","text":"std :: vector < std :: shared_ptr < QMeshWarper > > mesh_warpers_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable mesh_warpers_"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html","text":"shapeworks::MeshSlice MeshSlice . More... #include Public Functions Name MeshSlice ( Viewer * viewer) void set_volume (vtkSmartPointer< vtkImageData > volume) bool is_image_loaded () void update_renderer () void update_camera () void handle_key (std::string key) Detailed Description class shapeworks :: MeshSlice ; MeshSlice . Provide slice viewing to the Viewer Public Functions Documentation function MeshSlice MeshSlice ( Viewer * viewer ) function set_volume void set_volume ( vtkSmartPointer < vtkImageData > volume ) function is_image_loaded bool is_image_loaded () function update_renderer void update_renderer () function update_camera void update_camera () function handle_key void handle_key ( std :: string key ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshSlice"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#shapeworksmeshslice","text":"MeshSlice . More... #include ","title":"shapeworks::MeshSlice"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#public-functions","text":"Name MeshSlice ( Viewer * viewer) void set_volume (vtkSmartPointer< vtkImageData > volume) bool is_image_loaded () void update_renderer () void update_camera () void handle_key (std::string key)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#detailed-description","text":"class shapeworks :: MeshSlice ; MeshSlice . Provide slice viewing to the Viewer","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#function-meshslice","text":"MeshSlice ( Viewer * viewer )","title":"function MeshSlice"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#function-set_volume","text":"void set_volume ( vtkSmartPointer < vtkImageData > volume )","title":"function set_volume"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#function-is_image_loaded","text":"bool is_image_loaded ()","title":"function is_image_loaded"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#function-update_renderer","text":"void update_renderer ()","title":"function update_renderer"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#function-update_camera","text":"void update_camera ()","title":"function update_camera"},{"location":"api/Classes/classshapeworks_1_1MeshSlice.html#function-handle_key","text":"void handle_key ( std :: string key ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function handle_key"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html","text":"shapeworks::MeshUtils Module: Mesh Classes More... #include Public Functions Name const vtkSmartPointer< vtkMatrix4x4 > createICPTransform (const Mesh source, const Mesh target, Mesh::AlignmentType align, const unsigned iterations =20, bool meshTransform =false) computes a rigid transformation from source to target using vtkIterativeClosestPointTransform Mesh threadSafeReadMesh (std::string filename) Thread safe reading of a mesh, uses a lock. void threadSafeWriteMesh (std::string filename, Mesh mesh) Thread safe writing of a mesh, uses a lock. PhysicalRegion boundingBox (const std::vector< std::string > & filenames, bool center =false) calculate bounding box incrementally for meshes PhysicalRegion boundingBox (const std::vector< std::reference_wrapper< const Mesh > > & meshes, bool center =false) calculate bounding box incrementally for meshes size_t findReferenceMesh (std::vector< Mesh > & meshes) determine the reference mesh Mesh boundaryLoopExtractor ( Mesh mesh) boundary loop extractor for a given mesh std::array< Mesh , 3 > sharedBoundaryExtractor (const Mesh & mesh_l, const Mesh & mesh_r, double tol) shared boundary extractor for the left and right mesh void generateNormals (const std::vector< std::reference_wrapper< Mesh > > & meshes, bool forceRegen =false) generates and adds normals for points and faces for each mesh in given set of meshes Field computeMeanNormals (const std::vector< std::string > & filenames, bool autoGenerateNormals =true) computes average normals for each point in given set of meshes Field computeMeanNormals (const std::vector< std::reference_wrapper< const Mesh > > & meshes) computes average normals for each point in given set of meshes void visualizeVectorFieldForFFCs (std::shared_ptr< Mesh > mesh) This function visualizes vector and scalar fields for FFCs. vtkSmartPointer< vtkActor > getArrow (Eigen::Vector3d start, Eigen::Vector3d end) Used as an auxiliary function for vector field visualizations. Detailed Description class shapeworks :: MeshUtils ; This class provides helper functions for meshes Public Functions Documentation function createICPTransform static const vtkSmartPointer < vtkMatrix4x4 > createICPTransform ( const Mesh source , const Mesh target , Mesh :: AlignmentType align , const unsigned iterations = 20 , bool meshTransform = false ) computes a rigid transformation from source to target using vtkIterativeClosestPointTransform function threadSafeReadMesh static Mesh threadSafeReadMesh ( std :: string filename ) Thread safe reading of a mesh, uses a lock. function threadSafeWriteMesh static void threadSafeWriteMesh ( std :: string filename , Mesh mesh ) Thread safe writing of a mesh, uses a lock. function boundingBox static PhysicalRegion boundingBox ( const std :: vector < std :: string > & filenames , bool center = false ) calculate bounding box incrementally for meshes function boundingBox static PhysicalRegion boundingBox ( const std :: vector < std :: reference_wrapper < const Mesh > > & meshes , bool center = false ) calculate bounding box incrementally for meshes function findReferenceMesh static size_t findReferenceMesh ( std :: vector < Mesh > & meshes ) determine the reference mesh function boundaryLoopExtractor static Mesh boundaryLoopExtractor ( Mesh mesh ) boundary loop extractor for a given mesh function sharedBoundaryExtractor static std :: array < Mesh , 3 > sharedBoundaryExtractor ( const Mesh & mesh_l , const Mesh & mesh_r , double tol ) shared boundary extractor for the left and right mesh function generateNormals static void generateNormals ( const std :: vector < std :: reference_wrapper < Mesh > > & meshes , bool forceRegen = false ) generates and adds normals for points and faces for each mesh in given set of meshes function computeMeanNormals static Field computeMeanNormals ( const std :: vector < std :: string > & filenames , bool autoGenerateNormals = true ) computes average normals for each point in given set of meshes function computeMeanNormals static Field computeMeanNormals ( const std :: vector < std :: reference_wrapper < const Mesh > > & meshes ) computes average normals for each point in given set of meshes function visualizeVectorFieldForFFCs void visualizeVectorFieldForFFCs ( std :: shared_ptr < Mesh > mesh ) This function visualizes vector and scalar fields for FFCs. function getArrow vtkSmartPointer < vtkActor > getArrow ( Eigen :: Vector3d start , Eigen :: Vector3d end ) Used as an auxiliary function for vector field visualizations. Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::MeshUtils"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#shapeworksmeshutils","text":"Module: Mesh Classes More... #include ","title":"shapeworks::MeshUtils"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#public-functions","text":"Name const vtkSmartPointer< vtkMatrix4x4 > createICPTransform (const Mesh source, const Mesh target, Mesh::AlignmentType align, const unsigned iterations =20, bool meshTransform =false) computes a rigid transformation from source to target using vtkIterativeClosestPointTransform Mesh threadSafeReadMesh (std::string filename) Thread safe reading of a mesh, uses a lock. void threadSafeWriteMesh (std::string filename, Mesh mesh) Thread safe writing of a mesh, uses a lock. PhysicalRegion boundingBox (const std::vector< std::string > & filenames, bool center =false) calculate bounding box incrementally for meshes PhysicalRegion boundingBox (const std::vector< std::reference_wrapper< const Mesh > > & meshes, bool center =false) calculate bounding box incrementally for meshes size_t findReferenceMesh (std::vector< Mesh > & meshes) determine the reference mesh Mesh boundaryLoopExtractor ( Mesh mesh) boundary loop extractor for a given mesh std::array< Mesh , 3 > sharedBoundaryExtractor (const Mesh & mesh_l, const Mesh & mesh_r, double tol) shared boundary extractor for the left and right mesh void generateNormals (const std::vector< std::reference_wrapper< Mesh > > & meshes, bool forceRegen =false) generates and adds normals for points and faces for each mesh in given set of meshes Field computeMeanNormals (const std::vector< std::string > & filenames, bool autoGenerateNormals =true) computes average normals for each point in given set of meshes Field computeMeanNormals (const std::vector< std::reference_wrapper< const Mesh > > & meshes) computes average normals for each point in given set of meshes void visualizeVectorFieldForFFCs (std::shared_ptr< Mesh > mesh) This function visualizes vector and scalar fields for FFCs. vtkSmartPointer< vtkActor > getArrow (Eigen::Vector3d start, Eigen::Vector3d end) Used as an auxiliary function for vector field visualizations.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#detailed-description","text":"class shapeworks :: MeshUtils ; This class provides helper functions for meshes","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-createicptransform","text":"static const vtkSmartPointer < vtkMatrix4x4 > createICPTransform ( const Mesh source , const Mesh target , Mesh :: AlignmentType align , const unsigned iterations = 20 , bool meshTransform = false ) computes a rigid transformation from source to target using vtkIterativeClosestPointTransform","title":"function createICPTransform"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-threadsafereadmesh","text":"static Mesh threadSafeReadMesh ( std :: string filename ) Thread safe reading of a mesh, uses a lock.","title":"function threadSafeReadMesh"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-threadsafewritemesh","text":"static void threadSafeWriteMesh ( std :: string filename , Mesh mesh ) Thread safe writing of a mesh, uses a lock.","title":"function threadSafeWriteMesh"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-boundingbox","text":"static PhysicalRegion boundingBox ( const std :: vector < std :: string > & filenames , bool center = false ) calculate bounding box incrementally for meshes","title":"function boundingBox"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-boundingbox_1","text":"static PhysicalRegion boundingBox ( const std :: vector < std :: reference_wrapper < const Mesh > > & meshes , bool center = false ) calculate bounding box incrementally for meshes","title":"function boundingBox"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-findreferencemesh","text":"static size_t findReferenceMesh ( std :: vector < Mesh > & meshes ) determine the reference mesh","title":"function findReferenceMesh"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-boundaryloopextractor","text":"static Mesh boundaryLoopExtractor ( Mesh mesh ) boundary loop extractor for a given mesh","title":"function boundaryLoopExtractor"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-sharedboundaryextractor","text":"static std :: array < Mesh , 3 > sharedBoundaryExtractor ( const Mesh & mesh_l , const Mesh & mesh_r , double tol ) shared boundary extractor for the left and right mesh","title":"function sharedBoundaryExtractor"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-generatenormals","text":"static void generateNormals ( const std :: vector < std :: reference_wrapper < Mesh > > & meshes , bool forceRegen = false ) generates and adds normals for points and faces for each mesh in given set of meshes","title":"function generateNormals"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-computemeannormals","text":"static Field computeMeanNormals ( const std :: vector < std :: string > & filenames , bool autoGenerateNormals = true ) computes average normals for each point in given set of meshes","title":"function computeMeanNormals"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-computemeannormals_1","text":"static Field computeMeanNormals ( const std :: vector < std :: reference_wrapper < const Mesh > > & meshes ) computes average normals for each point in given set of meshes","title":"function computeMeanNormals"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-visualizevectorfieldforffcs","text":"void visualizeVectorFieldForFFCs ( std :: shared_ptr < Mesh > mesh ) This function visualizes vector and scalar fields for FFCs.","title":"function visualizeVectorFieldForFFCs"},{"location":"api/Classes/classshapeworks_1_1MeshUtils.html#function-getarrow","text":"vtkSmartPointer < vtkActor > getArrow ( Eigen :: Vector3d start , Eigen :: Vector3d end ) Used as an auxiliary function for vector field visualizations. Updated on 2023-10-24 at 22:16:02 +0000","title":"function getArrow"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html","text":"shapeworks::MeshWarper Module: Mesh Classes More... #include Inherited by shapeworks::QMeshWarper Public Functions Name void set_reference_mesh (vtkSmartPointer< vtkPolyData > reference_mesh, const Eigen::MatrixXd & reference_particles, const Eigen::MatrixXd & landmarks ={}) Set the reference mesh and particles. bool generate_warp () Generate warp, return true on success. bool get_warp_available () Return if the warp is available. bool is_contour () const vtkSmartPointer< vtkPolyData > build_mesh (const Eigen::MatrixXd & particles) Build a mesh for a given set of particles. Eigen::MatrixXd extract_landmarks (vtkSmartPointer< vtkPolyData > warped_mesh) Return the landmarks (matrix [Nx3]) from the warped builded mesh. bool is_contour () Return if set as a contour. std::map< int, int > get_landmarks_map () const Return the map of landmarks id (Key) to vertice index (Value) std::vector< int > get_good_particle_indices () const Return the indexes of good particles (those that really control the warping) const Eigen::MatrixXd & get_warp_matrix () const Return the warp matrix. bool has_bad_particles () const Return true if warping has removed any bad particle(s) vtkSmartPointer< vtkPolyData > get_reference_mesh () Return the reference mesh which has been cleaned and vertices added. const Eigen::MatrixXd & get_reference_particles () const Return the reference particles. vtkSmartPointer< vtkPolyData > prep_mesh (vtkSmartPointer< vtkPolyData > mesh) Prep incoming mesh. Protected Functions Name virtual void update_progress (float p) For overriding to handle progress updates. Detailed Description class shapeworks :: MeshWarper ; This class implements mesh warping based on correspondence particles. Correspondence points are embedded into the mesh as new vertices (traingles split). Then a biharmonic deformation is used to warp the mesh to new sets of correspondence particles. It can optionally be used to warp landmarks along with the mesh by embedding them as vertices Public Functions Documentation function set_reference_mesh void set_reference_mesh ( vtkSmartPointer < vtkPolyData > reference_mesh , const Eigen :: MatrixXd & reference_particles , const Eigen :: MatrixXd & landmarks = {} ) Set the reference mesh and particles. function generate_warp bool generate_warp () Generate warp, return true on success. function get_warp_available bool get_warp_available () Return if the warp is available. function is_contour inline bool is_contour () const function build_mesh vtkSmartPointer < vtkPolyData > build_mesh ( const Eigen :: MatrixXd & particles ) Build a mesh for a given set of particles. function extract_landmarks Eigen :: MatrixXd extract_landmarks ( vtkSmartPointer < vtkPolyData > warped_mesh ) Return the landmarks (matrix [Nx3]) from the warped builded mesh. function is_contour inline bool is_contour () Return if set as a contour. function get_landmarks_map inline std :: map < int , int > get_landmarks_map () const Return the map of landmarks id (Key) to vertice index (Value) function get_good_particle_indices inline std :: vector < int > get_good_particle_indices () const Return the indexes of good particles (those that really control the warping) function get_warp_matrix inline const Eigen :: MatrixXd & get_warp_matrix () const Return the warp matrix. function has_bad_particles inline bool has_bad_particles () const Return true if warping has removed any bad particle(s) function get_reference_mesh inline vtkSmartPointer < vtkPolyData > get_reference_mesh () Return the reference mesh which has been cleaned and vertices added. function get_reference_particles inline const Eigen :: MatrixXd & get_reference_particles () const Return the reference particles. function prep_mesh static vtkSmartPointer < vtkPolyData > prep_mesh ( vtkSmartPointer < vtkPolyData > mesh ) Prep incoming mesh. Protected Functions Documentation function update_progress inline virtual void update_progress ( float p ) For overriding to handle progress updates. Reimplemented by : shapeworks::QMeshWarper::update_progress Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::MeshWarper"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#shapeworksmeshwarper","text":"Module: Mesh Classes More... #include Inherited by shapeworks::QMeshWarper","title":"shapeworks::MeshWarper"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#public-functions","text":"Name void set_reference_mesh (vtkSmartPointer< vtkPolyData > reference_mesh, const Eigen::MatrixXd & reference_particles, const Eigen::MatrixXd & landmarks ={}) Set the reference mesh and particles. bool generate_warp () Generate warp, return true on success. bool get_warp_available () Return if the warp is available. bool is_contour () const vtkSmartPointer< vtkPolyData > build_mesh (const Eigen::MatrixXd & particles) Build a mesh for a given set of particles. Eigen::MatrixXd extract_landmarks (vtkSmartPointer< vtkPolyData > warped_mesh) Return the landmarks (matrix [Nx3]) from the warped builded mesh. bool is_contour () Return if set as a contour. std::map< int, int > get_landmarks_map () const Return the map of landmarks id (Key) to vertice index (Value) std::vector< int > get_good_particle_indices () const Return the indexes of good particles (those that really control the warping) const Eigen::MatrixXd & get_warp_matrix () const Return the warp matrix. bool has_bad_particles () const Return true if warping has removed any bad particle(s) vtkSmartPointer< vtkPolyData > get_reference_mesh () Return the reference mesh which has been cleaned and vertices added. const Eigen::MatrixXd & get_reference_particles () const Return the reference particles. vtkSmartPointer< vtkPolyData > prep_mesh (vtkSmartPointer< vtkPolyData > mesh) Prep incoming mesh.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#protected-functions","text":"Name virtual void update_progress (float p) For overriding to handle progress updates.","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#detailed-description","text":"class shapeworks :: MeshWarper ; This class implements mesh warping based on correspondence particles. Correspondence points are embedded into the mesh as new vertices (traingles split). Then a biharmonic deformation is used to warp the mesh to new sets of correspondence particles. It can optionally be used to warp landmarks along with the mesh by embedding them as vertices","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-set_reference_mesh","text":"void set_reference_mesh ( vtkSmartPointer < vtkPolyData > reference_mesh , const Eigen :: MatrixXd & reference_particles , const Eigen :: MatrixXd & landmarks = {} ) Set the reference mesh and particles.","title":"function set_reference_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-generate_warp","text":"bool generate_warp () Generate warp, return true on success.","title":"function generate_warp"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-get_warp_available","text":"bool get_warp_available () Return if the warp is available.","title":"function get_warp_available"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-is_contour","text":"inline bool is_contour () const","title":"function is_contour"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-build_mesh","text":"vtkSmartPointer < vtkPolyData > build_mesh ( const Eigen :: MatrixXd & particles ) Build a mesh for a given set of particles.","title":"function build_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-extract_landmarks","text":"Eigen :: MatrixXd extract_landmarks ( vtkSmartPointer < vtkPolyData > warped_mesh ) Return the landmarks (matrix [Nx3]) from the warped builded mesh.","title":"function extract_landmarks"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-is_contour_1","text":"inline bool is_contour () Return if set as a contour.","title":"function is_contour"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-get_landmarks_map","text":"inline std :: map < int , int > get_landmarks_map () const Return the map of landmarks id (Key) to vertice index (Value)","title":"function get_landmarks_map"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-get_good_particle_indices","text":"inline std :: vector < int > get_good_particle_indices () const Return the indexes of good particles (those that really control the warping)","title":"function get_good_particle_indices"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-get_warp_matrix","text":"inline const Eigen :: MatrixXd & get_warp_matrix () const Return the warp matrix.","title":"function get_warp_matrix"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-has_bad_particles","text":"inline bool has_bad_particles () const Return true if warping has removed any bad particle(s)","title":"function has_bad_particles"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-get_reference_mesh","text":"inline vtkSmartPointer < vtkPolyData > get_reference_mesh () Return the reference mesh which has been cleaned and vertices added.","title":"function get_reference_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-get_reference_particles","text":"inline const Eigen :: MatrixXd & get_reference_particles () const Return the reference particles.","title":"function get_reference_particles"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-prep_mesh","text":"static vtkSmartPointer < vtkPolyData > prep_mesh ( vtkSmartPointer < vtkPolyData > mesh ) Prep incoming mesh.","title":"function prep_mesh"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWarper.html#function-update_progress","text":"inline virtual void update_progress ( float p ) For overriding to handle progress updates. Reimplemented by : shapeworks::QMeshWarper::update_progress Updated on 2023-10-24 at 22:16:02 +0000","title":"function update_progress"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html","text":"shapeworks::MeshWorkItem Provides concurrent access to a list of shapes to work needing reconstruction. #include Public Attributes Name std::string filename Eigen::VectorXd points int domain size_t memory_size Friends Name bool operator< (const MeshWorkItem & a, const MeshWorkItem & b) bool operator== (const MeshWorkItem & a, const MeshWorkItem & b) Public Attributes Documentation variable filename std :: string filename ; variable points Eigen :: VectorXd points ; variable domain int domain { 0 }; variable memory_size size_t memory_size { 0 }; Friends friend operator< friend bool operator < ( const MeshWorkItem & a , const MeshWorkItem & b ); friend operator== friend bool operator == ( const MeshWorkItem & a , const MeshWorkItem & b ); Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshWorkItem"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#shapeworksmeshworkitem","text":"Provides concurrent access to a list of shapes to work needing reconstruction. #include ","title":"shapeworks::MeshWorkItem"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#public-attributes","text":"Name std::string filename Eigen::VectorXd points int domain size_t memory_size","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#friends","text":"Name bool operator< (const MeshWorkItem & a, const MeshWorkItem & b) bool operator== (const MeshWorkItem & a, const MeshWorkItem & b)","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#variable-filename","text":"std :: string filename ;","title":"variable filename"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#variable-points","text":"Eigen :: VectorXd points ;","title":"variable points"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#variable-domain","text":"int domain { 0 };","title":"variable domain"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#variable-memory_size","text":"size_t memory_size { 0 };","title":"variable memory_size"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#friends_1","text":"","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#friend-operator","text":"friend bool operator < ( const MeshWorkItem & a , const MeshWorkItem & b );","title":"friend operator<"},{"location":"api/Classes/classshapeworks_1_1MeshWorkItem.html#friend-operator_1","text":"friend bool operator == ( const MeshWorkItem & a , const MeshWorkItem & b ); Updated on 2023-10-24 at 22:16:01 +0000","title":"friend operator=="},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html","text":"shapeworks::MeshWorkQueue Public Types Name using std::list< MeshWorkItem > WorkList Public Functions Name MeshWorkQueue () ~MeshWorkQueue () void push (const MeshWorkItem & item) MeshWorkItem * get_next_work_item () bool is_inside (const MeshWorkItem & item) void remove (const MeshWorkItem & item) bool is_empty () int size () Public Types Documentation using WorkList using shapeworks :: MeshWorkQueue :: WorkList = std :: list < MeshWorkItem > ; Public Functions Documentation function MeshWorkQueue MeshWorkQueue () function ~MeshWorkQueue ~ MeshWorkQueue () function push void push ( const MeshWorkItem & item ) function get_next_work_item MeshWorkItem * get_next_work_item () function is_inside bool is_inside ( const MeshWorkItem & item ) function remove void remove ( const MeshWorkItem & item ) function is_empty bool is_empty () function size int size () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshWorkQueue"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#shapeworksmeshworkqueue","text":"","title":"shapeworks::MeshWorkQueue"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#public-types","text":"Name using std::list< MeshWorkItem > WorkList","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#public-functions","text":"Name MeshWorkQueue () ~MeshWorkQueue () void push (const MeshWorkItem & item) MeshWorkItem * get_next_work_item () bool is_inside (const MeshWorkItem & item) void remove (const MeshWorkItem & item) bool is_empty () int size ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#using-worklist","text":"using shapeworks :: MeshWorkQueue :: WorkList = std :: list < MeshWorkItem > ;","title":"using WorkList"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-meshworkqueue","text":"MeshWorkQueue ()","title":"function MeshWorkQueue"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-meshworkqueue_1","text":"~ MeshWorkQueue ()","title":"function ~MeshWorkQueue"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-push","text":"void push ( const MeshWorkItem & item )","title":"function push"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-get_next_work_item","text":"MeshWorkItem * get_next_work_item ()","title":"function get_next_work_item"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-is_inside","text":"bool is_inside ( const MeshWorkItem & item )","title":"function is_inside"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-remove","text":"void remove ( const MeshWorkItem & item )","title":"function remove"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-is_empty","text":"bool is_empty ()","title":"function is_empty"},{"location":"api/Classes/classshapeworks_1_1MeshWorkQueue.html#function-size","text":"int size () Updated on 2023-10-24 at 22:16:01 +0000","title":"function size"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html","text":"shapeworks::MeshWorker Inherits from QObject, QRunnable Public Signals Name void result_ready (const MeshWorkItem & item, MeshHandle mesh) void finished () Public Functions Name MeshWorker ( MeshWorkQueue * queue, std::shared_ptr< MeshGenerator > generator) ~MeshWorker () void run () Public Signals Documentation signal result_ready void result_ready ( const MeshWorkItem & item , MeshHandle mesh ) signal finished void finished () Public Functions Documentation function MeshWorker MeshWorker ( MeshWorkQueue * queue , std :: shared_ptr < MeshGenerator > generator ) function ~MeshWorker ~ MeshWorker () function run void run () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshWorker"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#shapeworksmeshworker","text":"Inherits from QObject, QRunnable","title":"shapeworks::MeshWorker"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#public-signals","text":"Name void result_ready (const MeshWorkItem & item, MeshHandle mesh) void finished ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#public-functions","text":"Name MeshWorker ( MeshWorkQueue * queue, std::shared_ptr< MeshGenerator > generator) ~MeshWorker () void run ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#signal-result_ready","text":"void result_ready ( const MeshWorkItem & item , MeshHandle mesh )","title":"signal result_ready"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#signal-finished","text":"void finished ()","title":"signal finished"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#function-meshworker","text":"MeshWorker ( MeshWorkQueue * queue , std :: shared_ptr < MeshGenerator > generator )","title":"function MeshWorker"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#function-meshworker_1","text":"~ MeshWorker ()","title":"function ~MeshWorker"},{"location":"api/Classes/classshapeworks_1_1MeshWorker.html#function-run","text":"void run () Updated on 2023-10-24 at 22:16:01 +0000","title":"function run"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html","text":"shapeworks::MeshWrapper Inherited by shapeworks::VtkMeshWrapper Public Types Name typedef ParticleDomain::PointType PointType typedef ParticleDomain::GradNType GradNType Public Functions Name virtual double ComputeDistance (const PointType & pointa, int idx_a, const PointType & pointb, int idx_b, vnl_vector_fixed< double, 3 > * out_grad =nullptr) const =0 virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & dist) const =0 virtual PointType GeodesicWalk (PointType pointa, int idx, vnl_vector_fixed< double, DIMENSION > vector) const =0 virtual PointType GetPointOnMesh () const =0 virtual const PointType & GetMeshLowerBound () const =0 virtual const PointType & GetMeshUpperBound () const =0 virtual vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (const PointType & pointa, int idx, vnl_vector_fixed< double, DIMENSION > & vector) const =0 virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (PointType p, int idx) const =0 virtual GradNType SampleGradNAtPoint (PointType p, int idx) const =0 virtual PointType SnapToMesh (PointType pointa, int idx) const =0 virtual void InvalidateParticle (int idx) virtual bool IsGeodesicsEnabled () const =0 virtual vtkSmartPointer< vtkPolyData > GetPolydata () const =0 Public Types Documentation typedef PointType typedef ParticleDomain :: PointType shapeworks :: MeshWrapper :: PointType ; typedef GradNType typedef ParticleDomain :: GradNType shapeworks :: MeshWrapper :: GradNType ; Public Functions Documentation function ComputeDistance virtual double ComputeDistance ( const PointType & pointa , int idx_a , const PointType & pointb , int idx_b , vnl_vector_fixed < double , 3 > * out_grad = nullptr ) const = 0 function IsWithinDistance virtual bool IsWithinDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b , double test_dist , double & dist ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::IsWithinDistance function GeodesicWalk virtual PointType GeodesicWalk ( PointType pointa , int idx , vnl_vector_fixed < double , DIMENSION > vector ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GeodesicWalk function GetPointOnMesh virtual PointType GetPointOnMesh () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetPointOnMesh function GetMeshLowerBound virtual const PointType & GetMeshLowerBound () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetMeshLowerBound function GetMeshUpperBound virtual const PointType & GetMeshUpperBound () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetMeshUpperBound function ProjectVectorToSurfaceTangent virtual vnl_vector_fixed < double , DIMENSION > ProjectVectorToSurfaceTangent ( const PointType & pointa , int idx , vnl_vector_fixed < double , DIMENSION > & vector ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::ProjectVectorToSurfaceTangent function SampleNormalAtPoint virtual vnl_vector_fixed < float , DIMENSION > SampleNormalAtPoint ( PointType p , int idx ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::SampleNormalAtPoint function SampleGradNAtPoint virtual GradNType SampleGradNAtPoint ( PointType p , int idx ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::SampleGradNAtPoint function SnapToMesh virtual PointType SnapToMesh ( PointType pointa , int idx ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::SnapToMesh function InvalidateParticle inline virtual void InvalidateParticle ( int idx ) Reimplemented by : shapeworks::VtkMeshWrapper::InvalidateParticle function IsGeodesicsEnabled virtual bool IsGeodesicsEnabled () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::IsGeodesicsEnabled function GetPolydata virtual vtkSmartPointer < vtkPolyData > GetPolydata () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetPolydata Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshWrapper"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#shapeworksmeshwrapper","text":"Inherited by shapeworks::VtkMeshWrapper","title":"shapeworks::MeshWrapper"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#public-types","text":"Name typedef ParticleDomain::PointType PointType typedef ParticleDomain::GradNType GradNType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#public-functions","text":"Name virtual double ComputeDistance (const PointType & pointa, int idx_a, const PointType & pointb, int idx_b, vnl_vector_fixed< double, 3 > * out_grad =nullptr) const =0 virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & dist) const =0 virtual PointType GeodesicWalk (PointType pointa, int idx, vnl_vector_fixed< double, DIMENSION > vector) const =0 virtual PointType GetPointOnMesh () const =0 virtual const PointType & GetMeshLowerBound () const =0 virtual const PointType & GetMeshUpperBound () const =0 virtual vnl_vector_fixed< double, DIMENSION > ProjectVectorToSurfaceTangent (const PointType & pointa, int idx, vnl_vector_fixed< double, DIMENSION > & vector) const =0 virtual vnl_vector_fixed< float, DIMENSION > SampleNormalAtPoint (PointType p, int idx) const =0 virtual GradNType SampleGradNAtPoint (PointType p, int idx) const =0 virtual PointType SnapToMesh (PointType pointa, int idx) const =0 virtual void InvalidateParticle (int idx) virtual bool IsGeodesicsEnabled () const =0 virtual vtkSmartPointer< vtkPolyData > GetPolydata () const =0","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#typedef-pointtype","text":"typedef ParticleDomain :: PointType shapeworks :: MeshWrapper :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#typedef-gradntype","text":"typedef ParticleDomain :: GradNType shapeworks :: MeshWrapper :: GradNType ;","title":"typedef GradNType"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-computedistance","text":"virtual double ComputeDistance ( const PointType & pointa , int idx_a , const PointType & pointb , int idx_b , vnl_vector_fixed < double , 3 > * out_grad = nullptr ) const = 0","title":"function ComputeDistance"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-iswithindistance","text":"virtual bool IsWithinDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b , double test_dist , double & dist ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::IsWithinDistance","title":"function IsWithinDistance"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-geodesicwalk","text":"virtual PointType GeodesicWalk ( PointType pointa , int idx , vnl_vector_fixed < double , DIMENSION > vector ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GeodesicWalk","title":"function GeodesicWalk"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-getpointonmesh","text":"virtual PointType GetPointOnMesh () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetPointOnMesh","title":"function GetPointOnMesh"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-getmeshlowerbound","text":"virtual const PointType & GetMeshLowerBound () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetMeshLowerBound","title":"function GetMeshLowerBound"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-getmeshupperbound","text":"virtual const PointType & GetMeshUpperBound () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetMeshUpperBound","title":"function GetMeshUpperBound"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-projectvectortosurfacetangent","text":"virtual vnl_vector_fixed < double , DIMENSION > ProjectVectorToSurfaceTangent ( const PointType & pointa , int idx , vnl_vector_fixed < double , DIMENSION > & vector ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::ProjectVectorToSurfaceTangent","title":"function ProjectVectorToSurfaceTangent"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-samplenormalatpoint","text":"virtual vnl_vector_fixed < float , DIMENSION > SampleNormalAtPoint ( PointType p , int idx ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::SampleNormalAtPoint","title":"function SampleNormalAtPoint"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-samplegradnatpoint","text":"virtual GradNType SampleGradNAtPoint ( PointType p , int idx ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::SampleGradNAtPoint","title":"function SampleGradNAtPoint"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-snaptomesh","text":"virtual PointType SnapToMesh ( PointType pointa , int idx ) const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::SnapToMesh","title":"function SnapToMesh"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-invalidateparticle","text":"inline virtual void InvalidateParticle ( int idx ) Reimplemented by : shapeworks::VtkMeshWrapper::InvalidateParticle","title":"function InvalidateParticle"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-isgeodesicsenabled","text":"virtual bool IsGeodesicsEnabled () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::IsGeodesicsEnabled","title":"function IsGeodesicsEnabled"},{"location":"api/Classes/classshapeworks_1_1MeshWrapper.html#function-getpolydata","text":"virtual vtkSmartPointer < vtkPolyData > GetPolydata () const = 0 Reimplemented by : shapeworks::VtkMeshWrapper::GetPolydata Updated on 2023-10-24 at 22:16:01 +0000","title":"function GetPolydata"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html","text":"shapeworks::MixedEffectsShapeMatrix Inherits from shapeworks::LegacyShapeMatrix , vnl_matrix< double >, shapeworks::Observer Public Types Name typedef double DataType typedef MixedEffectsShapeMatrix Self typedef LegacyShapeMatrix Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( MixedEffectsShapeMatrix , LegacyShapeMatrix ) void UpdateMeanMatrix () vnl_vector< double > ComputeMean (double k) const void ResizeParameters (unsigned int n) virtual void ResizeMeanMatrix (int rs, int cs) void ResizeExplanatory (unsigned int n) virtual void DomainAddEventCallback (Object * , const itk::EventObject & e) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetTimeptsPerIndividual (int i) int GetTimeptsPerIndividual () const void SetExplanatory (std::vector< double > v) void SetExplanatory (unsigned int i, double q) const double & GetExplanatory (unsigned int i) const double & GetExplanatory (unsigned int i) const vnl_vector< double > & GetSlope () const const vnl_vector< double > & GetIntercept () const const vnl_matrix< double > & GetSlopeRandom () const const vnl_matrix< double > & GetInterceptRandom () const void SetSlope (const std::vector< double > & v) void SetIntercept (const std::vector< double > & v) void EstimateParameters () void Initialize () virtual void BeforeIteration () void SetRegressionInterval (int i) int GetRegressionInterval () const Protected Functions Name MixedEffectsShapeMatrix () virtual ~MixedEffectsShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const Additional inherited members Public Functions inherited from shapeworks::LegacyShapeMatrix Name virtual void ResizeMatrix (int rs, int cs) void PrintMatrix () bool CheckForNans () virtual void AfterIteration () virtual void SetMatrix (const vnl_matrix< double > & m) Protected Functions inherited from shapeworks::LegacyShapeMatrix Name LegacyShapeMatrix () virtual ~LegacyShapeMatrix () Protected Attributes inherited from shapeworks::LegacyShapeMatrix Name int m_DomainsPerShape Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks Public Types Documentation typedef DataType typedef double shapeworks :: MixedEffectsShapeMatrix :: DataType ; Standard class typedefs typedef Self typedef MixedEffectsShapeMatrix shapeworks :: MixedEffectsShapeMatrix :: Self ; typedef Superclass typedef LegacyShapeMatrix shapeworks :: MixedEffectsShapeMatrix :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: MixedEffectsShapeMatrix :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: MixedEffectsShapeMatrix :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: MixedEffectsShapeMatrix :: ConstWeakPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( MixedEffectsShapeMatrix , LegacyShapeMatrix ) Run-time type information (and related methods). function UpdateMeanMatrix inline void UpdateMeanMatrix () function ComputeMean inline vnl_vector < double > ComputeMean ( double k ) const function ResizeParameters inline void ResizeParameters ( unsigned int n ) function ResizeMeanMatrix inline virtual void ResizeMeanMatrix ( int rs , int cs ) function ResizeExplanatory inline void ResizeExplanatory ( unsigned int n ) function DomainAddEventCallback inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method. function PositionAddEventCallback inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionAddEventCallback function PositionSetEventCallback inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionSetEventCallback function PositionRemoveEventCallback inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::LegacyShapeMatrix::PositionRemoveEventCallback function SetDomainsPerShape inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points! function GetDomainsPerShape inline int GetDomainsPerShape () const function SetTimeptsPerIndividual inline void SetTimeptsPerIndividual ( int i ) function GetTimeptsPerIndividual inline int GetTimeptsPerIndividual () const function SetExplanatory inline void SetExplanatory ( std :: vector < double > v ) function SetExplanatory inline void SetExplanatory ( unsigned int i , double q ) function GetExplanatory inline const double & GetExplanatory ( unsigned int i ) const function GetExplanatory inline double & GetExplanatory ( unsigned int i ) function GetSlope inline const vnl_vector < double > & GetSlope () const function GetIntercept inline const vnl_vector < double > & GetIntercept () const function GetSlopeRandom inline const vnl_matrix < double > & GetSlopeRandom () const function GetInterceptRandom inline const vnl_matrix < double > & GetInterceptRandom () const function SetSlope inline void SetSlope ( const std :: vector < double > & v ) function SetIntercept inline void SetIntercept ( const std :: vector < double > & v ) function EstimateParameters inline void EstimateParameters () function Initialize inline void Initialize () function BeforeIteration inline virtual void BeforeIteration () Reimplements : shapeworks::LegacyShapeMatrix::BeforeIteration function SetRegressionInterval inline void SetRegressionInterval ( int i ) function GetRegressionInterval inline int GetRegressionInterval () const Protected Functions Documentation function MixedEffectsShapeMatrix inline MixedEffectsShapeMatrix () function ~MixedEffectsShapeMatrix inline virtual ~ MixedEffectsShapeMatrix () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MixedEffectsShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#shapeworksmixedeffectsshapematrix","text":"Inherits from shapeworks::LegacyShapeMatrix , vnl_matrix< double >, shapeworks::Observer","title":"shapeworks::MixedEffectsShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#public-types","text":"Name typedef double DataType typedef MixedEffectsShapeMatrix Self typedef LegacyShapeMatrix Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( MixedEffectsShapeMatrix , LegacyShapeMatrix ) void UpdateMeanMatrix () vnl_vector< double > ComputeMean (double k) const void ResizeParameters (unsigned int n) virtual void ResizeMeanMatrix (int rs, int cs) void ResizeExplanatory (unsigned int n) virtual void DomainAddEventCallback (Object * , const itk::EventObject & e) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetTimeptsPerIndividual (int i) int GetTimeptsPerIndividual () const void SetExplanatory (std::vector< double > v) void SetExplanatory (unsigned int i, double q) const double & GetExplanatory (unsigned int i) const double & GetExplanatory (unsigned int i) const vnl_vector< double > & GetSlope () const const vnl_vector< double > & GetIntercept () const const vnl_matrix< double > & GetSlopeRandom () const const vnl_matrix< double > & GetInterceptRandom () const void SetSlope (const std::vector< double > & v) void SetIntercept (const std::vector< double > & v) void EstimateParameters () void Initialize () virtual void BeforeIteration () void SetRegressionInterval (int i) int GetRegressionInterval () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#protected-functions","text":"Name MixedEffectsShapeMatrix () virtual ~MixedEffectsShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::LegacyShapeMatrix Name virtual void ResizeMatrix (int rs, int cs) void PrintMatrix () bool CheckForNans () virtual void AfterIteration () virtual void SetMatrix (const vnl_matrix< double > & m) Protected Functions inherited from shapeworks::LegacyShapeMatrix Name LegacyShapeMatrix () virtual ~LegacyShapeMatrix () Protected Attributes inherited from shapeworks::LegacyShapeMatrix Name int m_DomainsPerShape Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#typedef-datatype","text":"typedef double shapeworks :: MixedEffectsShapeMatrix :: DataType ; Standard class typedefs","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#typedef-self","text":"typedef MixedEffectsShapeMatrix shapeworks :: MixedEffectsShapeMatrix :: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#typedef-superclass","text":"typedef LegacyShapeMatrix shapeworks :: MixedEffectsShapeMatrix :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: MixedEffectsShapeMatrix :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: MixedEffectsShapeMatrix :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: MixedEffectsShapeMatrix :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-itktypemacro","text":"itkTypeMacro ( MixedEffectsShapeMatrix , LegacyShapeMatrix ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-updatemeanmatrix","text":"inline void UpdateMeanMatrix ()","title":"function UpdateMeanMatrix"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-computemean","text":"inline vnl_vector < double > ComputeMean ( double k ) const","title":"function ComputeMean"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-resizeparameters","text":"inline void ResizeParameters ( unsigned int n )","title":"function ResizeParameters"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-resizemeanmatrix","text":"inline virtual void ResizeMeanMatrix ( int rs , int cs )","title":"function ResizeMeanMatrix"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-resizeexplanatory","text":"inline void ResizeExplanatory ( unsigned int n )","title":"function ResizeExplanatory"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-domainaddeventcallback","text":"inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method.","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionAddEventCallback","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-positionseteventcallback","text":"inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::LegacyShapeMatrix::PositionSetEventCallback","title":"function PositionSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-positionremoveeventcallback","text":"inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::LegacyShapeMatrix::PositionRemoveEventCallback","title":"function PositionRemoveEventCallback"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points!","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getdomainspershape","text":"inline int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-settimeptsperindividual","text":"inline void SetTimeptsPerIndividual ( int i )","title":"function SetTimeptsPerIndividual"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-gettimeptsperindividual","text":"inline int GetTimeptsPerIndividual () const","title":"function GetTimeptsPerIndividual"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-setexplanatory","text":"inline void SetExplanatory ( std :: vector < double > v )","title":"function SetExplanatory"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-setexplanatory_1","text":"inline void SetExplanatory ( unsigned int i , double q )","title":"function SetExplanatory"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getexplanatory","text":"inline const double & GetExplanatory ( unsigned int i ) const","title":"function GetExplanatory"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getexplanatory_1","text":"inline double & GetExplanatory ( unsigned int i )","title":"function GetExplanatory"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getslope","text":"inline const vnl_vector < double > & GetSlope () const","title":"function GetSlope"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getintercept","text":"inline const vnl_vector < double > & GetIntercept () const","title":"function GetIntercept"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getsloperandom","text":"inline const vnl_matrix < double > & GetSlopeRandom () const","title":"function GetSlopeRandom"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getinterceptrandom","text":"inline const vnl_matrix < double > & GetInterceptRandom () const","title":"function GetInterceptRandom"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-setslope","text":"inline void SetSlope ( const std :: vector < double > & v )","title":"function SetSlope"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-setintercept","text":"inline void SetIntercept ( const std :: vector < double > & v )","title":"function SetIntercept"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-estimateparameters","text":"inline void EstimateParameters ()","title":"function EstimateParameters"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-initialize","text":"inline void Initialize ()","title":"function Initialize"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplements : shapeworks::LegacyShapeMatrix::BeforeIteration","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-setregressioninterval","text":"inline void SetRegressionInterval ( int i )","title":"function SetRegressionInterval"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-getregressioninterval","text":"inline int GetRegressionInterval () const","title":"function GetRegressionInterval"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-mixedeffectsshapematrix","text":"inline MixedEffectsShapeMatrix ()","title":"function MixedEffectsShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-mixedeffectsshapematrix_1","text":"inline virtual ~ MixedEffectsShapeMatrix ()","title":"function ~MixedEffectsShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1MixedEffectsShapeMatrix.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html","text":"shapeworks::NetworkAnalysisJob Inherits from shapeworks::Job , QObject Public Functions Name NetworkAnalysisJob (std::shared_ptr< Project > project, std::string target_group, std::string target_feature) virtual void run () override run the job virtual QString name () override get the name of the job void set_pvalue_of_interest (double pvalue_of_interest) void set_pvalue_threshold (double pvalue_threshold) void set_num_iterations (int num_iterations) Eigen::VectorXf get_tvalues () Eigen::VectorXf get_spm_values () Additional inherited members Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Public Functions Documentation function NetworkAnalysisJob NetworkAnalysisJob ( std :: shared_ptr < Project > project , std :: string target_group , std :: string target_feature ) function run virtual void run () override run the job Reimplements : shapeworks::Job::run function name virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name function set_pvalue_of_interest void set_pvalue_of_interest ( double pvalue_of_interest ) function set_pvalue_threshold void set_pvalue_threshold ( double pvalue_threshold ) function set_num_iterations void set_num_iterations ( int num_iterations ) function get_tvalues Eigen :: VectorXf get_tvalues () function get_spm_values Eigen :: VectorXf get_spm_values () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::NetworkAnalysisJob"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#shapeworksnetworkanalysisjob","text":"Inherits from shapeworks::Job , QObject","title":"shapeworks::NetworkAnalysisJob"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#public-functions","text":"Name NetworkAnalysisJob (std::shared_ptr< Project > project, std::string target_group, std::string target_feature) virtual void run () override run the job virtual QString name () override get the name of the job void set_pvalue_of_interest (double pvalue_of_interest) void set_pvalue_threshold (double pvalue_threshold) void set_num_iterations (int num_iterations) Eigen::VectorXf get_tvalues () Eigen::VectorXf get_spm_values ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#additional-inherited-members","text":"Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-networkanalysisjob","text":"NetworkAnalysisJob ( std :: shared_ptr < Project > project , std :: string target_group , std :: string target_feature )","title":"function NetworkAnalysisJob"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-run","text":"virtual void run () override run the job Reimplements : shapeworks::Job::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-name","text":"virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name","title":"function name"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-set_pvalue_of_interest","text":"void set_pvalue_of_interest ( double pvalue_of_interest )","title":"function set_pvalue_of_interest"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-set_pvalue_threshold","text":"void set_pvalue_threshold ( double pvalue_threshold )","title":"function set_pvalue_threshold"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-set_num_iterations","text":"void set_num_iterations ( int num_iterations )","title":"function set_num_iterations"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-get_tvalues","text":"Eigen :: VectorXf get_tvalues ()","title":"function get_tvalues"},{"location":"api/Classes/classshapeworks_1_1NetworkAnalysisJob.html#function-get_spm_values","text":"Eigen :: VectorXf get_spm_values () Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_spm_values"},{"location":"api/Classes/classshapeworks_1_1Observer.html","text":"shapeworks::Observer This class is an observer interface for classes to monitor for changes to the optimizer (observer pattern) #include Inherits from itk::DataObject Inherited by shapeworks::GenericContainerArray< TNumericType > , shapeworks::GenericContainerArray< T > , shapeworks::LegacyShapeMatrix , shapeworks::ShapeGradientMatrix , shapeworks::ShapeMatrix Public Classes Name struct DefinedCallbacksStruct Public Types Name typedef Observer Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( Observer , DataObject ) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionAddEventCallback (Object * , const itk::EventObject & ) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) Protected Functions Name Observer () virtual ~Observer () void PrintSelf (std::ostream & os, itk::Indent indent) const Public Attributes Name DefinedCallbacksStruct m_DefinedCallbacks Public Types Documentation typedef Self typedef Observer shapeworks :: Observer :: Self ; Standard class typedefs typedef Superclass typedef DataObject shapeworks :: Observer :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: Observer :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: Observer :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: Observer :: ConstWeakPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( Observer , DataObject ) Run-time type information (and related methods). function DomainAddEventCallback inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::GenericContainerArray::DomainAddEventCallback , shapeworks::GenericContainerArray::DomainAddEventCallback , shapeworks::LegacyShapeMatrix::DomainAddEventCallback , shapeworks::LinearRegressionShapeMatrix::DomainAddEventCallback , shapeworks::MixedEffectsShapeMatrix::DomainAddEventCallback , shapeworks::ShapeGradientMatrix::DomainAddEventCallback , shapeworks::ShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method. function TransformSetEventCallback inline virtual void TransformSetEventCallback ( Object * , const itk :: EventObject & ) function PrefixTransformSetEventCallback inline virtual void PrefixTransformSetEventCallback ( Object * , const itk :: EventObject & ) function NeighborhoodSetEventCallback inline virtual void NeighborhoodSetEventCallback ( Object * , const itk :: EventObject & ) function PositionSetEventCallback inline virtual void PositionSetEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::LegacyShapeMatrix::PositionSetEventCallback , shapeworks::LinearRegressionShapeMatrix::PositionSetEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionSetEventCallback , shapeworks::ShapeGradientMatrix::PositionSetEventCallback , shapeworks::ShapeMatrix::PositionSetEventCallback function PositionAddEventCallback inline virtual void PositionAddEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::GenericContainerArray::PositionAddEventCallback , shapeworks::GenericContainerArray::PositionAddEventCallback , shapeworks::LegacyShapeMatrix::PositionAddEventCallback , shapeworks::LinearRegressionShapeMatrix::PositionAddEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionAddEventCallback , shapeworks::ShapeGradientMatrix::PositionAddEventCallback , shapeworks::ShapeMatrix::PositionAddEventCallback function PositionRemoveEventCallback inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::GenericContainerArray::PositionRemoveEventCallback , shapeworks::GenericContainerArray::PositionRemoveEventCallback , shapeworks::LegacyShapeMatrix::PositionRemoveEventCallback , shapeworks::LinearRegressionShapeMatrix::PositionRemoveEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionRemoveEventCallback , shapeworks::ShapeGradientMatrix::PositionRemoveEventCallback , shapeworks::ShapeMatrix::PositionRemoveEventCallback Protected Functions Documentation function Observer inline Observer () function ~Observer inline virtual ~ Observer () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Public Attributes Documentation variable m_DefinedCallbacks DefinedCallbacksStruct m_DefinedCallbacks ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Observer"},{"location":"api/Classes/classshapeworks_1_1Observer.html#shapeworksobserver","text":"This class is an observer interface for classes to monitor for changes to the optimizer (observer pattern) #include Inherits from itk::DataObject Inherited by shapeworks::GenericContainerArray< TNumericType > , shapeworks::GenericContainerArray< T > , shapeworks::LegacyShapeMatrix , shapeworks::ShapeGradientMatrix , shapeworks::ShapeMatrix","title":"shapeworks::Observer"},{"location":"api/Classes/classshapeworks_1_1Observer.html#public-classes","text":"Name struct DefinedCallbacksStruct","title":"Public Classes"},{"location":"api/Classes/classshapeworks_1_1Observer.html#public-types","text":"Name typedef Observer Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Observer.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( Observer , DataObject ) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionSetEventCallback (Object * , const itk::EventObject & ) virtual void PositionAddEventCallback (Object * , const itk::EventObject & ) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & )","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Observer.html#protected-functions","text":"Name Observer () virtual ~Observer () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1Observer.html#public-attributes","text":"Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1Observer.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Observer.html#typedef-self","text":"typedef Observer shapeworks :: Observer :: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1Observer.html#typedef-superclass","text":"typedef DataObject shapeworks :: Observer :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1Observer.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: Observer :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1Observer.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: Observer :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1Observer.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: Observer :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1Observer.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-itktypemacro","text":"itkTypeMacro ( Observer , DataObject ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-domainaddeventcallback","text":"inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::GenericContainerArray::DomainAddEventCallback , shapeworks::GenericContainerArray::DomainAddEventCallback , shapeworks::LegacyShapeMatrix::DomainAddEventCallback , shapeworks::LinearRegressionShapeMatrix::DomainAddEventCallback , shapeworks::MixedEffectsShapeMatrix::DomainAddEventCallback , shapeworks::ShapeGradientMatrix::DomainAddEventCallback , shapeworks::ShapeMatrix::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method.","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-transformseteventcallback","text":"inline virtual void TransformSetEventCallback ( Object * , const itk :: EventObject & )","title":"function TransformSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-prefixtransformseteventcallback","text":"inline virtual void PrefixTransformSetEventCallback ( Object * , const itk :: EventObject & )","title":"function PrefixTransformSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-neighborhoodseteventcallback","text":"inline virtual void NeighborhoodSetEventCallback ( Object * , const itk :: EventObject & )","title":"function NeighborhoodSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-positionseteventcallback","text":"inline virtual void PositionSetEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::LegacyShapeMatrix::PositionSetEventCallback , shapeworks::LinearRegressionShapeMatrix::PositionSetEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionSetEventCallback , shapeworks::ShapeGradientMatrix::PositionSetEventCallback , shapeworks::ShapeMatrix::PositionSetEventCallback","title":"function PositionSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::GenericContainerArray::PositionAddEventCallback , shapeworks::GenericContainerArray::PositionAddEventCallback , shapeworks::LegacyShapeMatrix::PositionAddEventCallback , shapeworks::LinearRegressionShapeMatrix::PositionAddEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionAddEventCallback , shapeworks::ShapeGradientMatrix::PositionAddEventCallback , shapeworks::ShapeMatrix::PositionAddEventCallback","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-positionremoveeventcallback","text":"inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::GenericContainerArray::PositionRemoveEventCallback , shapeworks::GenericContainerArray::PositionRemoveEventCallback , shapeworks::LegacyShapeMatrix::PositionRemoveEventCallback , shapeworks::LinearRegressionShapeMatrix::PositionRemoveEventCallback , shapeworks::MixedEffectsShapeMatrix::PositionRemoveEventCallback , shapeworks::ShapeGradientMatrix::PositionRemoveEventCallback , shapeworks::ShapeMatrix::PositionRemoveEventCallback","title":"function PositionRemoveEventCallback"},{"location":"api/Classes/classshapeworks_1_1Observer.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-observer","text":"inline Observer ()","title":"function Observer"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-observer_1","text":"inline virtual ~ Observer ()","title":"function ~Observer"},{"location":"api/Classes/classshapeworks_1_1Observer.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1Observer.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Observer.html#variable-m_definedcallbacks","text":"DefinedCallbacksStruct m_DefinedCallbacks ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_DefinedCallbacks"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html","text":"shapeworks::OptimizationVisualizer Public Functions Name void AddMesh (vtkPolyData * mesh, std::shared_ptr< trimesh::TriMesh > tmesh) void IterationCallback ( ParticleSystem * particleSystem) void SetWireFrame (bool enabled) void SetSaveScreenshots (bool enabled, std::string path) OptimizationVisualizer () ~OptimizationVisualizer () Public Functions Documentation function AddMesh void AddMesh ( vtkPolyData * mesh , std :: shared_ptr < trimesh :: TriMesh > tmesh ) function IterationCallback void IterationCallback ( ParticleSystem * particleSystem ) function SetWireFrame void SetWireFrame ( bool enabled ) function SetSaveScreenshots void SetSaveScreenshots ( bool enabled , std :: string path ) function OptimizationVisualizer inline OptimizationVisualizer () function ~OptimizationVisualizer inline ~ OptimizationVisualizer () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::OptimizationVisualizer"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#shapeworksoptimizationvisualizer","text":"","title":"shapeworks::OptimizationVisualizer"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#public-functions","text":"Name void AddMesh (vtkPolyData * mesh, std::shared_ptr< trimesh::TriMesh > tmesh) void IterationCallback ( ParticleSystem * particleSystem) void SetWireFrame (bool enabled) void SetSaveScreenshots (bool enabled, std::string path) OptimizationVisualizer () ~OptimizationVisualizer ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#function-addmesh","text":"void AddMesh ( vtkPolyData * mesh , std :: shared_ptr < trimesh :: TriMesh > tmesh )","title":"function AddMesh"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#function-iterationcallback","text":"void IterationCallback ( ParticleSystem * particleSystem )","title":"function IterationCallback"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#function-setwireframe","text":"void SetWireFrame ( bool enabled )","title":"function SetWireFrame"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#function-setsavescreenshots","text":"void SetSaveScreenshots ( bool enabled , std :: string path )","title":"function SetSaveScreenshots"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#function-optimizationvisualizer","text":"inline OptimizationVisualizer ()","title":"function OptimizationVisualizer"},{"location":"api/Classes/classshapeworks_1_1OptimizationVisualizer.html#function-optimizationvisualizer_1","text":"inline ~ OptimizationVisualizer () Updated on 2023-10-24 at 22:16:01 +0000","title":"function ~OptimizationVisualizer"},{"location":"api/Classes/classshapeworks_1_1Optimize.html","text":"shapeworks::Optimize More... #include Inherited by shapeworks::QOptimize Public Types Name using itk::Image< float, 3 > ImageType using VectorFunction::VectorType VectorType using Eigen::MatrixXd MatrixType Public Functions Name Optimize () Constructor. virtual ~Optimize () Destructor. bool Run () Run the optimization. bool LoadParameterFile (std::string filename) Load a parameter file. bool SetUpOptimize (ProjectHandle project) Set up this Optimize object using a ShapeWorks project. void SetProject (std::shared_ptr< Project > project) Set the Project object. void SetIterationCallbackFunction (const std::function< void(void)> & f) Set an iteration callback function to be called after each iteration. void AbortOptimization () Abort optimization. bool GetAborted () Return if the optimization was aborted. virtual std::vector< std::vector< itk::Point< double > > > GetLocalPoints () Return the local points. virtual std::vector< std::vector< itk::Point< double > > > GetGlobalPoints () Return the global points. void SetCutPlanes (std::vector< std::array< itk::Point< double >, 3 > > cut_planes) Set cutting planes. void SetVerbosity (int verbosity_level) Set the verbosity level (0-5) void SetDomainsPerShape (int domains_per_shape) Set the number of domains per shape. int GetDomainsPerShape () Return the number of domains per shape. void SetDomainType (shapeworks::DomainType type) shapeworks::DomainType GetDomainType () void SetNumberOfParticles (std::vector< int > number_of_particles) Set the numbers of particles (vector of numbers, one for each domain) std::vector< int > GetNumberOfParticles () Return the numbers of particles per domain. void SetTransformFile (std::string filename) Set the transform file. std::string GetTransformFile () Get the transform file. void SetPrefixTransformFile (std::string prefix_transform_file) Set the prefix transform file (TODO: details) std::string GetPrefixTransformFile () Get the prefix transform file. void SetOutputDir (std::string output_dir) Set the output directory. void SetOutputTransformFile (std::string output_transform_file) Set the output transform file. void SetOutputIndividualTransformFiles (bool value) Set whether individual transforms should be written. void SetUseMeshBasedAttributes (bool use_mesh_based_attributes) Set if mesh based attributes should be used. bool GetUseMeshBasedAttributes () Get if mesh based attributes are being used. void SetUseXYZ (std::vector< bool > use_xyz) Set if XYZ is used, one value per domain. void SetUseNormals (std::vector< bool > use_normals) Set if Normals are being used, one value per domain. void SetAttributesPerDomain (std::vector< int > attributes_per_domain) Set the attributes per domain. std::vector< int > GetAttributesPerDomain () Get attributes per domain. void SetDistributionDomainID (int distribution_domain_id) Set the distribution domain ID (TODO: details) int GetDistributionDomainID () Get the distribution domain ID. void SetOutputCuttingPlaneFile (std::string output_cutting_plane_file) Set the output cutting plane file. void SetUseCuttingPlanes (bool use_cutting_planes) Set if using cutting planes. void SetCuttingPlane (unsigned int i, const vnl_vector_fixed< double, 3 > & va, const vnl_vector_fixed< double, 3 > & vb, const vnl_vector_fixed< double, 3 > & vc) Set a given cutting plane for a shape. void SetProcessingMode (int mode) Set processing mode (TODO: details) void SetAdaptivityMode (int adaptivity_mode) Set adaptivity mode (TODO: details) void SetMeshFFCMode (int mesh_ffc_mode) Set Mesh FFC Mode false/0 = mesh clipping mode, true/1 = mesh augmented lagrangian mode. void SetAdaptivityStrength (double adaptivity_strength) Set adaptivity strength (TODO: details) void SetTimePtsPerSubject (int time_pts_per_subject) Set the number of time points per subject (TODO: details) int GetTimePtsPerSubject () Get the number of time points per subject (TODO: details) void SetOptimizationIterations (int optimization_iterations) Set the number of optimization iterations. void SetOptimizationIterationsCompleted (int optimization_iterations_completed) Set the number of optimization iterations already completed (TODO: details) void SetIterationsPerSplit (int iterations_per_split) Set the number of iterations per split. void SetUseShapeStatisticsInInit (bool use_shape_statistics_in_init) Set if shape statistics should be used in initialization. void SetProcrustesInterval (int procrustes_interval) Set the interval for running procrustes (0 to disable) void SetProcrustesScaling (bool procrustes_scaling) Set if procrustes scaling should be used. void SetProcrustesRotationTranslation (bool procrustes_rotation_translation) Set if procrustes rotation/translation should be used. void SetRelativeWeighting (double relative_weighting) Set the relative weighting (TODO: details) void SetInitialRelativeWeighting (double initial_relative_weighting) Set the initial relative weigting (TODO: details) void SetStartingRegularization (double starting_regularization) Set the starting regularization (TODO: details) void SetEndingRegularization (double ending_regularization) Set the ending regularization (TODO: details) void SetRecomputeRegularizationInterval (int recompute_regularization_interval) Set the interval for recomputing regularization (TODO: details) void SetSaveInitSplits (bool save_init_splits) Set if initialization splits should be saved or not. void SetCheckpointingInterval (int checkpointing_interval) Set the checkpointing interval. void SetKeepCheckpoints (int keep_checkpoints) Set if checkpoints should be kept (0=disable, 1=enable) void SetUseRegression (bool use_regression) Set if regression should be used (TODO: details) void SetUseMixedEffects (bool use_mixed_effects) Set if mixed effects should be used (TODO: details) void SetUseDisentangledSpatiotemporalSSM (bool use_disentangled_ssm_4d) Set if optimization should be done using disentangled spatiotemporal SSM method. bool GetUseDisentangledSpatiotemporalSSM () Returns true if optimization is to be done using disentangled spatiotemporal SSM method. void SetNormalAngle (double normal_angle) For good/bad analysis, set the normal angle to use (TODO: details) void SetPerformGoodBad (bool perform_good_bad) Set if good/bad analysis should be done (TODO: details) void SetLogEnergy (bool log_energy) Set the log energy (TODO: details) void AddImage (ImageType::Pointer image, std::string name =\"\") Set the shape input images. void AddMesh (vtkSmartPointer< vtkPolyData > poly_data) void AddContour (vtkSmartPointer< vtkPolyData > poly_data) void SetFilenames (const std::vector< std::string > & filenames) Set the shape filenames (TODO: details) void SetPointFiles (const std::vector< std::string > & point_files) Set starting point files (TODO: details) void SetInitialPoints (std::vector< std::vector< itk::Point< double > > > initial_points) Set initial particle positions (e.g. for fixed subjects) int GetNumShapes () Get number of shapes. void SetAttributeScales (const std::vector< double > & scales) Set attribute scales (TODO: details) void SetFieldAttributes (const std::vector< std::string > & field_attributes) Set the field attributes. void SetParticleFlags (std::vector< int > flags) Set Particle Flags (TODO: details) void SetFixedDomains (std::vector< int > flags) Set Domain Flags (TODO: details) void SetSharedBoundaryEnabled (bool enabled) Shared boundary settings. void SetSharedBoundaryWeight (double weight) const std::vector< int > & GetDomainFlags () void SetFileOutputEnabled (bool enabled) Set if file output is enabled. std::vector< bool > GetUseXYZ () Return if XYZ is used, per shape. std::vector< bool > GetUseNormals () Return if Normals are used, per shape. void SetNarrowBand (double v) Set the narrow band used to be +/- the given value as a multiple of the spacing. double GetNarrowBand () Return the narrow band to be used. void SetUseShapeStatisticsAfter (int num_particles) Set the number of particles when correspondence based multiscale takes over. int GetUseShapeStatisticsAfter () Return the number of particles when correspondence based multiscale takes over. void PrintParamInfo () Print parameter info to stdout. std::shared_ptr< Sampler > GetSampler () Return the Sampler . MatrixContainer GetParticleSystem () Return the particle system as a matrix. void SetPythonFile (std::string filename) Set the python file to run at startup. void SetGeodesicsEnabled (bool is_enabled) Set whether or not geodesics are enabled. void SetGeodesicsCacheSizeMultiplier (size_t n) OptimizationVisualizer & GetVisualizer () void SetShowVisualizer (bool show) bool GetShowVisualizer () bool GetMeshFFCMode () vnl_vector_fixed< double, 3 > TransformPoint (int domain, vnl_vector_fixed< double, 3 > input) transform a point if necessary void UpdateProgress () void set_particle_format (std::string format) Protected Functions Name virtual void SetIterationCallback () Set the iteration callback. Derived classes should override to set their own callback. void ComputeTotalIterations () void OptimizerStop () void ReadTransformFile () void ReadPrefixTransformFile (const std::string & s) void InitializeSampler () double GetMinNeighborhoodRadius () void AddSinglePoint () void Initialize () void AddAdaptivity () void RunOptimize () virtual void IterateCallback (itk::Object * , const itk::EventObject & ) void ComputeEnergyAfterIteration () void SetCotanSigma () void WriteTransformFile (int iter =-1) const void WriteTransformFile (std::string iter_prefix) const void WriteTransformFiles (int iter =-1) const void WriteTransformFiles (std::string iter_prefix) const void WritePointFiles (int iter =-1) void WritePointFiles (std::string iter_prefix) void WritePointFilesWithFeatures (int iter =-1) void WritePointFilesWithFeatures (std::string iter_prefix) void WriteEnergyFiles () void WriteSplitFiles (std::string name) void WriteCuttingPlanePoints (int iter =-1) void WriteParameters (std::string output_dir =\"\") void ReportBadParticles () int SetParameters () void WriteModes () void PrintStartMessage (std::string str, unsigned int vlevel =0) const void PrintDoneMessage (unsigned int vlevel =0) const virtual void UpdateExportablePoints () virtual std::vector< std::vector< std::vector< double > > > GetProcrustesTransforms () void UpdateProject () std::string GetCheckpointDir () Protected Attributes Name std::shared_ptr< Sampler > m_sampler ProcrustesRegistration::Pointer m_procrustes std::shared_ptr< ParticleGoodBadAssessment > m_good_bad unsigned int m_verbosity_level std::vector< std::vector< itk::Point< double > > > m_local_points std::vector< std::vector< itk::Point< double > > > m_global_points int m_checkpoint_counter int m_procrustes_counter bool m_use_cutting_planes bool m_optimizing bool m_use_regression bool m_use_mixed_effects bool m_use_disentangled_ssm unsigned int m_domains_per_shape shapeworks::DomainType m_domain_type std::vector< int > m_number_of_particles std::string m_transform_file std::string m_prefix_transform_file std::string m_output_dir std::string m_output_transform_file bool m_output_transform_files bool m_mesh_based_attributes std::vector< bool > m_use_xyz std::vector< bool > m_use_normals std::vector< int > m_attributes_per_domain int m_distribution_domain_id std::string m_output_cutting_plane_file int m_processing_mode int m_adaptivity_mode double m_adaptivity_strength bool m_mesh_ffc_mode unsigned int m_timepts_per_subject int m_optimization_iterations int m_optimization_iterations_completed int m_iterations_per_split bool m_use_shape_statistics_in_init unsigned int m_procrustes_interval bool m_procrustes_scaling bool m_procrustes_rotation_translation double m_relative_weighting double m_initial_relative_weighting double m_starting_regularization double m_ending_regularization int m_recompute_regularization_interval bool m_save_init_splits unsigned int m_checkpointing_interval int m_keep_checkpoints double m_cotan_sigma_factor std::vector< int > m_particle_flags std::vector< int > m_domain_flags double m_narrow_band bool m_narrow_band_set bool m_fixed_domains_present int m_use_shape_statistics_after std::string m_python_filename bool m_geodesics_enabled size_t m_geodesic_cache_size_multiplier double m_spacing std::vector< std::string > m_filenames int m_num_shapes std::vector< double > m_energy_a std::vector< double > m_energy_b std::vector< double > m_total_energy bool m_log_energy std::string m_str_energy std::vector< std::vector< int > > m_bad_ids double m_normal_angle bool m_perform_good_bad std::vector< int > m_cutting_planes_per_input std::vector< int > m_spheres_per_input bool m_file_output_enabled bool m_aborted std::vector< std::array< itk::Point< double >, 3 > > m_cut_planes int m_total_iterations int m_iteration_count int m_split_number int current_particle_iterations_ int total_particle_iterations_ std::function< void(void)> iteration_callback_ bool show_visualizer_ shapeworks::OptimizationVisualizer visualizer_ std::string particle_format_ std::shared_ptr< Project > project_ std::chrono::system_clock::time_point m_start_time std::chrono::system_clock::time_point m_last_update_time std::chrono::system_clock::time_point m_last_remaining_update_time std::string m_remaining_time_message Detailed Description class shapeworks :: Optimize ; Par : Overview of Optimize This class is the top-level API for the optimization library The Optimize class controls all aspect of the particle system library provides a top-level public API for running optimization Public Types Documentation using ImageType using shapeworks :: Optimize :: ImageType = itk :: Image < float , 3 > ; using VectorType using shapeworks :: Optimize :: VectorType = VectorFunction :: VectorType ; using MatrixType using shapeworks :: Optimize :: MatrixType = Eigen :: MatrixXd ; Public Functions Documentation function Optimize Optimize () Constructor. function ~Optimize virtual ~ Optimize () Destructor. function Run bool Run () Run the optimization. function LoadParameterFile bool LoadParameterFile ( std :: string filename ) Load a parameter file. function SetUpOptimize bool SetUpOptimize ( ProjectHandle project ) Set up this Optimize object using a ShapeWorks project. function SetProject void SetProject ( std :: shared_ptr < Project > project ) Set the Project object. function SetIterationCallbackFunction inline void SetIterationCallbackFunction ( const std :: function < void ( void ) > & f ) Set an iteration callback function to be called after each iteration. function AbortOptimization void AbortOptimization () Abort optimization. function GetAborted bool GetAborted () Return if the optimization was aborted. function GetLocalPoints virtual std :: vector < std :: vector < itk :: Point < double > > > GetLocalPoints () Return the local points. Reimplemented by : shapeworks::QOptimize::GetLocalPoints function GetGlobalPoints virtual std :: vector < std :: vector < itk :: Point < double > > > GetGlobalPoints () Return the global points. Reimplemented by : shapeworks::QOptimize::GetGlobalPoints function SetCutPlanes void SetCutPlanes ( std :: vector < std :: array < itk :: Point < double > , 3 > > cut_planes ) Set cutting planes. function SetVerbosity void SetVerbosity ( int verbosity_level ) Set the verbosity level (0-5) function SetDomainsPerShape void SetDomainsPerShape ( int domains_per_shape ) Set the number of domains per shape. function GetDomainsPerShape int GetDomainsPerShape () Return the number of domains per shape. function SetDomainType void SetDomainType ( shapeworks :: DomainType type ) function GetDomainType shapeworks :: DomainType GetDomainType () function SetNumberOfParticles void SetNumberOfParticles ( std :: vector < int > number_of_particles ) Set the numbers of particles (vector of numbers, one for each domain) function GetNumberOfParticles std :: vector < int > GetNumberOfParticles () Return the numbers of particles per domain. function SetTransformFile void SetTransformFile ( std :: string filename ) Set the transform file. function GetTransformFile std :: string GetTransformFile () Get the transform file. function SetPrefixTransformFile void SetPrefixTransformFile ( std :: string prefix_transform_file ) Set the prefix transform file (TODO: details) function GetPrefixTransformFile std :: string GetPrefixTransformFile () Get the prefix transform file. function SetOutputDir void SetOutputDir ( std :: string output_dir ) Set the output directory. function SetOutputTransformFile void SetOutputTransformFile ( std :: string output_transform_file ) Set the output transform file. function SetOutputIndividualTransformFiles void SetOutputIndividualTransformFiles ( bool value ) Set whether individual transforms should be written. function SetUseMeshBasedAttributes void SetUseMeshBasedAttributes ( bool use_mesh_based_attributes ) Set if mesh based attributes should be used. function GetUseMeshBasedAttributes bool GetUseMeshBasedAttributes () Get if mesh based attributes are being used. function SetUseXYZ void SetUseXYZ ( std :: vector < bool > use_xyz ) Set if XYZ is used, one value per domain. function SetUseNormals void SetUseNormals ( std :: vector < bool > use_normals ) Set if Normals are being used, one value per domain. function SetAttributesPerDomain void SetAttributesPerDomain ( std :: vector < int > attributes_per_domain ) Set the attributes per domain. function GetAttributesPerDomain std :: vector < int > GetAttributesPerDomain () Get attributes per domain. function SetDistributionDomainID void SetDistributionDomainID ( int distribution_domain_id ) Set the distribution domain ID (TODO: details) function GetDistributionDomainID int GetDistributionDomainID () Get the distribution domain ID. function SetOutputCuttingPlaneFile void SetOutputCuttingPlaneFile ( std :: string output_cutting_plane_file ) Set the output cutting plane file. function SetUseCuttingPlanes void SetUseCuttingPlanes ( bool use_cutting_planes ) Set if using cutting planes. function SetCuttingPlane void SetCuttingPlane ( unsigned int i , const vnl_vector_fixed < double , 3 > & va , const vnl_vector_fixed < double , 3 > & vb , const vnl_vector_fixed < double , 3 > & vc ) Set a given cutting plane for a shape. function SetProcessingMode void SetProcessingMode ( int mode ) Set processing mode (TODO: details) function SetAdaptivityMode void SetAdaptivityMode ( int adaptivity_mode ) Set adaptivity mode (TODO: details) function SetMeshFFCMode inline void SetMeshFFCMode ( int mesh_ffc_mode ) Set Mesh FFC Mode false/0 = mesh clipping mode, true/1 = mesh augmented lagrangian mode. function SetAdaptivityStrength void SetAdaptivityStrength ( double adaptivity_strength ) Set adaptivity strength (TODO: details) function SetTimePtsPerSubject void SetTimePtsPerSubject ( int time_pts_per_subject ) Set the number of time points per subject (TODO: details) function GetTimePtsPerSubject int GetTimePtsPerSubject () Get the number of time points per subject (TODO: details) function SetOptimizationIterations void SetOptimizationIterations ( int optimization_iterations ) Set the number of optimization iterations. function SetOptimizationIterationsCompleted void SetOptimizationIterationsCompleted ( int optimization_iterations_completed ) Set the number of optimization iterations already completed (TODO: details) function SetIterationsPerSplit void SetIterationsPerSplit ( int iterations_per_split ) Set the number of iterations per split. function SetUseShapeStatisticsInInit void SetUseShapeStatisticsInInit ( bool use_shape_statistics_in_init ) Set if shape statistics should be used in initialization. function SetProcrustesInterval void SetProcrustesInterval ( int procrustes_interval ) Set the interval for running procrustes (0 to disable) function SetProcrustesScaling void SetProcrustesScaling ( bool procrustes_scaling ) Set if procrustes scaling should be used. function SetProcrustesRotationTranslation void SetProcrustesRotationTranslation ( bool procrustes_rotation_translation ) Set if procrustes rotation/translation should be used. function SetRelativeWeighting void SetRelativeWeighting ( double relative_weighting ) Set the relative weighting (TODO: details) function SetInitialRelativeWeighting void SetInitialRelativeWeighting ( double initial_relative_weighting ) Set the initial relative weigting (TODO: details) function SetStartingRegularization void SetStartingRegularization ( double starting_regularization ) Set the starting regularization (TODO: details) function SetEndingRegularization void SetEndingRegularization ( double ending_regularization ) Set the ending regularization (TODO: details) function SetRecomputeRegularizationInterval void SetRecomputeRegularizationInterval ( int recompute_regularization_interval ) Set the interval for recomputing regularization (TODO: details) function SetSaveInitSplits void SetSaveInitSplits ( bool save_init_splits ) Set if initialization splits should be saved or not. function SetCheckpointingInterval void SetCheckpointingInterval ( int checkpointing_interval ) Set the checkpointing interval. function SetKeepCheckpoints void SetKeepCheckpoints ( int keep_checkpoints ) Set if checkpoints should be kept (0=disable, 1=enable) function SetUseRegression void SetUseRegression ( bool use_regression ) Set if regression should be used (TODO: details) function SetUseMixedEffects void SetUseMixedEffects ( bool use_mixed_effects ) Set if mixed effects should be used (TODO: details) function SetUseDisentangledSpatiotemporalSSM void SetUseDisentangledSpatiotemporalSSM ( bool use_disentangled_ssm_4d ) Set if optimization should be done using disentangled spatiotemporal SSM method. function GetUseDisentangledSpatiotemporalSSM bool GetUseDisentangledSpatiotemporalSSM () Returns true if optimization is to be done using disentangled spatiotemporal SSM method. function SetNormalAngle void SetNormalAngle ( double normal_angle ) For good/bad analysis, set the normal angle to use (TODO: details) function SetPerformGoodBad void SetPerformGoodBad ( bool perform_good_bad ) Set if good/bad analysis should be done (TODO: details) function SetLogEnergy void SetLogEnergy ( bool log_energy ) Set the log energy (TODO: details) function AddImage void AddImage ( ImageType :: Pointer image , std :: string name = \"\" ) Set the shape input images. function AddMesh void AddMesh ( vtkSmartPointer < vtkPolyData > poly_data ) function AddContour void AddContour ( vtkSmartPointer < vtkPolyData > poly_data ) function SetFilenames void SetFilenames ( const std :: vector < std :: string > & filenames ) Set the shape filenames (TODO: details) function SetPointFiles void SetPointFiles ( const std :: vector < std :: string > & point_files ) Set starting point files (TODO: details) function SetInitialPoints void SetInitialPoints ( std :: vector < std :: vector < itk :: Point < double > > > initial_points ) Set initial particle positions (e.g. for fixed subjects) function GetNumShapes int GetNumShapes () Get number of shapes. function SetAttributeScales void SetAttributeScales ( const std :: vector < double > & scales ) Set attribute scales (TODO: details) function SetFieldAttributes void SetFieldAttributes ( const std :: vector < std :: string > & field_attributes ) Set the field attributes. function SetParticleFlags void SetParticleFlags ( std :: vector < int > flags ) Set Particle Flags (TODO: details) function SetFixedDomains void SetFixedDomains ( std :: vector < int > flags ) Set Domain Flags (TODO: details) function SetSharedBoundaryEnabled void SetSharedBoundaryEnabled ( bool enabled ) Shared boundary settings. function SetSharedBoundaryWeight void SetSharedBoundaryWeight ( double weight ) function GetDomainFlags const std :: vector < int > & GetDomainFlags () function SetFileOutputEnabled void SetFileOutputEnabled ( bool enabled ) Set if file output is enabled. function GetUseXYZ std :: vector < bool > GetUseXYZ () Return if XYZ is used, per shape. function GetUseNormals std :: vector < bool > GetUseNormals () Return if Normals are used, per shape. function SetNarrowBand void SetNarrowBand ( double v ) Set the narrow band used to be +/- the given value as a multiple of the spacing. function GetNarrowBand double GetNarrowBand () Return the narrow band to be used. function SetUseShapeStatisticsAfter void SetUseShapeStatisticsAfter ( int num_particles ) Set the number of particles when correspondence based multiscale takes over. function GetUseShapeStatisticsAfter int GetUseShapeStatisticsAfter () Return the number of particles when correspondence based multiscale takes over. function PrintParamInfo void PrintParamInfo () Print parameter info to stdout. function GetSampler inline std :: shared_ptr < Sampler > GetSampler () Return the Sampler . function GetParticleSystem MatrixContainer GetParticleSystem () Return the particle system as a matrix. function SetPythonFile void SetPythonFile ( std :: string filename ) Set the python file to run at startup. function SetGeodesicsEnabled void SetGeodesicsEnabled ( bool is_enabled ) Set whether or not geodesics are enabled. function SetGeodesicsCacheSizeMultiplier void SetGeodesicsCacheSizeMultiplier ( size_t n ) Set cache size multiplier for geodesics. The total number of cache entries will be n * number_of_triangles function GetVisualizer OptimizationVisualizer & GetVisualizer () function SetShowVisualizer void SetShowVisualizer ( bool show ) function GetShowVisualizer bool GetShowVisualizer () function GetMeshFFCMode inline bool GetMeshFFCMode () function TransformPoint vnl_vector_fixed < double , 3 > TransformPoint ( int domain , vnl_vector_fixed < double , 3 > input ) transform a point if necessary function UpdateProgress void UpdateProgress () function set_particle_format inline void set_particle_format ( std :: string format ) Protected Functions Documentation function SetIterationCallback virtual void SetIterationCallback () Set the iteration callback. Derived classes should override to set their own callback. Reimplemented by : shapeworks::QOptimize::SetIterationCallback function ComputeTotalIterations void ComputeTotalIterations () function OptimizerStop void OptimizerStop () function ReadTransformFile void ReadTransformFile () function ReadPrefixTransformFile void ReadPrefixTransformFile ( const std :: string & s ) function InitializeSampler void InitializeSampler () function GetMinNeighborhoodRadius double GetMinNeighborhoodRadius () function AddSinglePoint void AddSinglePoint () function Initialize void Initialize () function AddAdaptivity void AddAdaptivity () function RunOptimize void RunOptimize () function IterateCallback virtual void IterateCallback ( itk :: Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::QOptimize::IterateCallback function ComputeEnergyAfterIteration void ComputeEnergyAfterIteration () function SetCotanSigma void SetCotanSigma () function WriteTransformFile void WriteTransformFile ( int iter = -1 ) const function WriteTransformFile void WriteTransformFile ( std :: string iter_prefix ) const function WriteTransformFiles void WriteTransformFiles ( int iter = -1 ) const function WriteTransformFiles void WriteTransformFiles ( std :: string iter_prefix ) const function WritePointFiles void WritePointFiles ( int iter = -1 ) function WritePointFiles void WritePointFiles ( std :: string iter_prefix ) function WritePointFilesWithFeatures void WritePointFilesWithFeatures ( int iter = -1 ) function WritePointFilesWithFeatures void WritePointFilesWithFeatures ( std :: string iter_prefix ) function WriteEnergyFiles void WriteEnergyFiles () function WriteSplitFiles void WriteSplitFiles ( std :: string name ) function WriteCuttingPlanePoints void WriteCuttingPlanePoints ( int iter = -1 ) function WriteParameters void WriteParameters ( std :: string output_dir = \"\" ) function ReportBadParticles void ReportBadParticles () function SetParameters int SetParameters () function WriteModes void WriteModes () function PrintStartMessage void PrintStartMessage ( std :: string str , unsigned int vlevel = 0 ) const function PrintDoneMessage void PrintDoneMessage ( unsigned int vlevel = 0 ) const function UpdateExportablePoints virtual void UpdateExportablePoints () Reimplemented by : shapeworks::QOptimize::UpdateExportablePoints function GetProcrustesTransforms virtual std :: vector < std :: vector < std :: vector < double > > > GetProcrustesTransforms () Reimplemented by : shapeworks::QOptimize::GetProcrustesTransforms function UpdateProject void UpdateProject () function GetCheckpointDir std :: string GetCheckpointDir () Protected Attributes Documentation variable m_sampler std :: shared_ptr < Sampler > m_sampler ; variable m_procrustes ProcrustesRegistration :: Pointer m_procrustes ; variable m_good_bad std :: shared_ptr < ParticleGoodBadAssessment > m_good_bad ; variable m_verbosity_level unsigned int m_verbosity_level = 0 ; variable m_local_points std :: vector < std :: vector < itk :: Point < double > > > m_local_points ; variable m_global_points std :: vector < std :: vector < itk :: Point < double > > > m_global_points ; variable m_checkpoint_counter int m_checkpoint_counter = 0 ; variable m_procrustes_counter int m_procrustes_counter = 0 ; variable m_use_cutting_planes bool m_use_cutting_planes = false ; variable m_optimizing bool m_optimizing = false ; variable m_use_regression bool m_use_regression = false ; variable m_use_mixed_effects bool m_use_mixed_effects = false ; variable m_use_disentangled_ssm bool m_use_disentangled_ssm = false ; variable m_domains_per_shape unsigned int m_domains_per_shape = 1 ; variable m_domain_type shapeworks :: DomainType m_domain_type = shapeworks :: DomainType :: Image ; variable m_number_of_particles std :: vector < int > m_number_of_particles ; variable m_transform_file std :: string m_transform_file ; variable m_prefix_transform_file std :: string m_prefix_transform_file ; variable m_output_dir std :: string m_output_dir ; variable m_output_transform_file std :: string m_output_transform_file ; variable m_output_transform_files bool m_output_transform_files = false ; variable m_mesh_based_attributes bool m_mesh_based_attributes = false ; variable m_use_xyz std :: vector < bool > m_use_xyz ; variable m_use_normals std :: vector < bool > m_use_normals ; variable m_attributes_per_domain std :: vector < int > m_attributes_per_domain ; variable m_distribution_domain_id int m_distribution_domain_id = -1 ; variable m_output_cutting_plane_file std :: string m_output_cutting_plane_file ; variable m_processing_mode int m_processing_mode = 3 ; variable m_adaptivity_mode int m_adaptivity_mode = 0 ; variable m_adaptivity_strength double m_adaptivity_strength = 0.0 ; variable m_mesh_ffc_mode bool m_mesh_ffc_mode = 0 ; variable m_timepts_per_subject unsigned int m_timepts_per_subject = 1 ; variable m_optimization_iterations int m_optimization_iterations = 2000 ; variable m_optimization_iterations_completed int m_optimization_iterations_completed = 0 ; variable m_iterations_per_split int m_iterations_per_split = 1000 ; variable m_use_shape_statistics_in_init bool m_use_shape_statistics_in_init = false ; variable m_procrustes_interval unsigned int m_procrustes_interval = 3 ; variable m_procrustes_scaling bool m_procrustes_scaling = true ; variable m_procrustes_rotation_translation bool m_procrustes_rotation_translation = true ; variable m_relative_weighting double m_relative_weighting = 1.0 ; variable m_initial_relative_weighting double m_initial_relative_weighting = 0.05 ; variable m_starting_regularization double m_starting_regularization = 1000 ; variable m_ending_regularization double m_ending_regularization = 1.0 ; variable m_recompute_regularization_interval int m_recompute_regularization_interval = 1 ; variable m_save_init_splits bool m_save_init_splits = false ; variable m_checkpointing_interval unsigned int m_checkpointing_interval = 50 ; variable m_keep_checkpoints int m_keep_checkpoints = 0 ; variable m_cotan_sigma_factor double m_cotan_sigma_factor = 5.0 ; variable m_particle_flags std :: vector < int > m_particle_flags ; variable m_domain_flags std :: vector < int > m_domain_flags ; variable m_narrow_band double m_narrow_band = 0.0 ; variable m_narrow_band_set bool m_narrow_band_set = false ; variable m_fixed_domains_present bool m_fixed_domains_present = false ; variable m_use_shape_statistics_after int m_use_shape_statistics_after = -1 ; variable m_python_filename std :: string m_python_filename ; variable m_geodesics_enabled bool m_geodesics_enabled = false ; variable m_geodesic_cache_size_multiplier size_t m_geodesic_cache_size_multiplier = 0 ; variable m_spacing double m_spacing = 0 ; variable m_filenames std :: vector < std :: string > m_filenames ; variable m_num_shapes int m_num_shapes = 0 ; variable m_energy_a std :: vector < double > m_energy_a ; variable m_energy_b std :: vector < double > m_energy_b ; variable m_total_energy std :: vector < double > m_total_energy ; variable m_log_energy bool m_log_energy = false ; variable m_str_energy std :: string m_str_energy ; variable m_bad_ids std :: vector < std :: vector < int > > m_bad_ids ; variable m_normal_angle double m_normal_angle = itk :: Math :: pi / 2.0 ; variable m_perform_good_bad bool m_perform_good_bad = false ; variable m_cutting_planes_per_input std :: vector < int > m_cutting_planes_per_input ; variable m_spheres_per_input std :: vector < int > m_spheres_per_input ; variable m_file_output_enabled bool m_file_output_enabled = true ; variable m_aborted bool m_aborted = false ; variable m_cut_planes std :: vector < std :: array < itk :: Point < double > , 3 > > m_cut_planes ; variable m_total_iterations int m_total_iterations = 0 ; variable m_iteration_count int m_iteration_count = 0 ; variable m_split_number int m_split_number = 0 ; variable current_particle_iterations_ int current_particle_iterations_ = 0 ; variable total_particle_iterations_ int total_particle_iterations_ = 0 ; variable iteration_callback_ std :: function < void ( void ) > iteration_callback_ ; variable show_visualizer_ bool show_visualizer_ = false ; variable visualizer_ shapeworks :: OptimizationVisualizer visualizer_ ; variable particle_format_ std :: string particle_format_ = \"particles\" ; variable project_ std :: shared_ptr < Project > project_ ; variable m_start_time std :: chrono :: system_clock :: time_point m_start_time ; variable m_last_update_time std :: chrono :: system_clock :: time_point m_last_update_time ; variable m_last_remaining_update_time std :: chrono :: system_clock :: time_point m_last_remaining_update_time ; variable m_remaining_time_message std :: string m_remaining_time_message ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Optimize"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#shapeworksoptimize","text":"More... #include Inherited by shapeworks::QOptimize","title":"shapeworks::Optimize"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#public-types","text":"Name using itk::Image< float, 3 > ImageType using VectorFunction::VectorType VectorType using Eigen::MatrixXd MatrixType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#public-functions","text":"Name Optimize () Constructor. virtual ~Optimize () Destructor. bool Run () Run the optimization. bool LoadParameterFile (std::string filename) Load a parameter file. bool SetUpOptimize (ProjectHandle project) Set up this Optimize object using a ShapeWorks project. void SetProject (std::shared_ptr< Project > project) Set the Project object. void SetIterationCallbackFunction (const std::function< void(void)> & f) Set an iteration callback function to be called after each iteration. void AbortOptimization () Abort optimization. bool GetAborted () Return if the optimization was aborted. virtual std::vector< std::vector< itk::Point< double > > > GetLocalPoints () Return the local points. virtual std::vector< std::vector< itk::Point< double > > > GetGlobalPoints () Return the global points. void SetCutPlanes (std::vector< std::array< itk::Point< double >, 3 > > cut_planes) Set cutting planes. void SetVerbosity (int verbosity_level) Set the verbosity level (0-5) void SetDomainsPerShape (int domains_per_shape) Set the number of domains per shape. int GetDomainsPerShape () Return the number of domains per shape. void SetDomainType (shapeworks::DomainType type) shapeworks::DomainType GetDomainType () void SetNumberOfParticles (std::vector< int > number_of_particles) Set the numbers of particles (vector of numbers, one for each domain) std::vector< int > GetNumberOfParticles () Return the numbers of particles per domain. void SetTransformFile (std::string filename) Set the transform file. std::string GetTransformFile () Get the transform file. void SetPrefixTransformFile (std::string prefix_transform_file) Set the prefix transform file (TODO: details) std::string GetPrefixTransformFile () Get the prefix transform file. void SetOutputDir (std::string output_dir) Set the output directory. void SetOutputTransformFile (std::string output_transform_file) Set the output transform file. void SetOutputIndividualTransformFiles (bool value) Set whether individual transforms should be written. void SetUseMeshBasedAttributes (bool use_mesh_based_attributes) Set if mesh based attributes should be used. bool GetUseMeshBasedAttributes () Get if mesh based attributes are being used. void SetUseXYZ (std::vector< bool > use_xyz) Set if XYZ is used, one value per domain. void SetUseNormals (std::vector< bool > use_normals) Set if Normals are being used, one value per domain. void SetAttributesPerDomain (std::vector< int > attributes_per_domain) Set the attributes per domain. std::vector< int > GetAttributesPerDomain () Get attributes per domain. void SetDistributionDomainID (int distribution_domain_id) Set the distribution domain ID (TODO: details) int GetDistributionDomainID () Get the distribution domain ID. void SetOutputCuttingPlaneFile (std::string output_cutting_plane_file) Set the output cutting plane file. void SetUseCuttingPlanes (bool use_cutting_planes) Set if using cutting planes. void SetCuttingPlane (unsigned int i, const vnl_vector_fixed< double, 3 > & va, const vnl_vector_fixed< double, 3 > & vb, const vnl_vector_fixed< double, 3 > & vc) Set a given cutting plane for a shape. void SetProcessingMode (int mode) Set processing mode (TODO: details) void SetAdaptivityMode (int adaptivity_mode) Set adaptivity mode (TODO: details) void SetMeshFFCMode (int mesh_ffc_mode) Set Mesh FFC Mode false/0 = mesh clipping mode, true/1 = mesh augmented lagrangian mode. void SetAdaptivityStrength (double adaptivity_strength) Set adaptivity strength (TODO: details) void SetTimePtsPerSubject (int time_pts_per_subject) Set the number of time points per subject (TODO: details) int GetTimePtsPerSubject () Get the number of time points per subject (TODO: details) void SetOptimizationIterations (int optimization_iterations) Set the number of optimization iterations. void SetOptimizationIterationsCompleted (int optimization_iterations_completed) Set the number of optimization iterations already completed (TODO: details) void SetIterationsPerSplit (int iterations_per_split) Set the number of iterations per split. void SetUseShapeStatisticsInInit (bool use_shape_statistics_in_init) Set if shape statistics should be used in initialization. void SetProcrustesInterval (int procrustes_interval) Set the interval for running procrustes (0 to disable) void SetProcrustesScaling (bool procrustes_scaling) Set if procrustes scaling should be used. void SetProcrustesRotationTranslation (bool procrustes_rotation_translation) Set if procrustes rotation/translation should be used. void SetRelativeWeighting (double relative_weighting) Set the relative weighting (TODO: details) void SetInitialRelativeWeighting (double initial_relative_weighting) Set the initial relative weigting (TODO: details) void SetStartingRegularization (double starting_regularization) Set the starting regularization (TODO: details) void SetEndingRegularization (double ending_regularization) Set the ending regularization (TODO: details) void SetRecomputeRegularizationInterval (int recompute_regularization_interval) Set the interval for recomputing regularization (TODO: details) void SetSaveInitSplits (bool save_init_splits) Set if initialization splits should be saved or not. void SetCheckpointingInterval (int checkpointing_interval) Set the checkpointing interval. void SetKeepCheckpoints (int keep_checkpoints) Set if checkpoints should be kept (0=disable, 1=enable) void SetUseRegression (bool use_regression) Set if regression should be used (TODO: details) void SetUseMixedEffects (bool use_mixed_effects) Set if mixed effects should be used (TODO: details) void SetUseDisentangledSpatiotemporalSSM (bool use_disentangled_ssm_4d) Set if optimization should be done using disentangled spatiotemporal SSM method. bool GetUseDisentangledSpatiotemporalSSM () Returns true if optimization is to be done using disentangled spatiotemporal SSM method. void SetNormalAngle (double normal_angle) For good/bad analysis, set the normal angle to use (TODO: details) void SetPerformGoodBad (bool perform_good_bad) Set if good/bad analysis should be done (TODO: details) void SetLogEnergy (bool log_energy) Set the log energy (TODO: details) void AddImage (ImageType::Pointer image, std::string name =\"\") Set the shape input images. void AddMesh (vtkSmartPointer< vtkPolyData > poly_data) void AddContour (vtkSmartPointer< vtkPolyData > poly_data) void SetFilenames (const std::vector< std::string > & filenames) Set the shape filenames (TODO: details) void SetPointFiles (const std::vector< std::string > & point_files) Set starting point files (TODO: details) void SetInitialPoints (std::vector< std::vector< itk::Point< double > > > initial_points) Set initial particle positions (e.g. for fixed subjects) int GetNumShapes () Get number of shapes. void SetAttributeScales (const std::vector< double > & scales) Set attribute scales (TODO: details) void SetFieldAttributes (const std::vector< std::string > & field_attributes) Set the field attributes. void SetParticleFlags (std::vector< int > flags) Set Particle Flags (TODO: details) void SetFixedDomains (std::vector< int > flags) Set Domain Flags (TODO: details) void SetSharedBoundaryEnabled (bool enabled) Shared boundary settings. void SetSharedBoundaryWeight (double weight) const std::vector< int > & GetDomainFlags () void SetFileOutputEnabled (bool enabled) Set if file output is enabled. std::vector< bool > GetUseXYZ () Return if XYZ is used, per shape. std::vector< bool > GetUseNormals () Return if Normals are used, per shape. void SetNarrowBand (double v) Set the narrow band used to be +/- the given value as a multiple of the spacing. double GetNarrowBand () Return the narrow band to be used. void SetUseShapeStatisticsAfter (int num_particles) Set the number of particles when correspondence based multiscale takes over. int GetUseShapeStatisticsAfter () Return the number of particles when correspondence based multiscale takes over. void PrintParamInfo () Print parameter info to stdout. std::shared_ptr< Sampler > GetSampler () Return the Sampler . MatrixContainer GetParticleSystem () Return the particle system as a matrix. void SetPythonFile (std::string filename) Set the python file to run at startup. void SetGeodesicsEnabled (bool is_enabled) Set whether or not geodesics are enabled. void SetGeodesicsCacheSizeMultiplier (size_t n) OptimizationVisualizer & GetVisualizer () void SetShowVisualizer (bool show) bool GetShowVisualizer () bool GetMeshFFCMode () vnl_vector_fixed< double, 3 > TransformPoint (int domain, vnl_vector_fixed< double, 3 > input) transform a point if necessary void UpdateProgress () void set_particle_format (std::string format)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#protected-functions","text":"Name virtual void SetIterationCallback () Set the iteration callback. Derived classes should override to set their own callback. void ComputeTotalIterations () void OptimizerStop () void ReadTransformFile () void ReadPrefixTransformFile (const std::string & s) void InitializeSampler () double GetMinNeighborhoodRadius () void AddSinglePoint () void Initialize () void AddAdaptivity () void RunOptimize () virtual void IterateCallback (itk::Object * , const itk::EventObject & ) void ComputeEnergyAfterIteration () void SetCotanSigma () void WriteTransformFile (int iter =-1) const void WriteTransformFile (std::string iter_prefix) const void WriteTransformFiles (int iter =-1) const void WriteTransformFiles (std::string iter_prefix) const void WritePointFiles (int iter =-1) void WritePointFiles (std::string iter_prefix) void WritePointFilesWithFeatures (int iter =-1) void WritePointFilesWithFeatures (std::string iter_prefix) void WriteEnergyFiles () void WriteSplitFiles (std::string name) void WriteCuttingPlanePoints (int iter =-1) void WriteParameters (std::string output_dir =\"\") void ReportBadParticles () int SetParameters () void WriteModes () void PrintStartMessage (std::string str, unsigned int vlevel =0) const void PrintDoneMessage (unsigned int vlevel =0) const virtual void UpdateExportablePoints () virtual std::vector< std::vector< std::vector< double > > > GetProcrustesTransforms () void UpdateProject () std::string GetCheckpointDir ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#protected-attributes","text":"Name std::shared_ptr< Sampler > m_sampler ProcrustesRegistration::Pointer m_procrustes std::shared_ptr< ParticleGoodBadAssessment > m_good_bad unsigned int m_verbosity_level std::vector< std::vector< itk::Point< double > > > m_local_points std::vector< std::vector< itk::Point< double > > > m_global_points int m_checkpoint_counter int m_procrustes_counter bool m_use_cutting_planes bool m_optimizing bool m_use_regression bool m_use_mixed_effects bool m_use_disentangled_ssm unsigned int m_domains_per_shape shapeworks::DomainType m_domain_type std::vector< int > m_number_of_particles std::string m_transform_file std::string m_prefix_transform_file std::string m_output_dir std::string m_output_transform_file bool m_output_transform_files bool m_mesh_based_attributes std::vector< bool > m_use_xyz std::vector< bool > m_use_normals std::vector< int > m_attributes_per_domain int m_distribution_domain_id std::string m_output_cutting_plane_file int m_processing_mode int m_adaptivity_mode double m_adaptivity_strength bool m_mesh_ffc_mode unsigned int m_timepts_per_subject int m_optimization_iterations int m_optimization_iterations_completed int m_iterations_per_split bool m_use_shape_statistics_in_init unsigned int m_procrustes_interval bool m_procrustes_scaling bool m_procrustes_rotation_translation double m_relative_weighting double m_initial_relative_weighting double m_starting_regularization double m_ending_regularization int m_recompute_regularization_interval bool m_save_init_splits unsigned int m_checkpointing_interval int m_keep_checkpoints double m_cotan_sigma_factor std::vector< int > m_particle_flags std::vector< int > m_domain_flags double m_narrow_band bool m_narrow_band_set bool m_fixed_domains_present int m_use_shape_statistics_after std::string m_python_filename bool m_geodesics_enabled size_t m_geodesic_cache_size_multiplier double m_spacing std::vector< std::string > m_filenames int m_num_shapes std::vector< double > m_energy_a std::vector< double > m_energy_b std::vector< double > m_total_energy bool m_log_energy std::string m_str_energy std::vector< std::vector< int > > m_bad_ids double m_normal_angle bool m_perform_good_bad std::vector< int > m_cutting_planes_per_input std::vector< int > m_spheres_per_input bool m_file_output_enabled bool m_aborted std::vector< std::array< itk::Point< double >, 3 > > m_cut_planes int m_total_iterations int m_iteration_count int m_split_number int current_particle_iterations_ int total_particle_iterations_ std::function< void(void)> iteration_callback_ bool show_visualizer_ shapeworks::OptimizationVisualizer visualizer_ std::string particle_format_ std::shared_ptr< Project > project_ std::chrono::system_clock::time_point m_start_time std::chrono::system_clock::time_point m_last_update_time std::chrono::system_clock::time_point m_last_remaining_update_time std::string m_remaining_time_message","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#detailed-description","text":"class shapeworks :: Optimize ; Par : Overview of Optimize This class is the top-level API for the optimization library The Optimize class controls all aspect of the particle system library provides a top-level public API for running optimization","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#using-imagetype","text":"using shapeworks :: Optimize :: ImageType = itk :: Image < float , 3 > ;","title":"using ImageType"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#using-vectortype","text":"using shapeworks :: Optimize :: VectorType = VectorFunction :: VectorType ;","title":"using VectorType"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#using-matrixtype","text":"using shapeworks :: Optimize :: MatrixType = Eigen :: MatrixXd ;","title":"using MatrixType"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-optimize","text":"Optimize () Constructor.","title":"function Optimize"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-optimize_1","text":"virtual ~ Optimize () Destructor.","title":"function ~Optimize"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-run","text":"bool Run () Run the optimization.","title":"function Run"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-loadparameterfile","text":"bool LoadParameterFile ( std :: string filename ) Load a parameter file.","title":"function LoadParameterFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setupoptimize","text":"bool SetUpOptimize ( ProjectHandle project ) Set up this Optimize object using a ShapeWorks project.","title":"function SetUpOptimize"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setproject","text":"void SetProject ( std :: shared_ptr < Project > project ) Set the Project object.","title":"function SetProject"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setiterationcallbackfunction","text":"inline void SetIterationCallbackFunction ( const std :: function < void ( void ) > & f ) Set an iteration callback function to be called after each iteration.","title":"function SetIterationCallbackFunction"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-abortoptimization","text":"void AbortOptimization () Abort optimization.","title":"function AbortOptimization"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getaborted","text":"bool GetAborted () Return if the optimization was aborted.","title":"function GetAborted"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getlocalpoints","text":"virtual std :: vector < std :: vector < itk :: Point < double > > > GetLocalPoints () Return the local points. Reimplemented by : shapeworks::QOptimize::GetLocalPoints","title":"function GetLocalPoints"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getglobalpoints","text":"virtual std :: vector < std :: vector < itk :: Point < double > > > GetGlobalPoints () Return the global points. Reimplemented by : shapeworks::QOptimize::GetGlobalPoints","title":"function GetGlobalPoints"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setcutplanes","text":"void SetCutPlanes ( std :: vector < std :: array < itk :: Point < double > , 3 > > cut_planes ) Set cutting planes.","title":"function SetCutPlanes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setverbosity","text":"void SetVerbosity ( int verbosity_level ) Set the verbosity level (0-5)","title":"function SetVerbosity"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setdomainspershape","text":"void SetDomainsPerShape ( int domains_per_shape ) Set the number of domains per shape.","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getdomainspershape","text":"int GetDomainsPerShape () Return the number of domains per shape.","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setdomaintype","text":"void SetDomainType ( shapeworks :: DomainType type )","title":"function SetDomainType"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getdomaintype","text":"shapeworks :: DomainType GetDomainType ()","title":"function GetDomainType"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setnumberofparticles","text":"void SetNumberOfParticles ( std :: vector < int > number_of_particles ) Set the numbers of particles (vector of numbers, one for each domain)","title":"function SetNumberOfParticles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getnumberofparticles","text":"std :: vector < int > GetNumberOfParticles () Return the numbers of particles per domain.","title":"function GetNumberOfParticles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-settransformfile","text":"void SetTransformFile ( std :: string filename ) Set the transform file.","title":"function SetTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-gettransformfile","text":"std :: string GetTransformFile () Get the transform file.","title":"function GetTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setprefixtransformfile","text":"void SetPrefixTransformFile ( std :: string prefix_transform_file ) Set the prefix transform file (TODO: details)","title":"function SetPrefixTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getprefixtransformfile","text":"std :: string GetPrefixTransformFile () Get the prefix transform file.","title":"function GetPrefixTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setoutputdir","text":"void SetOutputDir ( std :: string output_dir ) Set the output directory.","title":"function SetOutputDir"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setoutputtransformfile","text":"void SetOutputTransformFile ( std :: string output_transform_file ) Set the output transform file.","title":"function SetOutputTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setoutputindividualtransformfiles","text":"void SetOutputIndividualTransformFiles ( bool value ) Set whether individual transforms should be written.","title":"function SetOutputIndividualTransformFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setusemeshbasedattributes","text":"void SetUseMeshBasedAttributes ( bool use_mesh_based_attributes ) Set if mesh based attributes should be used.","title":"function SetUseMeshBasedAttributes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getusemeshbasedattributes","text":"bool GetUseMeshBasedAttributes () Get if mesh based attributes are being used.","title":"function GetUseMeshBasedAttributes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setusexyz","text":"void SetUseXYZ ( std :: vector < bool > use_xyz ) Set if XYZ is used, one value per domain.","title":"function SetUseXYZ"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setusenormals","text":"void SetUseNormals ( std :: vector < bool > use_normals ) Set if Normals are being used, one value per domain.","title":"function SetUseNormals"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setattributesperdomain","text":"void SetAttributesPerDomain ( std :: vector < int > attributes_per_domain ) Set the attributes per domain.","title":"function SetAttributesPerDomain"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getattributesperdomain","text":"std :: vector < int > GetAttributesPerDomain () Get attributes per domain.","title":"function GetAttributesPerDomain"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setdistributiondomainid","text":"void SetDistributionDomainID ( int distribution_domain_id ) Set the distribution domain ID (TODO: details)","title":"function SetDistributionDomainID"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getdistributiondomainid","text":"int GetDistributionDomainID () Get the distribution domain ID.","title":"function GetDistributionDomainID"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setoutputcuttingplanefile","text":"void SetOutputCuttingPlaneFile ( std :: string output_cutting_plane_file ) Set the output cutting plane file.","title":"function SetOutputCuttingPlaneFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setusecuttingplanes","text":"void SetUseCuttingPlanes ( bool use_cutting_planes ) Set if using cutting planes.","title":"function SetUseCuttingPlanes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setcuttingplane","text":"void SetCuttingPlane ( unsigned int i , const vnl_vector_fixed < double , 3 > & va , const vnl_vector_fixed < double , 3 > & vb , const vnl_vector_fixed < double , 3 > & vc ) Set a given cutting plane for a shape.","title":"function SetCuttingPlane"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setprocessingmode","text":"void SetProcessingMode ( int mode ) Set processing mode (TODO: details)","title":"function SetProcessingMode"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setadaptivitymode","text":"void SetAdaptivityMode ( int adaptivity_mode ) Set adaptivity mode (TODO: details)","title":"function SetAdaptivityMode"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setmeshffcmode","text":"inline void SetMeshFFCMode ( int mesh_ffc_mode ) Set Mesh FFC Mode false/0 = mesh clipping mode, true/1 = mesh augmented lagrangian mode.","title":"function SetMeshFFCMode"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setadaptivitystrength","text":"void SetAdaptivityStrength ( double adaptivity_strength ) Set adaptivity strength (TODO: details)","title":"function SetAdaptivityStrength"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-settimeptspersubject","text":"void SetTimePtsPerSubject ( int time_pts_per_subject ) Set the number of time points per subject (TODO: details)","title":"function SetTimePtsPerSubject"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-gettimeptspersubject","text":"int GetTimePtsPerSubject () Get the number of time points per subject (TODO: details)","title":"function GetTimePtsPerSubject"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setoptimizationiterations","text":"void SetOptimizationIterations ( int optimization_iterations ) Set the number of optimization iterations.","title":"function SetOptimizationIterations"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setoptimizationiterationscompleted","text":"void SetOptimizationIterationsCompleted ( int optimization_iterations_completed ) Set the number of optimization iterations already completed (TODO: details)","title":"function SetOptimizationIterationsCompleted"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setiterationspersplit","text":"void SetIterationsPerSplit ( int iterations_per_split ) Set the number of iterations per split.","title":"function SetIterationsPerSplit"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setuseshapestatisticsininit","text":"void SetUseShapeStatisticsInInit ( bool use_shape_statistics_in_init ) Set if shape statistics should be used in initialization.","title":"function SetUseShapeStatisticsInInit"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setprocrustesinterval","text":"void SetProcrustesInterval ( int procrustes_interval ) Set the interval for running procrustes (0 to disable)","title":"function SetProcrustesInterval"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setprocrustesscaling","text":"void SetProcrustesScaling ( bool procrustes_scaling ) Set if procrustes scaling should be used.","title":"function SetProcrustesScaling"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setprocrustesrotationtranslation","text":"void SetProcrustesRotationTranslation ( bool procrustes_rotation_translation ) Set if procrustes rotation/translation should be used.","title":"function SetProcrustesRotationTranslation"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setrelativeweighting","text":"void SetRelativeWeighting ( double relative_weighting ) Set the relative weighting (TODO: details)","title":"function SetRelativeWeighting"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setinitialrelativeweighting","text":"void SetInitialRelativeWeighting ( double initial_relative_weighting ) Set the initial relative weigting (TODO: details)","title":"function SetInitialRelativeWeighting"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setstartingregularization","text":"void SetStartingRegularization ( double starting_regularization ) Set the starting regularization (TODO: details)","title":"function SetStartingRegularization"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setendingregularization","text":"void SetEndingRegularization ( double ending_regularization ) Set the ending regularization (TODO: details)","title":"function SetEndingRegularization"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setrecomputeregularizationinterval","text":"void SetRecomputeRegularizationInterval ( int recompute_regularization_interval ) Set the interval for recomputing regularization (TODO: details)","title":"function SetRecomputeRegularizationInterval"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setsaveinitsplits","text":"void SetSaveInitSplits ( bool save_init_splits ) Set if initialization splits should be saved or not.","title":"function SetSaveInitSplits"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setcheckpointinginterval","text":"void SetCheckpointingInterval ( int checkpointing_interval ) Set the checkpointing interval.","title":"function SetCheckpointingInterval"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setkeepcheckpoints","text":"void SetKeepCheckpoints ( int keep_checkpoints ) Set if checkpoints should be kept (0=disable, 1=enable)","title":"function SetKeepCheckpoints"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setuseregression","text":"void SetUseRegression ( bool use_regression ) Set if regression should be used (TODO: details)","title":"function SetUseRegression"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setusemixedeffects","text":"void SetUseMixedEffects ( bool use_mixed_effects ) Set if mixed effects should be used (TODO: details)","title":"function SetUseMixedEffects"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setusedisentangledspatiotemporalssm","text":"void SetUseDisentangledSpatiotemporalSSM ( bool use_disentangled_ssm_4d ) Set if optimization should be done using disentangled spatiotemporal SSM method.","title":"function SetUseDisentangledSpatiotemporalSSM"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getusedisentangledspatiotemporalssm","text":"bool GetUseDisentangledSpatiotemporalSSM () Returns true if optimization is to be done using disentangled spatiotemporal SSM method.","title":"function GetUseDisentangledSpatiotemporalSSM"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setnormalangle","text":"void SetNormalAngle ( double normal_angle ) For good/bad analysis, set the normal angle to use (TODO: details)","title":"function SetNormalAngle"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setperformgoodbad","text":"void SetPerformGoodBad ( bool perform_good_bad ) Set if good/bad analysis should be done (TODO: details)","title":"function SetPerformGoodBad"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setlogenergy","text":"void SetLogEnergy ( bool log_energy ) Set the log energy (TODO: details)","title":"function SetLogEnergy"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-addimage","text":"void AddImage ( ImageType :: Pointer image , std :: string name = \"\" ) Set the shape input images.","title":"function AddImage"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-addmesh","text":"void AddMesh ( vtkSmartPointer < vtkPolyData > poly_data )","title":"function AddMesh"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-addcontour","text":"void AddContour ( vtkSmartPointer < vtkPolyData > poly_data )","title":"function AddContour"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setfilenames","text":"void SetFilenames ( const std :: vector < std :: string > & filenames ) Set the shape filenames (TODO: details)","title":"function SetFilenames"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setpointfiles","text":"void SetPointFiles ( const std :: vector < std :: string > & point_files ) Set starting point files (TODO: details)","title":"function SetPointFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setinitialpoints","text":"void SetInitialPoints ( std :: vector < std :: vector < itk :: Point < double > > > initial_points ) Set initial particle positions (e.g. for fixed subjects)","title":"function SetInitialPoints"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getnumshapes","text":"int GetNumShapes () Get number of shapes.","title":"function GetNumShapes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setattributescales","text":"void SetAttributeScales ( const std :: vector < double > & scales ) Set attribute scales (TODO: details)","title":"function SetAttributeScales"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setfieldattributes","text":"void SetFieldAttributes ( const std :: vector < std :: string > & field_attributes ) Set the field attributes.","title":"function SetFieldAttributes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setparticleflags","text":"void SetParticleFlags ( std :: vector < int > flags ) Set Particle Flags (TODO: details)","title":"function SetParticleFlags"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setfixeddomains","text":"void SetFixedDomains ( std :: vector < int > flags ) Set Domain Flags (TODO: details)","title":"function SetFixedDomains"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setsharedboundaryenabled","text":"void SetSharedBoundaryEnabled ( bool enabled ) Shared boundary settings.","title":"function SetSharedBoundaryEnabled"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setsharedboundaryweight","text":"void SetSharedBoundaryWeight ( double weight )","title":"function SetSharedBoundaryWeight"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getdomainflags","text":"const std :: vector < int > & GetDomainFlags ()","title":"function GetDomainFlags"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setfileoutputenabled","text":"void SetFileOutputEnabled ( bool enabled ) Set if file output is enabled.","title":"function SetFileOutputEnabled"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getusexyz","text":"std :: vector < bool > GetUseXYZ () Return if XYZ is used, per shape.","title":"function GetUseXYZ"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getusenormals","text":"std :: vector < bool > GetUseNormals () Return if Normals are used, per shape.","title":"function GetUseNormals"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setnarrowband","text":"void SetNarrowBand ( double v ) Set the narrow band used to be +/- the given value as a multiple of the spacing.","title":"function SetNarrowBand"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getnarrowband","text":"double GetNarrowBand () Return the narrow band to be used.","title":"function GetNarrowBand"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setuseshapestatisticsafter","text":"void SetUseShapeStatisticsAfter ( int num_particles ) Set the number of particles when correspondence based multiscale takes over.","title":"function SetUseShapeStatisticsAfter"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getuseshapestatisticsafter","text":"int GetUseShapeStatisticsAfter () Return the number of particles when correspondence based multiscale takes over.","title":"function GetUseShapeStatisticsAfter"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-printparaminfo","text":"void PrintParamInfo () Print parameter info to stdout.","title":"function PrintParamInfo"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getsampler","text":"inline std :: shared_ptr < Sampler > GetSampler () Return the Sampler .","title":"function GetSampler"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getparticlesystem","text":"MatrixContainer GetParticleSystem () Return the particle system as a matrix.","title":"function GetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setpythonfile","text":"void SetPythonFile ( std :: string filename ) Set the python file to run at startup.","title":"function SetPythonFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setgeodesicsenabled","text":"void SetGeodesicsEnabled ( bool is_enabled ) Set whether or not geodesics are enabled.","title":"function SetGeodesicsEnabled"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setgeodesicscachesizemultiplier","text":"void SetGeodesicsCacheSizeMultiplier ( size_t n ) Set cache size multiplier for geodesics. The total number of cache entries will be n * number_of_triangles","title":"function SetGeodesicsCacheSizeMultiplier"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getvisualizer","text":"OptimizationVisualizer & GetVisualizer ()","title":"function GetVisualizer"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setshowvisualizer","text":"void SetShowVisualizer ( bool show )","title":"function SetShowVisualizer"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getshowvisualizer","text":"bool GetShowVisualizer ()","title":"function GetShowVisualizer"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getmeshffcmode","text":"inline bool GetMeshFFCMode ()","title":"function GetMeshFFCMode"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-transformpoint","text":"vnl_vector_fixed < double , 3 > TransformPoint ( int domain , vnl_vector_fixed < double , 3 > input ) transform a point if necessary","title":"function TransformPoint"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-updateprogress","text":"void UpdateProgress ()","title":"function UpdateProgress"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-set_particle_format","text":"inline void set_particle_format ( std :: string format )","title":"function set_particle_format"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setiterationcallback","text":"virtual void SetIterationCallback () Set the iteration callback. Derived classes should override to set their own callback. Reimplemented by : shapeworks::QOptimize::SetIterationCallback","title":"function SetIterationCallback"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-computetotaliterations","text":"void ComputeTotalIterations ()","title":"function ComputeTotalIterations"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-optimizerstop","text":"void OptimizerStop ()","title":"function OptimizerStop"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-readtransformfile","text":"void ReadTransformFile ()","title":"function ReadTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-readprefixtransformfile","text":"void ReadPrefixTransformFile ( const std :: string & s )","title":"function ReadPrefixTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-initializesampler","text":"void InitializeSampler ()","title":"function InitializeSampler"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getminneighborhoodradius","text":"double GetMinNeighborhoodRadius ()","title":"function GetMinNeighborhoodRadius"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-addsinglepoint","text":"void AddSinglePoint ()","title":"function AddSinglePoint"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-initialize","text":"void Initialize ()","title":"function Initialize"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-addadaptivity","text":"void AddAdaptivity ()","title":"function AddAdaptivity"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-runoptimize","text":"void RunOptimize ()","title":"function RunOptimize"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-iteratecallback","text":"virtual void IterateCallback ( itk :: Object * , const itk :: EventObject & ) Reimplemented by : shapeworks::QOptimize::IterateCallback","title":"function IterateCallback"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-computeenergyafteriteration","text":"void ComputeEnergyAfterIteration ()","title":"function ComputeEnergyAfterIteration"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setcotansigma","text":"void SetCotanSigma ()","title":"function SetCotanSigma"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writetransformfile","text":"void WriteTransformFile ( int iter = -1 ) const","title":"function WriteTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writetransformfile_1","text":"void WriteTransformFile ( std :: string iter_prefix ) const","title":"function WriteTransformFile"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writetransformfiles","text":"void WriteTransformFiles ( int iter = -1 ) const","title":"function WriteTransformFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writetransformfiles_1","text":"void WriteTransformFiles ( std :: string iter_prefix ) const","title":"function WriteTransformFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writepointfiles","text":"void WritePointFiles ( int iter = -1 )","title":"function WritePointFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writepointfiles_1","text":"void WritePointFiles ( std :: string iter_prefix )","title":"function WritePointFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writepointfileswithfeatures","text":"void WritePointFilesWithFeatures ( int iter = -1 )","title":"function WritePointFilesWithFeatures"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writepointfileswithfeatures_1","text":"void WritePointFilesWithFeatures ( std :: string iter_prefix )","title":"function WritePointFilesWithFeatures"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writeenergyfiles","text":"void WriteEnergyFiles ()","title":"function WriteEnergyFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writesplitfiles","text":"void WriteSplitFiles ( std :: string name )","title":"function WriteSplitFiles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writecuttingplanepoints","text":"void WriteCuttingPlanePoints ( int iter = -1 )","title":"function WriteCuttingPlanePoints"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writeparameters","text":"void WriteParameters ( std :: string output_dir = \"\" )","title":"function WriteParameters"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-reportbadparticles","text":"void ReportBadParticles ()","title":"function ReportBadParticles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-setparameters","text":"int SetParameters ()","title":"function SetParameters"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-writemodes","text":"void WriteModes ()","title":"function WriteModes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-printstartmessage","text":"void PrintStartMessage ( std :: string str , unsigned int vlevel = 0 ) const","title":"function PrintStartMessage"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-printdonemessage","text":"void PrintDoneMessage ( unsigned int vlevel = 0 ) const","title":"function PrintDoneMessage"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-updateexportablepoints","text":"virtual void UpdateExportablePoints () Reimplemented by : shapeworks::QOptimize::UpdateExportablePoints","title":"function UpdateExportablePoints"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getprocrustestransforms","text":"virtual std :: vector < std :: vector < std :: vector < double > > > GetProcrustesTransforms () Reimplemented by : shapeworks::QOptimize::GetProcrustesTransforms","title":"function GetProcrustesTransforms"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-updateproject","text":"void UpdateProject ()","title":"function UpdateProject"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#function-getcheckpointdir","text":"std :: string GetCheckpointDir ()","title":"function GetCheckpointDir"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_sampler","text":"std :: shared_ptr < Sampler > m_sampler ;","title":"variable m_sampler"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_procrustes","text":"ProcrustesRegistration :: Pointer m_procrustes ;","title":"variable m_procrustes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_good_bad","text":"std :: shared_ptr < ParticleGoodBadAssessment > m_good_bad ;","title":"variable m_good_bad"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_verbosity_level","text":"unsigned int m_verbosity_level = 0 ;","title":"variable m_verbosity_level"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_local_points","text":"std :: vector < std :: vector < itk :: Point < double > > > m_local_points ;","title":"variable m_local_points"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_global_points","text":"std :: vector < std :: vector < itk :: Point < double > > > m_global_points ;","title":"variable m_global_points"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_checkpoint_counter","text":"int m_checkpoint_counter = 0 ;","title":"variable m_checkpoint_counter"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_procrustes_counter","text":"int m_procrustes_counter = 0 ;","title":"variable m_procrustes_counter"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_cutting_planes","text":"bool m_use_cutting_planes = false ;","title":"variable m_use_cutting_planes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_optimizing","text":"bool m_optimizing = false ;","title":"variable m_optimizing"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_regression","text":"bool m_use_regression = false ;","title":"variable m_use_regression"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_mixed_effects","text":"bool m_use_mixed_effects = false ;","title":"variable m_use_mixed_effects"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_disentangled_ssm","text":"bool m_use_disentangled_ssm = false ;","title":"variable m_use_disentangled_ssm"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_domains_per_shape","text":"unsigned int m_domains_per_shape = 1 ;","title":"variable m_domains_per_shape"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_domain_type","text":"shapeworks :: DomainType m_domain_type = shapeworks :: DomainType :: Image ;","title":"variable m_domain_type"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_number_of_particles","text":"std :: vector < int > m_number_of_particles ;","title":"variable m_number_of_particles"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_transform_file","text":"std :: string m_transform_file ;","title":"variable m_transform_file"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_prefix_transform_file","text":"std :: string m_prefix_transform_file ;","title":"variable m_prefix_transform_file"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_output_dir","text":"std :: string m_output_dir ;","title":"variable m_output_dir"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_output_transform_file","text":"std :: string m_output_transform_file ;","title":"variable m_output_transform_file"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_output_transform_files","text":"bool m_output_transform_files = false ;","title":"variable m_output_transform_files"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_mesh_based_attributes","text":"bool m_mesh_based_attributes = false ;","title":"variable m_mesh_based_attributes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_xyz","text":"std :: vector < bool > m_use_xyz ;","title":"variable m_use_xyz"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_normals","text":"std :: vector < bool > m_use_normals ;","title":"variable m_use_normals"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_attributes_per_domain","text":"std :: vector < int > m_attributes_per_domain ;","title":"variable m_attributes_per_domain"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_distribution_domain_id","text":"int m_distribution_domain_id = -1 ;","title":"variable m_distribution_domain_id"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_output_cutting_plane_file","text":"std :: string m_output_cutting_plane_file ;","title":"variable m_output_cutting_plane_file"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_processing_mode","text":"int m_processing_mode = 3 ;","title":"variable m_processing_mode"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_adaptivity_mode","text":"int m_adaptivity_mode = 0 ;","title":"variable m_adaptivity_mode"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_adaptivity_strength","text":"double m_adaptivity_strength = 0.0 ;","title":"variable m_adaptivity_strength"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_mesh_ffc_mode","text":"bool m_mesh_ffc_mode = 0 ;","title":"variable m_mesh_ffc_mode"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_timepts_per_subject","text":"unsigned int m_timepts_per_subject = 1 ;","title":"variable m_timepts_per_subject"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_optimization_iterations","text":"int m_optimization_iterations = 2000 ;","title":"variable m_optimization_iterations"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_optimization_iterations_completed","text":"int m_optimization_iterations_completed = 0 ;","title":"variable m_optimization_iterations_completed"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_iterations_per_split","text":"int m_iterations_per_split = 1000 ;","title":"variable m_iterations_per_split"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_shape_statistics_in_init","text":"bool m_use_shape_statistics_in_init = false ;","title":"variable m_use_shape_statistics_in_init"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_procrustes_interval","text":"unsigned int m_procrustes_interval = 3 ;","title":"variable m_procrustes_interval"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_procrustes_scaling","text":"bool m_procrustes_scaling = true ;","title":"variable m_procrustes_scaling"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_procrustes_rotation_translation","text":"bool m_procrustes_rotation_translation = true ;","title":"variable m_procrustes_rotation_translation"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_relative_weighting","text":"double m_relative_weighting = 1.0 ;","title":"variable m_relative_weighting"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_initial_relative_weighting","text":"double m_initial_relative_weighting = 0.05 ;","title":"variable m_initial_relative_weighting"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_starting_regularization","text":"double m_starting_regularization = 1000 ;","title":"variable m_starting_regularization"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_ending_regularization","text":"double m_ending_regularization = 1.0 ;","title":"variable m_ending_regularization"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_recompute_regularization_interval","text":"int m_recompute_regularization_interval = 1 ;","title":"variable m_recompute_regularization_interval"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_save_init_splits","text":"bool m_save_init_splits = false ;","title":"variable m_save_init_splits"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_checkpointing_interval","text":"unsigned int m_checkpointing_interval = 50 ;","title":"variable m_checkpointing_interval"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_keep_checkpoints","text":"int m_keep_checkpoints = 0 ;","title":"variable m_keep_checkpoints"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_cotan_sigma_factor","text":"double m_cotan_sigma_factor = 5.0 ;","title":"variable m_cotan_sigma_factor"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_particle_flags","text":"std :: vector < int > m_particle_flags ;","title":"variable m_particle_flags"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_domain_flags","text":"std :: vector < int > m_domain_flags ;","title":"variable m_domain_flags"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_narrow_band","text":"double m_narrow_band = 0.0 ;","title":"variable m_narrow_band"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_narrow_band_set","text":"bool m_narrow_band_set = false ;","title":"variable m_narrow_band_set"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_fixed_domains_present","text":"bool m_fixed_domains_present = false ;","title":"variable m_fixed_domains_present"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_use_shape_statistics_after","text":"int m_use_shape_statistics_after = -1 ;","title":"variable m_use_shape_statistics_after"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_python_filename","text":"std :: string m_python_filename ;","title":"variable m_python_filename"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_geodesics_enabled","text":"bool m_geodesics_enabled = false ;","title":"variable m_geodesics_enabled"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_geodesic_cache_size_multiplier","text":"size_t m_geodesic_cache_size_multiplier = 0 ;","title":"variable m_geodesic_cache_size_multiplier"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_spacing","text":"double m_spacing = 0 ;","title":"variable m_spacing"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_filenames","text":"std :: vector < std :: string > m_filenames ;","title":"variable m_filenames"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_num_shapes","text":"int m_num_shapes = 0 ;","title":"variable m_num_shapes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_energy_a","text":"std :: vector < double > m_energy_a ;","title":"variable m_energy_a"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_energy_b","text":"std :: vector < double > m_energy_b ;","title":"variable m_energy_b"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_total_energy","text":"std :: vector < double > m_total_energy ;","title":"variable m_total_energy"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_log_energy","text":"bool m_log_energy = false ;","title":"variable m_log_energy"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_str_energy","text":"std :: string m_str_energy ;","title":"variable m_str_energy"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_bad_ids","text":"std :: vector < std :: vector < int > > m_bad_ids ;","title":"variable m_bad_ids"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_normal_angle","text":"double m_normal_angle = itk :: Math :: pi / 2.0 ;","title":"variable m_normal_angle"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_perform_good_bad","text":"bool m_perform_good_bad = false ;","title":"variable m_perform_good_bad"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_cutting_planes_per_input","text":"std :: vector < int > m_cutting_planes_per_input ;","title":"variable m_cutting_planes_per_input"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_spheres_per_input","text":"std :: vector < int > m_spheres_per_input ;","title":"variable m_spheres_per_input"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_file_output_enabled","text":"bool m_file_output_enabled = true ;","title":"variable m_file_output_enabled"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_aborted","text":"bool m_aborted = false ;","title":"variable m_aborted"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_cut_planes","text":"std :: vector < std :: array < itk :: Point < double > , 3 > > m_cut_planes ;","title":"variable m_cut_planes"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_total_iterations","text":"int m_total_iterations = 0 ;","title":"variable m_total_iterations"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_iteration_count","text":"int m_iteration_count = 0 ;","title":"variable m_iteration_count"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_split_number","text":"int m_split_number = 0 ;","title":"variable m_split_number"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-current_particle_iterations_","text":"int current_particle_iterations_ = 0 ;","title":"variable current_particle_iterations_"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-total_particle_iterations_","text":"int total_particle_iterations_ = 0 ;","title":"variable total_particle_iterations_"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-iteration_callback_","text":"std :: function < void ( void ) > iteration_callback_ ;","title":"variable iteration_callback_"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-show_visualizer_","text":"bool show_visualizer_ = false ;","title":"variable show_visualizer_"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-visualizer_","text":"shapeworks :: OptimizationVisualizer visualizer_ ;","title":"variable visualizer_"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-particle_format_","text":"std :: string particle_format_ = \"particles\" ;","title":"variable particle_format_"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-project_","text":"std :: shared_ptr < Project > project_ ;","title":"variable project_"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_start_time","text":"std :: chrono :: system_clock :: time_point m_start_time ;","title":"variable m_start_time"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_last_update_time","text":"std :: chrono :: system_clock :: time_point m_last_update_time ;","title":"variable m_last_update_time"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_last_remaining_update_time","text":"std :: chrono :: system_clock :: time_point m_last_remaining_update_time ;","title":"variable m_last_remaining_update_time"},{"location":"api/Classes/classshapeworks_1_1Optimize.html#variable-m_remaining_time_message","text":"std :: string m_remaining_time_message ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_remaining_time_message"},{"location":"api/Classes/classshapeworks_1_1OptimizeCommandGroup.html","text":"shapeworks::OptimizeCommandGroup Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::OptimizeCommandGroup"},{"location":"api/Classes/classshapeworks_1_1OptimizeCommandGroup.html#shapeworksoptimizecommandgroup","text":"Inherits from shapeworks::Command","title":"shapeworks::OptimizeCommandGroup"},{"location":"api/Classes/classshapeworks_1_1OptimizeCommandGroup.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1OptimizeCommandGroup.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1OptimizeCommandGroup.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1OptimizeCommandGroup.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameterFile.html","text":"shapeworks::OptimizeParameterFile More... #include Public Functions Name OptimizeParameterFile () bool load_parameter_file (std::string filename, Optimize * optimize) Load a parameter file and set the values on an Optimize object. Detailed Description class shapeworks :: OptimizeParameterFile ; Par : Overview of OptimizeParameterFile Implementation of Optimize library parameter file The OptimizeParameterFile class reads in a parameter file and sets the appropriate values for an Optimize object. Public Functions Documentation function OptimizeParameterFile OptimizeParameterFile () function load_parameter_file bool load_parameter_file ( std :: string filename , Optimize * optimize ) Load a parameter file and set the values on an Optimize object. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::OptimizeParameterFile"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameterFile.html#shapeworksoptimizeparameterfile","text":"More... #include ","title":"shapeworks::OptimizeParameterFile"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameterFile.html#public-functions","text":"Name OptimizeParameterFile () bool load_parameter_file (std::string filename, Optimize * optimize) Load a parameter file and set the values on an Optimize object.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameterFile.html#detailed-description","text":"class shapeworks :: OptimizeParameterFile ; Par : Overview of OptimizeParameterFile Implementation of Optimize library parameter file The OptimizeParameterFile class reads in a parameter file and sets the appropriate values for an Optimize object.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameterFile.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameterFile.html#function-optimizeparameterfile","text":"OptimizeParameterFile ()","title":"function OptimizeParameterFile"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameterFile.html#function-load_parameter_file","text":"bool load_parameter_file ( std :: string filename , Optimize * optimize ) Load a parameter file and set the values on an Optimize object. Updated on 2023-10-24 at 22:16:01 +0000","title":"function load_parameter_file"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html","text":"shapeworks::OptimizeParameters More... #include Public Functions Name OptimizeParameters (ProjectHandle project) void save_to_project () std::string get_optimize_output_prefix () void set_optimize_output_prefix (std::string prefix) std::vector< int > get_number_of_particles () void set_number_of_particles (std::vector< int > number_of_particles) double get_initial_relative_weighting () void set_initial_relative_weighting (double value) double get_relative_weighting () void set_relative_weighting (double value) double get_starting_regularization () void set_starting_regularization (double value) double get_ending_regularization () void set_ending_regularization (double value) int get_iterations_per_split () void set_iterations_per_split (int value) int get_optimization_iterations () void set_optimization_iterations (int value) bool get_use_geodesic_distance () void set_use_geodesic_distance (bool value) int get_geodesic_cache_multiplier () void set_geodesic_cache_multiplier (int value) std::vector< bool > get_use_normals () void set_use_normals (std::vector< bool > use_normals) double get_normals_strength () void set_normals_strength (double value) bool get_use_disentangled_ssm () void set_use_disentangled_ssm (bool value) bool get_use_procrustes () void set_use_procrustes (bool value) bool get_use_procrustes_scaling () void set_use_procrustes_scaling (bool value) bool get_use_procrustes_rotation_translation () void set_use_procrustes_rotation_translation (bool value) int get_procrustes_interval () void set_procrustes_interval (int value) bool get_use_multiscale () void set_use_multiscale (bool value) int get_multiscale_particles () void set_multiscale_particles (int value) double get_narrow_band () void set_narrow_band (double value) int get_verbosity () void set_verbosity (int value) bool get_mesh_ffc_mode () void set_mesh_ffc_mode (bool value) bool get_use_landmarks () void set_use_landmarks (bool value) bool get_use_fixed_subjects () void set_use_fixed_subjects (bool value) std::string get_fixed_subjects_column () void set_fixed_subject_column (std::string column) std::string get_fixed_subjects_choice () void set_fixed_subjects_choice (std::string choice) void set_abort_load (bool value) void set_load_callback (const std::function< void(int)> & f) bool set_up_optimize ( Optimize * optimize) bool is_subject_fixed (std::shared_ptr< Subject > subject) int get_checkpoint_interval () void set_checkpoint_interval (int iterations) bool get_save_init_splits () void set_save_init_splits (bool enabled) bool get_keep_checkpoints () void set_keep_checkpoints (bool enabled) std::vector< std::string > get_field_attributes () void set_field_attributes (std::vector< std::string > attributes) std::vector< double > get_field_attribute_weights () void set_field_attribute_weights (std::vector< double > weights) bool get_use_geodesics_to_landmarks () void set_use_geodesics_to_landmarks (bool value) double get_geodesic_to_landmarks_weight () void set_geodesic_to_landmarks_weight (double value) std::string get_particle_format () void set_particle_format (std::string format) Detailed Description class shapeworks :: OptimizeParameters ; This class encapsulated processing of Optimization parameters Public Functions Documentation function OptimizeParameters explicit OptimizeParameters ( ProjectHandle project ) function save_to_project void save_to_project () function get_optimize_output_prefix std :: string get_optimize_output_prefix () function set_optimize_output_prefix void set_optimize_output_prefix ( std :: string prefix ) function get_number_of_particles std :: vector < int > get_number_of_particles () function set_number_of_particles void set_number_of_particles ( std :: vector < int > number_of_particles ) function get_initial_relative_weighting double get_initial_relative_weighting () function set_initial_relative_weighting void set_initial_relative_weighting ( double value ) function get_relative_weighting double get_relative_weighting () function set_relative_weighting void set_relative_weighting ( double value ) function get_starting_regularization double get_starting_regularization () function set_starting_regularization void set_starting_regularization ( double value ) function get_ending_regularization double get_ending_regularization () function set_ending_regularization void set_ending_regularization ( double value ) function get_iterations_per_split int get_iterations_per_split () function set_iterations_per_split void set_iterations_per_split ( int value ) function get_optimization_iterations int get_optimization_iterations () function set_optimization_iterations void set_optimization_iterations ( int value ) function get_use_geodesic_distance bool get_use_geodesic_distance () function set_use_geodesic_distance void set_use_geodesic_distance ( bool value ) function get_geodesic_cache_multiplier int get_geodesic_cache_multiplier () function set_geodesic_cache_multiplier void set_geodesic_cache_multiplier ( int value ) function get_use_normals std :: vector < bool > get_use_normals () function set_use_normals void set_use_normals ( std :: vector < bool > use_normals ) function get_normals_strength double get_normals_strength () function set_normals_strength void set_normals_strength ( double value ) function get_use_disentangled_ssm bool get_use_disentangled_ssm () function set_use_disentangled_ssm void set_use_disentangled_ssm ( bool value ) function get_use_procrustes bool get_use_procrustes () function set_use_procrustes void set_use_procrustes ( bool value ) function get_use_procrustes_scaling bool get_use_procrustes_scaling () function set_use_procrustes_scaling void set_use_procrustes_scaling ( bool value ) function get_use_procrustes_rotation_translation bool get_use_procrustes_rotation_translation () function set_use_procrustes_rotation_translation void set_use_procrustes_rotation_translation ( bool value ) function get_procrustes_interval int get_procrustes_interval () function set_procrustes_interval void set_procrustes_interval ( int value ) function get_use_multiscale bool get_use_multiscale () function set_use_multiscale void set_use_multiscale ( bool value ) function get_multiscale_particles int get_multiscale_particles () function set_multiscale_particles void set_multiscale_particles ( int value ) function get_narrow_band double get_narrow_band () function set_narrow_band void set_narrow_band ( double value ) function get_verbosity int get_verbosity () function set_verbosity void set_verbosity ( int value ) function get_mesh_ffc_mode bool get_mesh_ffc_mode () function set_mesh_ffc_mode void set_mesh_ffc_mode ( bool value ) function get_use_landmarks bool get_use_landmarks () function set_use_landmarks void set_use_landmarks ( bool value ) function get_use_fixed_subjects bool get_use_fixed_subjects () function set_use_fixed_subjects void set_use_fixed_subjects ( bool value ) function get_fixed_subjects_column std :: string get_fixed_subjects_column () function set_fixed_subject_column void set_fixed_subject_column ( std :: string column ) function get_fixed_subjects_choice std :: string get_fixed_subjects_choice () function set_fixed_subjects_choice void set_fixed_subjects_choice ( std :: string choice ) function set_abort_load void set_abort_load ( bool value ) function set_load_callback void set_load_callback ( const std :: function < void ( int ) > & f ) function set_up_optimize bool set_up_optimize ( Optimize * optimize ) function is_subject_fixed bool is_subject_fixed ( std :: shared_ptr < Subject > subject ) function get_checkpoint_interval int get_checkpoint_interval () function set_checkpoint_interval void set_checkpoint_interval ( int iterations ) function get_save_init_splits bool get_save_init_splits () function set_save_init_splits void set_save_init_splits ( bool enabled ) function get_keep_checkpoints bool get_keep_checkpoints () function set_keep_checkpoints void set_keep_checkpoints ( bool enabled ) function get_field_attributes std :: vector < std :: string > get_field_attributes () function set_field_attributes void set_field_attributes ( std :: vector < std :: string > attributes ) function get_field_attribute_weights std :: vector < double > get_field_attribute_weights () function set_field_attribute_weights void set_field_attribute_weights ( std :: vector < double > weights ) function get_use_geodesics_to_landmarks bool get_use_geodesics_to_landmarks () function set_use_geodesics_to_landmarks void set_use_geodesics_to_landmarks ( bool value ) function get_geodesic_to_landmarks_weight double get_geodesic_to_landmarks_weight () function set_geodesic_to_landmarks_weight void set_geodesic_to_landmarks_weight ( double value ) function get_particle_format std :: string get_particle_format () function set_particle_format void set_particle_format ( std :: string format ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::OptimizeParameters"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#shapeworksoptimizeparameters","text":"More... #include ","title":"shapeworks::OptimizeParameters"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#public-functions","text":"Name OptimizeParameters (ProjectHandle project) void save_to_project () std::string get_optimize_output_prefix () void set_optimize_output_prefix (std::string prefix) std::vector< int > get_number_of_particles () void set_number_of_particles (std::vector< int > number_of_particles) double get_initial_relative_weighting () void set_initial_relative_weighting (double value) double get_relative_weighting () void set_relative_weighting (double value) double get_starting_regularization () void set_starting_regularization (double value) double get_ending_regularization () void set_ending_regularization (double value) int get_iterations_per_split () void set_iterations_per_split (int value) int get_optimization_iterations () void set_optimization_iterations (int value) bool get_use_geodesic_distance () void set_use_geodesic_distance (bool value) int get_geodesic_cache_multiplier () void set_geodesic_cache_multiplier (int value) std::vector< bool > get_use_normals () void set_use_normals (std::vector< bool > use_normals) double get_normals_strength () void set_normals_strength (double value) bool get_use_disentangled_ssm () void set_use_disentangled_ssm (bool value) bool get_use_procrustes () void set_use_procrustes (bool value) bool get_use_procrustes_scaling () void set_use_procrustes_scaling (bool value) bool get_use_procrustes_rotation_translation () void set_use_procrustes_rotation_translation (bool value) int get_procrustes_interval () void set_procrustes_interval (int value) bool get_use_multiscale () void set_use_multiscale (bool value) int get_multiscale_particles () void set_multiscale_particles (int value) double get_narrow_band () void set_narrow_band (double value) int get_verbosity () void set_verbosity (int value) bool get_mesh_ffc_mode () void set_mesh_ffc_mode (bool value) bool get_use_landmarks () void set_use_landmarks (bool value) bool get_use_fixed_subjects () void set_use_fixed_subjects (bool value) std::string get_fixed_subjects_column () void set_fixed_subject_column (std::string column) std::string get_fixed_subjects_choice () void set_fixed_subjects_choice (std::string choice) void set_abort_load (bool value) void set_load_callback (const std::function< void(int)> & f) bool set_up_optimize ( Optimize * optimize) bool is_subject_fixed (std::shared_ptr< Subject > subject) int get_checkpoint_interval () void set_checkpoint_interval (int iterations) bool get_save_init_splits () void set_save_init_splits (bool enabled) bool get_keep_checkpoints () void set_keep_checkpoints (bool enabled) std::vector< std::string > get_field_attributes () void set_field_attributes (std::vector< std::string > attributes) std::vector< double > get_field_attribute_weights () void set_field_attribute_weights (std::vector< double > weights) bool get_use_geodesics_to_landmarks () void set_use_geodesics_to_landmarks (bool value) double get_geodesic_to_landmarks_weight () void set_geodesic_to_landmarks_weight (double value) std::string get_particle_format () void set_particle_format (std::string format)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#detailed-description","text":"class shapeworks :: OptimizeParameters ; This class encapsulated processing of Optimization parameters","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-optimizeparameters","text":"explicit OptimizeParameters ( ProjectHandle project )","title":"function OptimizeParameters"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-save_to_project","text":"void save_to_project ()","title":"function save_to_project"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_optimize_output_prefix","text":"std :: string get_optimize_output_prefix ()","title":"function get_optimize_output_prefix"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_optimize_output_prefix","text":"void set_optimize_output_prefix ( std :: string prefix )","title":"function set_optimize_output_prefix"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_number_of_particles","text":"std :: vector < int > get_number_of_particles ()","title":"function get_number_of_particles"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_number_of_particles","text":"void set_number_of_particles ( std :: vector < int > number_of_particles )","title":"function set_number_of_particles"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_initial_relative_weighting","text":"double get_initial_relative_weighting ()","title":"function get_initial_relative_weighting"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_initial_relative_weighting","text":"void set_initial_relative_weighting ( double value )","title":"function set_initial_relative_weighting"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_relative_weighting","text":"double get_relative_weighting ()","title":"function get_relative_weighting"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_relative_weighting","text":"void set_relative_weighting ( double value )","title":"function set_relative_weighting"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_starting_regularization","text":"double get_starting_regularization ()","title":"function get_starting_regularization"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_starting_regularization","text":"void set_starting_regularization ( double value )","title":"function set_starting_regularization"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_ending_regularization","text":"double get_ending_regularization ()","title":"function get_ending_regularization"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_ending_regularization","text":"void set_ending_regularization ( double value )","title":"function set_ending_regularization"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_iterations_per_split","text":"int get_iterations_per_split ()","title":"function get_iterations_per_split"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_iterations_per_split","text":"void set_iterations_per_split ( int value )","title":"function set_iterations_per_split"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_optimization_iterations","text":"int get_optimization_iterations ()","title":"function get_optimization_iterations"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_optimization_iterations","text":"void set_optimization_iterations ( int value )","title":"function set_optimization_iterations"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_geodesic_distance","text":"bool get_use_geodesic_distance ()","title":"function get_use_geodesic_distance"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_geodesic_distance","text":"void set_use_geodesic_distance ( bool value )","title":"function set_use_geodesic_distance"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_geodesic_cache_multiplier","text":"int get_geodesic_cache_multiplier ()","title":"function get_geodesic_cache_multiplier"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_geodesic_cache_multiplier","text":"void set_geodesic_cache_multiplier ( int value )","title":"function set_geodesic_cache_multiplier"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_normals","text":"std :: vector < bool > get_use_normals ()","title":"function get_use_normals"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_normals","text":"void set_use_normals ( std :: vector < bool > use_normals )","title":"function set_use_normals"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_normals_strength","text":"double get_normals_strength ()","title":"function get_normals_strength"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_normals_strength","text":"void set_normals_strength ( double value )","title":"function set_normals_strength"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_disentangled_ssm","text":"bool get_use_disentangled_ssm ()","title":"function get_use_disentangled_ssm"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_disentangled_ssm","text":"void set_use_disentangled_ssm ( bool value )","title":"function set_use_disentangled_ssm"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_procrustes","text":"bool get_use_procrustes ()","title":"function get_use_procrustes"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_procrustes","text":"void set_use_procrustes ( bool value )","title":"function set_use_procrustes"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_procrustes_scaling","text":"bool get_use_procrustes_scaling ()","title":"function get_use_procrustes_scaling"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_procrustes_scaling","text":"void set_use_procrustes_scaling ( bool value )","title":"function set_use_procrustes_scaling"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_procrustes_rotation_translation","text":"bool get_use_procrustes_rotation_translation ()","title":"function get_use_procrustes_rotation_translation"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_procrustes_rotation_translation","text":"void set_use_procrustes_rotation_translation ( bool value )","title":"function set_use_procrustes_rotation_translation"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_procrustes_interval","text":"int get_procrustes_interval ()","title":"function get_procrustes_interval"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_procrustes_interval","text":"void set_procrustes_interval ( int value )","title":"function set_procrustes_interval"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_multiscale","text":"bool get_use_multiscale ()","title":"function get_use_multiscale"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_multiscale","text":"void set_use_multiscale ( bool value )","title":"function set_use_multiscale"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_multiscale_particles","text":"int get_multiscale_particles ()","title":"function get_multiscale_particles"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_multiscale_particles","text":"void set_multiscale_particles ( int value )","title":"function set_multiscale_particles"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_narrow_band","text":"double get_narrow_band ()","title":"function get_narrow_band"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_narrow_band","text":"void set_narrow_band ( double value )","title":"function set_narrow_band"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_verbosity","text":"int get_verbosity ()","title":"function get_verbosity"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_verbosity","text":"void set_verbosity ( int value )","title":"function set_verbosity"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_mesh_ffc_mode","text":"bool get_mesh_ffc_mode ()","title":"function get_mesh_ffc_mode"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_mesh_ffc_mode","text":"void set_mesh_ffc_mode ( bool value )","title":"function set_mesh_ffc_mode"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_landmarks","text":"bool get_use_landmarks ()","title":"function get_use_landmarks"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_landmarks","text":"void set_use_landmarks ( bool value )","title":"function set_use_landmarks"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_fixed_subjects","text":"bool get_use_fixed_subjects ()","title":"function get_use_fixed_subjects"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_fixed_subjects","text":"void set_use_fixed_subjects ( bool value )","title":"function set_use_fixed_subjects"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_fixed_subjects_column","text":"std :: string get_fixed_subjects_column ()","title":"function get_fixed_subjects_column"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_fixed_subject_column","text":"void set_fixed_subject_column ( std :: string column )","title":"function set_fixed_subject_column"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_fixed_subjects_choice","text":"std :: string get_fixed_subjects_choice ()","title":"function get_fixed_subjects_choice"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_fixed_subjects_choice","text":"void set_fixed_subjects_choice ( std :: string choice )","title":"function set_fixed_subjects_choice"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_abort_load","text":"void set_abort_load ( bool value )","title":"function set_abort_load"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_load_callback","text":"void set_load_callback ( const std :: function < void ( int ) > & f )","title":"function set_load_callback"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_up_optimize","text":"bool set_up_optimize ( Optimize * optimize )","title":"function set_up_optimize"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-is_subject_fixed","text":"bool is_subject_fixed ( std :: shared_ptr < Subject > subject )","title":"function is_subject_fixed"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_checkpoint_interval","text":"int get_checkpoint_interval ()","title":"function get_checkpoint_interval"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_checkpoint_interval","text":"void set_checkpoint_interval ( int iterations )","title":"function set_checkpoint_interval"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_save_init_splits","text":"bool get_save_init_splits ()","title":"function get_save_init_splits"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_save_init_splits","text":"void set_save_init_splits ( bool enabled )","title":"function set_save_init_splits"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_keep_checkpoints","text":"bool get_keep_checkpoints ()","title":"function get_keep_checkpoints"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_keep_checkpoints","text":"void set_keep_checkpoints ( bool enabled )","title":"function set_keep_checkpoints"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_field_attributes","text":"std :: vector < std :: string > get_field_attributes ()","title":"function get_field_attributes"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_field_attributes","text":"void set_field_attributes ( std :: vector < std :: string > attributes )","title":"function set_field_attributes"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_field_attribute_weights","text":"std :: vector < double > get_field_attribute_weights ()","title":"function get_field_attribute_weights"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_field_attribute_weights","text":"void set_field_attribute_weights ( std :: vector < double > weights )","title":"function set_field_attribute_weights"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_use_geodesics_to_landmarks","text":"bool get_use_geodesics_to_landmarks ()","title":"function get_use_geodesics_to_landmarks"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_use_geodesics_to_landmarks","text":"void set_use_geodesics_to_landmarks ( bool value )","title":"function set_use_geodesics_to_landmarks"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_geodesic_to_landmarks_weight","text":"double get_geodesic_to_landmarks_weight ()","title":"function get_geodesic_to_landmarks_weight"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_geodesic_to_landmarks_weight","text":"void set_geodesic_to_landmarks_weight ( double value )","title":"function set_geodesic_to_landmarks_weight"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-get_particle_format","text":"std :: string get_particle_format ()","title":"function get_particle_format"},{"location":"api/Classes/classshapeworks_1_1OptimizeParameters.html#function-set_particle_format","text":"void set_particle_format ( std :: string format ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function set_particle_format"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html","text":"shapeworks::OptimizeTool Inherits from QWidget Public Slots Name void on_run_optimize_button_clicked () Run optimize tool. void on_restoreDefaults_clicked () void handle_optimize_complete () void handle_optimize_failed () void handle_progress (int val, QString message) void handle_error (QString ) void handle_warning (QString ) void handle_message (QString ) void update_ui_elements () bool validate_inputs () Public Signals Name void optimize_start () void optimize_complete () void progress (int ) void status (std::string ) Public Functions Name OptimizeTool ( Preferences & prefs, Telemetry & telemetry) ~OptimizeTool () void set_session (QSharedPointer< Session > session) set the pointer to the project void activate () activate this tool void load_params () Load params from project. void store_params () Store params to project. void enable_actions () Enable action buttons. void disable_actions () Disable action buttons. void shutdown_threads () shut down any running threads Public Slots Documentation slot on_run_optimize_button_clicked void on_run_optimize_button_clicked () Run optimize tool. slot on_restoreDefaults_clicked void on_restoreDefaults_clicked () slot handle_optimize_complete void handle_optimize_complete () slot handle_optimize_failed void handle_optimize_failed () slot handle_progress void handle_progress ( int val , QString message ) slot handle_error void handle_error ( QString ) slot handle_warning void handle_warning ( QString ) slot handle_message void handle_message ( QString ) slot update_ui_elements void update_ui_elements () slot validate_inputs bool validate_inputs () Public Signals Documentation signal optimize_start void optimize_start () signal optimize_complete void optimize_complete () signal progress void progress ( int ) signal status void status ( std :: string ) Public Functions Documentation function OptimizeTool OptimizeTool ( Preferences & prefs , Telemetry & telemetry ) function ~OptimizeTool ~ OptimizeTool () function set_session void set_session ( QSharedPointer < Session > session ) set the pointer to the project function activate void activate () activate this tool function load_params void load_params () Load params from project. function store_params void store_params () Store params to project. function enable_actions void enable_actions () Enable action buttons. function disable_actions void disable_actions () Disable action buttons. function shutdown_threads void shutdown_threads () shut down any running threads Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::OptimizeTool"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#shapeworksoptimizetool","text":"Inherits from QWidget","title":"shapeworks::OptimizeTool"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#public-slots","text":"Name void on_run_optimize_button_clicked () Run optimize tool. void on_restoreDefaults_clicked () void handle_optimize_complete () void handle_optimize_failed () void handle_progress (int val, QString message) void handle_error (QString ) void handle_warning (QString ) void handle_message (QString ) void update_ui_elements () bool validate_inputs ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#public-signals","text":"Name void optimize_start () void optimize_complete () void progress (int ) void status (std::string )","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#public-functions","text":"Name OptimizeTool ( Preferences & prefs, Telemetry & telemetry) ~OptimizeTool () void set_session (QSharedPointer< Session > session) set the pointer to the project void activate () activate this tool void load_params () Load params from project. void store_params () Store params to project. void enable_actions () Enable action buttons. void disable_actions () Disable action buttons. void shutdown_threads () shut down any running threads","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-on_run_optimize_button_clicked","text":"void on_run_optimize_button_clicked () Run optimize tool.","title":"slot on_run_optimize_button_clicked"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-on_restoredefaults_clicked","text":"void on_restoreDefaults_clicked ()","title":"slot on_restoreDefaults_clicked"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-handle_optimize_complete","text":"void handle_optimize_complete ()","title":"slot handle_optimize_complete"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-handle_optimize_failed","text":"void handle_optimize_failed ()","title":"slot handle_optimize_failed"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-handle_progress","text":"void handle_progress ( int val , QString message )","title":"slot handle_progress"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-handle_error","text":"void handle_error ( QString )","title":"slot handle_error"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-handle_warning","text":"void handle_warning ( QString )","title":"slot handle_warning"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-handle_message","text":"void handle_message ( QString )","title":"slot handle_message"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-update_ui_elements","text":"void update_ui_elements ()","title":"slot update_ui_elements"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#slot-validate_inputs","text":"bool validate_inputs ()","title":"slot validate_inputs"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#signal-optimize_start","text":"void optimize_start ()","title":"signal optimize_start"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#signal-optimize_complete","text":"void optimize_complete ()","title":"signal optimize_complete"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#signal-progress","text":"void progress ( int )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#signal-status","text":"void status ( std :: string )","title":"signal status"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-optimizetool","text":"OptimizeTool ( Preferences & prefs , Telemetry & telemetry )","title":"function OptimizeTool"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-optimizetool_1","text":"~ OptimizeTool ()","title":"function ~OptimizeTool"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session ) set the pointer to the project","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-activate","text":"void activate () activate this tool","title":"function activate"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-load_params","text":"void load_params () Load params from project.","title":"function load_params"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-store_params","text":"void store_params () Store params to project.","title":"function store_params"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-enable_actions","text":"void enable_actions () Enable action buttons.","title":"function enable_actions"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-disable_actions","text":"void disable_actions () Disable action buttons.","title":"function disable_actions"},{"location":"api/Classes/classshapeworks_1_1OptimizeTool.html#function-shutdown_threads","text":"void shutdown_threads () shut down any running threads Updated on 2023-10-24 at 22:16:01 +0000","title":"function shutdown_threads"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html","text":"shapeworks::PaintWidget Inherits from vtkAbstractWidget Protected Types Name enum @5 Public Functions Name PaintWidget * New () vtkTypeMacro ( PaintWidget , vtkAbstractWidget ) void PrintSelf (ostream & os, vtkIndent indent) vtkSetMacro (PointPlacer , vtkPointPlacer * ) vtkGetMacro (PointPlacer , vtkPointPlacer * ) vtkSetMacro (Renderer , vtkRenderer * ) vtkGetMacro (Renderer , vtkRenderer * ) void set_viewer ( Viewer * viewer) virtual void SetEnabled (int ) void SetRepresentation (vtkContourRepresentation * r) void CreateDefaultRepresentation () void update_position () virtual void Initialize (vtkPolyData * poly, int state =1) virtual void Initialize () void set_brush_size (double size) double get_brush_size () void set_brush_color (float r, float g, float b) Protected Functions Name PaintWidget () ~PaintWidget () bool use_point_placer (double displayPos[2], int newState) void set_cursor (int requestedShape) void StartPaintAction (vtkAbstractWidget * w) void EndPaintAction (vtkAbstractWidget * w) void StartEraseAction (vtkAbstractWidget * w) void EndEraseAction (vtkAbstractWidget * w) void MoveAction (vtkAbstractWidget * w) void LeaveAction (vtkAbstractWidget * w) void KeyPressAction (vtkAbstractWidget * w) Protected Attributes Name int WidgetState vtkPointPlacer * PointPlacer vtkRenderer * Renderer StudioSphereRepresentation * sphere_cursor_ bool mouse_in_window_ Viewer * viewer_ Protected Types Documentation enum @5 Enumerator Value Description Start Paint Erase Public Functions Documentation function New static PaintWidget * New () function vtkTypeMacro vtkTypeMacro ( PaintWidget , vtkAbstractWidget ) function PrintSelf void PrintSelf ( ostream & os , vtkIndent indent ) function vtkSetMacro vtkSetMacro ( PointPlacer , vtkPointPlacer * ) function vtkGetMacro vtkGetMacro ( PointPlacer , vtkPointPlacer * ) function vtkSetMacro vtkSetMacro ( Renderer , vtkRenderer * ) function vtkGetMacro vtkGetMacro ( Renderer , vtkRenderer * ) function set_viewer void set_viewer ( Viewer * viewer ) function SetEnabled virtual void SetEnabled ( int ) function SetRepresentation inline void SetRepresentation ( vtkContourRepresentation * r ) function CreateDefaultRepresentation void CreateDefaultRepresentation () function update_position void update_position () function Initialize virtual void Initialize ( vtkPolyData * poly , int state = 1 ) function Initialize inline virtual void Initialize () function set_brush_size void set_brush_size ( double size ) function get_brush_size double get_brush_size () function set_brush_color void set_brush_color ( float r , float g , float b ) Protected Functions Documentation function PaintWidget PaintWidget () function ~PaintWidget ~ PaintWidget () function use_point_placer bool use_point_placer ( double displayPos [ 2 ], int newState ) function set_cursor void set_cursor ( int requestedShape ) function StartPaintAction static void StartPaintAction ( vtkAbstractWidget * w ) function EndPaintAction static void EndPaintAction ( vtkAbstractWidget * w ) function StartEraseAction static void StartEraseAction ( vtkAbstractWidget * w ) function EndEraseAction static void EndEraseAction ( vtkAbstractWidget * w ) function MoveAction static void MoveAction ( vtkAbstractWidget * w ) function LeaveAction static void LeaveAction ( vtkAbstractWidget * w ) function KeyPressAction static void KeyPressAction ( vtkAbstractWidget * w ) Protected Attributes Documentation variable WidgetState int WidgetState ; variable PointPlacer vtkPointPlacer * PointPlacer ; variable Renderer vtkRenderer * Renderer ; variable sphere_cursor_ StudioSphereRepresentation * sphere_cursor_ ; variable mouse_in_window_ bool mouse_in_window_ ; variable viewer_ Viewer * viewer_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PaintWidget"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#shapeworkspaintwidget","text":"Inherits from vtkAbstractWidget","title":"shapeworks::PaintWidget"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#protected-types","text":"Name enum @5","title":"Protected Types"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#public-functions","text":"Name PaintWidget * New () vtkTypeMacro ( PaintWidget , vtkAbstractWidget ) void PrintSelf (ostream & os, vtkIndent indent) vtkSetMacro (PointPlacer , vtkPointPlacer * ) vtkGetMacro (PointPlacer , vtkPointPlacer * ) vtkSetMacro (Renderer , vtkRenderer * ) vtkGetMacro (Renderer , vtkRenderer * ) void set_viewer ( Viewer * viewer) virtual void SetEnabled (int ) void SetRepresentation (vtkContourRepresentation * r) void CreateDefaultRepresentation () void update_position () virtual void Initialize (vtkPolyData * poly, int state =1) virtual void Initialize () void set_brush_size (double size) double get_brush_size () void set_brush_color (float r, float g, float b)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#protected-functions","text":"Name PaintWidget () ~PaintWidget () bool use_point_placer (double displayPos[2], int newState) void set_cursor (int requestedShape) void StartPaintAction (vtkAbstractWidget * w) void EndPaintAction (vtkAbstractWidget * w) void StartEraseAction (vtkAbstractWidget * w) void EndEraseAction (vtkAbstractWidget * w) void MoveAction (vtkAbstractWidget * w) void LeaveAction (vtkAbstractWidget * w) void KeyPressAction (vtkAbstractWidget * w)","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#protected-attributes","text":"Name int WidgetState vtkPointPlacer * PointPlacer vtkRenderer * Renderer StudioSphereRepresentation * sphere_cursor_ bool mouse_in_window_ Viewer * viewer_","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#protected-types-documentation","text":"","title":"Protected Types Documentation"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#enum-5","text":"Enumerator Value Description Start Paint Erase","title":"enum @5"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-new","text":"static PaintWidget * New ()","title":"function New"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-vtktypemacro","text":"vtkTypeMacro ( PaintWidget , vtkAbstractWidget )","title":"function vtkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-printself","text":"void PrintSelf ( ostream & os , vtkIndent indent )","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-vtksetmacro","text":"vtkSetMacro ( PointPlacer , vtkPointPlacer * )","title":"function vtkSetMacro"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-vtkgetmacro","text":"vtkGetMacro ( PointPlacer , vtkPointPlacer * )","title":"function vtkGetMacro"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-vtksetmacro_1","text":"vtkSetMacro ( Renderer , vtkRenderer * )","title":"function vtkSetMacro"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-vtkgetmacro_1","text":"vtkGetMacro ( Renderer , vtkRenderer * )","title":"function vtkGetMacro"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-set_viewer","text":"void set_viewer ( Viewer * viewer )","title":"function set_viewer"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-setenabled","text":"virtual void SetEnabled ( int )","title":"function SetEnabled"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-setrepresentation","text":"inline void SetRepresentation ( vtkContourRepresentation * r )","title":"function SetRepresentation"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-createdefaultrepresentation","text":"void CreateDefaultRepresentation ()","title":"function CreateDefaultRepresentation"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-update_position","text":"void update_position ()","title":"function update_position"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-initialize","text":"virtual void Initialize ( vtkPolyData * poly , int state = 1 )","title":"function Initialize"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-initialize_1","text":"inline virtual void Initialize ()","title":"function Initialize"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-set_brush_size","text":"void set_brush_size ( double size )","title":"function set_brush_size"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-get_brush_size","text":"double get_brush_size ()","title":"function get_brush_size"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-set_brush_color","text":"void set_brush_color ( float r , float g , float b )","title":"function set_brush_color"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-paintwidget","text":"PaintWidget ()","title":"function PaintWidget"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-paintwidget_1","text":"~ PaintWidget ()","title":"function ~PaintWidget"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-use_point_placer","text":"bool use_point_placer ( double displayPos [ 2 ], int newState )","title":"function use_point_placer"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-set_cursor","text":"void set_cursor ( int requestedShape )","title":"function set_cursor"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-startpaintaction","text":"static void StartPaintAction ( vtkAbstractWidget * w )","title":"function StartPaintAction"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-endpaintaction","text":"static void EndPaintAction ( vtkAbstractWidget * w )","title":"function EndPaintAction"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-starteraseaction","text":"static void StartEraseAction ( vtkAbstractWidget * w )","title":"function StartEraseAction"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-enderaseaction","text":"static void EndEraseAction ( vtkAbstractWidget * w )","title":"function EndEraseAction"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-moveaction","text":"static void MoveAction ( vtkAbstractWidget * w )","title":"function MoveAction"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-leaveaction","text":"static void LeaveAction ( vtkAbstractWidget * w )","title":"function LeaveAction"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#function-keypressaction","text":"static void KeyPressAction ( vtkAbstractWidget * w )","title":"function KeyPressAction"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#variable-widgetstate","text":"int WidgetState ;","title":"variable WidgetState"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#variable-pointplacer","text":"vtkPointPlacer * PointPlacer ;","title":"variable PointPlacer"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#variable-renderer","text":"vtkRenderer * Renderer ;","title":"variable Renderer"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#variable-sphere_cursor_","text":"StudioSphereRepresentation * sphere_cursor_ ;","title":"variable sphere_cursor_"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#variable-mouse_in_window_","text":"bool mouse_in_window_ ;","title":"variable mouse_in_window_"},{"location":"api/Classes/classshapeworks_1_1PaintWidget.html#variable-viewer_","text":"Viewer * viewer_ ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable viewer_"},{"location":"api/Classes/classshapeworks_1_1Parameters.html","text":"shapeworks::Parameters Parameter settings. More... #include Public Functions Name Parameters () default constructor Parameters (StringMap map) construct from map Variant get (std::string key, Variant default_value) get a parameter based on a key, return default if it doesn't exist bool key_exists (std::string key) return if a key exists or not void set (std::string key, Variant value) set a parameter based on a key void remove_entry (std::string key) remove an entry void set_map (StringMap map) set underlying map StringMap get_map () const get underlying map void reset_parameters () reset parameters to blank Public Attributes Name constexpr const char * ANALYSIS_PARAMS constexpr const char * GROOM_PARAMS constexpr const char * OPTIMIZE_PARAMS constexpr const char * STUDIO_PARAMS constexpr const char * PROJECT_PARAMS constexpr const char * DEEPSSM_PARAMS Detailed Description class shapeworks :: Parameters ; Parameter settings. Store key/variant combinations Used to store parameters for various tools Public Functions Documentation function Parameters Parameters () default constructor function Parameters explicit Parameters ( StringMap map ) construct from map function get Variant get ( std :: string key , Variant default_value ) get a parameter based on a key, return default if it doesn't exist function key_exists bool key_exists ( std :: string key ) return if a key exists or not function set void set ( std :: string key , Variant value ) set a parameter based on a key function remove_entry void remove_entry ( std :: string key ) remove an entry function set_map void set_map ( StringMap map ) set underlying map function get_map StringMap get_map () const get underlying map function reset_parameters void reset_parameters () reset parameters to blank Public Attributes Documentation variable ANALYSIS_PARAMS static constexpr const char * ANALYSIS_PARAMS = \"analysis\" ; variable GROOM_PARAMS static constexpr const char * GROOM_PARAMS = \"groom\" ; variable OPTIMIZE_PARAMS static constexpr const char * OPTIMIZE_PARAMS = \"optimize\" ; variable STUDIO_PARAMS static constexpr const char * STUDIO_PARAMS = \"studio\" ; variable PROJECT_PARAMS static constexpr const char * PROJECT_PARAMS = \"project\" ; variable DEEPSSM_PARAMS static constexpr const char * DEEPSSM_PARAMS = \"deepssm\" ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Parameters"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#shapeworksparameters","text":"Parameter settings. More... #include ","title":"shapeworks::Parameters"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#public-functions","text":"Name Parameters () default constructor Parameters (StringMap map) construct from map Variant get (std::string key, Variant default_value) get a parameter based on a key, return default if it doesn't exist bool key_exists (std::string key) return if a key exists or not void set (std::string key, Variant value) set a parameter based on a key void remove_entry (std::string key) remove an entry void set_map (StringMap map) set underlying map StringMap get_map () const get underlying map void reset_parameters () reset parameters to blank","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#public-attributes","text":"Name constexpr const char * ANALYSIS_PARAMS constexpr const char * GROOM_PARAMS constexpr const char * OPTIMIZE_PARAMS constexpr const char * STUDIO_PARAMS constexpr const char * PROJECT_PARAMS constexpr const char * DEEPSSM_PARAMS","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#detailed-description","text":"class shapeworks :: Parameters ; Parameter settings. Store key/variant combinations Used to store parameters for various tools","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-parameters","text":"Parameters () default constructor","title":"function Parameters"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-parameters_1","text":"explicit Parameters ( StringMap map ) construct from map","title":"function Parameters"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-get","text":"Variant get ( std :: string key , Variant default_value ) get a parameter based on a key, return default if it doesn't exist","title":"function get"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-key_exists","text":"bool key_exists ( std :: string key ) return if a key exists or not","title":"function key_exists"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-set","text":"void set ( std :: string key , Variant value ) set a parameter based on a key","title":"function set"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-remove_entry","text":"void remove_entry ( std :: string key ) remove an entry","title":"function remove_entry"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-set_map","text":"void set_map ( StringMap map ) set underlying map","title":"function set_map"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-get_map","text":"StringMap get_map () const get underlying map","title":"function get_map"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#function-reset_parameters","text":"void reset_parameters () reset parameters to blank","title":"function reset_parameters"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#variable-analysis_params","text":"static constexpr const char * ANALYSIS_PARAMS = \"analysis\" ;","title":"variable ANALYSIS_PARAMS"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#variable-groom_params","text":"static constexpr const char * GROOM_PARAMS = \"groom\" ;","title":"variable GROOM_PARAMS"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#variable-optimize_params","text":"static constexpr const char * OPTIMIZE_PARAMS = \"optimize\" ;","title":"variable OPTIMIZE_PARAMS"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#variable-studio_params","text":"static constexpr const char * STUDIO_PARAMS = \"studio\" ;","title":"variable STUDIO_PARAMS"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#variable-project_params","text":"static constexpr const char * PROJECT_PARAMS = \"project\" ;","title":"variable PROJECT_PARAMS"},{"location":"api/Classes/classshapeworks_1_1Parameters.html#variable-deepssm_params","text":"static constexpr const char * DEEPSSM_PARAMS = \"deepssm\" ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable DEEPSSM_PARAMS"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html","text":"shapeworks::ParticleArea Public Functions Name void assign_vertex_particles (vtkSmartPointer< vtkPolyData > poly_data, std::vector< itk::Point< double > > particles) assign particle ids for each vertex based on closest geodesic distance void assign_vertex_colors (vtkSmartPointer< vtkPolyData > poly_data, std::vector< QColor > colors) assign vertex colors based on particle ids void assign_vertex_areas (vtkSmartPointer< vtkPolyData > poly_data, Eigen::VectorXd areas) assign vertex areas based on particle ids std::vector< QColor > colors_from_lut (vtkSmartPointer< vtkLookupTable > lut) convert lut to array of colors Eigen::VectorXd compute_particle_triangle_areas (vtkSmartPointer< vtkPolyData > poly_data, std::vector< itk::Point< double > > particles) compute the area assigned to each particle Public Functions Documentation function assign_vertex_particles static void assign_vertex_particles ( vtkSmartPointer < vtkPolyData > poly_data , std :: vector < itk :: Point < double > > particles ) assign particle ids for each vertex based on closest geodesic distance function assign_vertex_colors static void assign_vertex_colors ( vtkSmartPointer < vtkPolyData > poly_data , std :: vector < QColor > colors ) assign vertex colors based on particle ids function assign_vertex_areas static void assign_vertex_areas ( vtkSmartPointer < vtkPolyData > poly_data , Eigen :: VectorXd areas ) assign vertex areas based on particle ids function colors_from_lut static std :: vector < QColor > colors_from_lut ( vtkSmartPointer < vtkLookupTable > lut ) convert lut to array of colors function compute_particle_triangle_areas static Eigen :: VectorXd compute_particle_triangle_areas ( vtkSmartPointer < vtkPolyData > poly_data , std :: vector < itk :: Point < double > > particles ) compute the area assigned to each particle Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleArea"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#shapeworksparticlearea","text":"","title":"shapeworks::ParticleArea"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#public-functions","text":"Name void assign_vertex_particles (vtkSmartPointer< vtkPolyData > poly_data, std::vector< itk::Point< double > > particles) assign particle ids for each vertex based on closest geodesic distance void assign_vertex_colors (vtkSmartPointer< vtkPolyData > poly_data, std::vector< QColor > colors) assign vertex colors based on particle ids void assign_vertex_areas (vtkSmartPointer< vtkPolyData > poly_data, Eigen::VectorXd areas) assign vertex areas based on particle ids std::vector< QColor > colors_from_lut (vtkSmartPointer< vtkLookupTable > lut) convert lut to array of colors Eigen::VectorXd compute_particle_triangle_areas (vtkSmartPointer< vtkPolyData > poly_data, std::vector< itk::Point< double > > particles) compute the area assigned to each particle","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#function-assign_vertex_particles","text":"static void assign_vertex_particles ( vtkSmartPointer < vtkPolyData > poly_data , std :: vector < itk :: Point < double > > particles ) assign particle ids for each vertex based on closest geodesic distance","title":"function assign_vertex_particles"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#function-assign_vertex_colors","text":"static void assign_vertex_colors ( vtkSmartPointer < vtkPolyData > poly_data , std :: vector < QColor > colors ) assign vertex colors based on particle ids","title":"function assign_vertex_colors"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#function-assign_vertex_areas","text":"static void assign_vertex_areas ( vtkSmartPointer < vtkPolyData > poly_data , Eigen :: VectorXd areas ) assign vertex areas based on particle ids","title":"function assign_vertex_areas"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#function-colors_from_lut","text":"static std :: vector < QColor > colors_from_lut ( vtkSmartPointer < vtkLookupTable > lut ) convert lut to array of colors","title":"function colors_from_lut"},{"location":"api/Classes/classshapeworks_1_1ParticleArea.html#function-compute_particle_triangle_areas","text":"static Eigen :: VectorXd compute_particle_triangle_areas ( vtkSmartPointer < vtkPolyData > poly_data , std :: vector < itk :: Point < double > > particles ) compute the area assigned to each particle Updated on 2023-10-24 at 22:16:01 +0000","title":"function compute_particle_triangle_areas"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html","text":"shapeworks::ParticleAreaJob Inherits from shapeworks::Job , QObject Public Functions Name ParticleAreaJob (QSharedPointer< Session > session) virtual void run () override run the job virtual QString name () override get the name of the job const Eigen::VectorXf & get_mean_areas () const const Eigen::VectorXf & get_stddev_areas () const Additional inherited members Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Public Functions Documentation function ParticleAreaJob ParticleAreaJob ( QSharedPointer < Session > session ) function run virtual void run () override run the job Reimplements : shapeworks::Job::run function name inline virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name function get_mean_areas inline const Eigen :: VectorXf & get_mean_areas () const function get_stddev_areas inline const Eigen :: VectorXf & get_stddev_areas () const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleAreaJob"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#shapeworksparticleareajob","text":"Inherits from shapeworks::Job , QObject","title":"shapeworks::ParticleAreaJob"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#public-functions","text":"Name ParticleAreaJob (QSharedPointer< Session > session) virtual void run () override run the job virtual QString name () override get the name of the job const Eigen::VectorXf & get_mean_areas () const const Eigen::VectorXf & get_stddev_areas () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#additional-inherited-members","text":"Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#function-particleareajob","text":"ParticleAreaJob ( QSharedPointer < Session > session )","title":"function ParticleAreaJob"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#function-run","text":"virtual void run () override run the job Reimplements : shapeworks::Job::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#function-name","text":"inline virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name","title":"function name"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#function-get_mean_areas","text":"inline const Eigen :: VectorXf & get_mean_areas () const","title":"function get_mean_areas"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaJob.html#function-get_stddev_areas","text":"inline const Eigen :: VectorXf & get_stddev_areas () const Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_stddev_areas"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html","text":"shapeworks::ParticleAreaPanel Inherits from QWidget Public Slots Name void run_clicked () void show_particle_area_clicked () void display_option_changed () void handle_job_progress (int progress) void handle_job_complete () Public Signals Name void update_view () Public Functions Name ParticleAreaPanel (QWidget * parent =0) ~ParticleAreaPanel () void set_session (QSharedPointer< Session > session) set the pointer to the session void reset () bool get_display_particle_area () const Eigen::VectorXf get_computed_values () const std::string get_computed_value_name () const Public Slots Documentation slot run_clicked void run_clicked () slot show_particle_area_clicked void show_particle_area_clicked () slot display_option_changed void display_option_changed () slot handle_job_progress void handle_job_progress ( int progress ) slot handle_job_complete void handle_job_complete () Public Signals Documentation signal update_view void update_view () Public Functions Documentation function ParticleAreaPanel ParticleAreaPanel ( QWidget * parent = 0 ) function ~ParticleAreaPanel ~ ParticleAreaPanel () function set_session void set_session ( QSharedPointer < Session > session ) set the pointer to the session function reset void reset () function get_display_particle_area bool get_display_particle_area () const function get_computed_values Eigen :: VectorXf get_computed_values () const function get_computed_value_name std :: string get_computed_value_name () const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleAreaPanel"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#shapeworksparticleareapanel","text":"Inherits from QWidget","title":"shapeworks::ParticleAreaPanel"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#public-slots","text":"Name void run_clicked () void show_particle_area_clicked () void display_option_changed () void handle_job_progress (int progress) void handle_job_complete ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#public-signals","text":"Name void update_view ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#public-functions","text":"Name ParticleAreaPanel (QWidget * parent =0) ~ParticleAreaPanel () void set_session (QSharedPointer< Session > session) set the pointer to the session void reset () bool get_display_particle_area () const Eigen::VectorXf get_computed_values () const std::string get_computed_value_name () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#slot-run_clicked","text":"void run_clicked ()","title":"slot run_clicked"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#slot-show_particle_area_clicked","text":"void show_particle_area_clicked ()","title":"slot show_particle_area_clicked"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#slot-display_option_changed","text":"void display_option_changed ()","title":"slot display_option_changed"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#slot-handle_job_progress","text":"void handle_job_progress ( int progress )","title":"slot handle_job_progress"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#slot-handle_job_complete","text":"void handle_job_complete ()","title":"slot handle_job_complete"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#signal-update_view","text":"void update_view ()","title":"signal update_view"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#function-particleareapanel","text":"ParticleAreaPanel ( QWidget * parent = 0 )","title":"function ParticleAreaPanel"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#function-particleareapanel_1","text":"~ ParticleAreaPanel ()","title":"function ~ParticleAreaPanel"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session ) set the pointer to the session","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#function-reset","text":"void reset ()","title":"function reset"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#function-get_display_particle_area","text":"bool get_display_particle_area () const","title":"function get_display_particle_area"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#function-get_computed_values","text":"Eigen :: VectorXf get_computed_values () const","title":"function get_computed_values"},{"location":"api/Classes/classshapeworks_1_1ParticleAreaPanel.html#function-get_computed_value_name","text":"std :: string get_computed_value_name () const Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_computed_value_name"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html","text":"shapeworks::ParticleColors Supplies particle colors. More... #include Inherits from QObject Public Types Name enum ParticleColorsType Public Functions Name Q_ENUM (ParticleColorsType ) vtkSmartPointer< vtkLookupTable > construct_distinct () Detailed Description class shapeworks :: ParticleColors ; Supplies particle colors. The ParticleColors supplies distinct colors for particles Public Types Documentation enum ParticleColorsType Enumerator Value Description Distinct 0 Original 1 Public Functions Documentation function Q_ENUM Q_ENUM ( ParticleColorsType ) function construct_distinct static vtkSmartPointer < vtkLookupTable > construct_distinct () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleColors"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#shapeworksparticlecolors","text":"Supplies particle colors. More... #include Inherits from QObject","title":"shapeworks::ParticleColors"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#public-types","text":"Name enum ParticleColorsType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#public-functions","text":"Name Q_ENUM (ParticleColorsType ) vtkSmartPointer< vtkLookupTable > construct_distinct ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#detailed-description","text":"class shapeworks :: ParticleColors ; Supplies particle colors. The ParticleColors supplies distinct colors for particles","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#enum-particlecolorstype","text":"Enumerator Value Description Distinct 0 Original 1","title":"enum ParticleColorsType"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#function-q_enum","text":"Q_ENUM ( ParticleColorsType )","title":"function Q_ENUM"},{"location":"api/Classes/classshapeworks_1_1ParticleColors.html#function-construct_distinct","text":"static vtkSmartPointer < vtkLookupTable > construct_distinct () Updated on 2023-10-24 at 22:16:01 +0000","title":"function construct_distinct"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html","text":"shapeworks::ParticleDomain Inherited by shapeworks::ContourDomain , shapeworks::MeshDomain , shapeworks::ParticleRegionDomain Public Types Name typedef std::shared_ptr< ParticleDomain > Pointer using itk::Point< double, 3 > PointType using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Public Types Documentation typedef Pointer typedef std :: shared_ptr < ParticleDomain > shapeworks :: ParticleDomain :: Pointer ; using PointType using shapeworks :: ParticleDomain :: PointType = itk :: Point < double , 3 > ; Point type used to store particle locations. using GradNType using shapeworks :: ParticleDomain :: GradNType = vnl_matrix_fixed < float , 3 , 3 > ; using VectorDoubleType using shapeworks :: ParticleDomain :: VectorDoubleType = vnl_vector_fixed < double , 3 > ; using VectorFloatType using shapeworks :: ParticleDomain :: VectorFloatType = vnl_vector_fixed < float , 3 > ; Public Functions Documentation function ApplyConstraints virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const = 0 Reimplemented by : shapeworks::ContourDomain::ApplyConstraints , shapeworks::ImplicitSurfaceDomain::ApplyConstraints , shapeworks::MeshDomain::ApplyConstraints Apply any constraints to the given point location. This should force the point to a position on the surface that satisfies all constraints. function UpdateParticlePosition virtual PointType UpdateParticlePosition ( const PointType & point , int idx , VectorDoubleType & update ) const = 0 Reimplemented by : shapeworks::ContourDomain::UpdateParticlePosition , shapeworks::MeshDomain::UpdateParticlePosition Applies the update to the point and returns the new point position. function InvalidateParticlePosition inline virtual void InvalidateParticlePosition ( int idx ) const Reimplemented by : shapeworks::ContourDomain::InvalidateParticlePosition , shapeworks::MeshDomain::InvalidateParticlePosition function ProjectVectorToSurfaceTangent virtual VectorDoubleType ProjectVectorToSurfaceTangent ( VectorDoubleType & gradE , const PointType & pos , int idx ) const = 0 Reimplemented by : shapeworks::ContourDomain::ProjectVectorToSurfaceTangent , shapeworks::MeshDomain::ProjectVectorToSurfaceTangent Projects the vector to the surface tangent at the point. function SampleGradientAtPoint virtual VectorFloatType SampleGradientAtPoint ( const PointType & point , int idx ) const = 0 Reimplemented by : shapeworks::ImageDomainWithGradients::SampleGradientAtPoint , shapeworks::ContourDomain::SampleGradientAtPoint , shapeworks::MeshDomain::SampleGradientAtPoint function SampleNormalAtPoint virtual VectorFloatType SampleNormalAtPoint ( const PointType & point , int idx ) const = 0 Reimplemented by : shapeworks::ImageDomainWithGradients::SampleNormalAtPoint , shapeworks::ContourDomain::SampleNormalAtPoint , shapeworks::MeshDomain::SampleNormalAtPoint function SampleGradNAtPoint virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const = 0 Reimplemented by : shapeworks::ContourDomain::SampleGradNAtPoint , shapeworks::ImageDomainWithGradN::SampleGradNAtPoint , shapeworks::MeshDomain::SampleGradNAtPoint function Distance inline virtual double Distance ( const PointType & a , int idx_a , const PointType & b , int idx_b , VectorDoubleType * out_grad = nullptr ) const Reimplemented by : shapeworks::ContourDomain::Distance Distance between locations is used for computing energy and neighborhoods. Optionally return the gradient of the distance function SquaredDistance inline virtual double SquaredDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b ) const Reimplemented by : shapeworks::ContourDomain::SquaredDistance , shapeworks::MeshDomain::SquaredDistance Squared Distance between locations is used for computing sigma. function IsWithinDistance inline virtual bool IsWithinDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b , double test_dist , double & distance ) const Reimplemented by : shapeworks::MeshDomain::IsWithinDistance Returns whether or not the two points are separated by the given distance function GetCurvature virtual double GetCurvature ( const PointType & p , int idx ) const = 0 Reimplemented by : shapeworks::ContourDomain::GetCurvature , shapeworks::ImageDomainWithCurvature::GetCurvature , shapeworks::MeshDomain::GetCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceMeanCurvature virtual double GetSurfaceMeanCurvature () const = 0 Reimplemented by : shapeworks::ContourDomain::GetSurfaceMeanCurvature , shapeworks::ImageDomainWithCurvature::GetSurfaceMeanCurvature , shapeworks::MeshDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute function GetSurfaceStdDevCurvature virtual double GetSurfaceStdDevCurvature () const = 0 Reimplemented by : shapeworks::ContourDomain::GetSurfaceStdDevCurvature , shapeworks::ImageDomainWithCurvature::GetSurfaceStdDevCurvature , shapeworks::MeshDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute function GetLowerBound virtual const PointType & GetLowerBound () const = 0 Reimplemented by : shapeworks::ParticleRegionDomain::GetLowerBound , shapeworks::ContourDomain::GetLowerBound , shapeworks::MeshDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function GetUpperBound virtual const PointType & GetUpperBound () const = 0 Reimplemented by : shapeworks::ParticleRegionDomain::GetUpperBound , shapeworks::ContourDomain::GetUpperBound , shapeworks::MeshDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function GetZeroCrossingPoint virtual PointType GetZeroCrossingPoint () const = 0 Reimplemented by : shapeworks::ContourDomain::GetZeroCrossingPoint , shapeworks::ImplicitSurfaceDomain::GetZeroCrossingPoint , shapeworks::MeshDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle. function GetSurfaceArea virtual double GetSurfaceArea () const = 0 Reimplemented by : shapeworks::ContourDomain::GetSurfaceArea , shapeworks::ImageDomain::GetSurfaceArea , shapeworks::MeshDomain::GetSurfaceArea Use for neighborhood radius. function GetValidLocationNear virtual PointType GetValidLocationNear ( PointType p ) const = 0 Reimplemented by : shapeworks::ContourDomain::GetValidLocationNear , shapeworks::ImageDomain::GetValidLocationNear , shapeworks::MeshDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle. function GetMaxDiameter virtual double GetMaxDiameter () const = 0 Reimplemented by : shapeworks::ContourDomain::GetMaxDiameter , shapeworks::ImageDomain::GetMaxDiameter , shapeworks::MeshDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma function DeleteImages virtual void DeleteImages () = 0 Reimplemented by : shapeworks::ContourDomain::DeleteImages , shapeworks::ImageDomain::DeleteImages , shapeworks::ImageDomainWithGradients::DeleteImages , shapeworks::ImageDomainWithGradN::DeleteImages , shapeworks::MeshDomain::DeleteImages function DeletePartialDerivativeImages virtual void DeletePartialDerivativeImages () = 0 Reimplemented by : shapeworks::ContourDomain::DeletePartialDerivativeImages , shapeworks::ImageDomainWithGradN::DeletePartialDerivativeImages , shapeworks::MeshDomain::DeletePartialDerivativeImages function UpdateZeroCrossingPoint virtual void UpdateZeroCrossingPoint () = 0 Reimplemented by : shapeworks::ContourDomain::UpdateZeroCrossingPoint , shapeworks::ImageDomain::UpdateZeroCrossingPoint , shapeworks::MeshDomain::UpdateZeroCrossingPoint function IsDomainFixed inline bool IsDomainFixed () const function GetDomainType virtual shapeworks :: DomainType GetDomainType () const = 0 Reimplemented by : shapeworks::ContourDomain::GetDomainType , shapeworks::ImplicitSurfaceDomain::GetDomainType , shapeworks::MeshDomain::GetDomainType function GetConstraints inline std :: shared_ptr < shapeworks :: Constraints > GetConstraints () const function GetPositionAfterSplit inline virtual PointType GetPositionAfterSplit ( const PointType & pt , const VectorDoubleType & local_direction , const VectorDoubleType & global_direction , double epsilon ) const Reimplemented by : shapeworks::ContourDomain::GetPositionAfterSplit function SetDomainID inline void SetDomainID ( int id ) function SetDomainName inline void SetDomainName ( std :: string name ) Protected Functions Documentation function ParticleDomain inline ParticleDomain () function ~ParticleDomain inline virtual ~ ParticleDomain () Protected Attributes Documentation variable m_FixedDomain bool m_FixedDomain { true }; variable m_DomainID int m_DomainID { -1 }; variable m_DomainName std :: string m_DomainName ; variable constraints std :: shared_ptr < shapeworks :: Constraints > constraints ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#shapeworksparticledomain","text":"Inherited by shapeworks::ContourDomain , shapeworks::MeshDomain , shapeworks::ParticleRegionDomain","title":"shapeworks::ParticleDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#public-types","text":"Name typedef std::shared_ptr< ParticleDomain > Pointer using itk::Point< double, 3 > PointType using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#public-functions","text":"Name virtual bool ApplyConstraints ( PointType & p, int idx, bool dbg =false) const =0 virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual const PointType & GetLowerBound () const =0 virtual const PointType & GetUpperBound () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#protected-functions","text":"Name ParticleDomain () virtual ~ParticleDomain ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#protected-attributes","text":"Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#typedef-pointer","text":"typedef std :: shared_ptr < ParticleDomain > shapeworks :: ParticleDomain :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#using-pointtype","text":"using shapeworks :: ParticleDomain :: PointType = itk :: Point < double , 3 > ; Point type used to store particle locations.","title":"using PointType"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#using-gradntype","text":"using shapeworks :: ParticleDomain :: GradNType = vnl_matrix_fixed < float , 3 , 3 > ;","title":"using GradNType"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#using-vectordoubletype","text":"using shapeworks :: ParticleDomain :: VectorDoubleType = vnl_vector_fixed < double , 3 > ;","title":"using VectorDoubleType"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#using-vectorfloattype","text":"using shapeworks :: ParticleDomain :: VectorFloatType = vnl_vector_fixed < float , 3 > ;","title":"using VectorFloatType"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-applyconstraints","text":"virtual bool ApplyConstraints ( PointType & p , int idx , bool dbg = false ) const = 0 Reimplemented by : shapeworks::ContourDomain::ApplyConstraints , shapeworks::ImplicitSurfaceDomain::ApplyConstraints , shapeworks::MeshDomain::ApplyConstraints Apply any constraints to the given point location. This should force the point to a position on the surface that satisfies all constraints.","title":"function ApplyConstraints"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-updateparticleposition","text":"virtual PointType UpdateParticlePosition ( const PointType & point , int idx , VectorDoubleType & update ) const = 0 Reimplemented by : shapeworks::ContourDomain::UpdateParticlePosition , shapeworks::MeshDomain::UpdateParticlePosition Applies the update to the point and returns the new point position.","title":"function UpdateParticlePosition"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-invalidateparticleposition","text":"inline virtual void InvalidateParticlePosition ( int idx ) const Reimplemented by : shapeworks::ContourDomain::InvalidateParticlePosition , shapeworks::MeshDomain::InvalidateParticlePosition","title":"function InvalidateParticlePosition"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-projectvectortosurfacetangent","text":"virtual VectorDoubleType ProjectVectorToSurfaceTangent ( VectorDoubleType & gradE , const PointType & pos , int idx ) const = 0 Reimplemented by : shapeworks::ContourDomain::ProjectVectorToSurfaceTangent , shapeworks::MeshDomain::ProjectVectorToSurfaceTangent Projects the vector to the surface tangent at the point.","title":"function ProjectVectorToSurfaceTangent"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-samplegradientatpoint","text":"virtual VectorFloatType SampleGradientAtPoint ( const PointType & point , int idx ) const = 0 Reimplemented by : shapeworks::ImageDomainWithGradients::SampleGradientAtPoint , shapeworks::ContourDomain::SampleGradientAtPoint , shapeworks::MeshDomain::SampleGradientAtPoint","title":"function SampleGradientAtPoint"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-samplenormalatpoint","text":"virtual VectorFloatType SampleNormalAtPoint ( const PointType & point , int idx ) const = 0 Reimplemented by : shapeworks::ImageDomainWithGradients::SampleNormalAtPoint , shapeworks::ContourDomain::SampleNormalAtPoint , shapeworks::MeshDomain::SampleNormalAtPoint","title":"function SampleNormalAtPoint"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-samplegradnatpoint","text":"virtual GradNType SampleGradNAtPoint ( const PointType & p , int idx ) const = 0 Reimplemented by : shapeworks::ContourDomain::SampleGradNAtPoint , shapeworks::ImageDomainWithGradN::SampleGradNAtPoint , shapeworks::MeshDomain::SampleGradNAtPoint","title":"function SampleGradNAtPoint"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-distance","text":"inline virtual double Distance ( const PointType & a , int idx_a , const PointType & b , int idx_b , VectorDoubleType * out_grad = nullptr ) const Reimplemented by : shapeworks::ContourDomain::Distance Distance between locations is used for computing energy and neighborhoods. Optionally return the gradient of the distance","title":"function Distance"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-squareddistance","text":"inline virtual double SquaredDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b ) const Reimplemented by : shapeworks::ContourDomain::SquaredDistance , shapeworks::MeshDomain::SquaredDistance Squared Distance between locations is used for computing sigma.","title":"function SquaredDistance"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-iswithindistance","text":"inline virtual bool IsWithinDistance ( const PointType & a , int idx_a , const PointType & b , int idx_b , double test_dist , double & distance ) const Reimplemented by : shapeworks::MeshDomain::IsWithinDistance Returns whether or not the two points are separated by the given distance","title":"function IsWithinDistance"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getcurvature","text":"virtual double GetCurvature ( const PointType & p , int idx ) const = 0 Reimplemented by : shapeworks::ContourDomain::GetCurvature , shapeworks::ImageDomainWithCurvature::GetCurvature , shapeworks::MeshDomain::GetCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetCurvature"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getsurfacemeancurvature","text":"virtual double GetSurfaceMeanCurvature () const = 0 Reimplemented by : shapeworks::ContourDomain::GetSurfaceMeanCurvature , shapeworks::ImageDomainWithCurvature::GetSurfaceMeanCurvature , shapeworks::MeshDomain::GetSurfaceMeanCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceMeanCurvature"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getsurfacestddevcurvature","text":"virtual double GetSurfaceStdDevCurvature () const = 0 Reimplemented by : shapeworks::ContourDomain::GetSurfaceStdDevCurvature , shapeworks::ImageDomainWithCurvature::GetSurfaceStdDevCurvature , shapeworks::MeshDomain::GetSurfaceStdDevCurvature Used in ParticleMeanCurvatureAttribute","title":"function GetSurfaceStdDevCurvature"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getlowerbound","text":"virtual const PointType & GetLowerBound () const = 0 Reimplemented by : shapeworks::ParticleRegionDomain::GetLowerBound , shapeworks::ContourDomain::GetLowerBound , shapeworks::MeshDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetLowerBound"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getupperbound","text":"virtual const PointType & GetUpperBound () const = 0 Reimplemented by : shapeworks::ParticleRegionDomain::GetUpperBound , shapeworks::ContourDomain::GetUpperBound , shapeworks::MeshDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetUpperBound"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getzerocrossingpoint","text":"virtual PointType GetZeroCrossingPoint () const = 0 Reimplemented by : shapeworks::ContourDomain::GetZeroCrossingPoint , shapeworks::ImplicitSurfaceDomain::GetZeroCrossingPoint , shapeworks::MeshDomain::GetZeroCrossingPoint Get any valid point on the domain. This is used to place the first particle.","title":"function GetZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getsurfacearea","text":"virtual double GetSurfaceArea () const = 0 Reimplemented by : shapeworks::ContourDomain::GetSurfaceArea , shapeworks::ImageDomain::GetSurfaceArea , shapeworks::MeshDomain::GetSurfaceArea Use for neighborhood radius.","title":"function GetSurfaceArea"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getvalidlocationnear","text":"virtual PointType GetValidLocationNear ( PointType p ) const = 0 Reimplemented by : shapeworks::ContourDomain::GetValidLocationNear , shapeworks::ImageDomain::GetValidLocationNear , shapeworks::MeshDomain::GetValidLocationNear GetValidLocation returns a PointType location on the surface. Used for placing the first particle.","title":"function GetValidLocationNear"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getmaxdiameter","text":"virtual double GetMaxDiameter () const = 0 Reimplemented by : shapeworks::ContourDomain::GetMaxDiameter , shapeworks::ImageDomain::GetMaxDiameter , shapeworks::MeshDomain::GetMaxDiameter GetMaxDiameter returns the maximum diameter of the domain and is used for computing sigma","title":"function GetMaxDiameter"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-deleteimages","text":"virtual void DeleteImages () = 0 Reimplemented by : shapeworks::ContourDomain::DeleteImages , shapeworks::ImageDomain::DeleteImages , shapeworks::ImageDomainWithGradients::DeleteImages , shapeworks::ImageDomainWithGradN::DeleteImages , shapeworks::MeshDomain::DeleteImages","title":"function DeleteImages"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-deletepartialderivativeimages","text":"virtual void DeletePartialDerivativeImages () = 0 Reimplemented by : shapeworks::ContourDomain::DeletePartialDerivativeImages , shapeworks::ImageDomainWithGradN::DeletePartialDerivativeImages , shapeworks::MeshDomain::DeletePartialDerivativeImages","title":"function DeletePartialDerivativeImages"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-updatezerocrossingpoint","text":"virtual void UpdateZeroCrossingPoint () = 0 Reimplemented by : shapeworks::ContourDomain::UpdateZeroCrossingPoint , shapeworks::ImageDomain::UpdateZeroCrossingPoint , shapeworks::MeshDomain::UpdateZeroCrossingPoint","title":"function UpdateZeroCrossingPoint"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-isdomainfixed","text":"inline bool IsDomainFixed () const","title":"function IsDomainFixed"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getdomaintype","text":"virtual shapeworks :: DomainType GetDomainType () const = 0 Reimplemented by : shapeworks::ContourDomain::GetDomainType , shapeworks::ImplicitSurfaceDomain::GetDomainType , shapeworks::MeshDomain::GetDomainType","title":"function GetDomainType"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getconstraints","text":"inline std :: shared_ptr < shapeworks :: Constraints > GetConstraints () const","title":"function GetConstraints"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-getpositionaftersplit","text":"inline virtual PointType GetPositionAfterSplit ( const PointType & pt , const VectorDoubleType & local_direction , const VectorDoubleType & global_direction , double epsilon ) const Reimplemented by : shapeworks::ContourDomain::GetPositionAfterSplit","title":"function GetPositionAfterSplit"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-setdomainid","text":"inline void SetDomainID ( int id )","title":"function SetDomainID"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-setdomainname","text":"inline void SetDomainName ( std :: string name )","title":"function SetDomainName"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-particledomain","text":"inline ParticleDomain ()","title":"function ParticleDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#function-particledomain_1","text":"inline virtual ~ ParticleDomain ()","title":"function ~ParticleDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#variable-m_fixeddomain","text":"bool m_FixedDomain { true };","title":"variable m_FixedDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#variable-m_domainid","text":"int m_DomainID { -1 };","title":"variable m_DomainID"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#variable-m_domainname","text":"std :: string m_DomainName ;","title":"variable m_DomainName"},{"location":"api/Classes/classshapeworks_1_1ParticleDomain.html#variable-constraints","text":"std :: shared_ptr < shapeworks :: Constraints > constraints ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable constraints"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html","text":"shapeworks::ParticleEvent Inherits from itk::EventObject Public Types Name typedef ParticleEvent Self Public Functions Name ParticleEvent () virtual ~ParticleEvent () ParticleEvent (const ParticleEvent & v) const ParticleEvent & operator= (const ParticleEvent & v) virtual const char * GetEventName () const virtual bool CheckEvent (const ::itk::EventObject * e) const ::itk::EventObject * MakeObject () const void SetPositionIndex (int i) int GetPositionIndex () const void SetDomainIndex (int i) int GetDomainIndex () const Public Types Documentation typedef Self typedef ParticleEvent shapeworks :: ParticleEvent :: Self ; Public Functions Documentation function ParticleEvent inline ParticleEvent () function ~ParticleEvent inline virtual ~ ParticleEvent () function ParticleEvent inline ParticleEvent ( const ParticleEvent & v ) Copy constructor and operator= function operator= inline const ParticleEvent & operator = ( const ParticleEvent & v ) function GetEventName inline virtual const char * GetEventName () const Standard ITK event members. function CheckEvent inline virtual bool CheckEvent ( const :: itk :: EventObject * e ) const function MakeObject inline :: itk :: EventObject * MakeObject () const function SetPositionIndex inline void SetPositionIndex ( int i ) Get/Set the index value. function GetPositionIndex inline int GetPositionIndex () const function SetDomainIndex inline void SetDomainIndex ( int i ) Get/Set the Domain index value. function GetDomainIndex inline int GetDomainIndex () const Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleEvent"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#shapeworksparticleevent","text":"Inherits from itk::EventObject","title":"shapeworks::ParticleEvent"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#public-types","text":"Name typedef ParticleEvent Self","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#public-functions","text":"Name ParticleEvent () virtual ~ParticleEvent () ParticleEvent (const ParticleEvent & v) const ParticleEvent & operator= (const ParticleEvent & v) virtual const char * GetEventName () const virtual bool CheckEvent (const ::itk::EventObject * e) const ::itk::EventObject * MakeObject () const void SetPositionIndex (int i) int GetPositionIndex () const void SetDomainIndex (int i) int GetDomainIndex () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#typedef-self","text":"typedef ParticleEvent shapeworks :: ParticleEvent :: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-particleevent","text":"inline ParticleEvent ()","title":"function ParticleEvent"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-particleevent_1","text":"inline virtual ~ ParticleEvent ()","title":"function ~ParticleEvent"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-particleevent_2","text":"inline ParticleEvent ( const ParticleEvent & v ) Copy constructor and operator=","title":"function ParticleEvent"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-operator","text":"inline const ParticleEvent & operator = ( const ParticleEvent & v )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-geteventname","text":"inline virtual const char * GetEventName () const Standard ITK event members.","title":"function GetEventName"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-checkevent","text":"inline virtual bool CheckEvent ( const :: itk :: EventObject * e ) const","title":"function CheckEvent"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-makeobject","text":"inline :: itk :: EventObject * MakeObject () const","title":"function MakeObject"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-setpositionindex","text":"inline void SetPositionIndex ( int i ) Get/Set the index value.","title":"function SetPositionIndex"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-getpositionindex","text":"inline int GetPositionIndex () const","title":"function GetPositionIndex"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-setdomainindex","text":"inline void SetDomainIndex ( int i ) Get/Set the Domain index value.","title":"function SetDomainIndex"},{"location":"api/Classes/classshapeworks_1_1ParticleEvent.html#function-getdomainindex","text":"inline int GetDomainIndex () const Updated on 2023-10-24 at 22:16:01 +0000","title":"function GetDomainIndex"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html","text":"shapeworks::ParticleGaussianModeWriter More... Inherits from itk::DataObject Public Types Name typedef ParticleGaussianModeWriter Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef DataObject Superclass typedef ParticleSystem ParticleSystemType typedef LegacyShapeMatrix ShapeMatrixType typedef ShapeMatrixType::DataType DataType typedef ParticleSystemType::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type Public Functions Name itkTypeMacro ( ParticleGaussianModeWriter , DataObject ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void Update () const int GetNumberOfModes () const void SetNumberOfModes (int b) void SetShapeMatrix ( ShapeMatrixType * s) ShapeMatrixType * GetShapeMatrix () const ShapeMatrixType * GetShapeMatrix () const void SetFileName (const std::string & s) void SetFileName (const char * s) const std::string & GetFileName () const Protected Functions Name ParticleGaussianModeWriter () virtual ~ParticleGaussianModeWriter () void operator= (const ParticleGaussianModeWriter & ) ParticleGaussianModeWriter (const ParticleGaussianModeWriter & ) Protected Attributes Name ShapeMatrixType::Pointer m_ShapeMatrix int m_NumberOfModes std::string m_FileName Detailed Description template < unsigned int VDimension > class shapeworks :: ParticleGaussianModeWriter ; Public Types Documentation typedef Self typedef ParticleGaussianModeWriter shapeworks :: ParticleGaussianModeWriter < VDimension >:: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: ParticleGaussianModeWriter < VDimension >:: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: ParticleGaussianModeWriter < VDimension >:: ConstPointer ; typedef Superclass typedef DataObject shapeworks :: ParticleGaussianModeWriter < VDimension >:: Superclass ; typedef ParticleSystemType typedef ParticleSystem shapeworks :: ParticleGaussianModeWriter < VDimension >:: ParticleSystemType ; Type of particle system and associated classes. typedef ShapeMatrixType typedef LegacyShapeMatrix shapeworks :: ParticleGaussianModeWriter < VDimension >:: ShapeMatrixType ; typedef DataType typedef ShapeMatrixType :: DataType shapeworks :: ParticleGaussianModeWriter < VDimension >:: DataType ; typedef PointType typedef ParticleSystemType :: PointType shapeworks :: ParticleGaussianModeWriter < VDimension >:: PointType ; Vector & Point types. typedef vnl_vector_type typedef vnl_vector < DataType > shapeworks :: ParticleGaussianModeWriter < VDimension >:: vnl_vector_type ; typedef vnl_matrix_type typedef vnl_matrix < DataType > shapeworks :: ParticleGaussianModeWriter < VDimension >:: vnl_matrix_type ; Public Functions Documentation function itkTypeMacro itkTypeMacro ( ParticleGaussianModeWriter , DataObject ) function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function Update void Update () const Write the first n modes to +- 3 std dev and the mean of the model described by the covariance matrix. function GetNumberOfModes inline int GetNumberOfModes () const function SetNumberOfModes inline void SetNumberOfModes ( int b ) function SetShapeMatrix inline void SetShapeMatrix ( ShapeMatrixType * s ) Access the shape matrix. function GetShapeMatrix inline ShapeMatrixType * GetShapeMatrix () function GetShapeMatrix inline const ShapeMatrixType * GetShapeMatrix () const function SetFileName inline void SetFileName ( const std :: string & s ) Set/Get the filename prefix. function SetFileName inline void SetFileName ( const char * s ) function GetFileName inline const std :: string & GetFileName () const Protected Functions Documentation function ParticleGaussianModeWriter inline ParticleGaussianModeWriter () function ~ParticleGaussianModeWriter inline virtual ~ ParticleGaussianModeWriter () function operator= void operator = ( const ParticleGaussianModeWriter & ) function ParticleGaussianModeWriter ParticleGaussianModeWriter ( const ParticleGaussianModeWriter & ) Protected Attributes Documentation variable m_ShapeMatrix ShapeMatrixType :: Pointer m_ShapeMatrix ; variable m_NumberOfModes int m_NumberOfModes ; variable m_FileName std :: string m_FileName ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleGaussianModeWriter"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#shapeworksparticlegaussianmodewriter","text":"More... Inherits from itk::DataObject","title":"shapeworks::ParticleGaussianModeWriter"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#public-types","text":"Name typedef ParticleGaussianModeWriter Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef DataObject Superclass typedef ParticleSystem ParticleSystemType typedef LegacyShapeMatrix ShapeMatrixType typedef ShapeMatrixType::DataType DataType typedef ParticleSystemType::PointType PointType typedef vnl_vector< DataType > vnl_vector_type typedef vnl_matrix< DataType > vnl_matrix_type","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#public-functions","text":"Name itkTypeMacro ( ParticleGaussianModeWriter , DataObject ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void Update () const int GetNumberOfModes () const void SetNumberOfModes (int b) void SetShapeMatrix ( ShapeMatrixType * s) ShapeMatrixType * GetShapeMatrix () const ShapeMatrixType * GetShapeMatrix () const void SetFileName (const std::string & s) void SetFileName (const char * s) const std::string & GetFileName () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#protected-functions","text":"Name ParticleGaussianModeWriter () virtual ~ParticleGaussianModeWriter () void operator= (const ParticleGaussianModeWriter & ) ParticleGaussianModeWriter (const ParticleGaussianModeWriter & )","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#protected-attributes","text":"Name ShapeMatrixType::Pointer m_ShapeMatrix int m_NumberOfModes std::string m_FileName","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#detailed-description","text":"template < unsigned int VDimension > class shapeworks :: ParticleGaussianModeWriter ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-self","text":"typedef ParticleGaussianModeWriter shapeworks :: ParticleGaussianModeWriter < VDimension >:: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: ParticleGaussianModeWriter < VDimension >:: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: ParticleGaussianModeWriter < VDimension >:: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-superclass","text":"typedef DataObject shapeworks :: ParticleGaussianModeWriter < VDimension >:: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-particlesystemtype","text":"typedef ParticleSystem shapeworks :: ParticleGaussianModeWriter < VDimension >:: ParticleSystemType ; Type of particle system and associated classes.","title":"typedef ParticleSystemType"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-shapematrixtype","text":"typedef LegacyShapeMatrix shapeworks :: ParticleGaussianModeWriter < VDimension >:: ShapeMatrixType ;","title":"typedef ShapeMatrixType"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-datatype","text":"typedef ShapeMatrixType :: DataType shapeworks :: ParticleGaussianModeWriter < VDimension >:: DataType ;","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-pointtype","text":"typedef ParticleSystemType :: PointType shapeworks :: ParticleGaussianModeWriter < VDimension >:: PointType ; Vector & Point types.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-vnl_vector_type","text":"typedef vnl_vector < DataType > shapeworks :: ParticleGaussianModeWriter < VDimension >:: vnl_vector_type ;","title":"typedef vnl_vector_type"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#typedef-vnl_matrix_type","text":"typedef vnl_matrix < DataType > shapeworks :: ParticleGaussianModeWriter < VDimension >:: vnl_matrix_type ;","title":"typedef vnl_matrix_type"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-itktypemacro","text":"itkTypeMacro ( ParticleGaussianModeWriter , DataObject )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-update","text":"void Update () const Write the first n modes to +- 3 std dev and the mean of the model described by the covariance matrix.","title":"function Update"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-getnumberofmodes","text":"inline int GetNumberOfModes () const","title":"function GetNumberOfModes"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-setnumberofmodes","text":"inline void SetNumberOfModes ( int b )","title":"function SetNumberOfModes"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-setshapematrix","text":"inline void SetShapeMatrix ( ShapeMatrixType * s ) Access the shape matrix.","title":"function SetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-getshapematrix","text":"inline ShapeMatrixType * GetShapeMatrix ()","title":"function GetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-getshapematrix_1","text":"inline const ShapeMatrixType * GetShapeMatrix () const","title":"function GetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-setfilename","text":"inline void SetFileName ( const std :: string & s ) Set/Get the filename prefix.","title":"function SetFileName"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-setfilename_1","text":"inline void SetFileName ( const char * s )","title":"function SetFileName"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-getfilename","text":"inline const std :: string & GetFileName () const","title":"function GetFileName"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-particlegaussianmodewriter","text":"inline ParticleGaussianModeWriter ()","title":"function ParticleGaussianModeWriter"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-particlegaussianmodewriter_1","text":"inline virtual ~ ParticleGaussianModeWriter ()","title":"function ~ParticleGaussianModeWriter"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-operator","text":"void operator = ( const ParticleGaussianModeWriter & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#function-particlegaussianmodewriter_2","text":"ParticleGaussianModeWriter ( const ParticleGaussianModeWriter & )","title":"function ParticleGaussianModeWriter"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#variable-m_shapematrix","text":"ShapeMatrixType :: Pointer m_ShapeMatrix ;","title":"variable m_ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#variable-m_numberofmodes","text":"int m_NumberOfModes ;","title":"variable m_NumberOfModes"},{"location":"api/Classes/classshapeworks_1_1ParticleGaussianModeWriter.html#variable-m_filename","text":"std :: string m_FileName ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_FileName"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html","text":"shapeworks::ParticleGoodBadAssessment Performs good/bad points assessment and reports the bad positions of the particle system. #include Public Types Name using MeanCurvatureContainer < float, 3 > MeanCurvatureCacheType Public Functions Name void set_domains_per_shape (int i) void set_criterion_angle (double a) std::vector< std::vector< int > > run_assessment (const ParticleSystem * ps, MeanCurvatureCacheType * mean_curvature_cache) Public Types Documentation using MeanCurvatureCacheType using shapeworks :: ParticleGoodBadAssessment :: MeanCurvatureCacheType = MeanCurvatureContainer < float , 3 > ; Public Functions Documentation function set_domains_per_shape inline void set_domains_per_shape ( int i ) function set_criterion_angle inline void set_criterion_angle ( double a ) function run_assessment std :: vector < std :: vector < int > > run_assessment ( const ParticleSystem * ps , MeanCurvatureCacheType * mean_curvature_cache ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleGoodBadAssessment"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#shapeworksparticlegoodbadassessment","text":"Performs good/bad points assessment and reports the bad positions of the particle system. #include ","title":"shapeworks::ParticleGoodBadAssessment"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#public-types","text":"Name using MeanCurvatureContainer < float, 3 > MeanCurvatureCacheType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#public-functions","text":"Name void set_domains_per_shape (int i) void set_criterion_angle (double a) std::vector< std::vector< int > > run_assessment (const ParticleSystem * ps, MeanCurvatureCacheType * mean_curvature_cache)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#using-meancurvaturecachetype","text":"using shapeworks :: ParticleGoodBadAssessment :: MeanCurvatureCacheType = MeanCurvatureContainer < float , 3 > ;","title":"using MeanCurvatureCacheType"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#function-set_domains_per_shape","text":"inline void set_domains_per_shape ( int i )","title":"function set_domains_per_shape"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#function-set_criterion_angle","text":"inline void set_criterion_angle ( double a )","title":"function set_criterion_angle"},{"location":"api/Classes/classshapeworks_1_1ParticleGoodBadAssessment.html#function-run_assessment","text":"std :: vector < std :: vector < int > > run_assessment ( const ParticleSystem * ps , MeanCurvatureCacheType * mean_curvature_cache ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function run_assessment"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html","text":"shapeworks::ParticleNeighborhood More... #include Inherits from itk::DataObject Inherited by shapeworks::ParticleRegionNeighborhood Public Types Name typedef ParticleNeighborhood Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef itk::Point< double, VDimension > PointType using shapeworks::ParticleDomain DomainType typedef GenericContainer < PointType > PointContainerType typedef std::vector< ParticlePointIndexPair > PointVectorType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ParticleNeighborhood , DataObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) itkSetObjectMacro (PointContainer , PointContainerType ) itkGetConstObjectMacro (PointContainer , PointContainerType ) virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, double ) const virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , double ) const virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , std::vector< double > & , double ) const virtual unsigned int FindNeighborhoodPoints (const PointType & , int idx, double , PointVectorType & ) const virtual void SetDomain (DomainType::Pointer domain) DomainType::Pointer GetDomain () const virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0) Protected Functions Name ParticleNeighborhood () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ParticleNeighborhood () Public Attributes Name constexpr static unsigned int VDimension Detailed Description class shapeworks :: ParticleNeighborhood ; A ParticleNeighborhood is responsible for computing neighborhoods of particles. Given a point position in a domain, and a neighborhood radius, the ParticleNeighborhood returns a list of points that are neighbors of that point. The base class, ParticleNeighborhood , must be subclassed to provide functionality; the base class will throw an exception when FindNeighborhoodPoints is called. Public Types Documentation typedef Self typedef ParticleNeighborhood shapeworks :: ParticleNeighborhood :: Self ; Standard class typedefs typedef Superclass typedef DataObject shapeworks :: ParticleNeighborhood :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: ParticleNeighborhood :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: ParticleNeighborhood :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: ParticleNeighborhood :: ConstWeakPointer ; typedef PointType typedef itk :: Point < double , VDimension > shapeworks :: ParticleNeighborhood :: PointType ; Point type used to store particle locations. using DomainType using shapeworks :: ParticleNeighborhood :: DomainType = shapeworks :: ParticleDomain ; Domain type. The Domain object provides bounds and distance information. typedef PointContainerType typedef GenericContainer < PointType > shapeworks :: ParticleNeighborhood :: PointContainerType ; Container type for points. This matches the itkParticleSystem container type. typedef PointVectorType typedef std :: vector < ParticlePointIndexPair > shapeworks :: ParticleNeighborhood :: PointVectorType ; Point list (vector) type. This is the type of list returned by FindNeighborhoodPoints. Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleNeighborhood , DataObject ) Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function itkSetObjectMacro itkSetObjectMacro ( PointContainer , PointContainerType ) Set/Get the point container. These are the points parsed by the Neighborhood class when FindNeighborhoodPoints is called. function itkGetConstObjectMacro itkGetConstObjectMacro ( PointContainer , PointContainerType ) function FindNeighborhoodPoints inline virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , double ) const Reimplemented by : shapeworks::ParticleRegionNeighborhood::FindNeighborhoodPoints Compile a list of points that are within a specified radius of a given point. The default implementation will throw an exception. function FindNeighborhoodPoints inline virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , double ) const Reimplemented by : shapeworks::ParticleSurfaceNeighborhood::FindNeighborhoodPoints This method finds neighborhood points as in the previous method, but also computes a vector of weights associated with each of those points. function FindNeighborhoodPoints inline virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , std :: vector < double > & , double ) const Reimplemented by : shapeworks::ParticleSurfaceNeighborhood::FindNeighborhoodPoints This method finds neighborhood points as in the previous method, but also computes a vector of distances associated with each of those points. function FindNeighborhoodPoints inline virtual unsigned int FindNeighborhoodPoints ( const PointType & , int idx , double , PointVectorType & ) const function SetDomain inline virtual void SetDomain ( DomainType :: Pointer domain ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::SetDomain Set the Domain that this neighborhood will use. The Domain object is important because it defines bounds and distance measures. function GetDomain inline DomainType :: Pointer GetDomain () const function AddPosition inline virtual void AddPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::AddPosition For efficiency, itkNeighborhoods are not necessarily observers of itkParticleSystem, but have specific methods invoked for various events. AddPosition is called by itkParticleSystem when a particle location is added. SetPosition is called when a particle location is set. RemovePosition is called when a particle location is removed. function SetPosition inline virtual void SetPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::SetPosition function RemovePosition inline virtual void RemovePosition ( unsigned int idx , int threadId = 0 ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::RemovePosition Protected Functions Documentation function ParticleNeighborhood inline ParticleNeighborhood () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function ~ParticleNeighborhood inline virtual ~ ParticleNeighborhood () Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#shapeworksparticleneighborhood","text":"More... #include Inherits from itk::DataObject Inherited by shapeworks::ParticleRegionNeighborhood","title":"shapeworks::ParticleNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#public-types","text":"Name typedef ParticleNeighborhood Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef itk::Point< double, VDimension > PointType using shapeworks::ParticleDomain DomainType typedef GenericContainer < PointType > PointContainerType typedef std::vector< ParticlePointIndexPair > PointVectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ParticleNeighborhood , DataObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) itkSetObjectMacro (PointContainer , PointContainerType ) itkGetConstObjectMacro (PointContainer , PointContainerType ) virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, double ) const virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , double ) const virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , std::vector< double > & , double ) const virtual unsigned int FindNeighborhoodPoints (const PointType & , int idx, double , PointVectorType & ) const virtual void SetDomain (DomainType::Pointer domain) DomainType::Pointer GetDomain () const virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#protected-functions","text":"Name ParticleNeighborhood () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ParticleNeighborhood ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#detailed-description","text":"class shapeworks :: ParticleNeighborhood ; A ParticleNeighborhood is responsible for computing neighborhoods of particles. Given a point position in a domain, and a neighborhood radius, the ParticleNeighborhood returns a list of points that are neighbors of that point. The base class, ParticleNeighborhood , must be subclassed to provide functionality; the base class will throw an exception when FindNeighborhoodPoints is called.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-self","text":"typedef ParticleNeighborhood shapeworks :: ParticleNeighborhood :: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-superclass","text":"typedef DataObject shapeworks :: ParticleNeighborhood :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: ParticleNeighborhood :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: ParticleNeighborhood :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: ParticleNeighborhood :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-pointtype","text":"typedef itk :: Point < double , VDimension > shapeworks :: ParticleNeighborhood :: PointType ; Point type used to store particle locations.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#using-domaintype","text":"using shapeworks :: ParticleNeighborhood :: DomainType = shapeworks :: ParticleDomain ; Domain type. The Domain object provides bounds and distance information.","title":"using DomainType"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-pointcontainertype","text":"typedef GenericContainer < PointType > shapeworks :: ParticleNeighborhood :: PointContainerType ; Container type for points. This matches the itkParticleSystem container type.","title":"typedef PointContainerType"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#typedef-pointvectortype","text":"typedef std :: vector < ParticlePointIndexPair > shapeworks :: ParticleNeighborhood :: PointVectorType ; Point list (vector) type. This is the type of list returned by FindNeighborhoodPoints.","title":"typedef PointVectorType"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-itktypemacro","text":"itkTypeMacro ( ParticleNeighborhood , DataObject ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-itksetobjectmacro","text":"itkSetObjectMacro ( PointContainer , PointContainerType ) Set/Get the point container. These are the points parsed by the Neighborhood class when FindNeighborhoodPoints is called.","title":"function itkSetObjectMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-itkgetconstobjectmacro","text":"itkGetConstObjectMacro ( PointContainer , PointContainerType )","title":"function itkGetConstObjectMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-findneighborhoodpoints","text":"inline virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , double ) const Reimplemented by : shapeworks::ParticleRegionNeighborhood::FindNeighborhoodPoints Compile a list of points that are within a specified radius of a given point. The default implementation will throw an exception.","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-findneighborhoodpoints_1","text":"inline virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , double ) const Reimplemented by : shapeworks::ParticleSurfaceNeighborhood::FindNeighborhoodPoints This method finds neighborhood points as in the previous method, but also computes a vector of weights associated with each of those points.","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-findneighborhoodpoints_2","text":"inline virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , std :: vector < double > & , double ) const Reimplemented by : shapeworks::ParticleSurfaceNeighborhood::FindNeighborhoodPoints This method finds neighborhood points as in the previous method, but also computes a vector of distances associated with each of those points.","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-findneighborhoodpoints_3","text":"inline virtual unsigned int FindNeighborhoodPoints ( const PointType & , int idx , double , PointVectorType & ) const","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-setdomain","text":"inline virtual void SetDomain ( DomainType :: Pointer domain ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::SetDomain Set the Domain that this neighborhood will use. The Domain object is important because it defines bounds and distance measures.","title":"function SetDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-getdomain","text":"inline DomainType :: Pointer GetDomain () const","title":"function GetDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-addposition","text":"inline virtual void AddPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::AddPosition For efficiency, itkNeighborhoods are not necessarily observers of itkParticleSystem, but have specific methods invoked for various events. AddPosition is called by itkParticleSystem when a particle location is added. SetPosition is called when a particle location is set. RemovePosition is called when a particle location is removed.","title":"function AddPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-setposition","text":"inline virtual void SetPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::SetPosition","title":"function SetPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-removeposition","text":"inline virtual void RemovePosition ( unsigned int idx , int threadId = 0 ) Reimplemented by : shapeworks::ParticleRegionNeighborhood::RemovePosition","title":"function RemovePosition"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-particleneighborhood","text":"inline ParticleNeighborhood ()","title":"function ParticleNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#function-particleneighborhood_1","text":"inline virtual ~ ParticleNeighborhood ()","title":"function ~ParticleNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleNeighborhood.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluation.html","text":"shapeworks::ParticleNormalEvaluation Public Functions Name std::vector< double > evaluate_particle_normals (const Eigen::MatrixXd & particles, const Eigen::MatrixXd & normals) std::vector< bool > threshold_particle_normals (std::vector< double > angles, double max_angle_degrees) Eigen::MatrixXd compute_particle_normals (const Eigen::MatrixXd & particles, std::vector< std::shared_ptr< VtkMeshWrapper > > meshes) Compute normals at particle positions. Public Functions Documentation function evaluate_particle_normals static std :: vector < double > evaluate_particle_normals ( const Eigen :: MatrixXd & particles , const Eigen :: MatrixXd & normals ) function threshold_particle_normals static std :: vector < bool > threshold_particle_normals ( std :: vector < double > angles , double max_angle_degrees ) function compute_particle_normals static Eigen :: MatrixXd compute_particle_normals ( const Eigen :: MatrixXd & particles , std :: vector < std :: shared_ptr < VtkMeshWrapper > > meshes ) Compute normals at particle positions. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleNormalEvaluation"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluation.html#shapeworksparticlenormalevaluation","text":"","title":"shapeworks::ParticleNormalEvaluation"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluation.html#public-functions","text":"Name std::vector< double > evaluate_particle_normals (const Eigen::MatrixXd & particles, const Eigen::MatrixXd & normals) std::vector< bool > threshold_particle_normals (std::vector< double > angles, double max_angle_degrees) Eigen::MatrixXd compute_particle_normals (const Eigen::MatrixXd & particles, std::vector< std::shared_ptr< VtkMeshWrapper > > meshes) Compute normals at particle positions.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluation.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluation.html#function-evaluate_particle_normals","text":"static std :: vector < double > evaluate_particle_normals ( const Eigen :: MatrixXd & particles , const Eigen :: MatrixXd & normals )","title":"function evaluate_particle_normals"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluation.html#function-threshold_particle_normals","text":"static std :: vector < bool > threshold_particle_normals ( std :: vector < double > angles , double max_angle_degrees )","title":"function threshold_particle_normals"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluation.html#function-compute_particle_normals","text":"static Eigen :: MatrixXd compute_particle_normals ( const Eigen :: MatrixXd & particles , std :: vector < std :: shared_ptr < VtkMeshWrapper > > meshes ) Compute normals at particle positions. Updated on 2023-10-24 at 22:16:01 +0000","title":"function compute_particle_normals"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html","text":"shapeworks::ParticleNormalEvaluationJob Inherits from shapeworks::Job , QObject Public Signals Name void result_ready (std::vector< bool > good_bad) Public Functions Name ParticleNormalEvaluationJob (QSharedPointer< Session > session, double max_angle_degrees) virtual void run () override run the job virtual QString name () override get the name of the job std::vector< bool > get_good_bad () Additional inherited members Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Public Signals Documentation signal result_ready void result_ready ( std :: vector < bool > good_bad ) Public Functions Documentation function ParticleNormalEvaluationJob ParticleNormalEvaluationJob ( QSharedPointer < Session > session , double max_angle_degrees ) function run virtual void run () override run the job Reimplements : shapeworks::Job::run function name virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name function get_good_bad std :: vector < bool > get_good_bad () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleNormalEvaluationJob"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#shapeworksparticlenormalevaluationjob","text":"Inherits from shapeworks::Job , QObject","title":"shapeworks::ParticleNormalEvaluationJob"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#public-signals","text":"Name void result_ready (std::vector< bool > good_bad)","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#public-functions","text":"Name ParticleNormalEvaluationJob (QSharedPointer< Session > session, double max_angle_degrees) virtual void run () override run the job virtual QString name () override get the name of the job std::vector< bool > get_good_bad ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#additional-inherited-members","text":"Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#signal-result_ready","text":"void result_ready ( std :: vector < bool > good_bad )","title":"signal result_ready"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#function-particlenormalevaluationjob","text":"ParticleNormalEvaluationJob ( QSharedPointer < Session > session , double max_angle_degrees )","title":"function ParticleNormalEvaluationJob"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#function-run","text":"virtual void run () override run the job Reimplements : shapeworks::Job::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#function-name","text":"virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name","title":"function name"},{"location":"api/Classes/classshapeworks_1_1ParticleNormalEvaluationJob.html#function-get_good_bad","text":"std :: vector < bool > get_good_bad () Updated on 2023-10-24 at 22:16:01 +0000","title":"function get_good_bad"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html","text":"shapeworks::ParticleRegionDomain Inherits from shapeworks::ParticleDomain Inherited by shapeworks::ImageDomain< T > Public Types Name using std::shared_ptr< ParticleRegionDomain > Pointer typedef ParticleDomain::PointType PointType Public Functions Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound) Protected Functions Name ParticleRegionDomain () virtual ~ParticleRegionDomain () void PrintSelf (std::ostream & os, itk::Indent indent) const bool IsInsideBuffer (const PointType & p) const Additional inherited members Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints Public Types Documentation using Pointer using shapeworks :: ParticleRegionDomain :: Pointer = std :: shared_ptr < ParticleRegionDomain > ; Standard class typedefs typedef PointType typedef ParticleDomain :: PointType shapeworks :: ParticleRegionDomain :: PointType ; Point type used to store particle locations. Public Functions Documentation function ApplyConstraints inline virtual bool ApplyConstraints ( PointType & p ) const Apply any constraints to the given point location. This method may, for example, implement boundary conditions or restrict points to lie on a surface. This function will clip the point to the boundaries. function GetUpperBound inline virtual const PointType & GetUpperBound () const Reimplements : shapeworks::ParticleDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function GetLowerBound inline virtual const PointType & GetLowerBound () const Reimplements : shapeworks::ParticleDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree . function SetUpperBound inline void SetUpperBound ( const PointType _UpperBound ) function SetLowerBound inline void SetLowerBound ( const PointType _LowerBound ) function SetRegion inline void SetRegion ( const PointType & lowerBound , const PointType & upperBound ) Protected Functions Documentation function ParticleRegionDomain inline ParticleRegionDomain () function ~ParticleRegionDomain inline virtual ~ ParticleRegionDomain () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function IsInsideBuffer inline bool IsInsideBuffer ( const PointType & p ) const Check whether the point p may be sampled in this domain. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleRegionDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#shapeworksparticleregiondomain","text":"Inherits from shapeworks::ParticleDomain Inherited by shapeworks::ImageDomain< T >","title":"shapeworks::ParticleRegionDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#public-types","text":"Name using std::shared_ptr< ParticleRegionDomain > Pointer typedef ParticleDomain::PointType PointType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#public-functions","text":"Name virtual bool ApplyConstraints ( PointType & p) const virtual const PointType & GetUpperBound () const virtual const PointType & GetLowerBound () const void SetUpperBound (const PointType _UpperBound) void SetLowerBound (const PointType _LowerBound) void SetRegion (const PointType & lowerBound, const PointType & upperBound)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#protected-functions","text":"Name ParticleRegionDomain () virtual ~ParticleRegionDomain () void PrintSelf (std::ostream & os, itk::Indent indent) const bool IsInsideBuffer (const PointType & p) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#additional-inherited-members","text":"Public Types inherited from shapeworks::ParticleDomain Name using vnl_matrix_fixed< float, 3, 3 > GradNType using vnl_vector_fixed< double, 3 > VectorDoubleType using vnl_vector_fixed< float, 3 > VectorFloatType Public Functions inherited from shapeworks::ParticleDomain Name virtual PointType UpdateParticlePosition (const PointType & point, int idx, VectorDoubleType & update) const =0 virtual void InvalidateParticlePosition (int idx) const virtual VectorDoubleType ProjectVectorToSurfaceTangent (VectorDoubleType & gradE, const PointType & pos, int idx) const =0 virtual VectorFloatType SampleGradientAtPoint (const PointType & point, int idx) const =0 virtual VectorFloatType SampleNormalAtPoint (const PointType & point, int idx) const =0 virtual GradNType SampleGradNAtPoint (const PointType & p, int idx) const =0 virtual double Distance (const PointType & a, int idx_a, const PointType & b, int idx_b, VectorDoubleType * out_grad =nullptr) const virtual double SquaredDistance (const PointType & a, int idx_a, const PointType & b, int idx_b) const virtual bool IsWithinDistance (const PointType & a, int idx_a, const PointType & b, int idx_b, double test_dist, double & distance) const virtual double GetCurvature (const PointType & p, int idx) const =0 virtual double GetSurfaceMeanCurvature () const =0 virtual double GetSurfaceStdDevCurvature () const =0 virtual PointType GetZeroCrossingPoint () const =0 virtual double GetSurfaceArea () const =0 virtual PointType GetValidLocationNear ( PointType p) const =0 virtual double GetMaxDiameter () const =0 virtual void DeleteImages () =0 virtual void DeletePartialDerivativeImages () =0 virtual void UpdateZeroCrossingPoint () =0 bool IsDomainFixed () const virtual shapeworks::DomainType GetDomainType () const =0 std::shared_ptr< shapeworks::Constraints > GetConstraints () const virtual PointType GetPositionAfterSplit (const PointType & pt, const VectorDoubleType & local_direction, const VectorDoubleType & global_direction, double epsilon) const void SetDomainID (int id) void SetDomainName (std::string name) Protected Functions inherited from shapeworks::ParticleDomain Name ParticleDomain () virtual ~ParticleDomain () Protected Attributes inherited from shapeworks::ParticleDomain Name bool m_FixedDomain int m_DomainID std::string m_DomainName std::shared_ptr< shapeworks::Constraints > constraints","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#using-pointer","text":"using shapeworks :: ParticleRegionDomain :: Pointer = std :: shared_ptr < ParticleRegionDomain > ; Standard class typedefs","title":"using Pointer"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#typedef-pointtype","text":"typedef ParticleDomain :: PointType shapeworks :: ParticleRegionDomain :: PointType ; Point type used to store particle locations.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-applyconstraints","text":"inline virtual bool ApplyConstraints ( PointType & p ) const Apply any constraints to the given point location. This method may, for example, implement boundary conditions or restrict points to lie on a surface. This function will clip the point to the boundaries.","title":"function ApplyConstraints"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-getupperbound","text":"inline virtual const PointType & GetUpperBound () const Reimplements : shapeworks::ParticleDomain::GetUpperBound Gets the maximum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetUpperBound"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-getlowerbound","text":"inline virtual const PointType & GetLowerBound () const Reimplements : shapeworks::ParticleDomain::GetLowerBound Gets the minimum x, y, z values of the bounding box for the domain. This is used for setting up the PowerOfTwoPointTree .","title":"function GetLowerBound"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-setupperbound","text":"inline void SetUpperBound ( const PointType _UpperBound )","title":"function SetUpperBound"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-setlowerbound","text":"inline void SetLowerBound ( const PointType _LowerBound )","title":"function SetLowerBound"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-setregion","text":"inline void SetRegion ( const PointType & lowerBound , const PointType & upperBound )","title":"function SetRegion"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-particleregiondomain","text":"inline ParticleRegionDomain ()","title":"function ParticleRegionDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-particleregiondomain_1","text":"inline virtual ~ ParticleRegionDomain ()","title":"function ~ParticleRegionDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionDomain.html#function-isinsidebuffer","text":"inline bool IsInsideBuffer ( const PointType & p ) const Check whether the point p may be sampled in this domain. Updated on 2023-10-24 at 22:16:01 +0000","title":"function IsInsideBuffer"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html","text":"shapeworks::ParticleRegionNeighborhood More... #include Inherits from shapeworks::ParticleNeighborhood , itk::DataObject Inherited by shapeworks::ParticleSurfaceNeighborhood Protected Classes Name struct IteratorNodePair Public Types Name typedef ParticleRegionNeighborhood Self typedef ParticleNeighborhood Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer using ParticleDomain DomainType typedef Superclass::PointType PointType typedef Superclass::PointContainerType PointContainerType typedef Superclass::PointVectorType PointVectorType typedef PowerOfTwoPointTree PointTreeType Protected Types Name typedef GenericContainer < IteratorNodePair > IteratorMapType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ParticleRegionNeighborhood , ParticleNeighborhood ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, double ) const virtual void SetDomain (DomainType::Pointer p) override itkSetMacro (TreeLevels , unsigned int ) itkGetMacro (TreeLevels , unsigned int ) void PrintSelf (std::ostream & os, itk::Indent indent) const virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0) Protected Functions Name ParticleRegionNeighborhood () virtual ~ParticleRegionNeighborhood () Public Attributes Name constexpr static unsigned int VDimension Protected Attributes Name PointTreeType::Pointer m_Tree IteratorMapType::Pointer m_IteratorMap unsigned int m_TreeLevels Additional inherited members Public Functions inherited from shapeworks::ParticleNeighborhood Name itkSetObjectMacro (PointContainer , PointContainerType ) itkGetConstObjectMacro (PointContainer , PointContainerType ) DomainType::Pointer GetDomain () const Protected Functions inherited from shapeworks::ParticleNeighborhood Name ParticleNeighborhood () virtual ~ParticleNeighborhood () Detailed Description class shapeworks :: ParticleRegionNeighborhood ; ParticleRegionNeighborhood is a general purpose neighborhood object that computes neighborhoods based on distance from a point. It requires a domain that provides bounds information and a distance metric. This class uses a PowerOfTwoPointTree to cache point and index values so that FindNeighborhoodPoints is somewhat optimized. Public Types Documentation typedef Self typedef ParticleRegionNeighborhood shapeworks :: ParticleRegionNeighborhood :: Self ; Standard class typedefs typedef Superclass typedef ParticleNeighborhood shapeworks :: ParticleRegionNeighborhood :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: ParticleRegionNeighborhood :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: ParticleRegionNeighborhood :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: ParticleRegionNeighborhood :: ConstWeakPointer ; using DomainType using shapeworks :: ParticleRegionNeighborhood :: DomainType = ParticleDomain ; typedef PointType typedef Superclass :: PointType shapeworks :: ParticleRegionNeighborhood :: PointType ; Inherited typedefs from parent class. typedef PointContainerType typedef Superclass :: PointContainerType shapeworks :: ParticleRegionNeighborhood :: PointContainerType ; typedef PointVectorType typedef Superclass :: PointVectorType shapeworks :: ParticleRegionNeighborhood :: PointVectorType ; typedef PointTreeType typedef PowerOfTwoPointTree shapeworks :: ParticleRegionNeighborhood :: PointTreeType ; PowerOfTwoTree type used to sort points according to location. Protected Types Documentation typedef IteratorMapType typedef GenericContainer < IteratorNodePair > shapeworks :: ParticleRegionNeighborhood :: IteratorMapType ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleRegionNeighborhood , ParticleNeighborhood ) Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function FindNeighborhoodPoints virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , double ) const Reimplements : shapeworks::ParticleNeighborhood::FindNeighborhoodPoints Compile a list of points that are within a specified radius of a given point. This implementation uses a PowerOfTwoTree to sort points according to location. function SetDomain virtual void SetDomain ( DomainType :: Pointer p ) override Reimplements : shapeworks::ParticleNeighborhood::SetDomain Override SetDomain so that we can grab the region extent info and construct our tree. function itkSetMacro itkSetMacro ( TreeLevels , unsigned int ) Set/Get the number of levels in the sorting tree. function itkGetMacro itkGetMacro ( TreeLevels , unsigned int ) function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function AddPosition virtual void AddPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplements : shapeworks::ParticleNeighborhood::AddPosition For efficiency, itkNeighborhoods are not necessarily observers of itkParticleSystem, but have specific methods invoked for various events. AddPosition is called by itkParticleSystem when a particle location is added. SetPosition is called when a particle location is set. RemovePosition is called when a particle location is removed. function SetPosition virtual void SetPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplements : shapeworks::ParticleNeighborhood::SetPosition function RemovePosition virtual void RemovePosition ( unsigned int idx , int threadId = 0 ) Reimplements : shapeworks::ParticleNeighborhood::RemovePosition Protected Functions Documentation function ParticleRegionNeighborhood inline ParticleRegionNeighborhood () function ~ParticleRegionNeighborhood inline virtual ~ ParticleRegionNeighborhood () Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Protected Attributes Documentation variable m_Tree PointTreeType :: Pointer m_Tree ; variable m_IteratorMap IteratorMapType :: Pointer m_IteratorMap ; variable m_TreeLevels unsigned int m_TreeLevels ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleRegionNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#shapeworksparticleregionneighborhood","text":"More... #include Inherits from shapeworks::ParticleNeighborhood , itk::DataObject Inherited by shapeworks::ParticleSurfaceNeighborhood","title":"shapeworks::ParticleRegionNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#protected-classes","text":"Name struct IteratorNodePair","title":"Protected Classes"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#public-types","text":"Name typedef ParticleRegionNeighborhood Self typedef ParticleNeighborhood Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer using ParticleDomain DomainType typedef Superclass::PointType PointType typedef Superclass::PointContainerType PointContainerType typedef Superclass::PointVectorType PointVectorType typedef PowerOfTwoPointTree PointTreeType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#protected-types","text":"Name typedef GenericContainer < IteratorNodePair > IteratorMapType","title":"Protected Types"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ParticleRegionNeighborhood , ParticleNeighborhood ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, double ) const virtual void SetDomain (DomainType::Pointer p) override itkSetMacro (TreeLevels , unsigned int ) itkGetMacro (TreeLevels , unsigned int ) void PrintSelf (std::ostream & os, itk::Indent indent) const virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#protected-functions","text":"Name ParticleRegionNeighborhood () virtual ~ParticleRegionNeighborhood ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#protected-attributes","text":"Name PointTreeType::Pointer m_Tree IteratorMapType::Pointer m_IteratorMap unsigned int m_TreeLevels","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::ParticleNeighborhood Name itkSetObjectMacro (PointContainer , PointContainerType ) itkGetConstObjectMacro (PointContainer , PointContainerType ) DomainType::Pointer GetDomain () const Protected Functions inherited from shapeworks::ParticleNeighborhood Name ParticleNeighborhood () virtual ~ParticleNeighborhood ()","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#detailed-description","text":"class shapeworks :: ParticleRegionNeighborhood ; ParticleRegionNeighborhood is a general purpose neighborhood object that computes neighborhoods based on distance from a point. It requires a domain that provides bounds information and a distance metric. This class uses a PowerOfTwoPointTree to cache point and index values so that FindNeighborhoodPoints is somewhat optimized.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-self","text":"typedef ParticleRegionNeighborhood shapeworks :: ParticleRegionNeighborhood :: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-superclass","text":"typedef ParticleNeighborhood shapeworks :: ParticleRegionNeighborhood :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: ParticleRegionNeighborhood :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: ParticleRegionNeighborhood :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: ParticleRegionNeighborhood :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#using-domaintype","text":"using shapeworks :: ParticleRegionNeighborhood :: DomainType = ParticleDomain ;","title":"using DomainType"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-pointtype","text":"typedef Superclass :: PointType shapeworks :: ParticleRegionNeighborhood :: PointType ; Inherited typedefs from parent class.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-pointcontainertype","text":"typedef Superclass :: PointContainerType shapeworks :: ParticleRegionNeighborhood :: PointContainerType ;","title":"typedef PointContainerType"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-pointvectortype","text":"typedef Superclass :: PointVectorType shapeworks :: ParticleRegionNeighborhood :: PointVectorType ;","title":"typedef PointVectorType"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-pointtreetype","text":"typedef PowerOfTwoPointTree shapeworks :: ParticleRegionNeighborhood :: PointTreeType ; PowerOfTwoTree type used to sort points according to location.","title":"typedef PointTreeType"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#protected-types-documentation","text":"","title":"Protected Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#typedef-iteratormaptype","text":"typedef GenericContainer < IteratorNodePair > shapeworks :: ParticleRegionNeighborhood :: IteratorMapType ;","title":"typedef IteratorMapType"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-itktypemacro","text":"itkTypeMacro ( ParticleRegionNeighborhood , ParticleNeighborhood ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-findneighborhoodpoints","text":"virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , double ) const Reimplements : shapeworks::ParticleNeighborhood::FindNeighborhoodPoints Compile a list of points that are within a specified radius of a given point. This implementation uses a PowerOfTwoTree to sort points according to location.","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-setdomain","text":"virtual void SetDomain ( DomainType :: Pointer p ) override Reimplements : shapeworks::ParticleNeighborhood::SetDomain Override SetDomain so that we can grab the region extent info and construct our tree.","title":"function SetDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-itksetmacro","text":"itkSetMacro ( TreeLevels , unsigned int ) Set/Get the number of levels in the sorting tree.","title":"function itkSetMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-itkgetmacro","text":"itkGetMacro ( TreeLevels , unsigned int )","title":"function itkGetMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-addposition","text":"virtual void AddPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplements : shapeworks::ParticleNeighborhood::AddPosition For efficiency, itkNeighborhoods are not necessarily observers of itkParticleSystem, but have specific methods invoked for various events. AddPosition is called by itkParticleSystem when a particle location is added. SetPosition is called when a particle location is set. RemovePosition is called when a particle location is removed.","title":"function AddPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-setposition","text":"virtual void SetPosition ( const PointType & p , unsigned int idx , int threadId = 0 ) Reimplements : shapeworks::ParticleNeighborhood::SetPosition","title":"function SetPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-removeposition","text":"virtual void RemovePosition ( unsigned int idx , int threadId = 0 ) Reimplements : shapeworks::ParticleNeighborhood::RemovePosition","title":"function RemovePosition"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-particleregionneighborhood","text":"inline ParticleRegionNeighborhood ()","title":"function ParticleRegionNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#function-particleregionneighborhood_1","text":"inline virtual ~ ParticleRegionNeighborhood ()","title":"function ~ParticleRegionNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#variable-m_tree","text":"PointTreeType :: Pointer m_Tree ;","title":"variable m_Tree"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#variable-m_iteratormap","text":"IteratorMapType :: Pointer m_IteratorMap ;","title":"variable m_IteratorMap"},{"location":"api/Classes/classshapeworks_1_1ParticleRegionNeighborhood.html#variable-m_treelevels","text":"unsigned int m_TreeLevels ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable m_TreeLevels"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html","text":"shapeworks::ParticleShapeStatistics More... #include Public Functions Name ParticleShapeStatistics () ParticleShapeStatistics (std::shared_ptr< Project > project) ~ParticleShapeStatistics () int DoPCA (std::vector< std::vector< Point > > global_pts, int domainsPerShape =1) int DoPCA ( ParticleSystemEvaluation particleSystem, int domainsPerShape =1) itkStaticConstMacro (Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. int ImportPoints (std::vector< Eigen::VectorXd > points, std::vector< int > group_ids) Loads a set of point files and pre-computes some statistics. void ComputeMultiLevelAnalysisStatistics (std::vector< Eigen::VectorXd > points, unsigned int dps) Loads a set of point files and pre-computes statistics for multi-level analysis. int ComputeShapeDevModesForMca () Compute shape variations for MLCA. int ComputeRelPoseModesForMca () Compute pose variations for MLCA. void SetNumberOfParticlesArray (const std::vector< int > & num_particles_array) Set number of particles per domain/object (required for multi-level analysis) int ReadPointFiles (const std::string & s) Loads a set of point files and pre-computes some statistics. int ReloadPointFiles () Reloads a set of point files and recomputes some statistics. int WriteCSVFile (const std::string & s) Writes a text file in comma-separated format. Suitable for reading into excel or R or Matlab for analysis. int WriteCSVFile2 (const std::string & s) int ComputeModes () Computes PCA modes from the set of correspondence mode positions. Requires that ReadPointFiles be called first. int get_num_modes () const Return the number of modes. int PrincipalComponentProjections () int FisherLinearDiscriminant (unsigned int numModes) Computes fishers linear discriminant line for best group separation. int SampleSize () const Returns the sample size. int Group1SampleSize () const int Group2SampleSize () const int NumberOfDimensions () const Returns the number of dimensions (this is number of points times Dimension) int NumberOfObjects () Return Number of objects present in Multi-Object Shape Structure. std::vector< int > NumberOfPointsArray () int GroupID (unsigned int i) const Returns the group ids. const std::vector< int > & GroupID () const const Eigen::MatrixXd & Eigenvectors () const Returns the eigenvectors/values. const std::vector< double > & Eigenvalues () const const Eigen::MatrixXd & EigenvectorsRelPose () Returns the eigenvectors/eigenvalues for morphological and relative pose pariations of MLCA. const std::vector< double > & EigenvaluesShapeDev () const Eigen::MatrixXd & EigenvectorsShapeDev () const std::vector< double > & EigenvaluesRelPose () const Eigen::VectorXd & MeanShapeDev () Returns the mean vector of within and between subspace. const Eigen::VectorXd & MeanRelPose () const Eigen::VectorXd & Mean () const Returns the mean shape. const Eigen::VectorXd & Group1Mean () const const Eigen::VectorXd & Group2Mean () const const Eigen::VectorXd & NormalizedGroupDifference () const Returns group2 - group1 mean. const Eigen::VectorXd & GroupDifference () const int ComputeMedianShape (const int ID) double L1Norm (unsigned int a, unsigned int b) Returns the euclidean L1 norm between shape a and b. Eigen::MatrixXd & PCALoadings () Returns the component loadings. const Eigen::VectorXd & FishersLDA () const Returns the Fisher linear discriminant. const Eigen::MatrixXd & ShapeMatrix () const Returns the shape matrix. const Eigen::MatrixXd & RecenteredShape () const Returns the shape with the mean subtracted. const std::vector< double > & PercentVarByMode () const int SimpleLinearRegression (const std::vector< double > & y, const std::vector< double > & x, double & a, double & b) const Eigen::VectorXd get_compactness (const std::function< void(float)> & progress_callback =nullptr) const Eigen::VectorXd get_specificity (const std::function< void(float)> & progress_callback =nullptr) const Eigen::VectorXd get_generalization (const std::function< void(float)> & progress_callback =nullptr) const Eigen::MatrixXd get_group1_matrix () const Eigen::MatrixXd get_group2_matrix () const Eigen::MatrixXd & matrix () Public Attributes Name constexpr static int VDimension Detailed Description class shapeworks :: ParticleShapeStatistics ; This class computes various statistics for a set of correspondence positions and group ids. Public Functions Documentation function ParticleShapeStatistics inline ParticleShapeStatistics () function ParticleShapeStatistics ParticleShapeStatistics ( std :: shared_ptr < Project > project ) function ~ParticleShapeStatistics inline ~ ParticleShapeStatistics () function DoPCA int DoPCA ( std :: vector < std :: vector < Point > > global_pts , int domainsPerShape = 1 ) function DoPCA int DoPCA ( ParticleSystemEvaluation particleSystem , int domainsPerShape = 1 ) function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function ImportPoints int ImportPoints ( std :: vector < Eigen :: VectorXd > points , std :: vector < int > group_ids ) Loads a set of point files and pre-computes some statistics. function ComputeMultiLevelAnalysisStatistics void ComputeMultiLevelAnalysisStatistics ( std :: vector < Eigen :: VectorXd > points , unsigned int dps ) Loads a set of point files and pre-computes statistics for multi-level analysis. function ComputeShapeDevModesForMca int ComputeShapeDevModesForMca () Compute shape variations for MLCA. function ComputeRelPoseModesForMca int ComputeRelPoseModesForMca () Compute pose variations for MLCA. function SetNumberOfParticlesArray void SetNumberOfParticlesArray ( const std :: vector < int > & num_particles_array ) Set number of particles per domain/object (required for multi-level analysis) function ReadPointFiles int ReadPointFiles ( const std :: string & s ) Loads a set of point files and pre-computes some statistics. function ReloadPointFiles int ReloadPointFiles () Reloads a set of point files and recomputes some statistics. function WriteCSVFile int WriteCSVFile ( const std :: string & s ) Writes a text file in comma-separated format. Suitable for reading into excel or R or Matlab for analysis. function WriteCSVFile2 int WriteCSVFile2 ( const std :: string & s ) function ComputeModes int ComputeModes () Computes PCA modes from the set of correspondence mode positions. Requires that ReadPointFiles be called first. function get_num_modes int get_num_modes () const Return the number of modes. function PrincipalComponentProjections int PrincipalComponentProjections () Computes the principal component loadings, or projections onto the principal componenent axes for each of the samples. ComputeModes must be called first. function FisherLinearDiscriminant int FisherLinearDiscriminant ( unsigned int numModes ) Computes fishers linear discriminant line for best group separation. function SampleSize inline int SampleSize () const Returns the sample size. function Group1SampleSize inline int Group1SampleSize () const function Group2SampleSize inline int Group2SampleSize () const function NumberOfDimensions inline int NumberOfDimensions () const Returns the number of dimensions (this is number of points times Dimension) function NumberOfObjects inline int NumberOfObjects () Return Number of objects present in Multi-Object Shape Structure. function NumberOfPointsArray inline std :: vector < int > NumberOfPointsArray () function GroupID inline int GroupID ( unsigned int i ) const Returns the group ids. function GroupID inline const std :: vector < int > & GroupID () const function Eigenvectors inline const Eigen :: MatrixXd & Eigenvectors () const Returns the eigenvectors/values. function Eigenvalues inline const std :: vector < double > & Eigenvalues () const function EigenvectorsRelPose inline const Eigen :: MatrixXd & EigenvectorsRelPose () Returns the eigenvectors/eigenvalues for morphological and relative pose pariations of MLCA. function EigenvaluesShapeDev inline const std :: vector < double > & EigenvaluesShapeDev () function EigenvectorsShapeDev inline const Eigen :: MatrixXd & EigenvectorsShapeDev () function EigenvaluesRelPose inline const std :: vector < double > & EigenvaluesRelPose () function MeanShapeDev inline const Eigen :: VectorXd & MeanShapeDev () Returns the mean vector of within and between subspace. function MeanRelPose inline const Eigen :: VectorXd & MeanRelPose () function Mean inline const Eigen :: VectorXd & Mean () const Returns the mean shape. function Group1Mean inline const Eigen :: VectorXd & Group1Mean () const function Group2Mean inline const Eigen :: VectorXd & Group2Mean () const function NormalizedGroupDifference inline const Eigen :: VectorXd & NormalizedGroupDifference () const Returns group2 - group1 mean. function GroupDifference inline const Eigen :: VectorXd & GroupDifference () const function ComputeMedianShape int ComputeMedianShape ( const int ID ) Returns the median shape for the set of shapes with Group ID equal to the integer argument. For example, ComputeMedianShape(0) returns the median shape for the set of shapes with m_groupIDs == 0. The median shape is defined as the shape with the minimum sum of Euclidean L1 norms to all other shapes in that group. Arguments passed to this function are set to the index number of the median shape for Group A and Group B, respectively.*/ function L1Norm double L1Norm ( unsigned int a , unsigned int b ) Returns the euclidean L1 norm between shape a and b. function PCALoadings inline Eigen :: MatrixXd & PCALoadings () Returns the component loadings. function FishersLDA inline const Eigen :: VectorXd & FishersLDA () const Returns the Fisher linear discriminant. function ShapeMatrix inline const Eigen :: MatrixXd & ShapeMatrix () const Returns the shape matrix. function RecenteredShape inline const Eigen :: MatrixXd & RecenteredShape () const Returns the shape with the mean subtracted. function PercentVarByMode inline const std :: vector < double > & PercentVarByMode () const function SimpleLinearRegression int SimpleLinearRegression ( const std :: vector < double > & y , const std :: vector < double > & x , double & a , double & b ) const Computes a simple linear regression of the first list of values with respect to the second y=a + bx. Returns the estimated parameters a & b. Returns 0 on success and -1 on fail.*/ function get_compactness Eigen :: VectorXd get_compactness ( const std :: function < void ( float ) > & progress_callback = nullptr ) const function get_specificity Eigen :: VectorXd get_specificity ( const std :: function < void ( float ) > & progress_callback = nullptr ) const function get_generalization Eigen :: VectorXd get_generalization ( const std :: function < void ( float ) > & progress_callback = nullptr ) const function get_group1_matrix Eigen :: MatrixXd get_group1_matrix () const function get_group2_matrix Eigen :: MatrixXd get_group2_matrix () const function matrix inline Eigen :: MatrixXd & matrix () Public Attributes Documentation variable VDimension static constexpr static int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleShapeStatistics"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#shapeworksparticleshapestatistics","text":"More... #include ","title":"shapeworks::ParticleShapeStatistics"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#public-functions","text":"Name ParticleShapeStatistics () ParticleShapeStatistics (std::shared_ptr< Project > project) ~ParticleShapeStatistics () int DoPCA (std::vector< std::vector< Point > > global_pts, int domainsPerShape =1) int DoPCA ( ParticleSystemEvaluation particleSystem, int domainsPerShape =1) itkStaticConstMacro (Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. int ImportPoints (std::vector< Eigen::VectorXd > points, std::vector< int > group_ids) Loads a set of point files and pre-computes some statistics. void ComputeMultiLevelAnalysisStatistics (std::vector< Eigen::VectorXd > points, unsigned int dps) Loads a set of point files and pre-computes statistics for multi-level analysis. int ComputeShapeDevModesForMca () Compute shape variations for MLCA. int ComputeRelPoseModesForMca () Compute pose variations for MLCA. void SetNumberOfParticlesArray (const std::vector< int > & num_particles_array) Set number of particles per domain/object (required for multi-level analysis) int ReadPointFiles (const std::string & s) Loads a set of point files and pre-computes some statistics. int ReloadPointFiles () Reloads a set of point files and recomputes some statistics. int WriteCSVFile (const std::string & s) Writes a text file in comma-separated format. Suitable for reading into excel or R or Matlab for analysis. int WriteCSVFile2 (const std::string & s) int ComputeModes () Computes PCA modes from the set of correspondence mode positions. Requires that ReadPointFiles be called first. int get_num_modes () const Return the number of modes. int PrincipalComponentProjections () int FisherLinearDiscriminant (unsigned int numModes) Computes fishers linear discriminant line for best group separation. int SampleSize () const Returns the sample size. int Group1SampleSize () const int Group2SampleSize () const int NumberOfDimensions () const Returns the number of dimensions (this is number of points times Dimension) int NumberOfObjects () Return Number of objects present in Multi-Object Shape Structure. std::vector< int > NumberOfPointsArray () int GroupID (unsigned int i) const Returns the group ids. const std::vector< int > & GroupID () const const Eigen::MatrixXd & Eigenvectors () const Returns the eigenvectors/values. const std::vector< double > & Eigenvalues () const const Eigen::MatrixXd & EigenvectorsRelPose () Returns the eigenvectors/eigenvalues for morphological and relative pose pariations of MLCA. const std::vector< double > & EigenvaluesShapeDev () const Eigen::MatrixXd & EigenvectorsShapeDev () const std::vector< double > & EigenvaluesRelPose () const Eigen::VectorXd & MeanShapeDev () Returns the mean vector of within and between subspace. const Eigen::VectorXd & MeanRelPose () const Eigen::VectorXd & Mean () const Returns the mean shape. const Eigen::VectorXd & Group1Mean () const const Eigen::VectorXd & Group2Mean () const const Eigen::VectorXd & NormalizedGroupDifference () const Returns group2 - group1 mean. const Eigen::VectorXd & GroupDifference () const int ComputeMedianShape (const int ID) double L1Norm (unsigned int a, unsigned int b) Returns the euclidean L1 norm between shape a and b. Eigen::MatrixXd & PCALoadings () Returns the component loadings. const Eigen::VectorXd & FishersLDA () const Returns the Fisher linear discriminant. const Eigen::MatrixXd & ShapeMatrix () const Returns the shape matrix. const Eigen::MatrixXd & RecenteredShape () const Returns the shape with the mean subtracted. const std::vector< double > & PercentVarByMode () const int SimpleLinearRegression (const std::vector< double > & y, const std::vector< double > & x, double & a, double & b) const Eigen::VectorXd get_compactness (const std::function< void(float)> & progress_callback =nullptr) const Eigen::VectorXd get_specificity (const std::function< void(float)> & progress_callback =nullptr) const Eigen::VectorXd get_generalization (const std::function< void(float)> & progress_callback =nullptr) const Eigen::MatrixXd get_group1_matrix () const Eigen::MatrixXd get_group2_matrix () const Eigen::MatrixXd & matrix ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#public-attributes","text":"Name constexpr static int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#detailed-description","text":"class shapeworks :: ParticleShapeStatistics ; This class computes various statistics for a set of correspondence positions and group ids.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-particleshapestatistics","text":"inline ParticleShapeStatistics ()","title":"function ParticleShapeStatistics"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-particleshapestatistics_1","text":"ParticleShapeStatistics ( std :: shared_ptr < Project > project )","title":"function ParticleShapeStatistics"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-particleshapestatistics_2","text":"inline ~ ParticleShapeStatistics ()","title":"function ~ParticleShapeStatistics"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-dopca","text":"int DoPCA ( std :: vector < std :: vector < Point > > global_pts , int domainsPerShape = 1 )","title":"function DoPCA"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-dopca_1","text":"int DoPCA ( ParticleSystemEvaluation particleSystem , int domainsPerShape = 1 )","title":"function DoPCA"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-importpoints","text":"int ImportPoints ( std :: vector < Eigen :: VectorXd > points , std :: vector < int > group_ids ) Loads a set of point files and pre-computes some statistics.","title":"function ImportPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-computemultilevelanalysisstatistics","text":"void ComputeMultiLevelAnalysisStatistics ( std :: vector < Eigen :: VectorXd > points , unsigned int dps ) Loads a set of point files and pre-computes statistics for multi-level analysis.","title":"function ComputeMultiLevelAnalysisStatistics"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-computeshapedevmodesformca","text":"int ComputeShapeDevModesForMca () Compute shape variations for MLCA.","title":"function ComputeShapeDevModesForMca"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-computerelposemodesformca","text":"int ComputeRelPoseModesForMca () Compute pose variations for MLCA.","title":"function ComputeRelPoseModesForMca"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-setnumberofparticlesarray","text":"void SetNumberOfParticlesArray ( const std :: vector < int > & num_particles_array ) Set number of particles per domain/object (required for multi-level analysis)","title":"function SetNumberOfParticlesArray"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-readpointfiles","text":"int ReadPointFiles ( const std :: string & s ) Loads a set of point files and pre-computes some statistics.","title":"function ReadPointFiles"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-reloadpointfiles","text":"int ReloadPointFiles () Reloads a set of point files and recomputes some statistics.","title":"function ReloadPointFiles"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-writecsvfile","text":"int WriteCSVFile ( const std :: string & s ) Writes a text file in comma-separated format. Suitable for reading into excel or R or Matlab for analysis.","title":"function WriteCSVFile"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-writecsvfile2","text":"int WriteCSVFile2 ( const std :: string & s )","title":"function WriteCSVFile2"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-computemodes","text":"int ComputeModes () Computes PCA modes from the set of correspondence mode positions. Requires that ReadPointFiles be called first.","title":"function ComputeModes"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-get_num_modes","text":"int get_num_modes () const Return the number of modes.","title":"function get_num_modes"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-principalcomponentprojections","text":"int PrincipalComponentProjections () Computes the principal component loadings, or projections onto the principal componenent axes for each of the samples. ComputeModes must be called first.","title":"function PrincipalComponentProjections"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-fisherlineardiscriminant","text":"int FisherLinearDiscriminant ( unsigned int numModes ) Computes fishers linear discriminant line for best group separation.","title":"function FisherLinearDiscriminant"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-samplesize","text":"inline int SampleSize () const Returns the sample size.","title":"function SampleSize"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-group1samplesize","text":"inline int Group1SampleSize () const","title":"function Group1SampleSize"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-group2samplesize","text":"inline int Group2SampleSize () const","title":"function Group2SampleSize"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-numberofdimensions","text":"inline int NumberOfDimensions () const Returns the number of dimensions (this is number of points times Dimension)","title":"function NumberOfDimensions"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-numberofobjects","text":"inline int NumberOfObjects () Return Number of objects present in Multi-Object Shape Structure.","title":"function NumberOfObjects"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-numberofpointsarray","text":"inline std :: vector < int > NumberOfPointsArray ()","title":"function NumberOfPointsArray"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-groupid","text":"inline int GroupID ( unsigned int i ) const Returns the group ids.","title":"function GroupID"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-groupid_1","text":"inline const std :: vector < int > & GroupID () const","title":"function GroupID"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-eigenvectors","text":"inline const Eigen :: MatrixXd & Eigenvectors () const Returns the eigenvectors/values.","title":"function Eigenvectors"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-eigenvalues","text":"inline const std :: vector < double > & Eigenvalues () const","title":"function Eigenvalues"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-eigenvectorsrelpose","text":"inline const Eigen :: MatrixXd & EigenvectorsRelPose () Returns the eigenvectors/eigenvalues for morphological and relative pose pariations of MLCA.","title":"function EigenvectorsRelPose"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-eigenvaluesshapedev","text":"inline const std :: vector < double > & EigenvaluesShapeDev ()","title":"function EigenvaluesShapeDev"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-eigenvectorsshapedev","text":"inline const Eigen :: MatrixXd & EigenvectorsShapeDev ()","title":"function EigenvectorsShapeDev"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-eigenvaluesrelpose","text":"inline const std :: vector < double > & EigenvaluesRelPose ()","title":"function EigenvaluesRelPose"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-meanshapedev","text":"inline const Eigen :: VectorXd & MeanShapeDev () Returns the mean vector of within and between subspace.","title":"function MeanShapeDev"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-meanrelpose","text":"inline const Eigen :: VectorXd & MeanRelPose ()","title":"function MeanRelPose"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-mean","text":"inline const Eigen :: VectorXd & Mean () const Returns the mean shape.","title":"function Mean"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-group1mean","text":"inline const Eigen :: VectorXd & Group1Mean () const","title":"function Group1Mean"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-group2mean","text":"inline const Eigen :: VectorXd & Group2Mean () const","title":"function Group2Mean"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-normalizedgroupdifference","text":"inline const Eigen :: VectorXd & NormalizedGroupDifference () const Returns group2 - group1 mean.","title":"function NormalizedGroupDifference"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-groupdifference","text":"inline const Eigen :: VectorXd & GroupDifference () const","title":"function GroupDifference"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-computemedianshape","text":"int ComputeMedianShape ( const int ID ) Returns the median shape for the set of shapes with Group ID equal to the integer argument. For example, ComputeMedianShape(0) returns the median shape for the set of shapes with m_groupIDs == 0. The median shape is defined as the shape with the minimum sum of Euclidean L1 norms to all other shapes in that group. Arguments passed to this function are set to the index number of the median shape for Group A and Group B, respectively.*/","title":"function ComputeMedianShape"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-l1norm","text":"double L1Norm ( unsigned int a , unsigned int b ) Returns the euclidean L1 norm between shape a and b.","title":"function L1Norm"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-pcaloadings","text":"inline Eigen :: MatrixXd & PCALoadings () Returns the component loadings.","title":"function PCALoadings"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-fisherslda","text":"inline const Eigen :: VectorXd & FishersLDA () const Returns the Fisher linear discriminant.","title":"function FishersLDA"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-shapematrix","text":"inline const Eigen :: MatrixXd & ShapeMatrix () const Returns the shape matrix.","title":"function ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-recenteredshape","text":"inline const Eigen :: MatrixXd & RecenteredShape () const Returns the shape with the mean subtracted.","title":"function RecenteredShape"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-percentvarbymode","text":"inline const std :: vector < double > & PercentVarByMode () const","title":"function PercentVarByMode"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-simplelinearregression","text":"int SimpleLinearRegression ( const std :: vector < double > & y , const std :: vector < double > & x , double & a , double & b ) const Computes a simple linear regression of the first list of values with respect to the second y=a + bx. Returns the estimated parameters a & b. Returns 0 on success and -1 on fail.*/","title":"function SimpleLinearRegression"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-get_compactness","text":"Eigen :: VectorXd get_compactness ( const std :: function < void ( float ) > & progress_callback = nullptr ) const","title":"function get_compactness"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-get_specificity","text":"Eigen :: VectorXd get_specificity ( const std :: function < void ( float ) > & progress_callback = nullptr ) const","title":"function get_specificity"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-get_generalization","text":"Eigen :: VectorXd get_generalization ( const std :: function < void ( float ) > & progress_callback = nullptr ) const","title":"function get_generalization"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-get_group1_matrix","text":"Eigen :: MatrixXd get_group1_matrix () const","title":"function get_group1_matrix"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-get_group2_matrix","text":"Eigen :: MatrixXd get_group2_matrix () const","title":"function get_group2_matrix"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#function-matrix","text":"inline Eigen :: MatrixXd & matrix ()","title":"function matrix"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleShapeStatistics.html#variable-vdimension","text":"static constexpr static int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html","text":"shapeworks::ParticleSurfaceNeighborhood More... #include Inherits from shapeworks::ParticleRegionNeighborhood , shapeworks::ParticleNeighborhood , itk::DataObject Public Types Name typedef itk::Image< float, 3 > TImage typedef TImage ImageType typedef ParticleSurfaceNeighborhood Self typedef ParticleRegionNeighborhood Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef ImageType::PixelType NumericType typedef Superclass::PointTreeType PointTreeType typedef vnl_vector_fixed< NumericType, TImage::ImageDimension > GradientVectorType typedef Superclass::PointType PointType typedef Superclass::PointContainerType PointContainerType typedef shapeworks::ImplicitSurfaceDomain < typename TImage::PixelType > DomainType typedef Superclass::PointVectorType PointVectorType Public Functions Name itkStaticConstMacro (Dimension , unsigned int , 3 ) itkNewMacro ( Self ) itkTypeMacro ( ParticleSurfaceNeighborhood , ParticleRegionNeighborhood ) virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , std::vector< double > & , double ) const override virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , double ) const override void SetWeightingEnabled (bool is_enabled) bool IsWeightingEnabled () const void SetForceEuclidean (bool is_enabled) bool IsForceEuclidean () const void PrintSelf (std::ostream & os, itk::Indent indent) const Protected Functions Name ParticleSurfaceNeighborhood () virtual ~ParticleSurfaceNeighborhood () Additional inherited members Protected Classes inherited from shapeworks::ParticleRegionNeighborhood Name struct IteratorNodePair Protected Types inherited from shapeworks::ParticleRegionNeighborhood Name typedef GenericContainer < IteratorNodePair > IteratorMapType Public Functions inherited from shapeworks::ParticleRegionNeighborhood Name virtual void SetDomain (DomainType::Pointer p) override itkSetMacro (TreeLevels , unsigned int ) itkGetMacro (TreeLevels , unsigned int ) virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0) Protected Functions inherited from shapeworks::ParticleRegionNeighborhood Name ParticleRegionNeighborhood () virtual ~ParticleRegionNeighborhood () Public Attributes inherited from shapeworks::ParticleRegionNeighborhood Name constexpr static unsigned int VDimension Protected Attributes inherited from shapeworks::ParticleRegionNeighborhood Name PointTreeType::Pointer m_Tree IteratorMapType::Pointer m_IteratorMap unsigned int m_TreeLevels Public Functions inherited from shapeworks::ParticleNeighborhood Name itkSetObjectMacro (PointContainer , PointContainerType ) itkGetConstObjectMacro (PointContainer , PointContainerType ) virtual void SetDomain (DomainType::Pointer domain) DomainType::Pointer GetDomain () const virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0) Protected Functions inherited from shapeworks::ParticleNeighborhood Name ParticleNeighborhood () virtual ~ParticleNeighborhood () Public Attributes inherited from shapeworks::ParticleNeighborhood Name constexpr static unsigned int VDimension Detailed Description class shapeworks :: ParticleSurfaceNeighborhood ; ParticleSurfaceNeighborhood is a general purpose neighborhood object that computes neighborhoods based on distance from a point. It requires a domain that provides bounds information and a distance metric. This class uses a PowerOfTwoPointTree to cache point and index values so that FindNeighborhoodPoints is somewhat optimized. Public Types Documentation typedef TImage typedef itk :: Image < float , 3 > shapeworks :: ParticleSurfaceNeighborhood :: TImage ; Standard class typedefs typedef ImageType typedef TImage shapeworks :: ParticleSurfaceNeighborhood :: ImageType ; typedef Self typedef ParticleSurfaceNeighborhood shapeworks :: ParticleSurfaceNeighborhood :: Self ; typedef Superclass typedef ParticleRegionNeighborhood shapeworks :: ParticleSurfaceNeighborhood :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: ParticleSurfaceNeighborhood :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: ParticleSurfaceNeighborhood :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: ParticleSurfaceNeighborhood :: ConstWeakPointer ; typedef NumericType typedef ImageType :: PixelType shapeworks :: ParticleSurfaceNeighborhood :: NumericType ; typedef PointTreeType typedef Superclass :: PointTreeType shapeworks :: ParticleSurfaceNeighborhood :: PointTreeType ; typedef GradientVectorType typedef vnl_vector_fixed < NumericType , TImage :: ImageDimension > shapeworks :: ParticleSurfaceNeighborhood :: GradientVectorType ; typedef PointType typedef Superclass :: PointType shapeworks :: ParticleSurfaceNeighborhood :: PointType ; Inherited typedefs from parent class. typedef PointContainerType typedef Superclass :: PointContainerType shapeworks :: ParticleSurfaceNeighborhood :: PointContainerType ; typedef DomainType typedef shapeworks :: ImplicitSurfaceDomain < typename TImage :: PixelType > shapeworks :: ParticleSurfaceNeighborhood :: DomainType ; typedef PointVectorType typedef Superclass :: PointVectorType shapeworks :: ParticleSurfaceNeighborhood :: PointVectorType ; Public Functions Documentation function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , 3 ) Expose the image dimension. function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleSurfaceNeighborhood , ParticleRegionNeighborhood ) Run-time type information (and related methods). function FindNeighborhoodPoints virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , std :: vector < double > & , double ) const override Reimplements : shapeworks::ParticleNeighborhood::FindNeighborhoodPoints Compile a list of points that are within a specified radius of a given point. This implementation uses a PowerOfTwoTree to sort points according to location. function FindNeighborhoodPoints virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , double ) const override Reimplements : shapeworks::ParticleNeighborhood::FindNeighborhoodPoints This method finds neighborhood points as in the previous method, but also computes a vector of weights associated with each of those points. function SetWeightingEnabled inline void SetWeightingEnabled ( bool is_enabled ) function IsWeightingEnabled inline bool IsWeightingEnabled () const function SetForceEuclidean inline void SetForceEuclidean ( bool is_enabled ) function IsForceEuclidean inline bool IsForceEuclidean () const function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Protected Functions Documentation function ParticleSurfaceNeighborhood inline ParticleSurfaceNeighborhood () function ~ParticleSurfaceNeighborhood inline virtual ~ ParticleSurfaceNeighborhood () Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleSurfaceNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#shapeworksparticlesurfaceneighborhood","text":"More... #include Inherits from shapeworks::ParticleRegionNeighborhood , shapeworks::ParticleNeighborhood , itk::DataObject","title":"shapeworks::ParticleSurfaceNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#public-types","text":"Name typedef itk::Image< float, 3 > TImage typedef TImage ImageType typedef ParticleSurfaceNeighborhood Self typedef ParticleRegionNeighborhood Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef ImageType::PixelType NumericType typedef Superclass::PointTreeType PointTreeType typedef vnl_vector_fixed< NumericType, TImage::ImageDimension > GradientVectorType typedef Superclass::PointType PointType typedef Superclass::PointContainerType PointContainerType typedef shapeworks::ImplicitSurfaceDomain < typename TImage::PixelType > DomainType typedef Superclass::PointVectorType PointVectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#public-functions","text":"Name itkStaticConstMacro (Dimension , unsigned int , 3 ) itkNewMacro ( Self ) itkTypeMacro ( ParticleSurfaceNeighborhood , ParticleRegionNeighborhood ) virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , std::vector< double > & , double ) const override virtual PointVectorType FindNeighborhoodPoints (const PointType & , int idx, std::vector< double > & , double ) const override void SetWeightingEnabled (bool is_enabled) bool IsWeightingEnabled () const void SetForceEuclidean (bool is_enabled) bool IsForceEuclidean () const void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#protected-functions","text":"Name ParticleSurfaceNeighborhood () virtual ~ParticleSurfaceNeighborhood ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#additional-inherited-members","text":"Protected Classes inherited from shapeworks::ParticleRegionNeighborhood Name struct IteratorNodePair Protected Types inherited from shapeworks::ParticleRegionNeighborhood Name typedef GenericContainer < IteratorNodePair > IteratorMapType Public Functions inherited from shapeworks::ParticleRegionNeighborhood Name virtual void SetDomain (DomainType::Pointer p) override itkSetMacro (TreeLevels , unsigned int ) itkGetMacro (TreeLevels , unsigned int ) virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0) Protected Functions inherited from shapeworks::ParticleRegionNeighborhood Name ParticleRegionNeighborhood () virtual ~ParticleRegionNeighborhood () Public Attributes inherited from shapeworks::ParticleRegionNeighborhood Name constexpr static unsigned int VDimension Protected Attributes inherited from shapeworks::ParticleRegionNeighborhood Name PointTreeType::Pointer m_Tree IteratorMapType::Pointer m_IteratorMap unsigned int m_TreeLevels Public Functions inherited from shapeworks::ParticleNeighborhood Name itkSetObjectMacro (PointContainer , PointContainerType ) itkGetConstObjectMacro (PointContainer , PointContainerType ) virtual void SetDomain (DomainType::Pointer domain) DomainType::Pointer GetDomain () const virtual void AddPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void SetPosition (const PointType & p, unsigned int idx, int threadId =0) virtual void RemovePosition (unsigned int idx, int threadId =0) Protected Functions inherited from shapeworks::ParticleNeighborhood Name ParticleNeighborhood () virtual ~ParticleNeighborhood () Public Attributes inherited from shapeworks::ParticleNeighborhood Name constexpr static unsigned int VDimension","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#detailed-description","text":"class shapeworks :: ParticleSurfaceNeighborhood ; ParticleSurfaceNeighborhood is a general purpose neighborhood object that computes neighborhoods based on distance from a point. It requires a domain that provides bounds information and a distance metric. This class uses a PowerOfTwoPointTree to cache point and index values so that FindNeighborhoodPoints is somewhat optimized.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-timage","text":"typedef itk :: Image < float , 3 > shapeworks :: ParticleSurfaceNeighborhood :: TImage ; Standard class typedefs","title":"typedef TImage"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-imagetype","text":"typedef TImage shapeworks :: ParticleSurfaceNeighborhood :: ImageType ;","title":"typedef ImageType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-self","text":"typedef ParticleSurfaceNeighborhood shapeworks :: ParticleSurfaceNeighborhood :: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-superclass","text":"typedef ParticleRegionNeighborhood shapeworks :: ParticleSurfaceNeighborhood :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: ParticleSurfaceNeighborhood :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: ParticleSurfaceNeighborhood :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: ParticleSurfaceNeighborhood :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-numerictype","text":"typedef ImageType :: PixelType shapeworks :: ParticleSurfaceNeighborhood :: NumericType ;","title":"typedef NumericType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-pointtreetype","text":"typedef Superclass :: PointTreeType shapeworks :: ParticleSurfaceNeighborhood :: PointTreeType ;","title":"typedef PointTreeType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-gradientvectortype","text":"typedef vnl_vector_fixed < NumericType , TImage :: ImageDimension > shapeworks :: ParticleSurfaceNeighborhood :: GradientVectorType ;","title":"typedef GradientVectorType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-pointtype","text":"typedef Superclass :: PointType shapeworks :: ParticleSurfaceNeighborhood :: PointType ; Inherited typedefs from parent class.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-pointcontainertype","text":"typedef Superclass :: PointContainerType shapeworks :: ParticleSurfaceNeighborhood :: PointContainerType ;","title":"typedef PointContainerType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-domaintype","text":"typedef shapeworks :: ImplicitSurfaceDomain < typename TImage :: PixelType > shapeworks :: ParticleSurfaceNeighborhood :: DomainType ;","title":"typedef DomainType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#typedef-pointvectortype","text":"typedef Superclass :: PointVectorType shapeworks :: ParticleSurfaceNeighborhood :: PointVectorType ;","title":"typedef PointVectorType"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , 3 ) Expose the image dimension.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-itktypemacro","text":"itkTypeMacro ( ParticleSurfaceNeighborhood , ParticleRegionNeighborhood ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-findneighborhoodpoints","text":"virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , std :: vector < double > & , double ) const override Reimplements : shapeworks::ParticleNeighborhood::FindNeighborhoodPoints Compile a list of points that are within a specified radius of a given point. This implementation uses a PowerOfTwoTree to sort points according to location.","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-findneighborhoodpoints_1","text":"virtual PointVectorType FindNeighborhoodPoints ( const PointType & , int idx , std :: vector < double > & , double ) const override Reimplements : shapeworks::ParticleNeighborhood::FindNeighborhoodPoints This method finds neighborhood points as in the previous method, but also computes a vector of weights associated with each of those points.","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-setweightingenabled","text":"inline void SetWeightingEnabled ( bool is_enabled )","title":"function SetWeightingEnabled"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-isweightingenabled","text":"inline bool IsWeightingEnabled () const","title":"function IsWeightingEnabled"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-setforceeuclidean","text":"inline void SetForceEuclidean ( bool is_enabled )","title":"function SetForceEuclidean"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-isforceeuclidean","text":"inline bool IsForceEuclidean () const","title":"function IsForceEuclidean"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-particlesurfaceneighborhood","text":"inline ParticleSurfaceNeighborhood ()","title":"function ParticleSurfaceNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleSurfaceNeighborhood.html#function-particlesurfaceneighborhood_1","text":"inline virtual ~ ParticleSurfaceNeighborhood () Updated on 2023-10-24 at 22:16:01 +0000","title":"function ~ParticleSurfaceNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html","text":"shapeworks::ParticleSystem A facade class managing interactions with a particle system. More... #include Inherits from itk::DataObject Public Types Name typedef ParticleSystem Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer using shapeworks::ParticleDomain DomainType typedef itk::Point< double, VDimension > PointType typedef ParticleNeighborhood NeighborhoodType typedef GenericContainer < PointType > PointContainerType typedef NeighborhoodType::PointVectorType PointVectorType typedef vnl_matrix_fixed< double, VDimension+1, VDimension+1 > TransformType typedef vnl_vector_fixed< double, VDimension > VectorType typedef vnl_matrix< double > VnlMatrixType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ParticleSystem , itk::DataObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void RegisterObserver ( Observer * attr) void SynchronizePositions () unsigned long int GetNumberOfParticles (unsigned int d =0) const const PointType & AddPosition (const PointType & , unsigned int d =0) const PointType & SetPosition (const PointType & , unsigned long int k, unsigned int d =0) void RemovePosition (unsigned long int k, unsigned int d =0) PointType & GetPosition (unsigned long int k, unsigned int d =0) const PointType & GetPosition (unsigned long int k, unsigned int d =0) const PointType GetTransformedPosition (unsigned long int k, unsigned int d =0) const PointType GetPrefixTransformedPosition (unsigned long int k, unsigned int d =0) const void SplitAllParticles (double epsilon) void SplitParticle (double epsilon, unsigned int idx, unsigned int d =0) void AdvancedAllParticleSplitting (double epsilon, unsigned int domains_per_shape, unsigned int dom_to_process) void PrintParticleSystem () void SetNeighborhood (unsigned int , NeighborhoodType * ) void SetNeighborhood ( NeighborhoodType * n) NeighborhoodType::ConstPointer GetNeighborhood (unsigned int k) const PointVectorType FindNeighborhoodPoints (const PointType & p, int idx, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (const PointType & p, int idx, std::vector< double > & w, std::vector< double > & distances, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (const PointType & p, int idx, std::vector< double > & w, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (unsigned int idx, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (unsigned int idx, std::vector< double > & w, std::vector< double > & distances, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (unsigned int idx, std::vector< double > & w, double r, unsigned int d =0) const void AddDomain (DomainType::Pointer input) std::vector< DomainType::Pointer >::const_iterator GetDomainsBegin () const std::vector< DomainType::Pointer >::const_iterator GetDomainsEnd () const DomainType * GetDomain (unsigned int i) DomainType * GetDomain () const DomainType * GetDomain (unsigned int i) const const DomainType * GetDomain () const unsigned int GetNumberOfDomains () const void SetTransform (unsigned int i, const TransformType & ) void SetTransform (const TransformType & p) void SetPrefixTransform (unsigned int i, const TransformType & ) void SetPrefixTransform (const TransformType & p) std::vector< TransformType >::const_iterator GetTransformsBegin () const std::vector< TransformType >::const_iterator GetTransformsEnd () const const TransformType & GetTransform (unsigned int i) const const TransformType & GetTransform () const TransformType GetTransform (unsigned int i) TransformType GetTransform () const TransformType & GetPrefixTransform (unsigned int i) const const TransformType & GetPrefixTransform () const TransformType GetPrefixTransform (unsigned int i) TransformType GetPrefixTransform () std::vector< TransformType >::const_iterator GetInverseTransformsBegin () const std::vector< TransformType >::const_iterator GetInverseTransformsEnd () const const TransformType & GetInverseTransform (unsigned int i) const const TransformType & GetInverseTransform () const const TransformType & GetInversePrefixTransform (unsigned int i) const const TransformType & GetInversePrefixTransform () const const std::vector< PointContainerType::Pointer > & GetPositions () const const PointContainerType::Pointer & GetPositions (unsigned int d) const void AddPositionList (const std::vector< PointType > & , unsigned int d =0) PointType TransformPoint (const PointType & , const TransformType & ) const VectorType TransformVector (const VectorType & , const TransformType & ) const VnlMatrixType TransformNormalDerivative (const VnlMatrixType & , const TransformType & ) const TransformType InvertTransform (const TransformType & T) const void FlagDomain (unsigned int i) void UnflagDomain (unsigned int i) bool GetDomainFlag (unsigned int i) const const std::vector< bool > & GetDomainFlags () const void SetDomainFlags () void ResetDomainFlags () void SetFixedParticleFlag (unsigned int d, unsigned int i) void ResetFixedParticleFlag (unsigned int d, unsigned int i) bool GetFixedParticleFlag (unsigned int d, unsigned int i) const void ResetFixedParticleFlags () void SetDomainsPerShape (unsigned int num) unsigned int GetDomainsPerShape () const void SetNumberOfDomains (unsigned int ) double ComputeMaxDistNearestNeighbors (size_t dom) void SetFieldAttributes (const std::vector< std::string > & field_attributes) const std::vector< std::string > & GetFieldAttributes () const Protected Functions Name ParticleSystem () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ParticleSystem () TransformType & GetInverseTransform (unsigned int i) TransformType & GetInverseTransform () TransformType & GetInversePrefixTransform (unsigned int i) TransformType & GetInversePrefixTransform () Public Attributes Name constexpr int VDimension Detailed Description class shapeworks :: ParticleSystem ; A facade class managing interactions with a particle system. A particle system consists of a set of particle locations and domains in which those locations are defined. For example, a particle system may simply be a set of points in 3D Euclidean space that are constrained to a specified bounding box. A more complex example is a set of 3D points constrained to a given surface. The itkParticleSystem class is also designed to manage multiple sets of points across multiple domains. For example, one may create a system of dozens of point sets that are each defined in different spaces. The itkParticleSystem class can also maintain a set of transformations associated with each domain that map that particular domain into another coordinate frame, for example, a common coordinate frame. Public Types Documentation typedef Self typedef ParticleSystem shapeworks :: ParticleSystem :: Self ; Standard class typedefs typedef Superclass typedef DataObject shapeworks :: ParticleSystem :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: ParticleSystem :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: ParticleSystem :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: ParticleSystem :: ConstWeakPointer ; using DomainType using shapeworks :: ParticleSystem :: DomainType = shapeworks :: ParticleDomain ; Define the base domain type. typedef PointType typedef itk :: Point < double , VDimension > shapeworks :: ParticleSystem :: PointType ; Point type used to store particle locations. typedef NeighborhoodType typedef ParticleNeighborhood shapeworks :: ParticleSystem :: NeighborhoodType ; Class used to compute neighborhoods of points. One is associated with each domain. typedef PointContainerType typedef GenericContainer < PointType > shapeworks :: ParticleSystem :: PointContainerType ; Point container type. One is associated with each domain. typedef PointVectorType typedef NeighborhoodType :: PointVectorType shapeworks :: ParticleSystem :: PointVectorType ; typedef TransformType typedef vnl_matrix_fixed < double , VDimension + 1 , VDimension + 1 > shapeworks :: ParticleSystem :: TransformType ; Defines a transform class type. One is associated with each domain. Transforms are affine for simplicity. This could be extended by using the itk::Transform base type so that a variety of transform types may be used. typedef VectorType typedef vnl_vector_fixed < double , VDimension > shapeworks :: ParticleSystem :: VectorType ; typedef VnlMatrixType typedef vnl_matrix < double > shapeworks :: ParticleSystem :: VnlMatrixType ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ParticleSystem , itk :: DataObject ) Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function RegisterObserver void RegisterObserver ( Observer * attr ) Register an attribute object with this particle system. This action adds the attribute object as an observer for the particle system so that it will receive published updates. For example, a gradient attribute object may need to know when particle positions have changed so that it can update its internal state appropriately (e.g. precompute a gradient that corresponds to the new particle position). Internally, this method manages registering the appropriate itk::Command and itk::Object as an observer of this itk::Object (AddObserver). Relevant state information is passed to objects in particle events. function SynchronizePositions inline void SynchronizePositions () Invokes the set event on all particle positions, resetting them to their current value. This method may be called to synchronize positional information among various observers which may have gone out of sync. function GetNumberOfParticles inline unsigned long int GetNumberOfParticles ( unsigned int d = 0 ) const Returns the number of particles in domain k. function AddPosition const PointType & AddPosition ( const PointType & , unsigned int d = 0 ) Add/Set/Remove a single particle position. The actual position added or set will be returned. If, for example, the domain imposes any constraints on this location (e.g. out-of-bounds, projection onto a surface), then the method returns the location after constraints are applied. Both the Add and Set methods require a domain index. If unspecified, the domain index is zero. The Set method requires a specific particle index. If the given index does not exist, an exception is thrown. Set is intended to be used for moving particles. The SetTransformedPosition sets the position using a Point transformed by the m_Transform associated with the given domain. function SetPosition const PointType & SetPosition ( const PointType & , unsigned long int k , unsigned int d = 0 ) function RemovePosition void RemovePosition ( unsigned long int k , unsigned int d = 0 ) function GetPosition inline PointType & GetPosition ( unsigned long int k , unsigned int d = 0 ) Return a position with index k from domain d. Note the order in which the 2 integers must be specified! The domain number is specified second and the position index within the domain is specified first. Note that the domain index may be omitted if the particle system only contains a single domain. GetTransformedPosition returns the position premultiplied by the transform matrix for the given domain. function GetPosition inline const PointType & GetPosition ( unsigned long int k , unsigned int d = 0 ) const function GetTransformedPosition inline PointType GetTransformedPosition ( unsigned long int k , unsigned int d = 0 ) const function GetPrefixTransformedPosition inline PointType GetPrefixTransformedPosition ( unsigned long int k , unsigned int d = 0 ) const function SplitAllParticles void SplitAllParticles ( double epsilon ) Doubles the number of particles of the system by splitting each particle into 2 particles. Each new particle position is added to the system at a random epsilon distance on the surface from the original particle. The new particles are added using the AddPosition method, so all appropriate callbacks are invoked. function SplitParticle void SplitParticle ( double epsilon , unsigned int idx , unsigned int d = 0 ) function AdvancedAllParticleSplitting void AdvancedAllParticleSplitting ( double epsilon , unsigned int domains_per_shape , unsigned int dom_to_process ) function PrintParticleSystem void PrintParticleSystem () function SetNeighborhood void SetNeighborhood ( unsigned int , NeighborhoodType * ) Set/Get the neighborhood object associated with domain k. function SetNeighborhood inline void SetNeighborhood ( NeighborhoodType * n ) function GetNeighborhood inline NeighborhoodType :: ConstPointer GetNeighborhood ( unsigned int k ) const function FindNeighborhoodPoints inline PointVectorType FindNeighborhoodPoints ( const PointType & p , int idx , double r , unsigned int d = 0 ) const Return the neighborhood of points with radius r around point p in domain k. This is just a convenience method to avoid exposing the underlying Neighborhood objects. FindTransformedNeighborhoodPoints returns the list with all points transformed by the transform associated with the given domain. function FindNeighborhoodPoints inline PointVectorType FindNeighborhoodPoints ( const PointType & p , int idx , std :: vector < double > & w , std :: vector < double > & distances , double r , unsigned int d = 0 ) const function FindNeighborhoodPoints inline PointVectorType FindNeighborhoodPoints ( const PointType & p , int idx , std :: vector < double > & w , double r , unsigned int d = 0 ) const function FindNeighborhoodPoints inline PointVectorType FindNeighborhoodPoints ( unsigned int idx , double r , unsigned int d = 0 ) const function FindNeighborhoodPoints inline PointVectorType FindNeighborhoodPoints ( unsigned int idx , std :: vector < double > & w , std :: vector < double > & distances , double r , unsigned int d = 0 ) const function FindNeighborhoodPoints inline PointVectorType FindNeighborhoodPoints ( unsigned int idx , std :: vector < double > & w , double r , unsigned int d = 0 ) const function AddDomain void AddDomain ( DomainType :: Pointer input ) Add a domain to the particle system. This method also allocates space for a list of positions that are contained within the domain, and a default neighborhood calculator. The final, optional argument indicates the calling thread id. function GetDomainsBegin inline std :: vector < DomainType :: Pointer >:: const_iterator GetDomainsBegin () const Return an iterator that points to the first element of the list of the domains. function GetDomainsEnd inline std :: vector < DomainType :: Pointer >:: const_iterator GetDomainsEnd () const Return an iterator that points one position past the last element of the list of the domains. function GetDomain inline DomainType * GetDomain ( unsigned int i ) Return the i'th domain object. function GetDomain inline DomainType * GetDomain () API for the single domain case. function GetDomain inline const DomainType * GetDomain ( unsigned int i ) const Return the i'th domain object. function GetDomain inline const DomainType * GetDomain () const API for the single domain case. function GetNumberOfDomains inline unsigned int GetNumberOfDomains () const Returns the number of domains contained in the particle system. function SetTransform void SetTransform ( unsigned int i , const TransformType & ) Set the transform associated with domain i. This method will also compute and set the corresponding inverse transform if possible. If the inverse transform cannot be computed, the exception is quietly handled by this method and an identity transform is set in its place. The calling program is responsible for knowing when an inverse transform cannot be computed. function SetTransform inline void SetTransform ( const TransformType & p ) function SetPrefixTransform void SetPrefixTransform ( unsigned int i , const TransformType & ) function SetPrefixTransform inline void SetPrefixTransform ( const TransformType & p ) function GetTransformsBegin inline std :: vector < TransformType >:: const_iterator GetTransformsBegin () const Return an iterator that points to the first element of the list of the transforms. function GetTransformsEnd inline std :: vector < TransformType >:: const_iterator GetTransformsEnd () const Return an iterator that points one position past the last element of the list of the transforms. function GetTransform inline const TransformType & GetTransform ( unsigned int i ) const Return the i'th transform object. function GetTransform inline const TransformType & GetTransform () const API for the single transform case. function GetTransform inline TransformType GetTransform ( unsigned int i ) Return the i'th transform object. function GetTransform inline TransformType GetTransform () API for the single transform case. function GetPrefixTransform inline const TransformType & GetPrefixTransform ( unsigned int i ) const Return the i'th transform object. function GetPrefixTransform inline const TransformType & GetPrefixTransform () const API for the single transform case. function GetPrefixTransform inline TransformType GetPrefixTransform ( unsigned int i ) Return the i'th transform object. function GetPrefixTransform inline TransformType GetPrefixTransform () API for the single transform case. function GetInverseTransformsBegin inline std :: vector < TransformType >:: const_iterator GetInverseTransformsBegin () const Return an iterator that points to the first element of the list of the inverse transforms. function GetInverseTransformsEnd inline std :: vector < TransformType >:: const_iterator GetInverseTransformsEnd () const Return an iterator that points one position past the last element of the list of the transforms. function GetInverseTransform inline const TransformType & GetInverseTransform ( unsigned int i ) const Return the i'th transform object. function GetInverseTransform inline const TransformType & GetInverseTransform () const API for the single transform case. function GetInversePrefixTransform inline const TransformType & GetInversePrefixTransform ( unsigned int i ) const Return the i'th transform object. function GetInversePrefixTransform inline const TransformType & GetInversePrefixTransform () const API for the single transform case. function GetPositions inline const std :: vector < PointContainerType :: Pointer > & GetPositions () const Return the array of particle positions. function GetPositions inline const PointContainerType :: Pointer & GetPositions ( unsigned int d ) const function AddPositionList void AddPositionList ( const std :: vector < PointType > & , unsigned int d = 0 ) Adds a list of points to the specified domain. The arguments are the std::vector of points and the domain number. function TransformPoint PointType TransformPoint ( const PointType & , const TransformType & ) const Transforms a point using the given transform. NOTE: Scaling is not currently implemented. (This method may be converted to virtual and overridden if tranform type is generalized.) function TransformVector VectorType TransformVector ( const VectorType & , const TransformType & ) const Transforms a vector using the given transform. Only the rotational part of the transform is applied. NOTE: Scaling is not currently supported. function TransformNormalDerivative VnlMatrixType TransformNormalDerivative ( const VnlMatrixType & , const TransformType & ) const Transforms the derivative of normals to new space. function InvertTransform inline TransformType InvertTransform ( const TransformType & T ) const Returns the inverse of a transformation matrix. function FlagDomain inline void FlagDomain ( unsigned int i ) Flag/Unflag a domain. Flagging a domain has different meanings according to the application using this particle system. function UnflagDomain inline void UnflagDomain ( unsigned int i ) function GetDomainFlag inline bool GetDomainFlag ( unsigned int i ) const function GetDomainFlags inline const std :: vector < bool > & GetDomainFlags () const function SetDomainFlags inline void SetDomainFlags () function ResetDomainFlags inline void ResetDomainFlags () function SetFixedParticleFlag inline void SetFixedParticleFlag ( unsigned int d , unsigned int i ) The following methods provide functionality for specifying particle indices that are fixed landmarks. SetPosition() calls to these particle indices will silently fail. For simplicity, only one list of indices is maintained for all dimensions. If particle index n is flagged, for example, then particle index n in all domains is fixed. function ResetFixedParticleFlag inline void ResetFixedParticleFlag ( unsigned int d , unsigned int i ) function GetFixedParticleFlag inline bool GetFixedParticleFlag ( unsigned int d , unsigned int i ) const function ResetFixedParticleFlags inline void ResetFixedParticleFlags () function SetDomainsPerShape inline void SetDomainsPerShape ( unsigned int num ) function GetDomainsPerShape inline unsigned int GetDomainsPerShape () const function SetNumberOfDomains void SetNumberOfDomains ( unsigned int ) Set the number of domains. This method modifies the size of the m_Domains, m_Positions, and m_Transform lists. function ComputeMaxDistNearestNeighbors double ComputeMaxDistNearestNeighbors ( size_t dom ) function SetFieldAttributes inline void SetFieldAttributes ( const std :: vector < std :: string > & field_attributes ) function GetFieldAttributes inline const std :: vector < std :: string > & GetFieldAttributes () const Protected Functions Documentation function ParticleSystem ParticleSystem () function PrintSelf void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const function ~ParticleSystem inline virtual ~ ParticleSystem () function GetInverseTransform inline TransformType & GetInverseTransform ( unsigned int i ) Return the i'th transform object. function GetInverseTransform inline TransformType & GetInverseTransform () API for the single transform case. function GetInversePrefixTransform inline TransformType & GetInversePrefixTransform ( unsigned int i ) Return the i'th transform object. function GetInversePrefixTransform inline TransformType & GetInversePrefixTransform () API for the single transform case. Public Attributes Documentation variable VDimension static constexpr int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#shapeworksparticlesystem","text":"A facade class managing interactions with a particle system. More... #include Inherits from itk::DataObject","title":"shapeworks::ParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#public-types","text":"Name typedef ParticleSystem Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer using shapeworks::ParticleDomain DomainType typedef itk::Point< double, VDimension > PointType typedef ParticleNeighborhood NeighborhoodType typedef GenericContainer < PointType > PointContainerType typedef NeighborhoodType::PointVectorType PointVectorType typedef vnl_matrix_fixed< double, VDimension+1, VDimension+1 > TransformType typedef vnl_vector_fixed< double, VDimension > VectorType typedef vnl_matrix< double > VnlMatrixType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ParticleSystem , itk::DataObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) void RegisterObserver ( Observer * attr) void SynchronizePositions () unsigned long int GetNumberOfParticles (unsigned int d =0) const const PointType & AddPosition (const PointType & , unsigned int d =0) const PointType & SetPosition (const PointType & , unsigned long int k, unsigned int d =0) void RemovePosition (unsigned long int k, unsigned int d =0) PointType & GetPosition (unsigned long int k, unsigned int d =0) const PointType & GetPosition (unsigned long int k, unsigned int d =0) const PointType GetTransformedPosition (unsigned long int k, unsigned int d =0) const PointType GetPrefixTransformedPosition (unsigned long int k, unsigned int d =0) const void SplitAllParticles (double epsilon) void SplitParticle (double epsilon, unsigned int idx, unsigned int d =0) void AdvancedAllParticleSplitting (double epsilon, unsigned int domains_per_shape, unsigned int dom_to_process) void PrintParticleSystem () void SetNeighborhood (unsigned int , NeighborhoodType * ) void SetNeighborhood ( NeighborhoodType * n) NeighborhoodType::ConstPointer GetNeighborhood (unsigned int k) const PointVectorType FindNeighborhoodPoints (const PointType & p, int idx, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (const PointType & p, int idx, std::vector< double > & w, std::vector< double > & distances, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (const PointType & p, int idx, std::vector< double > & w, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (unsigned int idx, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (unsigned int idx, std::vector< double > & w, std::vector< double > & distances, double r, unsigned int d =0) const PointVectorType FindNeighborhoodPoints (unsigned int idx, std::vector< double > & w, double r, unsigned int d =0) const void AddDomain (DomainType::Pointer input) std::vector< DomainType::Pointer >::const_iterator GetDomainsBegin () const std::vector< DomainType::Pointer >::const_iterator GetDomainsEnd () const DomainType * GetDomain (unsigned int i) DomainType * GetDomain () const DomainType * GetDomain (unsigned int i) const const DomainType * GetDomain () const unsigned int GetNumberOfDomains () const void SetTransform (unsigned int i, const TransformType & ) void SetTransform (const TransformType & p) void SetPrefixTransform (unsigned int i, const TransformType & ) void SetPrefixTransform (const TransformType & p) std::vector< TransformType >::const_iterator GetTransformsBegin () const std::vector< TransformType >::const_iterator GetTransformsEnd () const const TransformType & GetTransform (unsigned int i) const const TransformType & GetTransform () const TransformType GetTransform (unsigned int i) TransformType GetTransform () const TransformType & GetPrefixTransform (unsigned int i) const const TransformType & GetPrefixTransform () const TransformType GetPrefixTransform (unsigned int i) TransformType GetPrefixTransform () std::vector< TransformType >::const_iterator GetInverseTransformsBegin () const std::vector< TransformType >::const_iterator GetInverseTransformsEnd () const const TransformType & GetInverseTransform (unsigned int i) const const TransformType & GetInverseTransform () const const TransformType & GetInversePrefixTransform (unsigned int i) const const TransformType & GetInversePrefixTransform () const const std::vector< PointContainerType::Pointer > & GetPositions () const const PointContainerType::Pointer & GetPositions (unsigned int d) const void AddPositionList (const std::vector< PointType > & , unsigned int d =0) PointType TransformPoint (const PointType & , const TransformType & ) const VectorType TransformVector (const VectorType & , const TransformType & ) const VnlMatrixType TransformNormalDerivative (const VnlMatrixType & , const TransformType & ) const TransformType InvertTransform (const TransformType & T) const void FlagDomain (unsigned int i) void UnflagDomain (unsigned int i) bool GetDomainFlag (unsigned int i) const const std::vector< bool > & GetDomainFlags () const void SetDomainFlags () void ResetDomainFlags () void SetFixedParticleFlag (unsigned int d, unsigned int i) void ResetFixedParticleFlag (unsigned int d, unsigned int i) bool GetFixedParticleFlag (unsigned int d, unsigned int i) const void ResetFixedParticleFlags () void SetDomainsPerShape (unsigned int num) unsigned int GetDomainsPerShape () const void SetNumberOfDomains (unsigned int ) double ComputeMaxDistNearestNeighbors (size_t dom) void SetFieldAttributes (const std::vector< std::string > & field_attributes) const std::vector< std::string > & GetFieldAttributes () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#protected-functions","text":"Name ParticleSystem () void PrintSelf (std::ostream & os, itk::Indent indent) const virtual ~ParticleSystem () TransformType & GetInverseTransform (unsigned int i) TransformType & GetInverseTransform () TransformType & GetInversePrefixTransform (unsigned int i) TransformType & GetInversePrefixTransform ()","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#public-attributes","text":"Name constexpr int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#detailed-description","text":"class shapeworks :: ParticleSystem ; A facade class managing interactions with a particle system. A particle system consists of a set of particle locations and domains in which those locations are defined. For example, a particle system may simply be a set of points in 3D Euclidean space that are constrained to a specified bounding box. A more complex example is a set of 3D points constrained to a given surface. The itkParticleSystem class is also designed to manage multiple sets of points across multiple domains. For example, one may create a system of dozens of point sets that are each defined in different spaces. The itkParticleSystem class can also maintain a set of transformations associated with each domain that map that particular domain into another coordinate frame, for example, a common coordinate frame.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-self","text":"typedef ParticleSystem shapeworks :: ParticleSystem :: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-superclass","text":"typedef DataObject shapeworks :: ParticleSystem :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: ParticleSystem :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: ParticleSystem :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: ParticleSystem :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#using-domaintype","text":"using shapeworks :: ParticleSystem :: DomainType = shapeworks :: ParticleDomain ; Define the base domain type.","title":"using DomainType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-pointtype","text":"typedef itk :: Point < double , VDimension > shapeworks :: ParticleSystem :: PointType ; Point type used to store particle locations.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-neighborhoodtype","text":"typedef ParticleNeighborhood shapeworks :: ParticleSystem :: NeighborhoodType ; Class used to compute neighborhoods of points. One is associated with each domain.","title":"typedef NeighborhoodType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-pointcontainertype","text":"typedef GenericContainer < PointType > shapeworks :: ParticleSystem :: PointContainerType ; Point container type. One is associated with each domain.","title":"typedef PointContainerType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-pointvectortype","text":"typedef NeighborhoodType :: PointVectorType shapeworks :: ParticleSystem :: PointVectorType ;","title":"typedef PointVectorType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-transformtype","text":"typedef vnl_matrix_fixed < double , VDimension + 1 , VDimension + 1 > shapeworks :: ParticleSystem :: TransformType ; Defines a transform class type. One is associated with each domain. Transforms are affine for simplicity. This could be extended by using the itk::Transform base type so that a variety of transform types may be used.","title":"typedef TransformType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-vectortype","text":"typedef vnl_vector_fixed < double , VDimension > shapeworks :: ParticleSystem :: VectorType ;","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#typedef-vnlmatrixtype","text":"typedef vnl_matrix < double > shapeworks :: ParticleSystem :: VnlMatrixType ;","title":"typedef VnlMatrixType"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-itktypemacro","text":"itkTypeMacro ( ParticleSystem , itk :: DataObject ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-registerobserver","text":"void RegisterObserver ( Observer * attr ) Register an attribute object with this particle system. This action adds the attribute object as an observer for the particle system so that it will receive published updates. For example, a gradient attribute object may need to know when particle positions have changed so that it can update its internal state appropriately (e.g. precompute a gradient that corresponds to the new particle position). Internally, this method manages registering the appropriate itk::Command and itk::Object as an observer of this itk::Object (AddObserver). Relevant state information is passed to objects in particle events.","title":"function RegisterObserver"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-synchronizepositions","text":"inline void SynchronizePositions () Invokes the set event on all particle positions, resetting them to their current value. This method may be called to synchronize positional information among various observers which may have gone out of sync.","title":"function SynchronizePositions"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getnumberofparticles","text":"inline unsigned long int GetNumberOfParticles ( unsigned int d = 0 ) const Returns the number of particles in domain k.","title":"function GetNumberOfParticles"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-addposition","text":"const PointType & AddPosition ( const PointType & , unsigned int d = 0 ) Add/Set/Remove a single particle position. The actual position added or set will be returned. If, for example, the domain imposes any constraints on this location (e.g. out-of-bounds, projection onto a surface), then the method returns the location after constraints are applied. Both the Add and Set methods require a domain index. If unspecified, the domain index is zero. The Set method requires a specific particle index. If the given index does not exist, an exception is thrown. Set is intended to be used for moving particles. The SetTransformedPosition sets the position using a Point transformed by the m_Transform associated with the given domain.","title":"function AddPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setposition","text":"const PointType & SetPosition ( const PointType & , unsigned long int k , unsigned int d = 0 )","title":"function SetPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-removeposition","text":"void RemovePosition ( unsigned long int k , unsigned int d = 0 )","title":"function RemovePosition"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getposition","text":"inline PointType & GetPosition ( unsigned long int k , unsigned int d = 0 ) Return a position with index k from domain d. Note the order in which the 2 integers must be specified! The domain number is specified second and the position index within the domain is specified first. Note that the domain index may be omitted if the particle system only contains a single domain. GetTransformedPosition returns the position premultiplied by the transform matrix for the given domain.","title":"function GetPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getposition_1","text":"inline const PointType & GetPosition ( unsigned long int k , unsigned int d = 0 ) const","title":"function GetPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-gettransformedposition","text":"inline PointType GetTransformedPosition ( unsigned long int k , unsigned int d = 0 ) const","title":"function GetTransformedPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getprefixtransformedposition","text":"inline PointType GetPrefixTransformedPosition ( unsigned long int k , unsigned int d = 0 ) const","title":"function GetPrefixTransformedPosition"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-splitallparticles","text":"void SplitAllParticles ( double epsilon ) Doubles the number of particles of the system by splitting each particle into 2 particles. Each new particle position is added to the system at a random epsilon distance on the surface from the original particle. The new particles are added using the AddPosition method, so all appropriate callbacks are invoked.","title":"function SplitAllParticles"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-splitparticle","text":"void SplitParticle ( double epsilon , unsigned int idx , unsigned int d = 0 )","title":"function SplitParticle"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-advancedallparticlesplitting","text":"void AdvancedAllParticleSplitting ( double epsilon , unsigned int domains_per_shape , unsigned int dom_to_process )","title":"function AdvancedAllParticleSplitting"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-printparticlesystem","text":"void PrintParticleSystem ()","title":"function PrintParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setneighborhood","text":"void SetNeighborhood ( unsigned int , NeighborhoodType * ) Set/Get the neighborhood object associated with domain k.","title":"function SetNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setneighborhood_1","text":"inline void SetNeighborhood ( NeighborhoodType * n )","title":"function SetNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getneighborhood","text":"inline NeighborhoodType :: ConstPointer GetNeighborhood ( unsigned int k ) const","title":"function GetNeighborhood"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-findneighborhoodpoints","text":"inline PointVectorType FindNeighborhoodPoints ( const PointType & p , int idx , double r , unsigned int d = 0 ) const Return the neighborhood of points with radius r around point p in domain k. This is just a convenience method to avoid exposing the underlying Neighborhood objects. FindTransformedNeighborhoodPoints returns the list with all points transformed by the transform associated with the given domain.","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-findneighborhoodpoints_1","text":"inline PointVectorType FindNeighborhoodPoints ( const PointType & p , int idx , std :: vector < double > & w , std :: vector < double > & distances , double r , unsigned int d = 0 ) const","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-findneighborhoodpoints_2","text":"inline PointVectorType FindNeighborhoodPoints ( const PointType & p , int idx , std :: vector < double > & w , double r , unsigned int d = 0 ) const","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-findneighborhoodpoints_3","text":"inline PointVectorType FindNeighborhoodPoints ( unsigned int idx , double r , unsigned int d = 0 ) const","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-findneighborhoodpoints_4","text":"inline PointVectorType FindNeighborhoodPoints ( unsigned int idx , std :: vector < double > & w , std :: vector < double > & distances , double r , unsigned int d = 0 ) const","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-findneighborhoodpoints_5","text":"inline PointVectorType FindNeighborhoodPoints ( unsigned int idx , std :: vector < double > & w , double r , unsigned int d = 0 ) const","title":"function FindNeighborhoodPoints"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-adddomain","text":"void AddDomain ( DomainType :: Pointer input ) Add a domain to the particle system. This method also allocates space for a list of positions that are contained within the domain, and a default neighborhood calculator. The final, optional argument indicates the calling thread id.","title":"function AddDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomainsbegin","text":"inline std :: vector < DomainType :: Pointer >:: const_iterator GetDomainsBegin () const Return an iterator that points to the first element of the list of the domains.","title":"function GetDomainsBegin"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomainsend","text":"inline std :: vector < DomainType :: Pointer >:: const_iterator GetDomainsEnd () const Return an iterator that points one position past the last element of the list of the domains.","title":"function GetDomainsEnd"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomain","text":"inline DomainType * GetDomain ( unsigned int i ) Return the i'th domain object.","title":"function GetDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomain_1","text":"inline DomainType * GetDomain () API for the single domain case.","title":"function GetDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomain_2","text":"inline const DomainType * GetDomain ( unsigned int i ) const Return the i'th domain object.","title":"function GetDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomain_3","text":"inline const DomainType * GetDomain () const API for the single domain case.","title":"function GetDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getnumberofdomains","text":"inline unsigned int GetNumberOfDomains () const Returns the number of domains contained in the particle system.","title":"function GetNumberOfDomains"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-settransform","text":"void SetTransform ( unsigned int i , const TransformType & ) Set the transform associated with domain i. This method will also compute and set the corresponding inverse transform if possible. If the inverse transform cannot be computed, the exception is quietly handled by this method and an identity transform is set in its place. The calling program is responsible for knowing when an inverse transform cannot be computed.","title":"function SetTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-settransform_1","text":"inline void SetTransform ( const TransformType & p )","title":"function SetTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setprefixtransform","text":"void SetPrefixTransform ( unsigned int i , const TransformType & )","title":"function SetPrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setprefixtransform_1","text":"inline void SetPrefixTransform ( const TransformType & p )","title":"function SetPrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-gettransformsbegin","text":"inline std :: vector < TransformType >:: const_iterator GetTransformsBegin () const Return an iterator that points to the first element of the list of the transforms.","title":"function GetTransformsBegin"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-gettransformsend","text":"inline std :: vector < TransformType >:: const_iterator GetTransformsEnd () const Return an iterator that points one position past the last element of the list of the transforms.","title":"function GetTransformsEnd"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-gettransform","text":"inline const TransformType & GetTransform ( unsigned int i ) const Return the i'th transform object.","title":"function GetTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-gettransform_1","text":"inline const TransformType & GetTransform () const API for the single transform case.","title":"function GetTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-gettransform_2","text":"inline TransformType GetTransform ( unsigned int i ) Return the i'th transform object.","title":"function GetTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-gettransform_3","text":"inline TransformType GetTransform () API for the single transform case.","title":"function GetTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getprefixtransform","text":"inline const TransformType & GetPrefixTransform ( unsigned int i ) const Return the i'th transform object.","title":"function GetPrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getprefixtransform_1","text":"inline const TransformType & GetPrefixTransform () const API for the single transform case.","title":"function GetPrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getprefixtransform_2","text":"inline TransformType GetPrefixTransform ( unsigned int i ) Return the i'th transform object.","title":"function GetPrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getprefixtransform_3","text":"inline TransformType GetPrefixTransform () API for the single transform case.","title":"function GetPrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinversetransformsbegin","text":"inline std :: vector < TransformType >:: const_iterator GetInverseTransformsBegin () const Return an iterator that points to the first element of the list of the inverse transforms.","title":"function GetInverseTransformsBegin"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinversetransformsend","text":"inline std :: vector < TransformType >:: const_iterator GetInverseTransformsEnd () const Return an iterator that points one position past the last element of the list of the transforms.","title":"function GetInverseTransformsEnd"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinversetransform","text":"inline const TransformType & GetInverseTransform ( unsigned int i ) const Return the i'th transform object.","title":"function GetInverseTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinversetransform_1","text":"inline const TransformType & GetInverseTransform () const API for the single transform case.","title":"function GetInverseTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinverseprefixtransform","text":"inline const TransformType & GetInversePrefixTransform ( unsigned int i ) const Return the i'th transform object.","title":"function GetInversePrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinverseprefixtransform_1","text":"inline const TransformType & GetInversePrefixTransform () const API for the single transform case.","title":"function GetInversePrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getpositions","text":"inline const std :: vector < PointContainerType :: Pointer > & GetPositions () const Return the array of particle positions.","title":"function GetPositions"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getpositions_1","text":"inline const PointContainerType :: Pointer & GetPositions ( unsigned int d ) const","title":"function GetPositions"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-addpositionlist","text":"void AddPositionList ( const std :: vector < PointType > & , unsigned int d = 0 ) Adds a list of points to the specified domain. The arguments are the std::vector of points and the domain number.","title":"function AddPositionList"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-transformpoint","text":"PointType TransformPoint ( const PointType & , const TransformType & ) const Transforms a point using the given transform. NOTE: Scaling is not currently implemented. (This method may be converted to virtual and overridden if tranform type is generalized.)","title":"function TransformPoint"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-transformvector","text":"VectorType TransformVector ( const VectorType & , const TransformType & ) const Transforms a vector using the given transform. Only the rotational part of the transform is applied. NOTE: Scaling is not currently supported.","title":"function TransformVector"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-transformnormalderivative","text":"VnlMatrixType TransformNormalDerivative ( const VnlMatrixType & , const TransformType & ) const Transforms the derivative of normals to new space.","title":"function TransformNormalDerivative"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-inverttransform","text":"inline TransformType InvertTransform ( const TransformType & T ) const Returns the inverse of a transformation matrix.","title":"function InvertTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-flagdomain","text":"inline void FlagDomain ( unsigned int i ) Flag/Unflag a domain. Flagging a domain has different meanings according to the application using this particle system.","title":"function FlagDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-unflagdomain","text":"inline void UnflagDomain ( unsigned int i )","title":"function UnflagDomain"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomainflag","text":"inline bool GetDomainFlag ( unsigned int i ) const","title":"function GetDomainFlag"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomainflags","text":"inline const std :: vector < bool > & GetDomainFlags () const","title":"function GetDomainFlags"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setdomainflags","text":"inline void SetDomainFlags ()","title":"function SetDomainFlags"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-resetdomainflags","text":"inline void ResetDomainFlags ()","title":"function ResetDomainFlags"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setfixedparticleflag","text":"inline void SetFixedParticleFlag ( unsigned int d , unsigned int i ) The following methods provide functionality for specifying particle indices that are fixed landmarks. SetPosition() calls to these particle indices will silently fail. For simplicity, only one list of indices is maintained for all dimensions. If particle index n is flagged, for example, then particle index n in all domains is fixed.","title":"function SetFixedParticleFlag"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-resetfixedparticleflag","text":"inline void ResetFixedParticleFlag ( unsigned int d , unsigned int i )","title":"function ResetFixedParticleFlag"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getfixedparticleflag","text":"inline bool GetFixedParticleFlag ( unsigned int d , unsigned int i ) const","title":"function GetFixedParticleFlag"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-resetfixedparticleflags","text":"inline void ResetFixedParticleFlags ()","title":"function ResetFixedParticleFlags"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( unsigned int num )","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getdomainspershape","text":"inline unsigned int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setnumberofdomains","text":"void SetNumberOfDomains ( unsigned int ) Set the number of domains. This method modifies the size of the m_Domains, m_Positions, and m_Transform lists.","title":"function SetNumberOfDomains"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-computemaxdistnearestneighbors","text":"double ComputeMaxDistNearestNeighbors ( size_t dom )","title":"function ComputeMaxDistNearestNeighbors"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-setfieldattributes","text":"inline void SetFieldAttributes ( const std :: vector < std :: string > & field_attributes )","title":"function SetFieldAttributes"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getfieldattributes","text":"inline const std :: vector < std :: string > & GetFieldAttributes () const","title":"function GetFieldAttributes"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-particlesystem","text":"ParticleSystem ()","title":"function ParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-printself","text":"void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-particlesystem_1","text":"inline virtual ~ ParticleSystem ()","title":"function ~ParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinversetransform_2","text":"inline TransformType & GetInverseTransform ( unsigned int i ) Return the i'th transform object.","title":"function GetInverseTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinversetransform_3","text":"inline TransformType & GetInverseTransform () API for the single transform case.","title":"function GetInverseTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinverseprefixtransform_2","text":"inline TransformType & GetInversePrefixTransform ( unsigned int i ) Return the i'th transform object.","title":"function GetInversePrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#function-getinverseprefixtransform_3","text":"inline TransformType & GetInversePrefixTransform () API for the single transform case.","title":"function GetInversePrefixTransform"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystem.html#variable-vdimension","text":"static constexpr int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemCommand.html","text":"shapeworks::ParticleSystemCommand Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleSystemCommand"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemCommand.html#shapeworksparticlesystemcommand","text":"Inherits from shapeworks::Command","title":"shapeworks::ParticleSystemCommand"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemCommand.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemCommand.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemCommand.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemCommand.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:01 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html","text":"shapeworks::ParticleSystemEvaluation Public Functions Name ParticleSystemEvaluation (const std::vector< std::string > & paths) ParticleSystemEvaluation (const Eigen::MatrixXd & matrix) const Eigen::MatrixXd & Particles () const const std::vector< std::string > & Paths () const int N () const Number of samples. int D () const Dimensions (e.g. x/y/z * number of particles) bool ExactCompare (const ParticleSystemEvaluation & other) const bool EvaluationCompare (const ParticleSystemEvaluation & other) const bool ReadParticleFile (std::string filename, Eigen::VectorXd & points) Friends Name struct SharedCommandData Public Functions Documentation function ParticleSystemEvaluation ParticleSystemEvaluation ( const std :: vector < std :: string > & paths ) function ParticleSystemEvaluation ParticleSystemEvaluation ( const Eigen :: MatrixXd & matrix ) function Particles inline const Eigen :: MatrixXd & Particles () const function Paths inline const std :: vector < std :: string > & Paths () const function N inline int N () const Number of samples. function D inline int D () const Dimensions (e.g. x/y/z * number of particles) function ExactCompare bool ExactCompare ( const ParticleSystemEvaluation & other ) const function EvaluationCompare bool EvaluationCompare ( const ParticleSystemEvaluation & other ) const function ReadParticleFile static bool ReadParticleFile ( std :: string filename , Eigen :: VectorXd & points ) Friends friend SharedCommandData friend struct SharedCommandData ( SharedCommandData ); Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleSystemEvaluation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#shapeworksparticlesystemevaluation","text":"","title":"shapeworks::ParticleSystemEvaluation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#public-functions","text":"Name ParticleSystemEvaluation (const std::vector< std::string > & paths) ParticleSystemEvaluation (const Eigen::MatrixXd & matrix) const Eigen::MatrixXd & Particles () const const std::vector< std::string > & Paths () const int N () const Number of samples. int D () const Dimensions (e.g. x/y/z * number of particles) bool ExactCompare (const ParticleSystemEvaluation & other) const bool EvaluationCompare (const ParticleSystemEvaluation & other) const bool ReadParticleFile (std::string filename, Eigen::VectorXd & points)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#friends","text":"Name struct SharedCommandData","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-particlesystemevaluation","text":"ParticleSystemEvaluation ( const std :: vector < std :: string > & paths )","title":"function ParticleSystemEvaluation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-particlesystemevaluation_1","text":"ParticleSystemEvaluation ( const Eigen :: MatrixXd & matrix )","title":"function ParticleSystemEvaluation"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-particles","text":"inline const Eigen :: MatrixXd & Particles () const","title":"function Particles"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-paths","text":"inline const std :: vector < std :: string > & Paths () const","title":"function Paths"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-n","text":"inline int N () const Number of samples.","title":"function N"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-d","text":"inline int D () const Dimensions (e.g. x/y/z * number of particles)","title":"function D"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-exactcompare","text":"bool ExactCompare ( const ParticleSystemEvaluation & other ) const","title":"function ExactCompare"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-evaluationcompare","text":"bool EvaluationCompare ( const ParticleSystemEvaluation & other ) const","title":"function EvaluationCompare"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#function-readparticlefile","text":"static bool ReadParticleFile ( std :: string filename , Eigen :: VectorXd & points )","title":"function ReadParticleFile"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#friends_1","text":"","title":"Friends"},{"location":"api/Classes/classshapeworks_1_1ParticleSystemEvaluation.html#friend-sharedcommanddata","text":"friend struct SharedCommandData ( SharedCommandData ); Updated on 2023-10-24 at 22:16:01 +0000","title":"friend SharedCommandData"},{"location":"api/Classes/classshapeworks_1_1Particles.html","text":"shapeworks::Particles Representation of correspondence points for a shape including multiple domains. More... #include Public Functions Name Particles () =default void set_local_particles (int domain, const std::vector< itk::Point< double > > & particles) void set_world_particles (int domain, const std::vector< itk::Point< double > > & particles) void set_local_particles (int domain, Eigen::VectorXd particles) void set_world_particles (int domain, Eigen::VectorXd particles) std::vector< Eigen::VectorXd > get_local_particles () const std::vector< Eigen::VectorXd > get_world_particles () const Eigen::VectorXd get_local_particles (int domain) Eigen::VectorXd get_world_particles (int domain) Eigen::VectorXd get_raw_world_particles (int domain) Get untransformed original world particles from optimizer. Eigen::VectorXd get_combined_local_particles () const Eigen::VectorXd get_combined_global_particles () const void set_combined_global_particles (const Eigen::VectorXd & particles) std::vector< itk::Point< double > > get_local_points (int domain) std::vector< itk::Point< double > > get_world_points (int domain) int get_domain_for_combined_id (int id) Return which domain a particle belongs to when they are concatenated together. void set_transform (vtkSmartPointer< vtkTransform > transform) void set_procrustes_transforms (const std::vector< vtkSmartPointer< vtkTransform > > & transforms) void set_alignment_type (int alignment) Eigen::VectorXd get_difference_vectors (const Particles & other) const void save_particles_file (std::string filename, const Eigen::VectorXd & points) Detailed Description class shapeworks :: Particles ; Representation of correspondence points for a shape including multiple domains. The StudioParticles class encapsulates the correspondence points for a shape, including multiple domains, local and global points Public Functions Documentation function Particles Particles () = default function set_local_particles void set_local_particles ( int domain , const std :: vector < itk :: Point < double > > & particles ) function set_world_particles void set_world_particles ( int domain , const std :: vector < itk :: Point < double > > & particles ) function set_local_particles void set_local_particles ( int domain , Eigen :: VectorXd particles ) function set_world_particles void set_world_particles ( int domain , Eigen :: VectorXd particles ) function get_local_particles std :: vector < Eigen :: VectorXd > get_local_particles () const function get_world_particles std :: vector < Eigen :: VectorXd > get_world_particles () const function get_local_particles Eigen :: VectorXd get_local_particles ( int domain ) function get_world_particles Eigen :: VectorXd get_world_particles ( int domain ) function get_raw_world_particles Eigen :: VectorXd get_raw_world_particles ( int domain ) Get untransformed original world particles from optimizer. function get_combined_local_particles Eigen :: VectorXd get_combined_local_particles () const function get_combined_global_particles Eigen :: VectorXd get_combined_global_particles () const function set_combined_global_particles void set_combined_global_particles ( const Eigen :: VectorXd & particles ) function get_local_points std :: vector < itk :: Point < double > > get_local_points ( int domain ) function get_world_points std :: vector < itk :: Point < double > > get_world_points ( int domain ) function get_domain_for_combined_id int get_domain_for_combined_id ( int id ) Return which domain a particle belongs to when they are concatenated together. function set_transform void set_transform ( vtkSmartPointer < vtkTransform > transform ) function set_procrustes_transforms void set_procrustes_transforms ( const std :: vector < vtkSmartPointer < vtkTransform > > & transforms ) function set_alignment_type void set_alignment_type ( int alignment ) function get_difference_vectors Eigen :: VectorXd get_difference_vectors ( const Particles & other ) const function save_particles_file static void save_particles_file ( std :: string filename , const Eigen :: VectorXd & points ) Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#shapeworksparticles","text":"Representation of correspondence points for a shape including multiple domains. More... #include ","title":"shapeworks::Particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#public-functions","text":"Name Particles () =default void set_local_particles (int domain, const std::vector< itk::Point< double > > & particles) void set_world_particles (int domain, const std::vector< itk::Point< double > > & particles) void set_local_particles (int domain, Eigen::VectorXd particles) void set_world_particles (int domain, Eigen::VectorXd particles) std::vector< Eigen::VectorXd > get_local_particles () const std::vector< Eigen::VectorXd > get_world_particles () const Eigen::VectorXd get_local_particles (int domain) Eigen::VectorXd get_world_particles (int domain) Eigen::VectorXd get_raw_world_particles (int domain) Get untransformed original world particles from optimizer. Eigen::VectorXd get_combined_local_particles () const Eigen::VectorXd get_combined_global_particles () const void set_combined_global_particles (const Eigen::VectorXd & particles) std::vector< itk::Point< double > > get_local_points (int domain) std::vector< itk::Point< double > > get_world_points (int domain) int get_domain_for_combined_id (int id) Return which domain a particle belongs to when they are concatenated together. void set_transform (vtkSmartPointer< vtkTransform > transform) void set_procrustes_transforms (const std::vector< vtkSmartPointer< vtkTransform > > & transforms) void set_alignment_type (int alignment) Eigen::VectorXd get_difference_vectors (const Particles & other) const void save_particles_file (std::string filename, const Eigen::VectorXd & points)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Particles.html#detailed-description","text":"class shapeworks :: Particles ; Representation of correspondence points for a shape including multiple domains. The StudioParticles class encapsulates the correspondence points for a shape, including multiple domains, local and global points","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Particles.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-particles","text":"Particles () = default","title":"function Particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_local_particles","text":"void set_local_particles ( int domain , const std :: vector < itk :: Point < double > > & particles )","title":"function set_local_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_world_particles","text":"void set_world_particles ( int domain , const std :: vector < itk :: Point < double > > & particles )","title":"function set_world_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_local_particles_1","text":"void set_local_particles ( int domain , Eigen :: VectorXd particles )","title":"function set_local_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_world_particles_1","text":"void set_world_particles ( int domain , Eigen :: VectorXd particles )","title":"function set_world_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_local_particles","text":"std :: vector < Eigen :: VectorXd > get_local_particles () const","title":"function get_local_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_world_particles","text":"std :: vector < Eigen :: VectorXd > get_world_particles () const","title":"function get_world_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_local_particles_1","text":"Eigen :: VectorXd get_local_particles ( int domain )","title":"function get_local_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_world_particles_1","text":"Eigen :: VectorXd get_world_particles ( int domain )","title":"function get_world_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_raw_world_particles","text":"Eigen :: VectorXd get_raw_world_particles ( int domain ) Get untransformed original world particles from optimizer.","title":"function get_raw_world_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_combined_local_particles","text":"Eigen :: VectorXd get_combined_local_particles () const","title":"function get_combined_local_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_combined_global_particles","text":"Eigen :: VectorXd get_combined_global_particles () const","title":"function get_combined_global_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_combined_global_particles","text":"void set_combined_global_particles ( const Eigen :: VectorXd & particles )","title":"function set_combined_global_particles"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_local_points","text":"std :: vector < itk :: Point < double > > get_local_points ( int domain )","title":"function get_local_points"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_world_points","text":"std :: vector < itk :: Point < double > > get_world_points ( int domain )","title":"function get_world_points"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_domain_for_combined_id","text":"int get_domain_for_combined_id ( int id ) Return which domain a particle belongs to when they are concatenated together.","title":"function get_domain_for_combined_id"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_transform","text":"void set_transform ( vtkSmartPointer < vtkTransform > transform )","title":"function set_transform"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_procrustes_transforms","text":"void set_procrustes_transforms ( const std :: vector < vtkSmartPointer < vtkTransform > > & transforms )","title":"function set_procrustes_transforms"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-set_alignment_type","text":"void set_alignment_type ( int alignment )","title":"function set_alignment_type"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-get_difference_vectors","text":"Eigen :: VectorXd get_difference_vectors ( const Particles & other ) const","title":"function get_difference_vectors"},{"location":"api/Classes/classshapeworks_1_1Particles.html#function-save_particles_file","text":"static void save_particles_file ( std :: string filename , const Eigen :: VectorXd & points ) Updated on 2023-10-24 at 22:16:01 +0000","title":"function save_particles_file"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html","text":"shapeworks::PhysicalRegion physical bounds of a 3d region of space #include Public Functions Name PhysicalRegion (const PhysicalRegion & ) =default PhysicalRegion (const Point & _min, const Point & _max) PhysicalRegion () bool operator== (const PhysicalRegion & other) const bool valid () const verified min/max do not create an inverted or an empty region Point origin () const Point size () const PhysicalRegion & shrink (const PhysicalRegion & other) shrink this region down to the smallest portions of both PhysicalRegion & expand (const PhysicalRegion & other) expand this region to include the largest portions of both PhysicalRegion & expand (const Point & pt) expand this region to include this point PhysicalRegion & pad (double padding) uniformly grows or shrinks the region by the specified amount Public Attributes Name Point min Point max Public Functions Documentation function PhysicalRegion PhysicalRegion ( const PhysicalRegion & ) = default function PhysicalRegion inline PhysicalRegion ( const Point & _min , const Point & _max ) function PhysicalRegion inline PhysicalRegion () function operator== inline bool operator == ( const PhysicalRegion & other ) const function valid inline bool valid () const verified min/max do not create an inverted or an empty region function origin inline Point origin () const function size inline Point size () const function shrink PhysicalRegion & shrink ( const PhysicalRegion & other ) shrink this region down to the smallest portions of both function expand PhysicalRegion & expand ( const PhysicalRegion & other ) expand this region to include the largest portions of both function expand PhysicalRegion & expand ( const Point & pt ) expand this region to include this point function pad PhysicalRegion & pad ( double padding ) uniformly grows or shrinks the region by the specified amount Public Attributes Documentation variable min Point min ; variable max Point max ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PhysicalRegion"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#shapeworksphysicalregion","text":"physical bounds of a 3d region of space #include ","title":"shapeworks::PhysicalRegion"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#public-functions","text":"Name PhysicalRegion (const PhysicalRegion & ) =default PhysicalRegion (const Point & _min, const Point & _max) PhysicalRegion () bool operator== (const PhysicalRegion & other) const bool valid () const verified min/max do not create an inverted or an empty region Point origin () const Point size () const PhysicalRegion & shrink (const PhysicalRegion & other) shrink this region down to the smallest portions of both PhysicalRegion & expand (const PhysicalRegion & other) expand this region to include the largest portions of both PhysicalRegion & expand (const Point & pt) expand this region to include this point PhysicalRegion & pad (double padding) uniformly grows or shrinks the region by the specified amount","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#public-attributes","text":"Name Point min Point max","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-physicalregion","text":"PhysicalRegion ( const PhysicalRegion & ) = default","title":"function PhysicalRegion"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-physicalregion_1","text":"inline PhysicalRegion ( const Point & _min , const Point & _max )","title":"function PhysicalRegion"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-physicalregion_2","text":"inline PhysicalRegion ()","title":"function PhysicalRegion"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-operator","text":"inline bool operator == ( const PhysicalRegion & other ) const","title":"function operator=="},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-valid","text":"inline bool valid () const verified min/max do not create an inverted or an empty region","title":"function valid"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-origin","text":"inline Point origin () const","title":"function origin"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-size","text":"inline Point size () const","title":"function size"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-shrink","text":"PhysicalRegion & shrink ( const PhysicalRegion & other ) shrink this region down to the smallest portions of both","title":"function shrink"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-expand","text":"PhysicalRegion & expand ( const PhysicalRegion & other ) expand this region to include the largest portions of both","title":"function expand"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-expand_1","text":"PhysicalRegion & expand ( const Point & pt ) expand this region to include this point","title":"function expand"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#function-pad","text":"PhysicalRegion & pad ( double padding ) uniformly grows or shrinks the region by the specified amount","title":"function pad"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#variable-min","text":"Point min ;","title":"variable min"},{"location":"api/Classes/classshapeworks_1_1PhysicalRegion.html#variable-max","text":"Point max ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable max"},{"location":"api/Classes/classshapeworks_1_1PickResult.html","text":"shapeworks::PickResult Public Attributes Name Shape::Point pos_ int domain_ int subject_ Public Attributes Documentation variable pos_ Shape :: Point pos_ ; variable domain_ int domain_ = -1 ; variable subject_ int subject_ = -1 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PickResult"},{"location":"api/Classes/classshapeworks_1_1PickResult.html#shapeworkspickresult","text":"","title":"shapeworks::PickResult"},{"location":"api/Classes/classshapeworks_1_1PickResult.html#public-attributes","text":"Name Shape::Point pos_ int domain_ int subject_","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1PickResult.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1PickResult.html#variable-pos_","text":"Shape :: Point pos_ ;","title":"variable pos_"},{"location":"api/Classes/classshapeworks_1_1PickResult.html#variable-domain_","text":"int domain_ = -1 ;","title":"variable domain_"},{"location":"api/Classes/classshapeworks_1_1PickResult.html#variable-subject_","text":"int subject_ = -1 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable subject_"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html","text":"shapeworks::PlaneConstraint More... #include Inherits from shapeworks::Constraint Public Functions Name virtual bool isViolated (const Eigen::Vector3d & pt) const override Returns if pt in Eigen format is violated by the constraint. virtual void print () const override Prints the constraint neatly. Eigen::Vector3d getPlaneNormal () Get plane normal. void setPlaneNormal (const Eigen::Vector3d & inPlane) Set plane normal. Eigen::Vector3d getPlanePoint () Get plane center point. void setPlanePoint (const vnl_vector< double > & point) Set plane center point. void setPlanePoint (const Eigen::Vector3d & p) Set plane center point. virtual Eigen::Vector3d constraintGradient (const Eigen::Vector3d & pt) const override Returns the gradient of the constraint. std::vector< Eigen::Vector3d > & points () double getOffset () void setOffset (double offset) virtual double constraintEval (const Eigen::Vector3d & pt) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. void updatePlaneFromPoints () vtkSmartPointer< vtkPlane > getVTKPlane () Return this plane as a vtkPlane. Additional inherited members Public Functions inherited from shapeworks::Constraint Name void setMus (std::vector< double > inmu) Initializes mu. std::vector< double > getMus () Gets mu. void updateMu (const Eigen::Vector3d & pt, double C, size_t index) Updates the value of mu according to the augmented lagrangian update. Eigen::Vector3d lagragianGradient (const Eigen::Vector3d & pt, double C, size_t index) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better. Protected Functions inherited from shapeworks::Constraint Name int sgn (double val) Returns the sign of the double. Protected Attributes inherited from shapeworks::Constraint Name std::vector< double > mus_ Mu is the lagrangian momentum term. Detailed Description class shapeworks :: PlaneConstraint ; Encapsulate functionality related to cutting-plane constraints. Inherits from Constraint . See [Constraint.h] for more information Public Functions Documentation function isViolated virtual bool isViolated ( const Eigen :: Vector3d & pt ) const override Returns if pt in Eigen format is violated by the constraint. Reimplements : shapeworks::Constraint::isViolated function print virtual void print () const override Prints the constraint neatly. Reimplements : shapeworks::Constraint::print function getPlaneNormal inline Eigen :: Vector3d getPlaneNormal () Get plane normal. function setPlaneNormal inline void setPlaneNormal ( const Eigen :: Vector3d & inPlane ) Set plane normal. function getPlanePoint inline Eigen :: Vector3d getPlanePoint () Get plane center point. function setPlanePoint inline void setPlanePoint ( const vnl_vector < double > & point ) Set plane center point. function setPlanePoint inline void setPlanePoint ( const Eigen :: Vector3d & p ) Set plane center point. function constraintGradient inline virtual Eigen :: Vector3d constraintGradient ( const Eigen :: Vector3d & pt ) const override Returns the gradient of the constraint. Reimplements : shapeworks::Constraint::constraintGradient function points inline std :: vector < Eigen :: Vector3d > & points () function getOffset double getOffset () function setOffset void setOffset ( double offset ) function constraintEval virtual double constraintEval ( const Eigen :: Vector3d & pt ) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. Reimplements : shapeworks::Constraint::constraintEval function updatePlaneFromPoints void updatePlaneFromPoints () function getVTKPlane vtkSmartPointer < vtkPlane > getVTKPlane () Return this plane as a vtkPlane. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PlaneConstraint"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#shapeworksplaneconstraint","text":"More... #include Inherits from shapeworks::Constraint","title":"shapeworks::PlaneConstraint"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#public-functions","text":"Name virtual bool isViolated (const Eigen::Vector3d & pt) const override Returns if pt in Eigen format is violated by the constraint. virtual void print () const override Prints the constraint neatly. Eigen::Vector3d getPlaneNormal () Get plane normal. void setPlaneNormal (const Eigen::Vector3d & inPlane) Set plane normal. Eigen::Vector3d getPlanePoint () Get plane center point. void setPlanePoint (const vnl_vector< double > & point) Set plane center point. void setPlanePoint (const Eigen::Vector3d & p) Set plane center point. virtual Eigen::Vector3d constraintGradient (const Eigen::Vector3d & pt) const override Returns the gradient of the constraint. std::vector< Eigen::Vector3d > & points () double getOffset () void setOffset (double offset) virtual double constraintEval (const Eigen::Vector3d & pt) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. void updatePlaneFromPoints () vtkSmartPointer< vtkPlane > getVTKPlane () Return this plane as a vtkPlane.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Constraint Name void setMus (std::vector< double > inmu) Initializes mu. std::vector< double > getMus () Gets mu. void updateMu (const Eigen::Vector3d & pt, double C, size_t index) Updates the value of mu according to the augmented lagrangian update. Eigen::Vector3d lagragianGradient (const Eigen::Vector3d & pt, double C, size_t index) const Computes the lagrangian gradient based on lagrangian inequality equations. NOTE: Not actually lagrangian. We are using quadratic penalty and not lagrangian because it works better. Protected Functions inherited from shapeworks::Constraint Name int sgn (double val) Returns the sign of the double. Protected Attributes inherited from shapeworks::Constraint Name std::vector< double > mus_ Mu is the lagrangian momentum term.","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#detailed-description","text":"class shapeworks :: PlaneConstraint ; Encapsulate functionality related to cutting-plane constraints. Inherits from Constraint . See [Constraint.h] for more information","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-isviolated","text":"virtual bool isViolated ( const Eigen :: Vector3d & pt ) const override Returns if pt in Eigen format is violated by the constraint. Reimplements : shapeworks::Constraint::isViolated","title":"function isViolated"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-print","text":"virtual void print () const override Prints the constraint neatly. Reimplements : shapeworks::Constraint::print","title":"function print"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-getplanenormal","text":"inline Eigen :: Vector3d getPlaneNormal () Get plane normal.","title":"function getPlaneNormal"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-setplanenormal","text":"inline void setPlaneNormal ( const Eigen :: Vector3d & inPlane ) Set plane normal.","title":"function setPlaneNormal"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-getplanepoint","text":"inline Eigen :: Vector3d getPlanePoint () Get plane center point.","title":"function getPlanePoint"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-setplanepoint","text":"inline void setPlanePoint ( const vnl_vector < double > & point ) Set plane center point.","title":"function setPlanePoint"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-setplanepoint_1","text":"inline void setPlanePoint ( const Eigen :: Vector3d & p ) Set plane center point.","title":"function setPlanePoint"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-constraintgradient","text":"inline virtual Eigen :: Vector3d constraintGradient ( const Eigen :: Vector3d & pt ) const override Returns the gradient of the constraint. Reimplements : shapeworks::Constraint::constraintGradient","title":"function constraintGradient"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-points","text":"inline std :: vector < Eigen :: Vector3d > & points ()","title":"function points"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-getoffset","text":"double getOffset ()","title":"function getOffset"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-setoffset","text":"void setOffset ( double offset )","title":"function setOffset"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-constrainteval","text":"virtual double constraintEval ( const Eigen :: Vector3d & pt ) const override Returns the evaluation on the constraint, i.e. the signed distance to the constraint boundary. Reimplements : shapeworks::Constraint::constraintEval","title":"function constraintEval"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-updateplanefrompoints","text":"void updatePlaneFromPoints ()","title":"function updatePlaneFromPoints"},{"location":"api/Classes/classshapeworks_1_1PlaneConstraint.html#function-getvtkplane","text":"vtkSmartPointer < vtkPlane > getVTKPlane () Return this plane as a vtkPlane. Updated on 2023-10-24 at 22:16:01 +0000","title":"function getVTKPlane"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html","text":"shapeworks::PlaneWidget PlaneWidget . More... #include Public Functions Name PlaneWidget ( Viewer * viewer) ~PlaneWidget () void update () Update the widget from shape data. void store_positions () Store positions back to shape data (this is called by callback) void update_glyph_properties () Update the sizes and detail of control spheres. void clear_planes () Clear point handles and planes. void handle_right_click (int domain, int plane, int point) Handle a right click on a particular point. void delete_plane (int domain, int plane_id) Delete a particular plane. void flip_plane (int domain, int plane_id) Flip the normal for a given plane. void apply_plane (int domain, int plane_id) Apply a plane from one shape to all others (e.g. copy and paste) void set_plane_offset (int domain, int plane_id, int offset) Set an offset for a given plane. void finalize_plane_offset (int domain, int plane_id) Finalize the offset for a given plane. Detailed Description class shapeworks :: PlaneWidget ; PlaneWidget . Widget to display and manipulate constraint planes Public Functions Documentation function PlaneWidget PlaneWidget ( Viewer * viewer ) function ~PlaneWidget ~ PlaneWidget () function update void update () Update the widget from shape data. function store_positions void store_positions () Store positions back to shape data (this is called by callback) function update_glyph_properties void update_glyph_properties () Update the sizes and detail of control spheres. function clear_planes void clear_planes () Clear point handles and planes. function handle_right_click void handle_right_click ( int domain , int plane , int point ) Handle a right click on a particular point. function delete_plane void delete_plane ( int domain , int plane_id ) Delete a particular plane. function flip_plane void flip_plane ( int domain , int plane_id ) Flip the normal for a given plane. function apply_plane void apply_plane ( int domain , int plane_id ) Apply a plane from one shape to all others (e.g. copy and paste) function set_plane_offset void set_plane_offset ( int domain , int plane_id , int offset ) Set an offset for a given plane. function finalize_plane_offset void finalize_plane_offset ( int domain , int plane_id ) Finalize the offset for a given plane. Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PlaneWidget"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#shapeworksplanewidget","text":"PlaneWidget . More... #include ","title":"shapeworks::PlaneWidget"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#public-functions","text":"Name PlaneWidget ( Viewer * viewer) ~PlaneWidget () void update () Update the widget from shape data. void store_positions () Store positions back to shape data (this is called by callback) void update_glyph_properties () Update the sizes and detail of control spheres. void clear_planes () Clear point handles and planes. void handle_right_click (int domain, int plane, int point) Handle a right click on a particular point. void delete_plane (int domain, int plane_id) Delete a particular plane. void flip_plane (int domain, int plane_id) Flip the normal for a given plane. void apply_plane (int domain, int plane_id) Apply a plane from one shape to all others (e.g. copy and paste) void set_plane_offset (int domain, int plane_id, int offset) Set an offset for a given plane. void finalize_plane_offset (int domain, int plane_id) Finalize the offset for a given plane.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#detailed-description","text":"class shapeworks :: PlaneWidget ; PlaneWidget . Widget to display and manipulate constraint planes","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-planewidget","text":"PlaneWidget ( Viewer * viewer )","title":"function PlaneWidget"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-planewidget_1","text":"~ PlaneWidget ()","title":"function ~PlaneWidget"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-update","text":"void update () Update the widget from shape data.","title":"function update"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-store_positions","text":"void store_positions () Store positions back to shape data (this is called by callback)","title":"function store_positions"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-update_glyph_properties","text":"void update_glyph_properties () Update the sizes and detail of control spheres.","title":"function update_glyph_properties"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-clear_planes","text":"void clear_planes () Clear point handles and planes.","title":"function clear_planes"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-handle_right_click","text":"void handle_right_click ( int domain , int plane , int point ) Handle a right click on a particular point.","title":"function handle_right_click"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-delete_plane","text":"void delete_plane ( int domain , int plane_id ) Delete a particular plane.","title":"function delete_plane"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-flip_plane","text":"void flip_plane ( int domain , int plane_id ) Flip the normal for a given plane.","title":"function flip_plane"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-apply_plane","text":"void apply_plane ( int domain , int plane_id ) Apply a plane from one shape to all others (e.g. copy and paste)","title":"function apply_plane"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-set_plane_offset","text":"void set_plane_offset ( int domain , int plane_id , int offset ) Set an offset for a given plane.","title":"function set_plane_offset"},{"location":"api/Classes/classshapeworks_1_1PlaneWidget.html#function-finalize_plane_offset","text":"void finalize_plane_offset ( int domain , int plane_id ) Finalize the offset for a given plane. Updated on 2023-10-24 at 22:16:01 +0000","title":"function finalize_plane_offset"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html","text":"shapeworks::PowerOfTwoPointTree More... #include Inherits from itk::DataObject Public Types Name typedef PowerOfTwoPointTree Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef PowerOfTwoPointTreeNode NodeType typedef NodeType::Pointer NodePointerType typedef PowerOfTwoPointTreeNode::PointType PointType typedef NodeType::PointListType PointListType typedef std::vector< typename PointListType::const_iterator > PointIteratorListType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( PowerOfTwoPointTree , DataObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) itkStaticConstMacro (BranchesPerNode , int , ( powstruct < 2, VDimension >::c) ) itkGetMacro (Depth , unsigned int ) void ConstructTree (const PointType & , const PointType & , unsigned int ) PointIteratorListType FindPointsInRegion (const PointType & , const PointType & ) const unsigned int FindPointsInRegion (const PointType & , const PointType & , PointIteratorListType & ) const NodePointerType GetNode (const PointType & ) const NodePointerType GetNode (const PointType & ) const itkGetObjectMacro (Root , NodeType ) itkSetObjectMacro (Root , NodeType ) PointListType::iterator AddPoint (const PointType & , unsigned int , NodePointerType & ) PointListType::iterator AddPoint (const PointType & p, unsigned int i) bool Overlap (const NodePointerType & , const PointType & , const PointType & ) const bool RegionContains (const PointType & p, const PointType & lowerbound, const PointType & upperbound) const void PrintSelf (std::ostream & os, itk::Indent indent) const Protected Functions Name PowerOfTwoPointTree () virtual ~PowerOfTwoPointTree () void BranchNode ( NodePointerType & , unsigned int ) void FindOneNodeInRegion (const NodePointerType & , const PointType & , const PointType & , PointIteratorListType & ) const Public Attributes Name constexpr static unsigned int VDimension Detailed Description class shapeworks :: PowerOfTwoPointTree ; A tree data container, templated over node type, whose nodes are associated with bounding boxes in a rectangular domain, and that has 2^D branches at each node, where D is the dimensionality of the domain. In 2D this is a quad-tree, and in 3D this is an octree, etc. The tree is constructed by specifying a region and a tree depth, then calling ConstructTree() . This class was designed for use as a quad/octree binning structure for ParticleNeighborhoodr.h classes. Public Types Documentation typedef Self typedef PowerOfTwoPointTree shapeworks :: PowerOfTwoPointTree :: Self ; Standard class typedefs typedef Superclass typedef DataObject shapeworks :: PowerOfTwoPointTree :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: PowerOfTwoPointTree :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: PowerOfTwoPointTree :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: PowerOfTwoPointTree :: ConstWeakPointer ; typedef NodeType typedef PowerOfTwoPointTreeNode shapeworks :: PowerOfTwoPointTree :: NodeType ; Shorthand for the object pointed to by each node. typedef NodePointerType typedef NodeType :: Pointer shapeworks :: PowerOfTwoPointTree :: NodePointerType ; The real node type, which is a actually pointer to what we are calling NodeTypes. typedef PointType typedef PowerOfTwoPointTreeNode :: PointType shapeworks :: PowerOfTwoPointTree :: PointType ; Point type used by nodes for upper and lower bounds. typedef PointListType typedef NodeType :: PointListType shapeworks :: PowerOfTwoPointTree :: PointListType ; Types defined by the NodeType. typedef PointIteratorListType typedef std :: vector < typename PointListType :: const_iterator > shapeworks :: PowerOfTwoPointTree :: PointIteratorListType ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( PowerOfTwoPointTree , DataObject ) Run-time type information (and related methods). function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain. function itkStaticConstMacro itkStaticConstMacro ( BranchesPerNode , int , ( powstruct < 2 , VDimension >:: c ) ) Number of children per node. function itkGetMacro itkGetMacro ( Depth , unsigned int ) Set/Get the depth of the tree. This is the number of levels in the tree. function ConstructTree void ConstructTree ( const PointType & , const PointType & , unsigned int ) Construct the tree to the specified depth. The bounding box of the root node is specified with the lower bound and upper bound points respectively. function FindPointsInRegion PointIteratorListType FindPointsInRegion ( const PointType & , const PointType & ) const Return a list of PointListType iterators (effectively pointers to points, see PowerOfTwoPointTreeNode ) to points and their associated indicies that are stored in this tree and are contained within the specified bounding box region. The bounding box is specified with two points, in this order: a lower bound followed by an upper bound. function FindPointsInRegion unsigned int FindPointsInRegion ( const PointType & , const PointType & , PointIteratorListType & ) const function GetNode NodePointerType GetNode ( const PointType & ) Return the node associated with the domain region that contains the given point. function GetNode const NodePointerType GetNode ( const PointType & ) const function itkGetObjectMacro itkGetObjectMacro ( Root , NodeType ) Set/Get the root node of the tree. function itkSetObjectMacro itkSetObjectMacro ( Root , NodeType ) function AddPoint PointListType :: iterator AddPoint ( const PointType & , unsigned int , NodePointerType & ) Associates a point and, optionally, an index with the appropriate leaf node. This method starts at the root of the tree and uses the Contains method to query branches at each node, following the first branch it finds whose bounding box contains this point. When it reaches a leaf node, the point is added to that node's list, along with the specified index (if any). This method returns an iterator pointing to the new list element (e.g., for quick deletion or reference of the point) and, optionally, will set a given smart pointer to point to the leaf node. If the specified point is not contained within the domain, then this method will throw an exception. function AddPoint inline PointListType :: iterator AddPoint ( const PointType & p , unsigned int i ) function Overlap bool Overlap ( const NodePointerType & , const PointType & , const PointType & ) const Returns true if the specified node region overlaps the given region and false otherwise. function RegionContains inline bool RegionContains ( const PointType & p , const PointType & lowerbound , const PointType & upperbound ) const function PrintSelf void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Protected Functions Documentation function PowerOfTwoPointTree inline PowerOfTwoPointTree () function ~PowerOfTwoPointTree inline virtual ~ PowerOfTwoPointTree () function BranchNode void BranchNode ( NodePointerType & , unsigned int ) Add the appropriate number of empty child nodes to a given node. The second parameter is the level in the tree. function FindOneNodeInRegion void FindOneNodeInRegion ( const NodePointerType & , const PointType & , const PointType & , PointIteratorListType & ) const Find one of the nodes that overlaps the specified region and appends all of its points to the specified list. The method is used by FindPointsInRegion and is called recursively. Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PowerOfTwoPointTree"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#shapeworkspoweroftwopointtree","text":"More... #include Inherits from itk::DataObject","title":"shapeworks::PowerOfTwoPointTree"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#public-types","text":"Name typedef PowerOfTwoPointTree Self typedef DataObject Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef PowerOfTwoPointTreeNode NodeType typedef NodeType::Pointer NodePointerType typedef PowerOfTwoPointTreeNode::PointType PointType typedef NodeType::PointListType PointListType typedef std::vector< typename PointListType::const_iterator > PointIteratorListType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( PowerOfTwoPointTree , DataObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) itkStaticConstMacro (BranchesPerNode , int , ( powstruct < 2, VDimension >::c) ) itkGetMacro (Depth , unsigned int ) void ConstructTree (const PointType & , const PointType & , unsigned int ) PointIteratorListType FindPointsInRegion (const PointType & , const PointType & ) const unsigned int FindPointsInRegion (const PointType & , const PointType & , PointIteratorListType & ) const NodePointerType GetNode (const PointType & ) const NodePointerType GetNode (const PointType & ) const itkGetObjectMacro (Root , NodeType ) itkSetObjectMacro (Root , NodeType ) PointListType::iterator AddPoint (const PointType & , unsigned int , NodePointerType & ) PointListType::iterator AddPoint (const PointType & p, unsigned int i) bool Overlap (const NodePointerType & , const PointType & , const PointType & ) const bool RegionContains (const PointType & p, const PointType & lowerbound, const PointType & upperbound) const void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#protected-functions","text":"Name PowerOfTwoPointTree () virtual ~PowerOfTwoPointTree () void BranchNode ( NodePointerType & , unsigned int ) void FindOneNodeInRegion (const NodePointerType & , const PointType & , const PointType & , PointIteratorListType & ) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#detailed-description","text":"class shapeworks :: PowerOfTwoPointTree ; A tree data container, templated over node type, whose nodes are associated with bounding boxes in a rectangular domain, and that has 2^D branches at each node, where D is the dimensionality of the domain. In 2D this is a quad-tree, and in 3D this is an octree, etc. The tree is constructed by specifying a region and a tree depth, then calling ConstructTree() . This class was designed for use as a quad/octree binning structure for ParticleNeighborhoodr.h classes.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-self","text":"typedef PowerOfTwoPointTree shapeworks :: PowerOfTwoPointTree :: Self ; Standard class typedefs","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-superclass","text":"typedef DataObject shapeworks :: PowerOfTwoPointTree :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: PowerOfTwoPointTree :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: PowerOfTwoPointTree :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: PowerOfTwoPointTree :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-nodetype","text":"typedef PowerOfTwoPointTreeNode shapeworks :: PowerOfTwoPointTree :: NodeType ; Shorthand for the object pointed to by each node.","title":"typedef NodeType"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-nodepointertype","text":"typedef NodeType :: Pointer shapeworks :: PowerOfTwoPointTree :: NodePointerType ; The real node type, which is a actually pointer to what we are calling NodeTypes.","title":"typedef NodePointerType"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-pointtype","text":"typedef PowerOfTwoPointTreeNode :: PointType shapeworks :: PowerOfTwoPointTree :: PointType ; Point type used by nodes for upper and lower bounds.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-pointlisttype","text":"typedef NodeType :: PointListType shapeworks :: PowerOfTwoPointTree :: PointListType ; Types defined by the NodeType.","title":"typedef PointListType"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#typedef-pointiteratorlisttype","text":"typedef std :: vector < typename PointListType :: const_iterator > shapeworks :: PowerOfTwoPointTree :: PointIteratorListType ;","title":"typedef PointIteratorListType"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-itktypemacro","text":"itkTypeMacro ( PowerOfTwoPointTree , DataObject ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-itkstaticconstmacro_1","text":"itkStaticConstMacro ( BranchesPerNode , int , ( powstruct < 2 , VDimension >:: c ) ) Number of children per node.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-itkgetmacro","text":"itkGetMacro ( Depth , unsigned int ) Set/Get the depth of the tree. This is the number of levels in the tree.","title":"function itkGetMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-constructtree","text":"void ConstructTree ( const PointType & , const PointType & , unsigned int ) Construct the tree to the specified depth. The bounding box of the root node is specified with the lower bound and upper bound points respectively.","title":"function ConstructTree"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-findpointsinregion","text":"PointIteratorListType FindPointsInRegion ( const PointType & , const PointType & ) const Return a list of PointListType iterators (effectively pointers to points, see PowerOfTwoPointTreeNode ) to points and their associated indicies that are stored in this tree and are contained within the specified bounding box region. The bounding box is specified with two points, in this order: a lower bound followed by an upper bound.","title":"function FindPointsInRegion"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-findpointsinregion_1","text":"unsigned int FindPointsInRegion ( const PointType & , const PointType & , PointIteratorListType & ) const","title":"function FindPointsInRegion"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-getnode","text":"NodePointerType GetNode ( const PointType & ) Return the node associated with the domain region that contains the given point.","title":"function GetNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-getnode_1","text":"const NodePointerType GetNode ( const PointType & ) const","title":"function GetNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-itkgetobjectmacro","text":"itkGetObjectMacro ( Root , NodeType ) Set/Get the root node of the tree.","title":"function itkGetObjectMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-itksetobjectmacro","text":"itkSetObjectMacro ( Root , NodeType )","title":"function itkSetObjectMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-addpoint","text":"PointListType :: iterator AddPoint ( const PointType & , unsigned int , NodePointerType & ) Associates a point and, optionally, an index with the appropriate leaf node. This method starts at the root of the tree and uses the Contains method to query branches at each node, following the first branch it finds whose bounding box contains this point. When it reaches a leaf node, the point is added to that node's list, along with the specified index (if any). This method returns an iterator pointing to the new list element (e.g., for quick deletion or reference of the point) and, optionally, will set a given smart pointer to point to the leaf node. If the specified point is not contained within the domain, then this method will throw an exception.","title":"function AddPoint"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-addpoint_1","text":"inline PointListType :: iterator AddPoint ( const PointType & p , unsigned int i )","title":"function AddPoint"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-overlap","text":"bool Overlap ( const NodePointerType & , const PointType & , const PointType & ) const Returns true if the specified node region overlaps the given region and false otherwise.","title":"function Overlap"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-regioncontains","text":"inline bool RegionContains ( const PointType & p , const PointType & lowerbound , const PointType & upperbound ) const","title":"function RegionContains"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-printself","text":"void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-poweroftwopointtree","text":"inline PowerOfTwoPointTree ()","title":"function PowerOfTwoPointTree"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-poweroftwopointtree_1","text":"inline virtual ~ PowerOfTwoPointTree ()","title":"function ~PowerOfTwoPointTree"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-branchnode","text":"void BranchNode ( NodePointerType & , unsigned int ) Add the appropriate number of empty child nodes to a given node. The second parameter is the level in the tree.","title":"function BranchNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#function-findonenodeinregion","text":"void FindOneNodeInRegion ( const NodePointerType & , const PointType & , const PointType & , PointIteratorListType & ) const Find one of the nodes that overlaps the specified region and appends all of its points to the specified list. The method is used by FindPointsInRegion and is called recursively.","title":"function FindOneNodeInRegion"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTree.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html","text":"shapeworks::PowerOfTwoPointTreeNode More... #include Inherits from itk::LightObject Public Types Name typedef PowerOfTwoPointTreeNode Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::LightObject Superclass typedef itk::Point< double, VDimension > PointType typedef std::list< ParticlePointIndexPair > PointListType Public Functions Name itkTypeMacro ( PowerOfTwoPointTreeNode , LightObject ) itkNewMacro ( Self ) itkStaticConstMacro (BranchesPerNode , int , ( powstruct < 2, VDimension >::c) ) bool operator== (const PowerOfTwoPointTreeNode & o) const bool IsLeaf () const PointListType::iterator InsertElement (const ParticlePointIndexPair & elem) bool Contains (const PointType & p) const void SetLowerBound (const PointType & p) const PointType & GetLowerBound () const void SetUpperBound (const PointType & p) const PointType & GetUpperBound () const Self::Pointer * GetBranches () const Self::Pointer * GetBranches () const Self::Pointer & GetBranch (unsigned int i) const Self::Pointer & GetBranch (unsigned int i) const void SetBranch (unsigned int b, typename Self::Pointer n) void PrintSelf (std::ostream & os, itk::Indent indent) const const PointListType & GetList () const PointListType & GetList () Protected Functions Name PowerOfTwoPointTreeNode () ~PowerOfTwoPointTreeNode () PowerOfTwoPointTreeNode (const PowerOfTwoPointTreeNode & o) const PowerOfTwoPointTreeNode & operator= (const PowerOfTwoPointTreeNode & o) Public Attributes Name constexpr static unsigned int VDimension Detailed Description class shapeworks :: PowerOfTwoPointTreeNode ; A node object for use in the PowerOfTwoPointTree . This class contains a bounding box, a set of child (branch) node pointers, and a linked list that may be filled with Points and Indices (unsigned ints). The single template parameter is the dimensionality of the Points. This class was designed for use as a binning structure for ParticleNeighborhoodr.h classes. Public Types Documentation typedef Self typedef PowerOfTwoPointTreeNode shapeworks :: PowerOfTwoPointTreeNode :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: PowerOfTwoPointTreeNode :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: PowerOfTwoPointTreeNode :: ConstPointer ; typedef Superclass typedef itk :: LightObject shapeworks :: PowerOfTwoPointTreeNode :: Superclass ; typedef PointType typedef itk :: Point < double , VDimension > shapeworks :: PowerOfTwoPointTreeNode :: PointType ; Point type stored in the leaf nodes. typedef PointListType typedef std :: list < ParticlePointIndexPair > shapeworks :: PowerOfTwoPointTreeNode :: PointListType ; List type for storing lists of points+indices. Public Functions Documentation function itkTypeMacro itkTypeMacro ( PowerOfTwoPointTreeNode , LightObject ) function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( BranchesPerNode , int , ( powstruct < 2 , VDimension >:: c ) ) The number of branches at each node of the tree, which is 2^VDimension, e.g. 4 in 2D, 8 in 3D, etc. function operator== inline bool operator == ( const PowerOfTwoPointTreeNode & o ) const Equivalence operator, ignores value type. function IsLeaf inline bool IsLeaf () const Returns true if this is a leaf node (has no branches) and false otherwise. The assumption is that a non-leaf node cannot have any empty branches. Each level of the tree must contain BranchesPerNode divisions. This assumption speeds up certain types of processing. function InsertElement inline PointListType :: iterator InsertElement ( const ParticlePointIndexPair & elem ) Insert a PointIndexPair into the list associated with this node. function Contains inline bool Contains ( const PointType & p ) const Returns true if the bounding box in this node contains the given point and false otherwise. function SetLowerBound inline void SetLowerBound ( const PointType & p ) Set/Get the lower and upper bounds of the region described by this node. function GetLowerBound inline const PointType & GetLowerBound () const function SetUpperBound inline void SetUpperBound ( const PointType & p ) function GetUpperBound inline const PointType & GetUpperBound () const function GetBranches inline Self :: Pointer * GetBranches () Return the data structure holding branch (child) nodes. function GetBranches inline const Self :: Pointer * GetBranches () const function GetBranch inline Self :: Pointer & GetBranch ( unsigned int i ) Return a specific branch function GetBranch inline const Self :: Pointer & GetBranch ( unsigned int i ) const function SetBranch inline void SetBranch ( unsigned int b , typename Self :: Pointer n ) Set the node for a specific branch of this node. function PrintSelf void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Standard ITK PrintSelf method. function GetList inline const PointListType & GetList () const Get the list of elements which contain points and associated indices. function GetList inline PointListType & GetList () Protected Functions Documentation function PowerOfTwoPointTreeNode inline PowerOfTwoPointTreeNode () function ~PowerOfTwoPointTreeNode inline ~ PowerOfTwoPointTreeNode () function PowerOfTwoPointTreeNode PowerOfTwoPointTreeNode ( const PowerOfTwoPointTreeNode & o ) function operator= const PowerOfTwoPointTreeNode & operator = ( const PowerOfTwoPointTreeNode & o ) Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PowerOfTwoPointTreeNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#shapeworkspoweroftwopointtreenode","text":"More... #include Inherits from itk::LightObject","title":"shapeworks::PowerOfTwoPointTreeNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#public-types","text":"Name typedef PowerOfTwoPointTreeNode Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::LightObject Superclass typedef itk::Point< double, VDimension > PointType typedef std::list< ParticlePointIndexPair > PointListType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#public-functions","text":"Name itkTypeMacro ( PowerOfTwoPointTreeNode , LightObject ) itkNewMacro ( Self ) itkStaticConstMacro (BranchesPerNode , int , ( powstruct < 2, VDimension >::c) ) bool operator== (const PowerOfTwoPointTreeNode & o) const bool IsLeaf () const PointListType::iterator InsertElement (const ParticlePointIndexPair & elem) bool Contains (const PointType & p) const void SetLowerBound (const PointType & p) const PointType & GetLowerBound () const void SetUpperBound (const PointType & p) const PointType & GetUpperBound () const Self::Pointer * GetBranches () const Self::Pointer * GetBranches () const Self::Pointer & GetBranch (unsigned int i) const Self::Pointer & GetBranch (unsigned int i) const void SetBranch (unsigned int b, typename Self::Pointer n) void PrintSelf (std::ostream & os, itk::Indent indent) const const PointListType & GetList () const PointListType & GetList ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#protected-functions","text":"Name PowerOfTwoPointTreeNode () ~PowerOfTwoPointTreeNode () PowerOfTwoPointTreeNode (const PowerOfTwoPointTreeNode & o) const PowerOfTwoPointTreeNode & operator= (const PowerOfTwoPointTreeNode & o)","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#detailed-description","text":"class shapeworks :: PowerOfTwoPointTreeNode ; A node object for use in the PowerOfTwoPointTree . This class contains a bounding box, a set of child (branch) node pointers, and a linked list that may be filled with Points and Indices (unsigned ints). The single template parameter is the dimensionality of the Points. This class was designed for use as a binning structure for ParticleNeighborhoodr.h classes.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#typedef-self","text":"typedef PowerOfTwoPointTreeNode shapeworks :: PowerOfTwoPointTreeNode :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: PowerOfTwoPointTreeNode :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: PowerOfTwoPointTreeNode :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#typedef-superclass","text":"typedef itk :: LightObject shapeworks :: PowerOfTwoPointTreeNode :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#typedef-pointtype","text":"typedef itk :: Point < double , VDimension > shapeworks :: PowerOfTwoPointTreeNode :: PointType ; Point type stored in the leaf nodes.","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#typedef-pointlisttype","text":"typedef std :: list < ParticlePointIndexPair > shapeworks :: PowerOfTwoPointTreeNode :: PointListType ; List type for storing lists of points+indices.","title":"typedef PointListType"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-itktypemacro","text":"itkTypeMacro ( PowerOfTwoPointTreeNode , LightObject )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( BranchesPerNode , int , ( powstruct < 2 , VDimension >:: c ) ) The number of branches at each node of the tree, which is 2^VDimension, e.g. 4 in 2D, 8 in 3D, etc.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-operator","text":"inline bool operator == ( const PowerOfTwoPointTreeNode & o ) const Equivalence operator, ignores value type.","title":"function operator=="},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-isleaf","text":"inline bool IsLeaf () const Returns true if this is a leaf node (has no branches) and false otherwise. The assumption is that a non-leaf node cannot have any empty branches. Each level of the tree must contain BranchesPerNode divisions. This assumption speeds up certain types of processing.","title":"function IsLeaf"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-insertelement","text":"inline PointListType :: iterator InsertElement ( const ParticlePointIndexPair & elem ) Insert a PointIndexPair into the list associated with this node.","title":"function InsertElement"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-contains","text":"inline bool Contains ( const PointType & p ) const Returns true if the bounding box in this node contains the given point and false otherwise.","title":"function Contains"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-setlowerbound","text":"inline void SetLowerBound ( const PointType & p ) Set/Get the lower and upper bounds of the region described by this node.","title":"function SetLowerBound"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getlowerbound","text":"inline const PointType & GetLowerBound () const","title":"function GetLowerBound"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-setupperbound","text":"inline void SetUpperBound ( const PointType & p )","title":"function SetUpperBound"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getupperbound","text":"inline const PointType & GetUpperBound () const","title":"function GetUpperBound"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getbranches","text":"inline Self :: Pointer * GetBranches () Return the data structure holding branch (child) nodes.","title":"function GetBranches"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getbranches_1","text":"inline const Self :: Pointer * GetBranches () const","title":"function GetBranches"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getbranch","text":"inline Self :: Pointer & GetBranch ( unsigned int i ) Return a specific branch","title":"function GetBranch"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getbranch_1","text":"inline const Self :: Pointer & GetBranch ( unsigned int i ) const","title":"function GetBranch"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-setbranch","text":"inline void SetBranch ( unsigned int b , typename Self :: Pointer n ) Set the node for a specific branch of this node.","title":"function SetBranch"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-printself","text":"void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Standard ITK PrintSelf method.","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getlist","text":"inline const PointListType & GetList () const Get the list of elements which contain points and associated indices.","title":"function GetList"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-getlist_1","text":"inline PointListType & GetList ()","title":"function GetList"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-poweroftwopointtreenode","text":"inline PowerOfTwoPointTreeNode ()","title":"function PowerOfTwoPointTreeNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-poweroftwopointtreenode_1","text":"inline ~ PowerOfTwoPointTreeNode ()","title":"function ~PowerOfTwoPointTreeNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-poweroftwopointtreenode_2","text":"PowerOfTwoPointTreeNode ( const PowerOfTwoPointTreeNode & o )","title":"function PowerOfTwoPointTreeNode"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#function-operator_1","text":"const PowerOfTwoPointTreeNode & operator = ( const PowerOfTwoPointTreeNode & o )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1PowerOfTwoPointTreeNode.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html","text":"shapeworks::PreferencesWindow Qt UI dialog to control preferences. More... #include Inherits from QDialog Public Slots Name void on_mesh_cache_enabled_stateChanged (int state) void on_mesh_cache_memory_valueChanged (int value) void on_color_scheme_currentIndexChanged (int index) void on_pca_range_valueChanged (double value) void on_pca_steps_valueChanged (int value) void on_parallel_enabled_toggled (bool b) void on_num_threads_valueChanged (int i) void accept () override void restore_defaults () void save_to_preferences () Public Signals Name void clear_cache () void update_view () void slider_update () Public Functions Name PreferencesWindow (QWidget * parent, Preferences & prefs) void set_values_from_preferences () void closeEvent (QCloseEvent * event) override Detailed Description class shapeworks :: PreferencesWindow ; Qt UI dialog to control preferences. The PreferenceWindow provides controls over preferences for the application. It is synchronized with the singleton Preference object Public Slots Documentation slot on_mesh_cache_enabled_stateChanged void on_mesh_cache_enabled_stateChanged ( int state ) slot on_mesh_cache_memory_valueChanged void on_mesh_cache_memory_valueChanged ( int value ) slot on_color_scheme_currentIndexChanged void on_color_scheme_currentIndexChanged ( int index ) slot on_pca_range_valueChanged void on_pca_range_valueChanged ( double value ) slot on_pca_steps_valueChanged void on_pca_steps_valueChanged ( int value ) slot on_parallel_enabled_toggled void on_parallel_enabled_toggled ( bool b ) slot on_num_threads_valueChanged void on_num_threads_valueChanged ( int i ) slot accept void accept () override slot restore_defaults void restore_defaults () slot save_to_preferences void save_to_preferences () Public Signals Documentation signal clear_cache void clear_cache () signal update_view void update_view () signal slider_update void slider_update () Public Functions Documentation function PreferencesWindow PreferencesWindow ( QWidget * parent , Preferences & prefs ) function set_values_from_preferences void set_values_from_preferences () function closeEvent void closeEvent ( QCloseEvent * event ) override Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::PreferencesWindow"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#shapeworkspreferenceswindow","text":"Qt UI dialog to control preferences. More... #include Inherits from QDialog","title":"shapeworks::PreferencesWindow"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#public-slots","text":"Name void on_mesh_cache_enabled_stateChanged (int state) void on_mesh_cache_memory_valueChanged (int value) void on_color_scheme_currentIndexChanged (int index) void on_pca_range_valueChanged (double value) void on_pca_steps_valueChanged (int value) void on_parallel_enabled_toggled (bool b) void on_num_threads_valueChanged (int i) void accept () override void restore_defaults () void save_to_preferences ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#public-signals","text":"Name void clear_cache () void update_view () void slider_update ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#public-functions","text":"Name PreferencesWindow (QWidget * parent, Preferences & prefs) void set_values_from_preferences () void closeEvent (QCloseEvent * event) override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#detailed-description","text":"class shapeworks :: PreferencesWindow ; Qt UI dialog to control preferences. The PreferenceWindow provides controls over preferences for the application. It is synchronized with the singleton Preference object","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-on_mesh_cache_enabled_statechanged","text":"void on_mesh_cache_enabled_stateChanged ( int state )","title":"slot on_mesh_cache_enabled_stateChanged"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-on_mesh_cache_memory_valuechanged","text":"void on_mesh_cache_memory_valueChanged ( int value )","title":"slot on_mesh_cache_memory_valueChanged"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-on_color_scheme_currentindexchanged","text":"void on_color_scheme_currentIndexChanged ( int index )","title":"slot on_color_scheme_currentIndexChanged"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-on_pca_range_valuechanged","text":"void on_pca_range_valueChanged ( double value )","title":"slot on_pca_range_valueChanged"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-on_pca_steps_valuechanged","text":"void on_pca_steps_valueChanged ( int value )","title":"slot on_pca_steps_valueChanged"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-on_parallel_enabled_toggled","text":"void on_parallel_enabled_toggled ( bool b )","title":"slot on_parallel_enabled_toggled"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-on_num_threads_valuechanged","text":"void on_num_threads_valueChanged ( int i )","title":"slot on_num_threads_valueChanged"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-accept","text":"void accept () override","title":"slot accept"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-restore_defaults","text":"void restore_defaults ()","title":"slot restore_defaults"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#slot-save_to_preferences","text":"void save_to_preferences ()","title":"slot save_to_preferences"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#signal-clear_cache","text":"void clear_cache ()","title":"signal clear_cache"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#signal-update_view","text":"void update_view ()","title":"signal update_view"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#signal-slider_update","text":"void slider_update ()","title":"signal slider_update"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#function-preferenceswindow","text":"PreferencesWindow ( QWidget * parent , Preferences & prefs )","title":"function PreferencesWindow"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#function-set_values_from_preferences","text":"void set_values_from_preferences ()","title":"function set_values_from_preferences"},{"location":"api/Classes/classshapeworks_1_1PreferencesWindow.html#function-closeevent","text":"void closeEvent ( QCloseEvent * event ) override Updated on 2023-10-24 at 22:16:01 +0000","title":"function closeEvent"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html","text":"shapeworks::ProcrustesRegistration Public Types Name using std::shared_ptr< ProcrustesRegistration > Pointer using ParticleSystem ParticleSystemType using ParticleSystemType::PointType PointType Public Functions Name void SetParticleSystem ( ParticleSystemType * p) ParticleSystemType * GetParticleSystem () const ParticleSystemType * GetParticleSystem () void RunRegistration (int i) void RunRegistration () Run registration on all domains. void SetDomainsPerShape (int i) Set/Get the number of Domains in each shape. Procrustes will be performed separately for each domain. int GetDomainsPerShape () const bool GetScaling () const void SetScaling (bool scaling) bool GetRotationTranslation () const void SetRotationTranslation (bool rotationTranslation) Public Types Documentation using Pointer using shapeworks :: ProcrustesRegistration :: Pointer = std :: shared_ptr < ProcrustesRegistration > ; using ParticleSystemType using shapeworks :: ProcrustesRegistration :: ParticleSystemType = ParticleSystem ; using PointType using shapeworks :: ProcrustesRegistration :: PointType = ParticleSystemType :: PointType ; Public Functions Documentation function SetParticleSystem inline void SetParticleSystem ( ParticleSystemType * p ) function GetParticleSystem inline ParticleSystemType * GetParticleSystem () const function GetParticleSystem inline ParticleSystemType * GetParticleSystem () function RunRegistration void RunRegistration ( int i ) Performs a procrustes registration and modifies the transforms of the particle system accordingly. Assumes m_ParticleSystem has been set to point to a valid object. function RunRegistration void RunRegistration () Run registration on all domains. function SetDomainsPerShape inline void SetDomainsPerShape ( int i ) Set/Get the number of Domains in each shape. Procrustes will be performed separately for each domain. function GetDomainsPerShape inline int GetDomainsPerShape () const function GetScaling inline bool GetScaling () const function SetScaling inline void SetScaling ( bool scaling ) function GetRotationTranslation inline bool GetRotationTranslation () const function SetRotationTranslation inline void SetRotationTranslation ( bool rotationTranslation ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ProcrustesRegistration"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#shapeworksprocrustesregistration","text":"","title":"shapeworks::ProcrustesRegistration"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#public-types","text":"Name using std::shared_ptr< ProcrustesRegistration > Pointer using ParticleSystem ParticleSystemType using ParticleSystemType::PointType PointType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#public-functions","text":"Name void SetParticleSystem ( ParticleSystemType * p) ParticleSystemType * GetParticleSystem () const ParticleSystemType * GetParticleSystem () void RunRegistration (int i) void RunRegistration () Run registration on all domains. void SetDomainsPerShape (int i) Set/Get the number of Domains in each shape. Procrustes will be performed separately for each domain. int GetDomainsPerShape () const bool GetScaling () const void SetScaling (bool scaling) bool GetRotationTranslation () const void SetRotationTranslation (bool rotationTranslation)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#using-pointer","text":"using shapeworks :: ProcrustesRegistration :: Pointer = std :: shared_ptr < ProcrustesRegistration > ;","title":"using Pointer"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#using-particlesystemtype","text":"using shapeworks :: ProcrustesRegistration :: ParticleSystemType = ParticleSystem ;","title":"using ParticleSystemType"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#using-pointtype","text":"using shapeworks :: ProcrustesRegistration :: PointType = ParticleSystemType :: PointType ;","title":"using PointType"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-setparticlesystem","text":"inline void SetParticleSystem ( ParticleSystemType * p )","title":"function SetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-getparticlesystem","text":"inline ParticleSystemType * GetParticleSystem () const","title":"function GetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-getparticlesystem_1","text":"inline ParticleSystemType * GetParticleSystem ()","title":"function GetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-runregistration","text":"void RunRegistration ( int i ) Performs a procrustes registration and modifies the transforms of the particle system accordingly. Assumes m_ParticleSystem has been set to point to a valid object.","title":"function RunRegistration"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-runregistration_1","text":"void RunRegistration () Run registration on all domains.","title":"function RunRegistration"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int i ) Set/Get the number of Domains in each shape. Procrustes will be performed separately for each domain.","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-getdomainspershape","text":"inline int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-getscaling","text":"inline bool GetScaling () const","title":"function GetScaling"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-setscaling","text":"inline void SetScaling ( bool scaling )","title":"function SetScaling"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-getrotationtranslation","text":"inline bool GetRotationTranslation () const","title":"function GetRotationTranslation"},{"location":"api/Classes/classshapeworks_1_1ProcrustesRegistration.html#function-setrotationtranslation","text":"inline void SetRotationTranslation ( bool rotationTranslation ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function SetRotationTranslation"},{"location":"api/Classes/classshapeworks_1_1Project.html","text":"shapeworks::Project Representation of a project. More... #include Public Types Name using std::map< std::string, std::string > StringMap Public Functions Name Project () ~Project () bool load (const std::string & filename) Load from project file. bool save (const std::string & filename) Save to project file. void set_project_path (const std::string & path) Set the project path. std::string get_filename () Return the filename. void set_filename (std::string filename) Set project filename. std::vector< std::string > get_headers () Return the headers of the subject sheet. std::vector< std::string > get_string_column (const std::string & name) const Return a column by name. int get_number_of_subjects () Return the number of subjects in the project. int get_number_of_domains_per_subject () Return the number of domains. std::vector< std::string > get_domain_names () Return the domain names (e.g. femur, pelvis, etc) void set_domain_names (std::vector< std::string > domain_names) Set the domain names. std::vector< std::shared_ptr< Subject > > & get_subjects () Return the Subjects (as a reference) void set_subjects (const std::vector< std::shared_ptr< Subject > > & subjects) Set the Subjects. void update_subjects () bool get_originals_present () const Return if originals are present. bool get_groomed_present () const Return if groomed files are present. bool get_particles_present () const Return if particle files are present. bool get_images_present () Return if images are present (e.g. CT/MRI) bool get_fixed_subjects_present () Return if there are fixed subjects present. std::vector< std::string > get_feature_names () Get feature names. std::vector< std::string > get_image_names () Get image names. std::vector< std::string > get_group_names () Get group names. std::vector< std::string > get_group_values (const std::string & group_name) const Get possible group values. Parameters get_parameters (const std::string & name, std::string domain_name =\"\") Retrieve parameters based on key. std::map< std::string, Parameters > get_parameter_map (const std::string & name) Retrieve full parameter map for a given name. void set_parameter_map (const std::string & name, std::map< std::string, Parameters > map) Set parameter map for a given name. void set_parameters (const std::string & name, Parameters params, std::string domain_name =\"\") Store parameters based on key. void clear_parameters (const std::string & name) Clear parameters based on key. int get_supported_version () const Get the supported version (this version of the code) int get_version () const Get the version of the currently loaded project. std::vector< LandmarkDefinition > get_landmarks (int domain_id) Return the set of landmarks definitions for a particular domain. std::vector< std::vector< LandmarkDefinition > > get_all_landmark_definitions () Return all landmark definitions. void set_landmark_definitions (std::vector< std::vector< LandmarkDefinition > > defs) Set all landmark definitions. bool get_landmarks_present () Return if landmarks are present. void set_landmarks (int domain_id, std::vector< LandmarkDefinition > landmarks) Set landmarks for this project. void new_landmark (int domain_id) Add a new landmark. std::vector< DomainType > get_original_domain_types () Return the original domain types. std::vector< DomainType > get_groomed_domain_types () Return the groomed domain types. void set_original_domain_types (std::vector< DomainType > domain_types) Set the original domain types. void set_groomed_domain_types (std::vector< DomainType > domain_types) Get the groomed domain types. Detailed Description class shapeworks :: Project ; Representation of a project. The Project class encapsulates the spreadsheet based file format for storing project data. Public Types Documentation using StringMap using shapeworks :: Project :: StringMap = std :: map < std :: string , std :: string > ; Public Functions Documentation function Project Project () function ~Project ~ Project () function load bool load ( const std :: string & filename ) Load from project file. function save bool save ( const std :: string & filename ) Save to project file. function set_project_path void set_project_path ( const std :: string & path ) Set the project path. function get_filename std :: string get_filename () Return the filename. function set_filename void set_filename ( std :: string filename ) Set project filename. function get_headers std :: vector < std :: string > get_headers () Return the headers of the subject sheet. function get_string_column std :: vector < std :: string > get_string_column ( const std :: string & name ) const Return a column by name. function get_number_of_subjects int get_number_of_subjects () Return the number of subjects in the project. function get_number_of_domains_per_subject int get_number_of_domains_per_subject () Return the number of domains. function get_domain_names std :: vector < std :: string > get_domain_names () Return the domain names (e.g. femur, pelvis, etc) function set_domain_names void set_domain_names ( std :: vector < std :: string > domain_names ) Set the domain names. function get_subjects std :: vector < std :: shared_ptr < Subject > > & get_subjects () Return the Subjects (as a reference) function set_subjects void set_subjects ( const std :: vector < std :: shared_ptr < Subject > > & subjects ) Set the Subjects. function update_subjects void update_subjects () function get_originals_present bool get_originals_present () const Return if originals are present. function get_groomed_present bool get_groomed_present () const Return if groomed files are present. function get_particles_present bool get_particles_present () const Return if particle files are present. function get_images_present bool get_images_present () Return if images are present (e.g. CT/MRI) function get_fixed_subjects_present bool get_fixed_subjects_present () Return if there are fixed subjects present. function get_feature_names std :: vector < std :: string > get_feature_names () Get feature names. function get_image_names std :: vector < std :: string > get_image_names () Get image names. function get_group_names std :: vector < std :: string > get_group_names () Get group names. function get_group_values std :: vector < std :: string > get_group_values ( const std :: string & group_name ) const Get possible group values. function get_parameters Parameters get_parameters ( const std :: string & name , std :: string domain_name = \"\" ) Retrieve parameters based on key. function get_parameter_map std :: map < std :: string , Parameters > get_parameter_map ( const std :: string & name ) Retrieve full parameter map for a given name. function set_parameter_map void set_parameter_map ( const std :: string & name , std :: map < std :: string , Parameters > map ) Set parameter map for a given name. function set_parameters void set_parameters ( const std :: string & name , Parameters params , std :: string domain_name = \"\" ) Store parameters based on key. function clear_parameters void clear_parameters ( const std :: string & name ) Clear parameters based on key. function get_supported_version int get_supported_version () const Get the supported version (this version of the code) function get_version int get_version () const Get the version of the currently loaded project. function get_landmarks std :: vector < LandmarkDefinition > get_landmarks ( int domain_id ) Return the set of landmarks definitions for a particular domain. function get_all_landmark_definitions std :: vector < std :: vector < LandmarkDefinition > > get_all_landmark_definitions () Return all landmark definitions. function set_landmark_definitions void set_landmark_definitions ( std :: vector < std :: vector < LandmarkDefinition > > defs ) Set all landmark definitions. function get_landmarks_present bool get_landmarks_present () Return if landmarks are present. function set_landmarks void set_landmarks ( int domain_id , std :: vector < LandmarkDefinition > landmarks ) Set landmarks for this project. function new_landmark void new_landmark ( int domain_id ) Add a new landmark. function get_original_domain_types std :: vector < DomainType > get_original_domain_types () Return the original domain types. function get_groomed_domain_types std :: vector < DomainType > get_groomed_domain_types () Return the groomed domain types. function set_original_domain_types void set_original_domain_types ( std :: vector < DomainType > domain_types ) Set the original domain types. function set_groomed_domain_types void set_groomed_domain_types ( std :: vector < DomainType > domain_types ) Get the groomed domain types. Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Project"},{"location":"api/Classes/classshapeworks_1_1Project.html#shapeworksproject","text":"Representation of a project. More... #include ","title":"shapeworks::Project"},{"location":"api/Classes/classshapeworks_1_1Project.html#public-types","text":"Name using std::map< std::string, std::string > StringMap","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Project.html#public-functions","text":"Name Project () ~Project () bool load (const std::string & filename) Load from project file. bool save (const std::string & filename) Save to project file. void set_project_path (const std::string & path) Set the project path. std::string get_filename () Return the filename. void set_filename (std::string filename) Set project filename. std::vector< std::string > get_headers () Return the headers of the subject sheet. std::vector< std::string > get_string_column (const std::string & name) const Return a column by name. int get_number_of_subjects () Return the number of subjects in the project. int get_number_of_domains_per_subject () Return the number of domains. std::vector< std::string > get_domain_names () Return the domain names (e.g. femur, pelvis, etc) void set_domain_names (std::vector< std::string > domain_names) Set the domain names. std::vector< std::shared_ptr< Subject > > & get_subjects () Return the Subjects (as a reference) void set_subjects (const std::vector< std::shared_ptr< Subject > > & subjects) Set the Subjects. void update_subjects () bool get_originals_present () const Return if originals are present. bool get_groomed_present () const Return if groomed files are present. bool get_particles_present () const Return if particle files are present. bool get_images_present () Return if images are present (e.g. CT/MRI) bool get_fixed_subjects_present () Return if there are fixed subjects present. std::vector< std::string > get_feature_names () Get feature names. std::vector< std::string > get_image_names () Get image names. std::vector< std::string > get_group_names () Get group names. std::vector< std::string > get_group_values (const std::string & group_name) const Get possible group values. Parameters get_parameters (const std::string & name, std::string domain_name =\"\") Retrieve parameters based on key. std::map< std::string, Parameters > get_parameter_map (const std::string & name) Retrieve full parameter map for a given name. void set_parameter_map (const std::string & name, std::map< std::string, Parameters > map) Set parameter map for a given name. void set_parameters (const std::string & name, Parameters params, std::string domain_name =\"\") Store parameters based on key. void clear_parameters (const std::string & name) Clear parameters based on key. int get_supported_version () const Get the supported version (this version of the code) int get_version () const Get the version of the currently loaded project. std::vector< LandmarkDefinition > get_landmarks (int domain_id) Return the set of landmarks definitions for a particular domain. std::vector< std::vector< LandmarkDefinition > > get_all_landmark_definitions () Return all landmark definitions. void set_landmark_definitions (std::vector< std::vector< LandmarkDefinition > > defs) Set all landmark definitions. bool get_landmarks_present () Return if landmarks are present. void set_landmarks (int domain_id, std::vector< LandmarkDefinition > landmarks) Set landmarks for this project. void new_landmark (int domain_id) Add a new landmark. std::vector< DomainType > get_original_domain_types () Return the original domain types. std::vector< DomainType > get_groomed_domain_types () Return the groomed domain types. void set_original_domain_types (std::vector< DomainType > domain_types) Set the original domain types. void set_groomed_domain_types (std::vector< DomainType > domain_types) Get the groomed domain types.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Project.html#detailed-description","text":"class shapeworks :: Project ; Representation of a project. The Project class encapsulates the spreadsheet based file format for storing project data.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Project.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Project.html#using-stringmap","text":"using shapeworks :: Project :: StringMap = std :: map < std :: string , std :: string > ;","title":"using StringMap"},{"location":"api/Classes/classshapeworks_1_1Project.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-project","text":"Project ()","title":"function Project"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-project_1","text":"~ Project ()","title":"function ~Project"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-load","text":"bool load ( const std :: string & filename ) Load from project file.","title":"function load"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-save","text":"bool save ( const std :: string & filename ) Save to project file.","title":"function save"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_project_path","text":"void set_project_path ( const std :: string & path ) Set the project path.","title":"function set_project_path"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_filename","text":"std :: string get_filename () Return the filename.","title":"function get_filename"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_filename","text":"void set_filename ( std :: string filename ) Set project filename.","title":"function set_filename"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_headers","text":"std :: vector < std :: string > get_headers () Return the headers of the subject sheet.","title":"function get_headers"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_string_column","text":"std :: vector < std :: string > get_string_column ( const std :: string & name ) const Return a column by name.","title":"function get_string_column"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_number_of_subjects","text":"int get_number_of_subjects () Return the number of subjects in the project.","title":"function get_number_of_subjects"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_number_of_domains_per_subject","text":"int get_number_of_domains_per_subject () Return the number of domains.","title":"function get_number_of_domains_per_subject"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_domain_names","text":"std :: vector < std :: string > get_domain_names () Return the domain names (e.g. femur, pelvis, etc)","title":"function get_domain_names"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_domain_names","text":"void set_domain_names ( std :: vector < std :: string > domain_names ) Set the domain names.","title":"function set_domain_names"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_subjects","text":"std :: vector < std :: shared_ptr < Subject > > & get_subjects () Return the Subjects (as a reference)","title":"function get_subjects"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_subjects","text":"void set_subjects ( const std :: vector < std :: shared_ptr < Subject > > & subjects ) Set the Subjects.","title":"function set_subjects"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-update_subjects","text":"void update_subjects ()","title":"function update_subjects"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_originals_present","text":"bool get_originals_present () const Return if originals are present.","title":"function get_originals_present"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_groomed_present","text":"bool get_groomed_present () const Return if groomed files are present.","title":"function get_groomed_present"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_particles_present","text":"bool get_particles_present () const Return if particle files are present.","title":"function get_particles_present"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_images_present","text":"bool get_images_present () Return if images are present (e.g. CT/MRI)","title":"function get_images_present"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_fixed_subjects_present","text":"bool get_fixed_subjects_present () Return if there are fixed subjects present.","title":"function get_fixed_subjects_present"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_feature_names","text":"std :: vector < std :: string > get_feature_names () Get feature names.","title":"function get_feature_names"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_image_names","text":"std :: vector < std :: string > get_image_names () Get image names.","title":"function get_image_names"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_group_names","text":"std :: vector < std :: string > get_group_names () Get group names.","title":"function get_group_names"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_group_values","text":"std :: vector < std :: string > get_group_values ( const std :: string & group_name ) const Get possible group values.","title":"function get_group_values"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_parameters","text":"Parameters get_parameters ( const std :: string & name , std :: string domain_name = \"\" ) Retrieve parameters based on key.","title":"function get_parameters"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_parameter_map","text":"std :: map < std :: string , Parameters > get_parameter_map ( const std :: string & name ) Retrieve full parameter map for a given name.","title":"function get_parameter_map"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_parameter_map","text":"void set_parameter_map ( const std :: string & name , std :: map < std :: string , Parameters > map ) Set parameter map for a given name.","title":"function set_parameter_map"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_parameters","text":"void set_parameters ( const std :: string & name , Parameters params , std :: string domain_name = \"\" ) Store parameters based on key.","title":"function set_parameters"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-clear_parameters","text":"void clear_parameters ( const std :: string & name ) Clear parameters based on key.","title":"function clear_parameters"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_supported_version","text":"int get_supported_version () const Get the supported version (this version of the code)","title":"function get_supported_version"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_version","text":"int get_version () const Get the version of the currently loaded project.","title":"function get_version"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_landmarks","text":"std :: vector < LandmarkDefinition > get_landmarks ( int domain_id ) Return the set of landmarks definitions for a particular domain.","title":"function get_landmarks"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_all_landmark_definitions","text":"std :: vector < std :: vector < LandmarkDefinition > > get_all_landmark_definitions () Return all landmark definitions.","title":"function get_all_landmark_definitions"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_landmark_definitions","text":"void set_landmark_definitions ( std :: vector < std :: vector < LandmarkDefinition > > defs ) Set all landmark definitions.","title":"function set_landmark_definitions"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_landmarks_present","text":"bool get_landmarks_present () Return if landmarks are present.","title":"function get_landmarks_present"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_landmarks","text":"void set_landmarks ( int domain_id , std :: vector < LandmarkDefinition > landmarks ) Set landmarks for this project.","title":"function set_landmarks"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-new_landmark","text":"void new_landmark ( int domain_id ) Add a new landmark.","title":"function new_landmark"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_original_domain_types","text":"std :: vector < DomainType > get_original_domain_types () Return the original domain types.","title":"function get_original_domain_types"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-get_groomed_domain_types","text":"std :: vector < DomainType > get_groomed_domain_types () Return the groomed domain types.","title":"function get_groomed_domain_types"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_original_domain_types","text":"void set_original_domain_types ( std :: vector < DomainType > domain_types ) Set the original domain types.","title":"function set_original_domain_types"},{"location":"api/Classes/classshapeworks_1_1Project.html#function-set_groomed_domain_types","text":"void set_groomed_domain_types ( std :: vector < DomainType > domain_types ) Get the groomed domain types. Updated on 2023-10-24 at 22:16:02 +0000","title":"function set_groomed_domain_types"},{"location":"api/Classes/classshapeworks_1_1ProjectCommandGroup.html","text":"shapeworks::ProjectCommandGroup Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ProjectCommandGroup"},{"location":"api/Classes/classshapeworks_1_1ProjectCommandGroup.html#shapeworksprojectcommandgroup","text":"Inherits from shapeworks::Command","title":"shapeworks::ProjectCommandGroup"},{"location":"api/Classes/classshapeworks_1_1ProjectCommandGroup.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ProjectCommandGroup.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ProjectCommandGroup.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ProjectCommandGroup.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:02 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html","text":"shapeworks::ProjectReader Base class for Project readers. More... #include Inherited by shapeworks::ExcelProjectReader , shapeworks::JsonProjectReader Public Types Name using project::types::StringMapList StringMapList using project::types::StringMap StringMap using project::types::StringList StringList using project::types::StringMultiMap StringMultiMap Public Functions Name ProjectReader ( Project & project) Constructor. virtual ~ProjectReader () =default Destructor. virtual bool read_project (std::string filename) =0 Read a project from a file. virtual StringMap get_parameters (std::string name) =0 virtual StringMultiMap get_multi_parameters (std::string name) =0 Protected Functions Name void load_subjects (StringMapList list) Load subjects from string map list. void load_parameters () void load_parameter (std::string name, StringMap map) void load_landmark_definitions (StringMapList list) bool contains (StringMap map, std::string key) StringList get_keys (StringMap map) Protected Attributes Name Project & project_ Detailed Description class shapeworks :: ProjectReader ; Base class for Project readers. This class serves as an abstract base class for project readers Public Types Documentation using StringMapList using shapeworks :: ProjectReader :: StringMapList = project :: types :: StringMapList ; using StringMap using shapeworks :: ProjectReader :: StringMap = project :: types :: StringMap ; using StringList using shapeworks :: ProjectReader :: StringList = project :: types :: StringList ; using StringMultiMap using shapeworks :: ProjectReader :: StringMultiMap = project :: types :: StringMultiMap ; Public Functions Documentation function ProjectReader ProjectReader ( Project & project ) Constructor. function ~ProjectReader virtual ~ ProjectReader () = default Destructor. function read_project virtual bool read_project ( std :: string filename ) = 0 Read a project from a file. Reimplemented by : shapeworks::ExcelProjectReader::read_project , shapeworks::JsonProjectReader::read_project function get_parameters virtual StringMap get_parameters ( std :: string name ) = 0 Reimplemented by : shapeworks::ExcelProjectReader::get_parameters , shapeworks::JsonProjectReader::get_parameters function get_multi_parameters virtual StringMultiMap get_multi_parameters ( std :: string name ) = 0 Reimplemented by : shapeworks::ExcelProjectReader::get_multi_parameters , shapeworks::JsonProjectReader::get_multi_parameters Protected Functions Documentation function load_subjects void load_subjects ( StringMapList list ) Load subjects from string map list. function load_parameters void load_parameters () function load_parameter void load_parameter ( std :: string name , StringMap map ) function load_landmark_definitions void load_landmark_definitions ( StringMapList list ) function contains bool contains ( StringMap map , std :: string key ) function get_keys static StringList get_keys ( StringMap map ) Protected Attributes Documentation variable project_ Project & project_ ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ProjectReader"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#shapeworksprojectreader","text":"Base class for Project readers. More... #include Inherited by shapeworks::ExcelProjectReader , shapeworks::JsonProjectReader","title":"shapeworks::ProjectReader"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#public-types","text":"Name using project::types::StringMapList StringMapList using project::types::StringMap StringMap using project::types::StringList StringList using project::types::StringMultiMap StringMultiMap","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#public-functions","text":"Name ProjectReader ( Project & project) Constructor. virtual ~ProjectReader () =default Destructor. virtual bool read_project (std::string filename) =0 Read a project from a file. virtual StringMap get_parameters (std::string name) =0 virtual StringMultiMap get_multi_parameters (std::string name) =0","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#protected-functions","text":"Name void load_subjects (StringMapList list) Load subjects from string map list. void load_parameters () void load_parameter (std::string name, StringMap map) void load_landmark_definitions (StringMapList list) bool contains (StringMap map, std::string key) StringList get_keys (StringMap map)","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#protected-attributes","text":"Name Project & project_","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#detailed-description","text":"class shapeworks :: ProjectReader ; Base class for Project readers. This class serves as an abstract base class for project readers","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#using-stringmaplist","text":"using shapeworks :: ProjectReader :: StringMapList = project :: types :: StringMapList ;","title":"using StringMapList"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#using-stringmap","text":"using shapeworks :: ProjectReader :: StringMap = project :: types :: StringMap ;","title":"using StringMap"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#using-stringlist","text":"using shapeworks :: ProjectReader :: StringList = project :: types :: StringList ;","title":"using StringList"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#using-stringmultimap","text":"using shapeworks :: ProjectReader :: StringMultiMap = project :: types :: StringMultiMap ;","title":"using StringMultiMap"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-projectreader","text":"ProjectReader ( Project & project ) Constructor.","title":"function ProjectReader"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-projectreader_1","text":"virtual ~ ProjectReader () = default Destructor.","title":"function ~ProjectReader"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-read_project","text":"virtual bool read_project ( std :: string filename ) = 0 Read a project from a file. Reimplemented by : shapeworks::ExcelProjectReader::read_project , shapeworks::JsonProjectReader::read_project","title":"function read_project"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-get_parameters","text":"virtual StringMap get_parameters ( std :: string name ) = 0 Reimplemented by : shapeworks::ExcelProjectReader::get_parameters , shapeworks::JsonProjectReader::get_parameters","title":"function get_parameters"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-get_multi_parameters","text":"virtual StringMultiMap get_multi_parameters ( std :: string name ) = 0 Reimplemented by : shapeworks::ExcelProjectReader::get_multi_parameters , shapeworks::JsonProjectReader::get_multi_parameters","title":"function get_multi_parameters"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-load_subjects","text":"void load_subjects ( StringMapList list ) Load subjects from string map list.","title":"function load_subjects"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-load_parameters","text":"void load_parameters ()","title":"function load_parameters"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-load_parameter","text":"void load_parameter ( std :: string name , StringMap map )","title":"function load_parameter"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-load_landmark_definitions","text":"void load_landmark_definitions ( StringMapList list )","title":"function load_landmark_definitions"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-contains","text":"bool contains ( StringMap map , std :: string key )","title":"function contains"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#function-get_keys","text":"static StringList get_keys ( StringMap map )","title":"function get_keys"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ProjectReader.html#variable-project_","text":"Project & project_ ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable project_"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html","text":"shapeworks::ProjectUtils Public Types Name using project::types::StringList StringList using project::types::StringMap StringMap Public Functions Name vtkSmartPointer< vtkTransform > convert_transform (std::vector< double > list) convert a list of doubles from a spreadsheet to a vtkTransform std::vector< double > convert_transform (vtkSmartPointer< vtkTransform > transform) convert a vtkTransform to a list of doubles (e.g. for project spreadsheet) StringList determine_domain_names (StringList keys) determine domain names from a subject's keys void determine_domain_types ( Project * project, StringMap key_map) determine and set domain types StringList get_input_prefixes () return a list of the input prefixes StringList get_groomed_prefixes () return a list of the groomed prefixes StringList get_original_keys (StringList domain_names, StringMap key_map) extract original keys from key_map given an ordered list of domain names StringList get_values (StringList prefixes, StringList domain_names, StringMap key_map) get the values for a list of prefixes from key_map, ordered by domain_names std::vector< std::vector< double > > get_transforms (std::string prefix, StringList domain_names, StringMap key_map) get the transforms for a prefix from key_map, ordered by domain_names StringMap get_value_map (std::vector< std::string > prefix, StringMap key_map) get a map for a list of prefixes from a key_map (e.g. group_, or feature_) StringMap get_extra_columns (StringMap key_map) get any extra columns that don't match prefixes DomainType determine_domain_type (std::string filename) determine the domain type, given a filename bool starts_with (std::string str, std::string prefix) std::string transform_to_string (std::vector< double > transform) std::vector< std::string > convert_domain_types (std::vector< DomainType > domain_types) std::vector< std::string > convert_groomed_domain_types (std::vector< DomainType > domain_types) StringMap convert_subject_to_map ( Project * project, Subject * subject) Public Types Documentation using StringList using shapeworks :: ProjectUtils :: StringList = project :: types :: StringList ; using StringMap using shapeworks :: ProjectUtils :: StringMap = project :: types :: StringMap ; Public Functions Documentation function convert_transform static vtkSmartPointer < vtkTransform > convert_transform ( std :: vector < double > list ) convert a list of doubles from a spreadsheet to a vtkTransform function convert_transform static std :: vector < double > convert_transform ( vtkSmartPointer < vtkTransform > transform ) convert a vtkTransform to a list of doubles (e.g. for project spreadsheet) function determine_domain_names static StringList determine_domain_names ( StringList keys ) determine domain names from a subject's keys function determine_domain_types static void determine_domain_types ( Project * project , StringMap key_map ) determine and set domain types function get_input_prefixes static StringList get_input_prefixes () return a list of the input prefixes function get_groomed_prefixes static StringList get_groomed_prefixes () return a list of the groomed prefixes function get_original_keys static StringList get_original_keys ( StringList domain_names , StringMap key_map ) extract original keys from key_map given an ordered list of domain names function get_values static StringList get_values ( StringList prefixes , StringList domain_names , StringMap key_map ) get the values for a list of prefixes from key_map, ordered by domain_names function get_transforms static std :: vector < std :: vector < double > > get_transforms ( std :: string prefix , StringList domain_names , StringMap key_map ) get the transforms for a prefix from key_map, ordered by domain_names function get_value_map static StringMap get_value_map ( std :: vector < std :: string > prefix , StringMap key_map ) get a map for a list of prefixes from a key_map (e.g. group_, or feature_) function get_extra_columns static StringMap get_extra_columns ( StringMap key_map ) get any extra columns that don't match prefixes function determine_domain_type static DomainType determine_domain_type ( std :: string filename ) determine the domain type, given a filename function starts_with static bool starts_with ( std :: string str , std :: string prefix ) function transform_to_string static std :: string transform_to_string ( std :: vector < double > transform ) function convert_domain_types static std :: vector < std :: string > convert_domain_types ( std :: vector < DomainType > domain_types ) function convert_groomed_domain_types static std :: vector < std :: string > convert_groomed_domain_types ( std :: vector < DomainType > domain_types ) function convert_subject_to_map static StringMap convert_subject_to_map ( Project * project , Subject * subject ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ProjectUtils"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#shapeworksprojectutils","text":"","title":"shapeworks::ProjectUtils"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#public-types","text":"Name using project::types::StringList StringList using project::types::StringMap StringMap","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#public-functions","text":"Name vtkSmartPointer< vtkTransform > convert_transform (std::vector< double > list) convert a list of doubles from a spreadsheet to a vtkTransform std::vector< double > convert_transform (vtkSmartPointer< vtkTransform > transform) convert a vtkTransform to a list of doubles (e.g. for project spreadsheet) StringList determine_domain_names (StringList keys) determine domain names from a subject's keys void determine_domain_types ( Project * project, StringMap key_map) determine and set domain types StringList get_input_prefixes () return a list of the input prefixes StringList get_groomed_prefixes () return a list of the groomed prefixes StringList get_original_keys (StringList domain_names, StringMap key_map) extract original keys from key_map given an ordered list of domain names StringList get_values (StringList prefixes, StringList domain_names, StringMap key_map) get the values for a list of prefixes from key_map, ordered by domain_names std::vector< std::vector< double > > get_transforms (std::string prefix, StringList domain_names, StringMap key_map) get the transforms for a prefix from key_map, ordered by domain_names StringMap get_value_map (std::vector< std::string > prefix, StringMap key_map) get a map for a list of prefixes from a key_map (e.g. group_, or feature_) StringMap get_extra_columns (StringMap key_map) get any extra columns that don't match prefixes DomainType determine_domain_type (std::string filename) determine the domain type, given a filename bool starts_with (std::string str, std::string prefix) std::string transform_to_string (std::vector< double > transform) std::vector< std::string > convert_domain_types (std::vector< DomainType > domain_types) std::vector< std::string > convert_groomed_domain_types (std::vector< DomainType > domain_types) StringMap convert_subject_to_map ( Project * project, Subject * subject)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#using-stringlist","text":"using shapeworks :: ProjectUtils :: StringList = project :: types :: StringList ;","title":"using StringList"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#using-stringmap","text":"using shapeworks :: ProjectUtils :: StringMap = project :: types :: StringMap ;","title":"using StringMap"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-convert_transform","text":"static vtkSmartPointer < vtkTransform > convert_transform ( std :: vector < double > list ) convert a list of doubles from a spreadsheet to a vtkTransform","title":"function convert_transform"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-convert_transform_1","text":"static std :: vector < double > convert_transform ( vtkSmartPointer < vtkTransform > transform ) convert a vtkTransform to a list of doubles (e.g. for project spreadsheet)","title":"function convert_transform"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-determine_domain_names","text":"static StringList determine_domain_names ( StringList keys ) determine domain names from a subject's keys","title":"function determine_domain_names"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-determine_domain_types","text":"static void determine_domain_types ( Project * project , StringMap key_map ) determine and set domain types","title":"function determine_domain_types"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-get_input_prefixes","text":"static StringList get_input_prefixes () return a list of the input prefixes","title":"function get_input_prefixes"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-get_groomed_prefixes","text":"static StringList get_groomed_prefixes () return a list of the groomed prefixes","title":"function get_groomed_prefixes"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-get_original_keys","text":"static StringList get_original_keys ( StringList domain_names , StringMap key_map ) extract original keys from key_map given an ordered list of domain names","title":"function get_original_keys"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-get_values","text":"static StringList get_values ( StringList prefixes , StringList domain_names , StringMap key_map ) get the values for a list of prefixes from key_map, ordered by domain_names","title":"function get_values"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-get_transforms","text":"static std :: vector < std :: vector < double > > get_transforms ( std :: string prefix , StringList domain_names , StringMap key_map ) get the transforms for a prefix from key_map, ordered by domain_names","title":"function get_transforms"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-get_value_map","text":"static StringMap get_value_map ( std :: vector < std :: string > prefix , StringMap key_map ) get a map for a list of prefixes from a key_map (e.g. group_, or feature_)","title":"function get_value_map"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-get_extra_columns","text":"static StringMap get_extra_columns ( StringMap key_map ) get any extra columns that don't match prefixes","title":"function get_extra_columns"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-determine_domain_type","text":"static DomainType determine_domain_type ( std :: string filename ) determine the domain type, given a filename","title":"function determine_domain_type"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-starts_with","text":"static bool starts_with ( std :: string str , std :: string prefix )","title":"function starts_with"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-transform_to_string","text":"static std :: string transform_to_string ( std :: vector < double > transform )","title":"function transform_to_string"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-convert_domain_types","text":"static std :: vector < std :: string > convert_domain_types ( std :: vector < DomainType > domain_types )","title":"function convert_domain_types"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-convert_groomed_domain_types","text":"static std :: vector < std :: string > convert_groomed_domain_types ( std :: vector < DomainType > domain_types )","title":"function convert_groomed_domain_types"},{"location":"api/Classes/classshapeworks_1_1ProjectUtils.html#function-convert_subject_to_map","text":"static StringMap convert_subject_to_map ( Project * project , Subject * subject ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function convert_subject_to_map"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html","text":"shapeworks::PythonWorker Inherits from QObject Public Slots Name bool init () void start_job (QSharedPointer< Job > job) void finalize_python () Public Signals Name void result_ready () void finished () Public Functions Name PythonWorker () ~PythonWorker () void set_vtk_output_window (vtkSmartPointer< StudioVtkOutputWindow > output_window) void run_job (QSharedPointer< Job > job) void incoming_python_message (std::string message_string) void incoming_python_progress (double value) void end_python () void abort_job () Public Attributes Name constexpr static const char * python_api_version Public Slots Documentation slot init bool init () slot start_job void start_job ( QSharedPointer < Job > job ) slot finalize_python void finalize_python () Public Signals Documentation signal result_ready void result_ready () signal finished void finished () Public Functions Documentation function PythonWorker PythonWorker () function ~PythonWorker ~ PythonWorker () function set_vtk_output_window void set_vtk_output_window ( vtkSmartPointer < StudioVtkOutputWindow > output_window ) function run_job void run_job ( QSharedPointer < Job > job ) function incoming_python_message void incoming_python_message ( std :: string message_string ) function incoming_python_progress void incoming_python_progress ( double value ) function end_python void end_python () function abort_job void abort_job () Public Attributes Documentation variable python_api_version static constexpr static const char * python_api_version = \"6.5\" ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::PythonWorker"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#shapeworkspythonworker","text":"Inherits from QObject","title":"shapeworks::PythonWorker"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-slots","text":"Name bool init () void start_job (QSharedPointer< Job > job) void finalize_python ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-signals","text":"Name void result_ready () void finished ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-functions","text":"Name PythonWorker () ~PythonWorker () void set_vtk_output_window (vtkSmartPointer< StudioVtkOutputWindow > output_window) void run_job (QSharedPointer< Job > job) void incoming_python_message (std::string message_string) void incoming_python_progress (double value) void end_python () void abort_job ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-attributes","text":"Name constexpr static const char * python_api_version","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#slot-init","text":"bool init ()","title":"slot init"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#slot-start_job","text":"void start_job ( QSharedPointer < Job > job )","title":"slot start_job"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#slot-finalize_python","text":"void finalize_python ()","title":"slot finalize_python"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#signal-result_ready","text":"void result_ready ()","title":"signal result_ready"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#signal-finished","text":"void finished ()","title":"signal finished"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-pythonworker","text":"PythonWorker ()","title":"function PythonWorker"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-pythonworker_1","text":"~ PythonWorker ()","title":"function ~PythonWorker"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-set_vtk_output_window","text":"void set_vtk_output_window ( vtkSmartPointer < StudioVtkOutputWindow > output_window )","title":"function set_vtk_output_window"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-run_job","text":"void run_job ( QSharedPointer < Job > job )","title":"function run_job"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-incoming_python_message","text":"void incoming_python_message ( std :: string message_string )","title":"function incoming_python_message"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-incoming_python_progress","text":"void incoming_python_progress ( double value )","title":"function incoming_python_progress"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-end_python","text":"void end_python ()","title":"function end_python"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#function-abort_job","text":"void abort_job ()","title":"function abort_job"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1PythonWorker.html#variable-python_api_version","text":"static constexpr static const char * python_api_version = \"6.5\" ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable python_api_version"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html","text":"shapeworks::QMeshWarper Wraps MeshWarper as a QObject. #include Inherits from QObject, shapeworks::MeshWarper Public Signals Name void progress () Public Functions Name QMeshWarper (QObject * parent =nullptr) float get_progress () Protected Functions Name virtual void update_progress (float p) override For overriding to handle progress updates. Additional inherited members Public Functions inherited from shapeworks::MeshWarper Name void set_reference_mesh (vtkSmartPointer< vtkPolyData > reference_mesh, const Eigen::MatrixXd & reference_particles, const Eigen::MatrixXd & landmarks ={}) Set the reference mesh and particles. bool generate_warp () Generate warp, return true on success. bool get_warp_available () Return if the warp is available. bool is_contour () const vtkSmartPointer< vtkPolyData > build_mesh (const Eigen::MatrixXd & particles) Build a mesh for a given set of particles. Eigen::MatrixXd extract_landmarks (vtkSmartPointer< vtkPolyData > warped_mesh) Return the landmarks (matrix [Nx3]) from the warped builded mesh. bool is_contour () Return if set as a contour. std::map< int, int > get_landmarks_map () const Return the map of landmarks id (Key) to vertice index (Value) std::vector< int > get_good_particle_indices () const Return the indexes of good particles (those that really control the warping) const Eigen::MatrixXd & get_warp_matrix () const Return the warp matrix. bool has_bad_particles () const Return true if warping has removed any bad particle(s) vtkSmartPointer< vtkPolyData > get_reference_mesh () Return the reference mesh which has been cleaned and vertices added. const Eigen::MatrixXd & get_reference_particles () const Return the reference particles. vtkSmartPointer< vtkPolyData > prep_mesh (vtkSmartPointer< vtkPolyData > mesh) Prep incoming mesh. Public Signals Documentation signal progress void progress () Public Functions Documentation function QMeshWarper QMeshWarper ( QObject * parent = nullptr ) function get_progress float get_progress () Protected Functions Documentation function update_progress virtual void update_progress ( float p ) override For overriding to handle progress updates. Reimplements : shapeworks::MeshWarper::update_progress Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::QMeshWarper"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#shapeworksqmeshwarper","text":"Wraps MeshWarper as a QObject. #include Inherits from QObject, shapeworks::MeshWarper","title":"shapeworks::QMeshWarper"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#public-signals","text":"Name void progress ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#public-functions","text":"Name QMeshWarper (QObject * parent =nullptr) float get_progress ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#protected-functions","text":"Name virtual void update_progress (float p) override For overriding to handle progress updates.","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::MeshWarper Name void set_reference_mesh (vtkSmartPointer< vtkPolyData > reference_mesh, const Eigen::MatrixXd & reference_particles, const Eigen::MatrixXd & landmarks ={}) Set the reference mesh and particles. bool generate_warp () Generate warp, return true on success. bool get_warp_available () Return if the warp is available. bool is_contour () const vtkSmartPointer< vtkPolyData > build_mesh (const Eigen::MatrixXd & particles) Build a mesh for a given set of particles. Eigen::MatrixXd extract_landmarks (vtkSmartPointer< vtkPolyData > warped_mesh) Return the landmarks (matrix [Nx3]) from the warped builded mesh. bool is_contour () Return if set as a contour. std::map< int, int > get_landmarks_map () const Return the map of landmarks id (Key) to vertice index (Value) std::vector< int > get_good_particle_indices () const Return the indexes of good particles (those that really control the warping) const Eigen::MatrixXd & get_warp_matrix () const Return the warp matrix. bool has_bad_particles () const Return true if warping has removed any bad particle(s) vtkSmartPointer< vtkPolyData > get_reference_mesh () Return the reference mesh which has been cleaned and vertices added. const Eigen::MatrixXd & get_reference_particles () const Return the reference particles. vtkSmartPointer< vtkPolyData > prep_mesh (vtkSmartPointer< vtkPolyData > mesh) Prep incoming mesh.","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#signal-progress","text":"void progress ()","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#function-qmeshwarper","text":"QMeshWarper ( QObject * parent = nullptr )","title":"function QMeshWarper"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#function-get_progress","text":"float get_progress ()","title":"function get_progress"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1QMeshWarper.html#function-update_progress","text":"virtual void update_progress ( float p ) override For overriding to handle progress updates. Reimplements : shapeworks::MeshWarper::update_progress Updated on 2023-10-24 at 22:16:02 +0000","title":"function update_progress"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html","text":"shapeworks::QOptimize Wraps Optimize as a QObject. #include Inherits from QObject, shapeworks::Optimize Public Signals Name void progress (int , QString ) Public Functions Name QOptimize (QObject * parent =nullptr) virtual ~QOptimize () virtual std::vector< std::vector< itk::Point< double > > > GetLocalPoints () override Return the local points. virtual std::vector< std::vector< itk::Point< double > > > GetGlobalPoints () override Return the global points. std::vector< Particles > GetParticles () virtual std::vector< std::vector< std::vector< double > > > GetProcrustesTransforms () override virtual void UpdateExportablePoints () override Protected Functions Name virtual void SetIterationCallback () override Set the iteration callback. Derived classes should override to set their own callback. virtual void IterateCallback (itk::Object * caller, const itk::EventObject & ) override Additional inherited members Public Types inherited from shapeworks::Optimize Name using itk::Image< float, 3 > ImageType using VectorFunction::VectorType VectorType using Eigen::MatrixXd MatrixType Public Functions inherited from shapeworks::Optimize Name Optimize () Constructor. virtual ~Optimize () Destructor. bool Run () Run the optimization. bool LoadParameterFile (std::string filename) Load a parameter file. bool SetUpOptimize (ProjectHandle project) Set up this Optimize object using a ShapeWorks project. void SetProject (std::shared_ptr< Project > project) Set the Project object. void SetIterationCallbackFunction (const std::function< void(void)> & f) Set an iteration callback function to be called after each iteration. void AbortOptimization () Abort optimization. bool GetAborted () Return if the optimization was aborted. void SetCutPlanes (std::vector< std::array< itk::Point< double >, 3 > > cut_planes) Set cutting planes. void SetVerbosity (int verbosity_level) Set the verbosity level (0-5) void SetDomainsPerShape (int domains_per_shape) Set the number of domains per shape. int GetDomainsPerShape () Return the number of domains per shape. void SetDomainType (shapeworks::DomainType type) shapeworks::DomainType GetDomainType () void SetNumberOfParticles (std::vector< int > number_of_particles) Set the numbers of particles (vector of numbers, one for each domain) std::vector< int > GetNumberOfParticles () Return the numbers of particles per domain. void SetTransformFile (std::string filename) Set the transform file. std::string GetTransformFile () Get the transform file. void SetPrefixTransformFile (std::string prefix_transform_file) Set the prefix transform file (TODO: details) std::string GetPrefixTransformFile () Get the prefix transform file. void SetOutputDir (std::string output_dir) Set the output directory. void SetOutputTransformFile (std::string output_transform_file) Set the output transform file. void SetOutputIndividualTransformFiles (bool value) Set whether individual transforms should be written. void SetUseMeshBasedAttributes (bool use_mesh_based_attributes) Set if mesh based attributes should be used. bool GetUseMeshBasedAttributes () Get if mesh based attributes are being used. void SetUseXYZ (std::vector< bool > use_xyz) Set if XYZ is used, one value per domain. void SetUseNormals (std::vector< bool > use_normals) Set if Normals are being used, one value per domain. void SetAttributesPerDomain (std::vector< int > attributes_per_domain) Set the attributes per domain. std::vector< int > GetAttributesPerDomain () Get attributes per domain. void SetDistributionDomainID (int distribution_domain_id) Set the distribution domain ID (TODO: details) int GetDistributionDomainID () Get the distribution domain ID. void SetOutputCuttingPlaneFile (std::string output_cutting_plane_file) Set the output cutting plane file. void SetUseCuttingPlanes (bool use_cutting_planes) Set if using cutting planes. void SetCuttingPlane (unsigned int i, const vnl_vector_fixed< double, 3 > & va, const vnl_vector_fixed< double, 3 > & vb, const vnl_vector_fixed< double, 3 > & vc) Set a given cutting plane for a shape. void SetProcessingMode (int mode) Set processing mode (TODO: details) void SetAdaptivityMode (int adaptivity_mode) Set adaptivity mode (TODO: details) void SetMeshFFCMode (int mesh_ffc_mode) Set Mesh FFC Mode false/0 = mesh clipping mode, true/1 = mesh augmented lagrangian mode. void SetAdaptivityStrength (double adaptivity_strength) Set adaptivity strength (TODO: details) void SetTimePtsPerSubject (int time_pts_per_subject) Set the number of time points per subject (TODO: details) int GetTimePtsPerSubject () Get the number of time points per subject (TODO: details) void SetOptimizationIterations (int optimization_iterations) Set the number of optimization iterations. void SetOptimizationIterationsCompleted (int optimization_iterations_completed) Set the number of optimization iterations already completed (TODO: details) void SetIterationsPerSplit (int iterations_per_split) Set the number of iterations per split. void SetUseShapeStatisticsInInit (bool use_shape_statistics_in_init) Set if shape statistics should be used in initialization. void SetProcrustesInterval (int procrustes_interval) Set the interval for running procrustes (0 to disable) void SetProcrustesScaling (bool procrustes_scaling) Set if procrustes scaling should be used. void SetProcrustesRotationTranslation (bool procrustes_rotation_translation) Set if procrustes rotation/translation should be used. void SetRelativeWeighting (double relative_weighting) Set the relative weighting (TODO: details) void SetInitialRelativeWeighting (double initial_relative_weighting) Set the initial relative weigting (TODO: details) void SetStartingRegularization (double starting_regularization) Set the starting regularization (TODO: details) void SetEndingRegularization (double ending_regularization) Set the ending regularization (TODO: details) void SetRecomputeRegularizationInterval (int recompute_regularization_interval) Set the interval for recomputing regularization (TODO: details) void SetSaveInitSplits (bool save_init_splits) Set if initialization splits should be saved or not. void SetCheckpointingInterval (int checkpointing_interval) Set the checkpointing interval. void SetKeepCheckpoints (int keep_checkpoints) Set if checkpoints should be kept (0=disable, 1=enable) void SetUseRegression (bool use_regression) Set if regression should be used (TODO: details) void SetUseMixedEffects (bool use_mixed_effects) Set if mixed effects should be used (TODO: details) void SetUseDisentangledSpatiotemporalSSM (bool use_disentangled_ssm_4d) Set if optimization should be done using disentangled spatiotemporal SSM method. bool GetUseDisentangledSpatiotemporalSSM () Returns true if optimization is to be done using disentangled spatiotemporal SSM method. void SetNormalAngle (double normal_angle) For good/bad analysis, set the normal angle to use (TODO: details) void SetPerformGoodBad (bool perform_good_bad) Set if good/bad analysis should be done (TODO: details) void SetLogEnergy (bool log_energy) Set the log energy (TODO: details) void AddImage (ImageType::Pointer image, std::string name =\"\") Set the shape input images. void AddMesh (vtkSmartPointer< vtkPolyData > poly_data) void AddContour (vtkSmartPointer< vtkPolyData > poly_data) void SetFilenames (const std::vector< std::string > & filenames) Set the shape filenames (TODO: details) void SetPointFiles (const std::vector< std::string > & point_files) Set starting point files (TODO: details) void SetInitialPoints (std::vector< std::vector< itk::Point< double > > > initial_points) Set initial particle positions (e.g. for fixed subjects) int GetNumShapes () Get number of shapes. void SetAttributeScales (const std::vector< double > & scales) Set attribute scales (TODO: details) void SetFieldAttributes (const std::vector< std::string > & field_attributes) Set the field attributes. void SetParticleFlags (std::vector< int > flags) Set Particle Flags (TODO: details) void SetFixedDomains (std::vector< int > flags) Set Domain Flags (TODO: details) void SetSharedBoundaryEnabled (bool enabled) Shared boundary settings. void SetSharedBoundaryWeight (double weight) const std::vector< int > & GetDomainFlags () void SetFileOutputEnabled (bool enabled) Set if file output is enabled. std::vector< bool > GetUseXYZ () Return if XYZ is used, per shape. std::vector< bool > GetUseNormals () Return if Normals are used, per shape. void SetNarrowBand (double v) Set the narrow band used to be +/- the given value as a multiple of the spacing. double GetNarrowBand () Return the narrow band to be used. void SetUseShapeStatisticsAfter (int num_particles) Set the number of particles when correspondence based multiscale takes over. int GetUseShapeStatisticsAfter () Return the number of particles when correspondence based multiscale takes over. void PrintParamInfo () Print parameter info to stdout. std::shared_ptr< Sampler > GetSampler () Return the Sampler . MatrixContainer GetParticleSystem () Return the particle system as a matrix. void SetPythonFile (std::string filename) Set the python file to run at startup. void SetGeodesicsEnabled (bool is_enabled) Set whether or not geodesics are enabled. void SetGeodesicsCacheSizeMultiplier (size_t n) OptimizationVisualizer & GetVisualizer () void SetShowVisualizer (bool show) bool GetShowVisualizer () bool GetMeshFFCMode () vnl_vector_fixed< double, 3 > TransformPoint (int domain, vnl_vector_fixed< double, 3 > input) transform a point if necessary void UpdateProgress () void set_particle_format (std::string format) Protected Functions inherited from shapeworks::Optimize Name void ComputeTotalIterations () void OptimizerStop () void ReadTransformFile () void ReadPrefixTransformFile (const std::string & s) void InitializeSampler () double GetMinNeighborhoodRadius () void AddSinglePoint () void Initialize () void AddAdaptivity () void RunOptimize () void ComputeEnergyAfterIteration () void SetCotanSigma () void WriteTransformFile (int iter =-1) const void WriteTransformFile (std::string iter_prefix) const void WriteTransformFiles (int iter =-1) const void WriteTransformFiles (std::string iter_prefix) const void WritePointFiles (int iter =-1) void WritePointFiles (std::string iter_prefix) void WritePointFilesWithFeatures (int iter =-1) void WritePointFilesWithFeatures (std::string iter_prefix) void WriteEnergyFiles () void WriteSplitFiles (std::string name) void WriteCuttingPlanePoints (int iter =-1) void WriteParameters (std::string output_dir =\"\") void ReportBadParticles () int SetParameters () void WriteModes () void PrintStartMessage (std::string str, unsigned int vlevel =0) const void PrintDoneMessage (unsigned int vlevel =0) const void UpdateProject () std::string GetCheckpointDir () Protected Attributes inherited from shapeworks::Optimize Name std::shared_ptr< Sampler > m_sampler ProcrustesRegistration::Pointer m_procrustes std::shared_ptr< ParticleGoodBadAssessment > m_good_bad unsigned int m_verbosity_level std::vector< std::vector< itk::Point< double > > > m_local_points std::vector< std::vector< itk::Point< double > > > m_global_points int m_checkpoint_counter int m_procrustes_counter bool m_use_cutting_planes bool m_optimizing bool m_use_regression bool m_use_mixed_effects bool m_use_disentangled_ssm unsigned int m_domains_per_shape shapeworks::DomainType m_domain_type std::vector< int > m_number_of_particles std::string m_transform_file std::string m_prefix_transform_file std::string m_output_dir std::string m_output_transform_file bool m_output_transform_files bool m_mesh_based_attributes std::vector< bool > m_use_xyz std::vector< bool > m_use_normals std::vector< int > m_attributes_per_domain int m_distribution_domain_id std::string m_output_cutting_plane_file int m_processing_mode int m_adaptivity_mode double m_adaptivity_strength bool m_mesh_ffc_mode unsigned int m_timepts_per_subject int m_optimization_iterations int m_optimization_iterations_completed int m_iterations_per_split bool m_use_shape_statistics_in_init unsigned int m_procrustes_interval bool m_procrustes_scaling bool m_procrustes_rotation_translation double m_relative_weighting double m_initial_relative_weighting double m_starting_regularization double m_ending_regularization int m_recompute_regularization_interval bool m_save_init_splits unsigned int m_checkpointing_interval int m_keep_checkpoints double m_cotan_sigma_factor std::vector< int > m_particle_flags std::vector< int > m_domain_flags double m_narrow_band bool m_narrow_band_set bool m_fixed_domains_present int m_use_shape_statistics_after std::string m_python_filename bool m_geodesics_enabled size_t m_geodesic_cache_size_multiplier double m_spacing std::vector< std::string > m_filenames int m_num_shapes std::vector< double > m_energy_a std::vector< double > m_energy_b std::vector< double > m_total_energy bool m_log_energy std::string m_str_energy std::vector< std::vector< int > > m_bad_ids double m_normal_angle bool m_perform_good_bad std::vector< int > m_cutting_planes_per_input std::vector< int > m_spheres_per_input bool m_file_output_enabled bool m_aborted std::vector< std::array< itk::Point< double >, 3 > > m_cut_planes int m_total_iterations int m_iteration_count int m_split_number int current_particle_iterations_ int total_particle_iterations_ std::function< void(void)> iteration_callback_ bool show_visualizer_ shapeworks::OptimizationVisualizer visualizer_ std::string particle_format_ std::shared_ptr< Project > project_ std::chrono::system_clock::time_point m_start_time std::chrono::system_clock::time_point m_last_update_time std::chrono::system_clock::time_point m_last_remaining_update_time std::string m_remaining_time_message Public Signals Documentation signal progress void progress ( int , QString ) Public Functions Documentation function QOptimize QOptimize ( QObject * parent = nullptr ) function ~QOptimize virtual ~ QOptimize () function GetLocalPoints virtual std :: vector < std :: vector < itk :: Point < double > > > GetLocalPoints () override Return the local points. Reimplements : shapeworks::Optimize::GetLocalPoints function GetGlobalPoints virtual std :: vector < std :: vector < itk :: Point < double > > > GetGlobalPoints () override Return the global points. Reimplements : shapeworks::Optimize::GetGlobalPoints function GetParticles std :: vector < Particles > GetParticles () function GetProcrustesTransforms virtual std :: vector < std :: vector < std :: vector < double > > > GetProcrustesTransforms () override Reimplements : shapeworks::Optimize::GetProcrustesTransforms function UpdateExportablePoints virtual void UpdateExportablePoints () override Reimplements : shapeworks::Optimize::UpdateExportablePoints Protected Functions Documentation function SetIterationCallback virtual void SetIterationCallback () override Set the iteration callback. Derived classes should override to set their own callback. Reimplements : shapeworks::Optimize::SetIterationCallback function IterateCallback virtual void IterateCallback ( itk :: Object * caller , const itk :: EventObject & ) override Reimplements : shapeworks::Optimize::IterateCallback Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::QOptimize"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#shapeworksqoptimize","text":"Wraps Optimize as a QObject. #include Inherits from QObject, shapeworks::Optimize","title":"shapeworks::QOptimize"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#public-signals","text":"Name void progress (int , QString )","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#public-functions","text":"Name QOptimize (QObject * parent =nullptr) virtual ~QOptimize () virtual std::vector< std::vector< itk::Point< double > > > GetLocalPoints () override Return the local points. virtual std::vector< std::vector< itk::Point< double > > > GetGlobalPoints () override Return the global points. std::vector< Particles > GetParticles () virtual std::vector< std::vector< std::vector< double > > > GetProcrustesTransforms () override virtual void UpdateExportablePoints () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#protected-functions","text":"Name virtual void SetIterationCallback () override Set the iteration callback. Derived classes should override to set their own callback. virtual void IterateCallback (itk::Object * caller, const itk::EventObject & ) override","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#additional-inherited-members","text":"Public Types inherited from shapeworks::Optimize Name using itk::Image< float, 3 > ImageType using VectorFunction::VectorType VectorType using Eigen::MatrixXd MatrixType Public Functions inherited from shapeworks::Optimize Name Optimize () Constructor. virtual ~Optimize () Destructor. bool Run () Run the optimization. bool LoadParameterFile (std::string filename) Load a parameter file. bool SetUpOptimize (ProjectHandle project) Set up this Optimize object using a ShapeWorks project. void SetProject (std::shared_ptr< Project > project) Set the Project object. void SetIterationCallbackFunction (const std::function< void(void)> & f) Set an iteration callback function to be called after each iteration. void AbortOptimization () Abort optimization. bool GetAborted () Return if the optimization was aborted. void SetCutPlanes (std::vector< std::array< itk::Point< double >, 3 > > cut_planes) Set cutting planes. void SetVerbosity (int verbosity_level) Set the verbosity level (0-5) void SetDomainsPerShape (int domains_per_shape) Set the number of domains per shape. int GetDomainsPerShape () Return the number of domains per shape. void SetDomainType (shapeworks::DomainType type) shapeworks::DomainType GetDomainType () void SetNumberOfParticles (std::vector< int > number_of_particles) Set the numbers of particles (vector of numbers, one for each domain) std::vector< int > GetNumberOfParticles () Return the numbers of particles per domain. void SetTransformFile (std::string filename) Set the transform file. std::string GetTransformFile () Get the transform file. void SetPrefixTransformFile (std::string prefix_transform_file) Set the prefix transform file (TODO: details) std::string GetPrefixTransformFile () Get the prefix transform file. void SetOutputDir (std::string output_dir) Set the output directory. void SetOutputTransformFile (std::string output_transform_file) Set the output transform file. void SetOutputIndividualTransformFiles (bool value) Set whether individual transforms should be written. void SetUseMeshBasedAttributes (bool use_mesh_based_attributes) Set if mesh based attributes should be used. bool GetUseMeshBasedAttributes () Get if mesh based attributes are being used. void SetUseXYZ (std::vector< bool > use_xyz) Set if XYZ is used, one value per domain. void SetUseNormals (std::vector< bool > use_normals) Set if Normals are being used, one value per domain. void SetAttributesPerDomain (std::vector< int > attributes_per_domain) Set the attributes per domain. std::vector< int > GetAttributesPerDomain () Get attributes per domain. void SetDistributionDomainID (int distribution_domain_id) Set the distribution domain ID (TODO: details) int GetDistributionDomainID () Get the distribution domain ID. void SetOutputCuttingPlaneFile (std::string output_cutting_plane_file) Set the output cutting plane file. void SetUseCuttingPlanes (bool use_cutting_planes) Set if using cutting planes. void SetCuttingPlane (unsigned int i, const vnl_vector_fixed< double, 3 > & va, const vnl_vector_fixed< double, 3 > & vb, const vnl_vector_fixed< double, 3 > & vc) Set a given cutting plane for a shape. void SetProcessingMode (int mode) Set processing mode (TODO: details) void SetAdaptivityMode (int adaptivity_mode) Set adaptivity mode (TODO: details) void SetMeshFFCMode (int mesh_ffc_mode) Set Mesh FFC Mode false/0 = mesh clipping mode, true/1 = mesh augmented lagrangian mode. void SetAdaptivityStrength (double adaptivity_strength) Set adaptivity strength (TODO: details) void SetTimePtsPerSubject (int time_pts_per_subject) Set the number of time points per subject (TODO: details) int GetTimePtsPerSubject () Get the number of time points per subject (TODO: details) void SetOptimizationIterations (int optimization_iterations) Set the number of optimization iterations. void SetOptimizationIterationsCompleted (int optimization_iterations_completed) Set the number of optimization iterations already completed (TODO: details) void SetIterationsPerSplit (int iterations_per_split) Set the number of iterations per split. void SetUseShapeStatisticsInInit (bool use_shape_statistics_in_init) Set if shape statistics should be used in initialization. void SetProcrustesInterval (int procrustes_interval) Set the interval for running procrustes (0 to disable) void SetProcrustesScaling (bool procrustes_scaling) Set if procrustes scaling should be used. void SetProcrustesRotationTranslation (bool procrustes_rotation_translation) Set if procrustes rotation/translation should be used. void SetRelativeWeighting (double relative_weighting) Set the relative weighting (TODO: details) void SetInitialRelativeWeighting (double initial_relative_weighting) Set the initial relative weigting (TODO: details) void SetStartingRegularization (double starting_regularization) Set the starting regularization (TODO: details) void SetEndingRegularization (double ending_regularization) Set the ending regularization (TODO: details) void SetRecomputeRegularizationInterval (int recompute_regularization_interval) Set the interval for recomputing regularization (TODO: details) void SetSaveInitSplits (bool save_init_splits) Set if initialization splits should be saved or not. void SetCheckpointingInterval (int checkpointing_interval) Set the checkpointing interval. void SetKeepCheckpoints (int keep_checkpoints) Set if checkpoints should be kept (0=disable, 1=enable) void SetUseRegression (bool use_regression) Set if regression should be used (TODO: details) void SetUseMixedEffects (bool use_mixed_effects) Set if mixed effects should be used (TODO: details) void SetUseDisentangledSpatiotemporalSSM (bool use_disentangled_ssm_4d) Set if optimization should be done using disentangled spatiotemporal SSM method. bool GetUseDisentangledSpatiotemporalSSM () Returns true if optimization is to be done using disentangled spatiotemporal SSM method. void SetNormalAngle (double normal_angle) For good/bad analysis, set the normal angle to use (TODO: details) void SetPerformGoodBad (bool perform_good_bad) Set if good/bad analysis should be done (TODO: details) void SetLogEnergy (bool log_energy) Set the log energy (TODO: details) void AddImage (ImageType::Pointer image, std::string name =\"\") Set the shape input images. void AddMesh (vtkSmartPointer< vtkPolyData > poly_data) void AddContour (vtkSmartPointer< vtkPolyData > poly_data) void SetFilenames (const std::vector< std::string > & filenames) Set the shape filenames (TODO: details) void SetPointFiles (const std::vector< std::string > & point_files) Set starting point files (TODO: details) void SetInitialPoints (std::vector< std::vector< itk::Point< double > > > initial_points) Set initial particle positions (e.g. for fixed subjects) int GetNumShapes () Get number of shapes. void SetAttributeScales (const std::vector< double > & scales) Set attribute scales (TODO: details) void SetFieldAttributes (const std::vector< std::string > & field_attributes) Set the field attributes. void SetParticleFlags (std::vector< int > flags) Set Particle Flags (TODO: details) void SetFixedDomains (std::vector< int > flags) Set Domain Flags (TODO: details) void SetSharedBoundaryEnabled (bool enabled) Shared boundary settings. void SetSharedBoundaryWeight (double weight) const std::vector< int > & GetDomainFlags () void SetFileOutputEnabled (bool enabled) Set if file output is enabled. std::vector< bool > GetUseXYZ () Return if XYZ is used, per shape. std::vector< bool > GetUseNormals () Return if Normals are used, per shape. void SetNarrowBand (double v) Set the narrow band used to be +/- the given value as a multiple of the spacing. double GetNarrowBand () Return the narrow band to be used. void SetUseShapeStatisticsAfter (int num_particles) Set the number of particles when correspondence based multiscale takes over. int GetUseShapeStatisticsAfter () Return the number of particles when correspondence based multiscale takes over. void PrintParamInfo () Print parameter info to stdout. std::shared_ptr< Sampler > GetSampler () Return the Sampler . MatrixContainer GetParticleSystem () Return the particle system as a matrix. void SetPythonFile (std::string filename) Set the python file to run at startup. void SetGeodesicsEnabled (bool is_enabled) Set whether or not geodesics are enabled. void SetGeodesicsCacheSizeMultiplier (size_t n) OptimizationVisualizer & GetVisualizer () void SetShowVisualizer (bool show) bool GetShowVisualizer () bool GetMeshFFCMode () vnl_vector_fixed< double, 3 > TransformPoint (int domain, vnl_vector_fixed< double, 3 > input) transform a point if necessary void UpdateProgress () void set_particle_format (std::string format) Protected Functions inherited from shapeworks::Optimize Name void ComputeTotalIterations () void OptimizerStop () void ReadTransformFile () void ReadPrefixTransformFile (const std::string & s) void InitializeSampler () double GetMinNeighborhoodRadius () void AddSinglePoint () void Initialize () void AddAdaptivity () void RunOptimize () void ComputeEnergyAfterIteration () void SetCotanSigma () void WriteTransformFile (int iter =-1) const void WriteTransformFile (std::string iter_prefix) const void WriteTransformFiles (int iter =-1) const void WriteTransformFiles (std::string iter_prefix) const void WritePointFiles (int iter =-1) void WritePointFiles (std::string iter_prefix) void WritePointFilesWithFeatures (int iter =-1) void WritePointFilesWithFeatures (std::string iter_prefix) void WriteEnergyFiles () void WriteSplitFiles (std::string name) void WriteCuttingPlanePoints (int iter =-1) void WriteParameters (std::string output_dir =\"\") void ReportBadParticles () int SetParameters () void WriteModes () void PrintStartMessage (std::string str, unsigned int vlevel =0) const void PrintDoneMessage (unsigned int vlevel =0) const void UpdateProject () std::string GetCheckpointDir () Protected Attributes inherited from shapeworks::Optimize Name std::shared_ptr< Sampler > m_sampler ProcrustesRegistration::Pointer m_procrustes std::shared_ptr< ParticleGoodBadAssessment > m_good_bad unsigned int m_verbosity_level std::vector< std::vector< itk::Point< double > > > m_local_points std::vector< std::vector< itk::Point< double > > > m_global_points int m_checkpoint_counter int m_procrustes_counter bool m_use_cutting_planes bool m_optimizing bool m_use_regression bool m_use_mixed_effects bool m_use_disentangled_ssm unsigned int m_domains_per_shape shapeworks::DomainType m_domain_type std::vector< int > m_number_of_particles std::string m_transform_file std::string m_prefix_transform_file std::string m_output_dir std::string m_output_transform_file bool m_output_transform_files bool m_mesh_based_attributes std::vector< bool > m_use_xyz std::vector< bool > m_use_normals std::vector< int > m_attributes_per_domain int m_distribution_domain_id std::string m_output_cutting_plane_file int m_processing_mode int m_adaptivity_mode double m_adaptivity_strength bool m_mesh_ffc_mode unsigned int m_timepts_per_subject int m_optimization_iterations int m_optimization_iterations_completed int m_iterations_per_split bool m_use_shape_statistics_in_init unsigned int m_procrustes_interval bool m_procrustes_scaling bool m_procrustes_rotation_translation double m_relative_weighting double m_initial_relative_weighting double m_starting_regularization double m_ending_regularization int m_recompute_regularization_interval bool m_save_init_splits unsigned int m_checkpointing_interval int m_keep_checkpoints double m_cotan_sigma_factor std::vector< int > m_particle_flags std::vector< int > m_domain_flags double m_narrow_band bool m_narrow_band_set bool m_fixed_domains_present int m_use_shape_statistics_after std::string m_python_filename bool m_geodesics_enabled size_t m_geodesic_cache_size_multiplier double m_spacing std::vector< std::string > m_filenames int m_num_shapes std::vector< double > m_energy_a std::vector< double > m_energy_b std::vector< double > m_total_energy bool m_log_energy std::string m_str_energy std::vector< std::vector< int > > m_bad_ids double m_normal_angle bool m_perform_good_bad std::vector< int > m_cutting_planes_per_input std::vector< int > m_spheres_per_input bool m_file_output_enabled bool m_aborted std::vector< std::array< itk::Point< double >, 3 > > m_cut_planes int m_total_iterations int m_iteration_count int m_split_number int current_particle_iterations_ int total_particle_iterations_ std::function< void(void)> iteration_callback_ bool show_visualizer_ shapeworks::OptimizationVisualizer visualizer_ std::string particle_format_ std::shared_ptr< Project > project_ std::chrono::system_clock::time_point m_start_time std::chrono::system_clock::time_point m_last_update_time std::chrono::system_clock::time_point m_last_remaining_update_time std::string m_remaining_time_message","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#signal-progress","text":"void progress ( int , QString )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-qoptimize","text":"QOptimize ( QObject * parent = nullptr )","title":"function QOptimize"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-qoptimize_1","text":"virtual ~ QOptimize ()","title":"function ~QOptimize"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-getlocalpoints","text":"virtual std :: vector < std :: vector < itk :: Point < double > > > GetLocalPoints () override Return the local points. Reimplements : shapeworks::Optimize::GetLocalPoints","title":"function GetLocalPoints"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-getglobalpoints","text":"virtual std :: vector < std :: vector < itk :: Point < double > > > GetGlobalPoints () override Return the global points. Reimplements : shapeworks::Optimize::GetGlobalPoints","title":"function GetGlobalPoints"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-getparticles","text":"std :: vector < Particles > GetParticles ()","title":"function GetParticles"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-getprocrustestransforms","text":"virtual std :: vector < std :: vector < std :: vector < double > > > GetProcrustesTransforms () override Reimplements : shapeworks::Optimize::GetProcrustesTransforms","title":"function GetProcrustesTransforms"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-updateexportablepoints","text":"virtual void UpdateExportablePoints () override Reimplements : shapeworks::Optimize::UpdateExportablePoints","title":"function UpdateExportablePoints"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-setiterationcallback","text":"virtual void SetIterationCallback () override Set the iteration callback. Derived classes should override to set their own callback. Reimplements : shapeworks::Optimize::SetIterationCallback","title":"function SetIterationCallback"},{"location":"api/Classes/classshapeworks_1_1QOptimize.html#function-iteratecallback","text":"virtual void IterateCallback ( itk :: Object * caller , const itk :: EventObject & ) override Reimplements : shapeworks::Optimize::IterateCallback Updated on 2023-10-24 at 22:16:02 +0000","title":"function IterateCallback"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html","text":"shapeworks::ReconstructSurface More... Public Types Name using typename TransformType::Pointer TransformTypePtr using typename TransformType::PointSetType PointSetType using typename PointSetType::PointIdentifier PointIdType Public Functions Name ReconstructSurface () =default ReconstructSurface (const std::string & denseFile, const std::string & sparseFile, const std::string & goodPointsFile) double computeAverageDistanceToNeighbors (Mesh::MeshPoints points, std::vector< int > particlesIndices) void checkMapping (TransformTypePtr transform, Mesh::MeshPoints sourcePoints, Mesh::MeshPoints targetPoints) void generateWarpedMeshes (TransformTypePtr transform, vtkSmartPointer< vtkPolyData > & outputMesh) Mesh getMesh (PointArray localPoints) Mesh::MeshPoints convertToImageCoordinates (Mesh::MeshPoints particles, const Vector & spacing, const Point3 & origin) int computeMedianShape (std::vector< Eigen::MatrixXd > & shapeList) void performKMeansClustering (std::vector< PointArray > worldPoints, int numberOfParticles, std::vector< int > & centroidIndices) Eigen::MatrixXd computeParticlesNormals (vtkSmartPointer< vtkPoints > particles, Image dt) vtkSmartPointer< vtkPolyData > getDenseMean (std::vector< PointArray > localPoints, std::vector< PointArray > worldPoints, std::vector< std::string > distance_transform) void computeDenseMean (std::vector< PointArray > localPoints, std::vector< PointArray > worldPoints, std::vector< std::string > distanceTransform) std::vector< PointArray > computeSparseMean (std::vector< PointArray > localPoints, Point3 commonCenter) void writeMeanInfo () void surface (const std::vector< std::string > localPointsFiles) void samplesAlongPCAModes (const std::vector< std::string > worldPointsFiles) void meanSurface (const std::vector< std::string > distanceTransformFiles, const std::vector< std::string > localPointsFiles, const std::vector< std::string > worldPointsFiles) void setOutPrefix (std::string prefix) void setOutPath (std::string path) void setDoProcrustes (bool doProcrusts) void setDoProcrustesScaling (bool doProcrustsScaling) void setPairwiseNormalsDiffForGoodBad (bool pairwiseNormalsDiffForGoodBad) void setMeanBeforeWarp (bool meanBeforeWarp) void setEnableOutput (bool enableOutput) void setModeIndex (int modeIndex) void setNumOfModes (int numOfModes) void setNumOfSamplesPerMode (int numOfSamplesPerMode) void setNumOfParticles (int numOfParticles) void setNumOfClusters (int numOfClusters) void setMaxStdDev (float maxStdDev) void setMaxVarianceCaptured (float maxVarianceCaptured) void setMaxAngleDegrees (float maxAngleDegrees) Detailed Description template < class TransformType > class shapeworks :: ReconstructSurface ; Public Types Documentation using TransformTypePtr using shapeworks :: ReconstructSurface < TransformType >:: TransformTypePtr = typename TransformType :: Pointer ; using PointSetType using shapeworks :: ReconstructSurface < TransformType >:: PointSetType = typename TransformType :: PointSetType ; using PointIdType using shapeworks :: ReconstructSurface < TransformType >:: PointIdType = typename PointSetType :: PointIdentifier ; Public Functions Documentation function ReconstructSurface ReconstructSurface () = default function ReconstructSurface ReconstructSurface ( const std :: string & denseFile , const std :: string & sparseFile , const std :: string & goodPointsFile ) function computeAverageDistanceToNeighbors double computeAverageDistanceToNeighbors ( Mesh :: MeshPoints points , std :: vector < int > particlesIndices ) function checkMapping void checkMapping ( TransformTypePtr transform , Mesh :: MeshPoints sourcePoints , Mesh :: MeshPoints targetPoints ) function generateWarpedMeshes void generateWarpedMeshes ( TransformTypePtr transform , vtkSmartPointer < vtkPolyData > & outputMesh ) function getMesh Mesh getMesh ( PointArray localPoints ) function convertToImageCoordinates Mesh :: MeshPoints convertToImageCoordinates ( Mesh :: MeshPoints particles , const Vector & spacing , const Point3 & origin ) function computeMedianShape int computeMedianShape ( std :: vector < Eigen :: MatrixXd > & shapeList ) function performKMeansClustering void performKMeansClustering ( std :: vector < PointArray > worldPoints , int numberOfParticles , std :: vector < int > & centroidIndices ) function computeParticlesNormals Eigen :: MatrixXd computeParticlesNormals ( vtkSmartPointer < vtkPoints > particles , Image dt ) function getDenseMean vtkSmartPointer < vtkPolyData > getDenseMean ( std :: vector < PointArray > localPoints , std :: vector < PointArray > worldPoints , std :: vector < std :: string > distance_transform ) function computeDenseMean void computeDenseMean ( std :: vector < PointArray > localPoints , std :: vector < PointArray > worldPoints , std :: vector < std :: string > distanceTransform ) function computeSparseMean std :: vector < PointArray > computeSparseMean ( std :: vector < PointArray > localPoints , Point3 commonCenter ) function writeMeanInfo void writeMeanInfo () function surface void surface ( const std :: vector < std :: string > localPointsFiles ) function samplesAlongPCAModes void samplesAlongPCAModes ( const std :: vector < std :: string > worldPointsFiles ) function meanSurface void meanSurface ( const std :: vector < std :: string > distanceTransformFiles , const std :: vector < std :: string > localPointsFiles , const std :: vector < std :: string > worldPointsFiles ) function setOutPrefix inline void setOutPrefix ( std :: string prefix ) function setOutPath inline void setOutPath ( std :: string path ) function setDoProcrustes inline void setDoProcrustes ( bool doProcrusts ) function setDoProcrustesScaling inline void setDoProcrustesScaling ( bool doProcrustsScaling ) function setPairwiseNormalsDiffForGoodBad inline void setPairwiseNormalsDiffForGoodBad ( bool pairwiseNormalsDiffForGoodBad ) function setMeanBeforeWarp inline void setMeanBeforeWarp ( bool meanBeforeWarp ) function setEnableOutput inline void setEnableOutput ( bool enableOutput ) function setModeIndex inline void setModeIndex ( int modeIndex ) function setNumOfModes inline void setNumOfModes ( int numOfModes ) function setNumOfSamplesPerMode inline void setNumOfSamplesPerMode ( int numOfSamplesPerMode ) function setNumOfParticles inline void setNumOfParticles ( int numOfParticles ) function setNumOfClusters inline void setNumOfClusters ( int numOfClusters ) function setMaxStdDev inline void setMaxStdDev ( float maxStdDev ) function setMaxVarianceCaptured inline void setMaxVarianceCaptured ( float maxVarianceCaptured ) function setMaxAngleDegrees inline void setMaxAngleDegrees ( float maxAngleDegrees ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ReconstructSurface"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#shapeworksreconstructsurface","text":"More...","title":"shapeworks::ReconstructSurface"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#public-types","text":"Name using typename TransformType::Pointer TransformTypePtr using typename TransformType::PointSetType PointSetType using typename PointSetType::PointIdentifier PointIdType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#public-functions","text":"Name ReconstructSurface () =default ReconstructSurface (const std::string & denseFile, const std::string & sparseFile, const std::string & goodPointsFile) double computeAverageDistanceToNeighbors (Mesh::MeshPoints points, std::vector< int > particlesIndices) void checkMapping (TransformTypePtr transform, Mesh::MeshPoints sourcePoints, Mesh::MeshPoints targetPoints) void generateWarpedMeshes (TransformTypePtr transform, vtkSmartPointer< vtkPolyData > & outputMesh) Mesh getMesh (PointArray localPoints) Mesh::MeshPoints convertToImageCoordinates (Mesh::MeshPoints particles, const Vector & spacing, const Point3 & origin) int computeMedianShape (std::vector< Eigen::MatrixXd > & shapeList) void performKMeansClustering (std::vector< PointArray > worldPoints, int numberOfParticles, std::vector< int > & centroidIndices) Eigen::MatrixXd computeParticlesNormals (vtkSmartPointer< vtkPoints > particles, Image dt) vtkSmartPointer< vtkPolyData > getDenseMean (std::vector< PointArray > localPoints, std::vector< PointArray > worldPoints, std::vector< std::string > distance_transform) void computeDenseMean (std::vector< PointArray > localPoints, std::vector< PointArray > worldPoints, std::vector< std::string > distanceTransform) std::vector< PointArray > computeSparseMean (std::vector< PointArray > localPoints, Point3 commonCenter) void writeMeanInfo () void surface (const std::vector< std::string > localPointsFiles) void samplesAlongPCAModes (const std::vector< std::string > worldPointsFiles) void meanSurface (const std::vector< std::string > distanceTransformFiles, const std::vector< std::string > localPointsFiles, const std::vector< std::string > worldPointsFiles) void setOutPrefix (std::string prefix) void setOutPath (std::string path) void setDoProcrustes (bool doProcrusts) void setDoProcrustesScaling (bool doProcrustsScaling) void setPairwiseNormalsDiffForGoodBad (bool pairwiseNormalsDiffForGoodBad) void setMeanBeforeWarp (bool meanBeforeWarp) void setEnableOutput (bool enableOutput) void setModeIndex (int modeIndex) void setNumOfModes (int numOfModes) void setNumOfSamplesPerMode (int numOfSamplesPerMode) void setNumOfParticles (int numOfParticles) void setNumOfClusters (int numOfClusters) void setMaxStdDev (float maxStdDev) void setMaxVarianceCaptured (float maxVarianceCaptured) void setMaxAngleDegrees (float maxAngleDegrees)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#detailed-description","text":"template < class TransformType > class shapeworks :: ReconstructSurface ;","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#using-transformtypeptr","text":"using shapeworks :: ReconstructSurface < TransformType >:: TransformTypePtr = typename TransformType :: Pointer ;","title":"using TransformTypePtr"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#using-pointsettype","text":"using shapeworks :: ReconstructSurface < TransformType >:: PointSetType = typename TransformType :: PointSetType ;","title":"using PointSetType"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#using-pointidtype","text":"using shapeworks :: ReconstructSurface < TransformType >:: PointIdType = typename PointSetType :: PointIdentifier ;","title":"using PointIdType"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-reconstructsurface","text":"ReconstructSurface () = default","title":"function ReconstructSurface"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-reconstructsurface_1","text":"ReconstructSurface ( const std :: string & denseFile , const std :: string & sparseFile , const std :: string & goodPointsFile )","title":"function ReconstructSurface"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-computeaveragedistancetoneighbors","text":"double computeAverageDistanceToNeighbors ( Mesh :: MeshPoints points , std :: vector < int > particlesIndices )","title":"function computeAverageDistanceToNeighbors"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-checkmapping","text":"void checkMapping ( TransformTypePtr transform , Mesh :: MeshPoints sourcePoints , Mesh :: MeshPoints targetPoints )","title":"function checkMapping"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-generatewarpedmeshes","text":"void generateWarpedMeshes ( TransformTypePtr transform , vtkSmartPointer < vtkPolyData > & outputMesh )","title":"function generateWarpedMeshes"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-getmesh","text":"Mesh getMesh ( PointArray localPoints )","title":"function getMesh"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-converttoimagecoordinates","text":"Mesh :: MeshPoints convertToImageCoordinates ( Mesh :: MeshPoints particles , const Vector & spacing , const Point3 & origin )","title":"function convertToImageCoordinates"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-computemedianshape","text":"int computeMedianShape ( std :: vector < Eigen :: MatrixXd > & shapeList )","title":"function computeMedianShape"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-performkmeansclustering","text":"void performKMeansClustering ( std :: vector < PointArray > worldPoints , int numberOfParticles , std :: vector < int > & centroidIndices )","title":"function performKMeansClustering"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-computeparticlesnormals","text":"Eigen :: MatrixXd computeParticlesNormals ( vtkSmartPointer < vtkPoints > particles , Image dt )","title":"function computeParticlesNormals"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-getdensemean","text":"vtkSmartPointer < vtkPolyData > getDenseMean ( std :: vector < PointArray > localPoints , std :: vector < PointArray > worldPoints , std :: vector < std :: string > distance_transform )","title":"function getDenseMean"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-computedensemean","text":"void computeDenseMean ( std :: vector < PointArray > localPoints , std :: vector < PointArray > worldPoints , std :: vector < std :: string > distanceTransform )","title":"function computeDenseMean"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-computesparsemean","text":"std :: vector < PointArray > computeSparseMean ( std :: vector < PointArray > localPoints , Point3 commonCenter )","title":"function computeSparseMean"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-writemeaninfo","text":"void writeMeanInfo ()","title":"function writeMeanInfo"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-surface","text":"void surface ( const std :: vector < std :: string > localPointsFiles )","title":"function surface"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-samplesalongpcamodes","text":"void samplesAlongPCAModes ( const std :: vector < std :: string > worldPointsFiles )","title":"function samplesAlongPCAModes"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-meansurface","text":"void meanSurface ( const std :: vector < std :: string > distanceTransformFiles , const std :: vector < std :: string > localPointsFiles , const std :: vector < std :: string > worldPointsFiles )","title":"function meanSurface"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setoutprefix","text":"inline void setOutPrefix ( std :: string prefix )","title":"function setOutPrefix"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setoutpath","text":"inline void setOutPath ( std :: string path )","title":"function setOutPath"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setdoprocrustes","text":"inline void setDoProcrustes ( bool doProcrusts )","title":"function setDoProcrustes"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setdoprocrustesscaling","text":"inline void setDoProcrustesScaling ( bool doProcrustsScaling )","title":"function setDoProcrustesScaling"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setpairwisenormalsdiffforgoodbad","text":"inline void setPairwiseNormalsDiffForGoodBad ( bool pairwiseNormalsDiffForGoodBad )","title":"function setPairwiseNormalsDiffForGoodBad"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setmeanbeforewarp","text":"inline void setMeanBeforeWarp ( bool meanBeforeWarp )","title":"function setMeanBeforeWarp"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setenableoutput","text":"inline void setEnableOutput ( bool enableOutput )","title":"function setEnableOutput"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setmodeindex","text":"inline void setModeIndex ( int modeIndex )","title":"function setModeIndex"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setnumofmodes","text":"inline void setNumOfModes ( int numOfModes )","title":"function setNumOfModes"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setnumofsamplespermode","text":"inline void setNumOfSamplesPerMode ( int numOfSamplesPerMode )","title":"function setNumOfSamplesPerMode"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setnumofparticles","text":"inline void setNumOfParticles ( int numOfParticles )","title":"function setNumOfParticles"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setnumofclusters","text":"inline void setNumOfClusters ( int numOfClusters )","title":"function setNumOfClusters"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setmaxstddev","text":"inline void setMaxStdDev ( float maxStdDev )","title":"function setMaxStdDev"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setmaxvariancecaptured","text":"inline void setMaxVarianceCaptured ( float maxVarianceCaptured )","title":"function setMaxVarianceCaptured"},{"location":"api/Classes/classshapeworks_1_1ReconstructSurface.html#function-setmaxangledegrees","text":"inline void setMaxAngleDegrees ( float maxAngleDegrees ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function setMaxAngleDegrees"},{"location":"api/Classes/classshapeworks_1_1Sampler.html","text":"shapeworks::Sampler Public Classes Name struct CuttingPlaneType struct SphereType Public Types Name using float PixelType using itk::Image< PixelType, Dimension > ImageType using ImageType::PointType PointType using MeanCurvatureContainer < PixelType, Dimension > MeanCurvatureCacheType using vnl_matrix_fixed< double, Dimension+1, Dimension+1 > TransformType using GradientDescentOptimizer OptimizerType using std::vector< std::vector< std::pair< Eigen::Vector3d, Eigen::Vector3d > > > CuttingPlaneList Public Functions Name Sampler () Constructor. virtual ~Sampler () Destructor. ParticleSystem * GetParticleSystem () Returns the particle system. const ParticleSystem * GetParticleSystem () const SamplingFunction * GetGradientFunction () CurvatureSamplingFunction * GetCurvatureGradientFunction () OptimizerType * GetOptimizer () Return a pointer to the optimizer object. const OptimizerType * GetOptimizer () const void SetPointsFile (unsigned int i, const std::string & s) void SetPointsFile (const std::string & s) void SetInitialPoints (std::vector< std::vector< itk::Point< double > > > initial_points) Set initial particle positions (e.g. for fixed subjects) void AddImage (ImageType::Pointer image, double narrow_band, std::string name =\"\") void ApplyConstraintsToZeroCrossing () void AddMesh (std::shared_ptr< shapeworks::MeshWrapper > mesh) void AddContour (vtkSmartPointer< vtkPolyData > poly_data) void SetFieldAttributes (const std::vector< std::string > & s) void SetDomainsPerShape (int n) void SetCuttingPlane (unsigned int i, const vnl_vector_fixed< double, Dimension > & va, const vnl_vector_fixed< double, Dimension > & vb, const vnl_vector_fixed< double, Dimension > & vc) void AddFreeFormConstraint (int domain, const FreeFormConstraint & ffc) void TransformCuttingPlanes (unsigned int i) void AddSphere (unsigned int i, vnl_vector_fixed< double, Dimension > & c, double r) void SetAdaptivityMode (int mode) int GetAdaptivityMode () const void SetCorrespondenceOn () void SetCorrespondenceOff () void SetSamplingOn () void SetSamplingOff () bool GetCorrespondenceOn () const bool GetSamplingOn () const void SetCorrespondenceMode (shapeworks::CorrespondenceMode mode) void RegisterGeneralShapeMatrices () void SetAttributeScales (const std::vector< double > & s) void SetXYZ (unsigned int i, bool flag) void SetNormals (int i, bool flag) void SetAttributesPerDomain (const std::vector< int > s) LegacyShapeMatrix * GetShapeMatrix () ShapeMatrix * GetGeneralShapeMatrix () ShapeGradientMatrix * GetGeneralShapeGradientMatrix () DualVectorFunction * GetLinkingFunction () LegacyCorrespondenceFunction * GetEnsembleEntropyFunction () DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction () LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction () LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction () CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction () const DualVectorFunction * GetLinkingFunction () const const LegacyCorrespondenceFunction * GetEnsembleEntropyFunction () const const DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction () const const LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction () const const LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction () const const CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction () const void SetTimeptsPerIndividual (int n) shapeworks::CorrespondenceMode GetCorrespondenceMode () const void SetTransformFile (const std::string & s) void SetTransformFile (const char * s) void SetPrefixTransformFile (const std::string & s) void SetPrefixTransformFile (const char * s) void SetPairwisePotentialType (int pairwise_potential_type) int GetPairwisePotentialType () void SetVerbosity (unsigned int val) unsigned int GetVerbosity () MeanCurvatureCacheType * GetMeanCurvatureCache () void SetSharedBoundaryEnabled (bool enabled) void SetSharedBoundaryWeight (double weight) void ReadTransforms () void ReadPointsFiles () void AllocateDataCaches () void AllocateDomainsAndNeighborhoods () void InitializeOptimizationFunctions () void initialize_initial_positions () void Initialize () void ReInitialize () void Execute () CuttingPlaneList ComputeCuttingPlanes () Eigen::Vector3d ComputePlaneNormal (const vnl_vector< double > & a, const vnl_vector< double > & b, const vnl_vector< double > & c) std::vector< FreeFormConstraint > GetFFCs () void SetMeshFFCMode (bool mesh_ffc_mode) Public Attributes Name constexpr unsigned int Dimension Public Types Documentation using PixelType using shapeworks :: Sampler :: PixelType = float ; using ImageType using shapeworks :: Sampler :: ImageType = itk :: Image < PixelType , Dimension > ; using PointType using shapeworks :: Sampler :: PointType = ImageType :: PointType ; using MeanCurvatureCacheType using shapeworks :: Sampler :: MeanCurvatureCacheType = MeanCurvatureContainer < PixelType , Dimension > ; using TransformType using shapeworks :: Sampler :: TransformType = vnl_matrix_fixed < double , Dimension + 1 , Dimension + 1 > ; using OptimizerType using shapeworks :: Sampler :: OptimizerType = GradientDescentOptimizer ; using CuttingPlaneList using shapeworks :: Sampler :: CuttingPlaneList = std :: vector < std :: vector < std :: pair < Eigen :: Vector3d , Eigen :: Vector3d > >> ; Public Functions Documentation function Sampler Sampler () Constructor. function ~Sampler inline virtual ~ Sampler () Destructor. function GetParticleSystem inline ParticleSystem * GetParticleSystem () Returns the particle system. function GetParticleSystem inline const ParticleSystem * GetParticleSystem () const function GetGradientFunction inline SamplingFunction * GetGradientFunction () Returns a pointer to the gradient function used. function GetCurvatureGradientFunction inline CurvatureSamplingFunction * GetCurvatureGradientFunction () function GetOptimizer inline OptimizerType * GetOptimizer () Return a pointer to the optimizer object. function GetOptimizer inline const OptimizerType * GetOptimizer () const function SetPointsFile inline void SetPointsFile ( unsigned int i , const std :: string & s ) Optionally provide a filename for an initial point set. function SetPointsFile inline void SetPointsFile ( const std :: string & s ) function SetInitialPoints inline void SetInitialPoints ( std :: vector < std :: vector < itk :: Point < double > > > initial_points ) Set initial particle positions (e.g. for fixed subjects) function AddImage void AddImage ( ImageType :: Pointer image , double narrow_band , std :: string name = \"\" ) function ApplyConstraintsToZeroCrossing inline void ApplyConstraintsToZeroCrossing () function AddMesh void AddMesh ( std :: shared_ptr < shapeworks :: MeshWrapper > mesh ) function AddContour void AddContour ( vtkSmartPointer < vtkPolyData > poly_data ) function SetFieldAttributes void SetFieldAttributes ( const std :: vector < std :: string > & s ) function SetDomainsPerShape inline void SetDomainsPerShape ( int n ) function SetCuttingPlane void SetCuttingPlane ( unsigned int i , const vnl_vector_fixed < double , Dimension > & va , const vnl_vector_fixed < double , Dimension > & vb , const vnl_vector_fixed < double , Dimension > & vc ) Optionally supply a cutting plane that will be set as a particle optimization constraint in the image domains. function AddFreeFormConstraint void AddFreeFormConstraint ( int domain , const FreeFormConstraint & ffc ) function TransformCuttingPlanes void TransformCuttingPlanes ( unsigned int i ) Transform a cutting plane based on procrustes transformation function AddSphere void AddSphere ( unsigned int i , vnl_vector_fixed < double , Dimension > & c , double r ) Optionally add spheres that may be used as constraints to the domain. function SetAdaptivityMode inline void SetAdaptivityMode ( int mode ) This method sets the optimization function for the sampling. mode 0 = isotropic adaptivity mode 1 = no adaptivity function GetAdaptivityMode inline int GetAdaptivityMode () const function SetCorrespondenceOn inline void SetCorrespondenceOn () function SetCorrespondenceOff inline void SetCorrespondenceOff () function SetSamplingOn inline void SetSamplingOn () function SetSamplingOff inline void SetSamplingOff () function GetCorrespondenceOn inline bool GetCorrespondenceOn () const function GetSamplingOn inline bool GetSamplingOn () const function SetCorrespondenceMode void SetCorrespondenceMode ( shapeworks :: CorrespondenceMode mode ) This method sets the optimization function for correspondences between surfaces (domains). function RegisterGeneralShapeMatrices inline void RegisterGeneralShapeMatrices () function SetAttributeScales inline void SetAttributeScales ( const std :: vector < double > & s ) function SetXYZ inline void SetXYZ ( unsigned int i , bool flag ) function SetNormals inline void SetNormals ( int i , bool flag ) function SetAttributesPerDomain void SetAttributesPerDomain ( const std :: vector < int > s ) function GetShapeMatrix inline LegacyShapeMatrix * GetShapeMatrix () function GetGeneralShapeMatrix inline ShapeMatrix * GetGeneralShapeMatrix () function GetGeneralShapeGradientMatrix inline ShapeGradientMatrix * GetGeneralShapeGradientMatrix () function GetLinkingFunction inline DualVectorFunction * GetLinkingFunction () function GetEnsembleEntropyFunction inline LegacyCorrespondenceFunction * GetEnsembleEntropyFunction () function GetDisentangledEnsembleEntropyFunction inline DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction () function GetEnsembleRegressionEntropyFunction inline LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction () function GetEnsembleMixedEffectsEntropyFunction inline LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction () function GetMeshBasedGeneralEntropyGradientFunction inline CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction () function GetLinkingFunction inline const DualVectorFunction * GetLinkingFunction () const function GetEnsembleEntropyFunction inline const LegacyCorrespondenceFunction * GetEnsembleEntropyFunction () const function GetDisentangledEnsembleEntropyFunction inline const DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction () const function GetEnsembleRegressionEntropyFunction inline const LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction () const function GetEnsembleMixedEffectsEntropyFunction inline const LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction () const function GetMeshBasedGeneralEntropyGradientFunction inline const CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction () const function SetTimeptsPerIndividual inline void SetTimeptsPerIndividual ( int n ) function GetCorrespondenceMode inline shapeworks :: CorrespondenceMode GetCorrespondenceMode () const function SetTransformFile inline void SetTransformFile ( const std :: string & s ) function SetTransformFile inline void SetTransformFile ( const char * s ) function SetPrefixTransformFile inline void SetPrefixTransformFile ( const std :: string & s ) function SetPrefixTransformFile inline void SetPrefixTransformFile ( const char * s ) function SetPairwisePotentialType inline void SetPairwisePotentialType ( int pairwise_potential_type ) function GetPairwisePotentialType inline int GetPairwisePotentialType () function SetVerbosity inline void SetVerbosity ( unsigned int val ) function GetVerbosity inline unsigned int GetVerbosity () function GetMeanCurvatureCache inline MeanCurvatureCacheType * GetMeanCurvatureCache () function SetSharedBoundaryEnabled inline void SetSharedBoundaryEnabled ( bool enabled ) function SetSharedBoundaryWeight inline void SetSharedBoundaryWeight ( double weight ) function ReadTransforms void ReadTransforms () function ReadPointsFiles void ReadPointsFiles () function AllocateDataCaches void AllocateDataCaches () function AllocateDomainsAndNeighborhoods void AllocateDomainsAndNeighborhoods () function InitializeOptimizationFunctions void InitializeOptimizationFunctions () function initialize_initial_positions void initialize_initial_positions () function Initialize inline void Initialize () function ReInitialize void ReInitialize () function Execute void Execute () function ComputeCuttingPlanes CuttingPlaneList ComputeCuttingPlanes () function ComputePlaneNormal Eigen :: Vector3d ComputePlaneNormal ( const vnl_vector < double > & a , const vnl_vector < double > & b , const vnl_vector < double > & c ) function GetFFCs inline std :: vector < FreeFormConstraint > GetFFCs () function SetMeshFFCMode inline void SetMeshFFCMode ( bool mesh_ffc_mode ) Public Attributes Documentation variable Dimension static constexpr unsigned int Dimension = 3 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Sampler"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#shapeworkssampler","text":"","title":"shapeworks::Sampler"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#public-classes","text":"Name struct CuttingPlaneType struct SphereType","title":"Public Classes"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#public-types","text":"Name using float PixelType using itk::Image< PixelType, Dimension > ImageType using ImageType::PointType PointType using MeanCurvatureContainer < PixelType, Dimension > MeanCurvatureCacheType using vnl_matrix_fixed< double, Dimension+1, Dimension+1 > TransformType using GradientDescentOptimizer OptimizerType using std::vector< std::vector< std::pair< Eigen::Vector3d, Eigen::Vector3d > > > CuttingPlaneList","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#public-functions","text":"Name Sampler () Constructor. virtual ~Sampler () Destructor. ParticleSystem * GetParticleSystem () Returns the particle system. const ParticleSystem * GetParticleSystem () const SamplingFunction * GetGradientFunction () CurvatureSamplingFunction * GetCurvatureGradientFunction () OptimizerType * GetOptimizer () Return a pointer to the optimizer object. const OptimizerType * GetOptimizer () const void SetPointsFile (unsigned int i, const std::string & s) void SetPointsFile (const std::string & s) void SetInitialPoints (std::vector< std::vector< itk::Point< double > > > initial_points) Set initial particle positions (e.g. for fixed subjects) void AddImage (ImageType::Pointer image, double narrow_band, std::string name =\"\") void ApplyConstraintsToZeroCrossing () void AddMesh (std::shared_ptr< shapeworks::MeshWrapper > mesh) void AddContour (vtkSmartPointer< vtkPolyData > poly_data) void SetFieldAttributes (const std::vector< std::string > & s) void SetDomainsPerShape (int n) void SetCuttingPlane (unsigned int i, const vnl_vector_fixed< double, Dimension > & va, const vnl_vector_fixed< double, Dimension > & vb, const vnl_vector_fixed< double, Dimension > & vc) void AddFreeFormConstraint (int domain, const FreeFormConstraint & ffc) void TransformCuttingPlanes (unsigned int i) void AddSphere (unsigned int i, vnl_vector_fixed< double, Dimension > & c, double r) void SetAdaptivityMode (int mode) int GetAdaptivityMode () const void SetCorrespondenceOn () void SetCorrespondenceOff () void SetSamplingOn () void SetSamplingOff () bool GetCorrespondenceOn () const bool GetSamplingOn () const void SetCorrespondenceMode (shapeworks::CorrespondenceMode mode) void RegisterGeneralShapeMatrices () void SetAttributeScales (const std::vector< double > & s) void SetXYZ (unsigned int i, bool flag) void SetNormals (int i, bool flag) void SetAttributesPerDomain (const std::vector< int > s) LegacyShapeMatrix * GetShapeMatrix () ShapeMatrix * GetGeneralShapeMatrix () ShapeGradientMatrix * GetGeneralShapeGradientMatrix () DualVectorFunction * GetLinkingFunction () LegacyCorrespondenceFunction * GetEnsembleEntropyFunction () DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction () LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction () LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction () CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction () const DualVectorFunction * GetLinkingFunction () const const LegacyCorrespondenceFunction * GetEnsembleEntropyFunction () const const DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction () const const LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction () const const LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction () const const CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction () const void SetTimeptsPerIndividual (int n) shapeworks::CorrespondenceMode GetCorrespondenceMode () const void SetTransformFile (const std::string & s) void SetTransformFile (const char * s) void SetPrefixTransformFile (const std::string & s) void SetPrefixTransformFile (const char * s) void SetPairwisePotentialType (int pairwise_potential_type) int GetPairwisePotentialType () void SetVerbosity (unsigned int val) unsigned int GetVerbosity () MeanCurvatureCacheType * GetMeanCurvatureCache () void SetSharedBoundaryEnabled (bool enabled) void SetSharedBoundaryWeight (double weight) void ReadTransforms () void ReadPointsFiles () void AllocateDataCaches () void AllocateDomainsAndNeighborhoods () void InitializeOptimizationFunctions () void initialize_initial_positions () void Initialize () void ReInitialize () void Execute () CuttingPlaneList ComputeCuttingPlanes () Eigen::Vector3d ComputePlaneNormal (const vnl_vector< double > & a, const vnl_vector< double > & b, const vnl_vector< double > & c) std::vector< FreeFormConstraint > GetFFCs () void SetMeshFFCMode (bool mesh_ffc_mode)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#public-attributes","text":"Name constexpr unsigned int Dimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#using-pixeltype","text":"using shapeworks :: Sampler :: PixelType = float ;","title":"using PixelType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#using-imagetype","text":"using shapeworks :: Sampler :: ImageType = itk :: Image < PixelType , Dimension > ;","title":"using ImageType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#using-pointtype","text":"using shapeworks :: Sampler :: PointType = ImageType :: PointType ;","title":"using PointType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#using-meancurvaturecachetype","text":"using shapeworks :: Sampler :: MeanCurvatureCacheType = MeanCurvatureContainer < PixelType , Dimension > ;","title":"using MeanCurvatureCacheType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#using-transformtype","text":"using shapeworks :: Sampler :: TransformType = vnl_matrix_fixed < double , Dimension + 1 , Dimension + 1 > ;","title":"using TransformType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#using-optimizertype","text":"using shapeworks :: Sampler :: OptimizerType = GradientDescentOptimizer ;","title":"using OptimizerType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#using-cuttingplanelist","text":"using shapeworks :: Sampler :: CuttingPlaneList = std :: vector < std :: vector < std :: pair < Eigen :: Vector3d , Eigen :: Vector3d > >> ;","title":"using CuttingPlaneList"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-sampler","text":"Sampler () Constructor.","title":"function Sampler"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-sampler_1","text":"inline virtual ~ Sampler () Destructor.","title":"function ~Sampler"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getparticlesystem","text":"inline ParticleSystem * GetParticleSystem () Returns the particle system.","title":"function GetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getparticlesystem_1","text":"inline const ParticleSystem * GetParticleSystem () const","title":"function GetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getgradientfunction","text":"inline SamplingFunction * GetGradientFunction () Returns a pointer to the gradient function used.","title":"function GetGradientFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getcurvaturegradientfunction","text":"inline CurvatureSamplingFunction * GetCurvatureGradientFunction ()","title":"function GetCurvatureGradientFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getoptimizer","text":"inline OptimizerType * GetOptimizer () Return a pointer to the optimizer object.","title":"function GetOptimizer"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getoptimizer_1","text":"inline const OptimizerType * GetOptimizer () const","title":"function GetOptimizer"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setpointsfile","text":"inline void SetPointsFile ( unsigned int i , const std :: string & s ) Optionally provide a filename for an initial point set.","title":"function SetPointsFile"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setpointsfile_1","text":"inline void SetPointsFile ( const std :: string & s )","title":"function SetPointsFile"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setinitialpoints","text":"inline void SetInitialPoints ( std :: vector < std :: vector < itk :: Point < double > > > initial_points ) Set initial particle positions (e.g. for fixed subjects)","title":"function SetInitialPoints"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-addimage","text":"void AddImage ( ImageType :: Pointer image , double narrow_band , std :: string name = \"\" )","title":"function AddImage"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-applyconstraintstozerocrossing","text":"inline void ApplyConstraintsToZeroCrossing ()","title":"function ApplyConstraintsToZeroCrossing"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-addmesh","text":"void AddMesh ( std :: shared_ptr < shapeworks :: MeshWrapper > mesh )","title":"function AddMesh"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-addcontour","text":"void AddContour ( vtkSmartPointer < vtkPolyData > poly_data )","title":"function AddContour"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setfieldattributes","text":"void SetFieldAttributes ( const std :: vector < std :: string > & s )","title":"function SetFieldAttributes"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int n )","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setcuttingplane","text":"void SetCuttingPlane ( unsigned int i , const vnl_vector_fixed < double , Dimension > & va , const vnl_vector_fixed < double , Dimension > & vb , const vnl_vector_fixed < double , Dimension > & vc ) Optionally supply a cutting plane that will be set as a particle optimization constraint in the image domains.","title":"function SetCuttingPlane"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-addfreeformconstraint","text":"void AddFreeFormConstraint ( int domain , const FreeFormConstraint & ffc )","title":"function AddFreeFormConstraint"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-transformcuttingplanes","text":"void TransformCuttingPlanes ( unsigned int i ) Transform a cutting plane based on procrustes transformation","title":"function TransformCuttingPlanes"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-addsphere","text":"void AddSphere ( unsigned int i , vnl_vector_fixed < double , Dimension > & c , double r ) Optionally add spheres that may be used as constraints to the domain.","title":"function AddSphere"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setadaptivitymode","text":"inline void SetAdaptivityMode ( int mode ) This method sets the optimization function for the sampling. mode 0 = isotropic adaptivity mode 1 = no adaptivity","title":"function SetAdaptivityMode"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getadaptivitymode","text":"inline int GetAdaptivityMode () const","title":"function GetAdaptivityMode"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setcorrespondenceon","text":"inline void SetCorrespondenceOn ()","title":"function SetCorrespondenceOn"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setcorrespondenceoff","text":"inline void SetCorrespondenceOff ()","title":"function SetCorrespondenceOff"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setsamplingon","text":"inline void SetSamplingOn ()","title":"function SetSamplingOn"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setsamplingoff","text":"inline void SetSamplingOff ()","title":"function SetSamplingOff"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getcorrespondenceon","text":"inline bool GetCorrespondenceOn () const","title":"function GetCorrespondenceOn"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getsamplingon","text":"inline bool GetSamplingOn () const","title":"function GetSamplingOn"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setcorrespondencemode","text":"void SetCorrespondenceMode ( shapeworks :: CorrespondenceMode mode ) This method sets the optimization function for correspondences between surfaces (domains).","title":"function SetCorrespondenceMode"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-registergeneralshapematrices","text":"inline void RegisterGeneralShapeMatrices ()","title":"function RegisterGeneralShapeMatrices"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setattributescales","text":"inline void SetAttributeScales ( const std :: vector < double > & s )","title":"function SetAttributeScales"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setxyz","text":"inline void SetXYZ ( unsigned int i , bool flag )","title":"function SetXYZ"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setnormals","text":"inline void SetNormals ( int i , bool flag )","title":"function SetNormals"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setattributesperdomain","text":"void SetAttributesPerDomain ( const std :: vector < int > s )","title":"function SetAttributesPerDomain"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getshapematrix","text":"inline LegacyShapeMatrix * GetShapeMatrix ()","title":"function GetShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getgeneralshapematrix","text":"inline ShapeMatrix * GetGeneralShapeMatrix ()","title":"function GetGeneralShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getgeneralshapegradientmatrix","text":"inline ShapeGradientMatrix * GetGeneralShapeGradientMatrix ()","title":"function GetGeneralShapeGradientMatrix"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getlinkingfunction","text":"inline DualVectorFunction * GetLinkingFunction ()","title":"function GetLinkingFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getensembleentropyfunction","text":"inline LegacyCorrespondenceFunction * GetEnsembleEntropyFunction ()","title":"function GetEnsembleEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getdisentangledensembleentropyfunction","text":"inline DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction ()","title":"function GetDisentangledEnsembleEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getensembleregressionentropyfunction","text":"inline LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction ()","title":"function GetEnsembleRegressionEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getensemblemixedeffectsentropyfunction","text":"inline LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction ()","title":"function GetEnsembleMixedEffectsEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getmeshbasedgeneralentropygradientfunction","text":"inline CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction ()","title":"function GetMeshBasedGeneralEntropyGradientFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getlinkingfunction_1","text":"inline const DualVectorFunction * GetLinkingFunction () const","title":"function GetLinkingFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getensembleentropyfunction_1","text":"inline const LegacyCorrespondenceFunction * GetEnsembleEntropyFunction () const","title":"function GetEnsembleEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getdisentangledensembleentropyfunction_1","text":"inline const DisentangledCorrespondenceFunction * GetDisentangledEnsembleEntropyFunction () const","title":"function GetDisentangledEnsembleEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getensembleregressionentropyfunction_1","text":"inline const LegacyCorrespondenceFunction * GetEnsembleRegressionEntropyFunction () const","title":"function GetEnsembleRegressionEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getensemblemixedeffectsentropyfunction_1","text":"inline const LegacyCorrespondenceFunction * GetEnsembleMixedEffectsEntropyFunction () const","title":"function GetEnsembleMixedEffectsEntropyFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getmeshbasedgeneralentropygradientfunction_1","text":"inline const CorrespondenceFunction * GetMeshBasedGeneralEntropyGradientFunction () const","title":"function GetMeshBasedGeneralEntropyGradientFunction"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-settimeptsperindividual","text":"inline void SetTimeptsPerIndividual ( int n )","title":"function SetTimeptsPerIndividual"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getcorrespondencemode","text":"inline shapeworks :: CorrespondenceMode GetCorrespondenceMode () const","title":"function GetCorrespondenceMode"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-settransformfile","text":"inline void SetTransformFile ( const std :: string & s )","title":"function SetTransformFile"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-settransformfile_1","text":"inline void SetTransformFile ( const char * s )","title":"function SetTransformFile"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setprefixtransformfile","text":"inline void SetPrefixTransformFile ( const std :: string & s )","title":"function SetPrefixTransformFile"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setprefixtransformfile_1","text":"inline void SetPrefixTransformFile ( const char * s )","title":"function SetPrefixTransformFile"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setpairwisepotentialtype","text":"inline void SetPairwisePotentialType ( int pairwise_potential_type )","title":"function SetPairwisePotentialType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getpairwisepotentialtype","text":"inline int GetPairwisePotentialType ()","title":"function GetPairwisePotentialType"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setverbosity","text":"inline void SetVerbosity ( unsigned int val )","title":"function SetVerbosity"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getverbosity","text":"inline unsigned int GetVerbosity ()","title":"function GetVerbosity"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getmeancurvaturecache","text":"inline MeanCurvatureCacheType * GetMeanCurvatureCache ()","title":"function GetMeanCurvatureCache"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setsharedboundaryenabled","text":"inline void SetSharedBoundaryEnabled ( bool enabled )","title":"function SetSharedBoundaryEnabled"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setsharedboundaryweight","text":"inline void SetSharedBoundaryWeight ( double weight )","title":"function SetSharedBoundaryWeight"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-readtransforms","text":"void ReadTransforms ()","title":"function ReadTransforms"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-readpointsfiles","text":"void ReadPointsFiles ()","title":"function ReadPointsFiles"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-allocatedatacaches","text":"void AllocateDataCaches ()","title":"function AllocateDataCaches"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-allocatedomainsandneighborhoods","text":"void AllocateDomainsAndNeighborhoods ()","title":"function AllocateDomainsAndNeighborhoods"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-initializeoptimizationfunctions","text":"void InitializeOptimizationFunctions ()","title":"function InitializeOptimizationFunctions"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-initialize_initial_positions","text":"void initialize_initial_positions ()","title":"function initialize_initial_positions"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-initialize","text":"inline void Initialize ()","title":"function Initialize"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-reinitialize","text":"void ReInitialize ()","title":"function ReInitialize"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-execute","text":"void Execute ()","title":"function Execute"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-computecuttingplanes","text":"CuttingPlaneList ComputeCuttingPlanes ()","title":"function ComputeCuttingPlanes"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-computeplanenormal","text":"Eigen :: Vector3d ComputePlaneNormal ( const vnl_vector < double > & a , const vnl_vector < double > & b , const vnl_vector < double > & c )","title":"function ComputePlaneNormal"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-getffcs","text":"inline std :: vector < FreeFormConstraint > GetFFCs ()","title":"function GetFFCs"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#function-setmeshffcmode","text":"inline void SetMeshFFCMode ( bool mesh_ffc_mode )","title":"function SetMeshFFCMode"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Sampler.html#variable-dimension","text":"static constexpr unsigned int Dimension = 3 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable Dimension"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html","text":"shapeworks::SamplingFunction This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. More... #include Inherits from shapeworks::VectorFunction , itk::LightObject Inherited by shapeworks::CurvatureSamplingFunction Public Types Name typedef float TGradientNumericType typedef SamplingFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef TGradientNumericType GradientNumericType typedef GenericContainerArray < double > SigmaCacheType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector_fixed< TGradientNumericType, VDimension > GradientVectorType Public Functions Name itkTypeMacro ( SamplingFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual VectorType Evaluate (unsigned int idx, unsigned int d, const ParticleSystem * system, double & maxdt, double & energy) const virtual double Energy (unsigned int , unsigned int , const ParticleSystem * ) const virtual void ResetBuffers () virtual double EstimateSigma (unsigned int idx, const typename ParticleSystem::PointVectorType & neighborhood, const shapeworks::ParticleDomain * domain, const std::vector< double > & weights, const PointType & pos, double initial_sigma, double precision, int & err) const TGradientNumericType AngleCoefficient (const GradientVectorType & , const GradientVectorType & ) const void SetMinimumNeighborhoodRadius (double s) double GetMinimumNeighborhoodRadius () const void SetMaximumNeighborhoodRadius (double s) double GetMaximumNeighborhoodRadius () const void SetFlatCutoff (double s) double GetFlatCutoff () const void SetNeighborhoodToSigmaRatio (double s) double GetNeighborhoodToSigmaRatio () const void SetSpatialSigmaCache ( SigmaCacheType * s) SigmaCacheType * GetSpatialSigmaCache () const SigmaCacheType * GetSpatialSigmaCache () const void ComputeAngularWeights (const PointType & , int , const typename ParticleSystem::PointVectorType & , const shapeworks::ParticleDomain * , std::vector< double > & ) const virtual VectorFunction::Pointer Clone () Protected Functions Name SamplingFunction () virtual ~SamplingFunction () void operator= (const SamplingFunction & ) SamplingFunction (const SamplingFunction & ) Public Attributes Name constexpr static int VDimension Protected Attributes Name double m_MinimumNeighborhoodRadius double m_MaximumNeighborhoodRadius double m_FlatCutoff double m_NeighborhoodToSigmaRatio SigmaCacheType::Pointer m_SpatialSigmaCache Additional inherited members Public Functions inherited from shapeworks::VectorFunction Name virtual void AfterIteration () virtual void BeforeIteration () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber Detailed Description class shapeworks :: SamplingFunction ; This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. Please note that CurvatureSamplingFunction is currently being used in all cases the curvature part is generally disabled though as the Rho value is always set to 0 The following description is an excerpt from J Cates, P T Fletcher, M Styner, M Shenton, R Whitaker. Shape Modeling and Analysis with Entropy-Based Particle Systems. Information Processing in Medical Imaging IPMI 2007, LNCS 4584, pp. 333\ufffd345, 2007. We treat a surface as a subset of \\(\\Re^d\\) , where \\(d=2\\) or \\(d=3\\) depending whether we are processing curves in the plane or surfaces in a volume, refspectively. The method we describe here deals with smooth, closed manifolds of codimension one, and we will refer to such manifolds as { surfaces} . We sample a surface \\({\\cal S} \\subset \\Re^d\\) using a discrete set of \\(N\\) points that are considered random variables \\(Z = (X_1, X_2, \\ldots, X_N)\\) drawn from a probability density function (PDF), \\(p(X)\\) . We denote a realization of this PDF with lower case, and thus we have \\(z = (x_1, x_2,\\ldots, x_N)\\) , where \\(z \\in {\\cal S}^N\\) . The probability of a realization \\(x\\) is \\(p(X = x)\\) , which we denote simply as \\(p(x)\\) . The amount of information contained in such a random sampling is, in the limit, the differential entropy of the PDF, which is \\(H[X] = -\\int_S p(x) \\log p(x) dx = -E\\{\\log p(X)\\}\\) , where \\(E\\{ \\cdot \\}\\) is the expectation. When we have a sufficient number of points sampled from \\(p\\) , we can approximate the expectation by the sample mean, which gives \\(H[X] \\approx - (1/N)\\sum_{i} \\log p(x_i)\\) . We must also estimate \\(p(x_i)\\) . Density functions on surfaces can be quite complex, and so we use a nonparametric, Parzen windowing estimation of this density using the particles themselves. Thus we have p(x_i) \\approx \\frac{1}{N(N-1)} \\sum^N_{j=1, j \\neq i} G(x_i - x_j, \\sigma_i), where \\(G(x_i - x_j, \\sigma_i)\\) is a \\(d\\) -dimensional, isotropic Gaussian with standard deviation \\(\\sigma_i\\) . The cost function \\(C\\) , is therefore an approximation of (negative) entropy: -H[X] \\approx C(x_1, \\dots, x_N) = \\sum_{i} \\log \\frac{1}{N(N-1)} \\sum_{j \\neq i} G(x_i - x_j, \\sigma_i). Public Types Documentation typedef TGradientNumericType typedef float shapeworks :: SamplingFunction :: TGradientNumericType ; typedef Self typedef SamplingFunction shapeworks :: SamplingFunction :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: SamplingFunction :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: SamplingFunction :: ConstPointer ; typedef Superclass typedef VectorFunction shapeworks :: SamplingFunction :: Superclass ; typedef GradientNumericType typedef TGradientNumericType shapeworks :: SamplingFunction :: GradientNumericType ; Data type representing individual gradient components. typedef SigmaCacheType typedef GenericContainerArray < double > shapeworks :: SamplingFunction :: SigmaCacheType ; Cache type for the sigma values. typedef VectorType typedef Superclass :: VectorType shapeworks :: SamplingFunction :: VectorType ; Vector & Point types. typedef PointType typedef ParticleSystem :: PointType shapeworks :: SamplingFunction :: PointType ; typedef GradientVectorType typedef vnl_vector_fixed < TGradientNumericType , VDimension > shapeworks :: SamplingFunction :: GradientVectorType ; Public Functions Documentation function itkTypeMacro itkTypeMacro ( SamplingFunction , VectorFunction ) function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system. function Evaluate virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate Reimplemented by : shapeworks::CurvatureSamplingFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Evaluate inline virtual VectorType Evaluate ( unsigned int idx , unsigned int d , const ParticleSystem * system , double & maxdt , double & energy ) const Reimplements : shapeworks::VectorFunction::Evaluate Reimplemented by : shapeworks::CurvatureSamplingFunction::Evaluate function Energy inline virtual double Energy ( unsigned int , unsigned int , const ParticleSystem * ) const Reimplements : shapeworks::VectorFunction::Energy Reimplemented by : shapeworks::CurvatureSamplingFunction::Energy function ResetBuffers inline virtual void ResetBuffers () Reimplements : shapeworks::VectorFunction::ResetBuffers May be called by the solver class. function EstimateSigma virtual double EstimateSigma ( unsigned int idx , const typename ParticleSystem :: PointVectorType & neighborhood , const shapeworks :: ParticleDomain * domain , const std :: vector < double > & weights , const PointType & pos , double initial_sigma , double precision , int & err ) const Estimate the best sigma for Parzen windowing in a given neighborhood. The best sigma is the sigma that maximizes probability at the given point function AngleCoefficient TGradientNumericType AngleCoefficient ( const GradientVectorType & , const GradientVectorType & ) const Returns a weighting coefficient based on the angle between two vectors. Weights smoothly approach zero as the angle between two normals approaches 90 degrees. function SetMinimumNeighborhoodRadius inline void SetMinimumNeighborhoodRadius ( double s ) Minimum radius of the neighborhood of points that are considered in the calculation. The neighborhood is a spherical radius in 3D space. The actual radius used in a calculation may exceed this value, but will not exceed the MaximumNeighborhoodRadius. function GetMinimumNeighborhoodRadius inline double GetMinimumNeighborhoodRadius () const function SetMaximumNeighborhoodRadius inline void SetMaximumNeighborhoodRadius ( double s ) Maximum radius of the neighborhood of points that are considered in the calculation. The neighborhood is a spherical radius in 3D space. function GetMaximumNeighborhoodRadius inline double GetMaximumNeighborhoodRadius () const function SetFlatCutoff inline void SetFlatCutoff ( double s ) Numerical parameters function GetFlatCutoff inline double GetFlatCutoff () const function SetNeighborhoodToSigmaRatio inline void SetNeighborhoodToSigmaRatio ( double s ) function GetNeighborhoodToSigmaRatio inline double GetNeighborhoodToSigmaRatio () const function SetSpatialSigmaCache inline void SetSpatialSigmaCache ( SigmaCacheType * s ) Access the cache of sigma values for each particle position. This cache is populated by registering this object as an observer of the correct particle system (see SetParticleSystem). function GetSpatialSigmaCache inline SigmaCacheType * GetSpatialSigmaCache () function GetSpatialSigmaCache inline const SigmaCacheType * GetSpatialSigmaCache () const function ComputeAngularWeights void ComputeAngularWeights ( const PointType & , int , const typename ParticleSystem :: PointVectorType & , const shapeworks :: ParticleDomain * , std :: vector < double > & ) const Compute a set of weights based on the difference in the normals of a central point and each of its neighbors. Difference of > 90 degrees results in a weight of 0. function Clone inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone Reimplemented by : shapeworks::CurvatureSamplingFunction::Clone Protected Functions Documentation function SamplingFunction inline SamplingFunction () function ~SamplingFunction inline virtual ~ SamplingFunction () function operator= void operator = ( const SamplingFunction & ) function SamplingFunction SamplingFunction ( const SamplingFunction & ) Public Attributes Documentation variable VDimension static constexpr static int VDimension = 3 ; Protected Attributes Documentation variable m_MinimumNeighborhoodRadius double m_MinimumNeighborhoodRadius ; variable m_MaximumNeighborhoodRadius double m_MaximumNeighborhoodRadius ; variable m_FlatCutoff double m_FlatCutoff ; variable m_NeighborhoodToSigmaRatio double m_NeighborhoodToSigmaRatio ; variable m_SpatialSigmaCache SigmaCacheType :: Pointer m_SpatialSigmaCache ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::SamplingFunction"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#shapeworkssamplingfunction","text":"This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. More... #include Inherits from shapeworks::VectorFunction , itk::LightObject Inherited by shapeworks::CurvatureSamplingFunction","title":"shapeworks::SamplingFunction"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#public-types","text":"Name typedef float TGradientNumericType typedef SamplingFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef VectorFunction Superclass typedef TGradientNumericType GradientNumericType typedef GenericContainerArray < double > SigmaCacheType typedef Superclass::VectorType VectorType typedef ParticleSystem::PointType PointType typedef vnl_vector_fixed< TGradientNumericType, VDimension > GradientVectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#public-functions","text":"Name itkTypeMacro ( SamplingFunction , VectorFunction ) itkNewMacro ( Self ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const virtual VectorType Evaluate (unsigned int idx, unsigned int d, const ParticleSystem * system, double & maxdt, double & energy) const virtual double Energy (unsigned int , unsigned int , const ParticleSystem * ) const virtual void ResetBuffers () virtual double EstimateSigma (unsigned int idx, const typename ParticleSystem::PointVectorType & neighborhood, const shapeworks::ParticleDomain * domain, const std::vector< double > & weights, const PointType & pos, double initial_sigma, double precision, int & err) const TGradientNumericType AngleCoefficient (const GradientVectorType & , const GradientVectorType & ) const void SetMinimumNeighborhoodRadius (double s) double GetMinimumNeighborhoodRadius () const void SetMaximumNeighborhoodRadius (double s) double GetMaximumNeighborhoodRadius () const void SetFlatCutoff (double s) double GetFlatCutoff () const void SetNeighborhoodToSigmaRatio (double s) double GetNeighborhoodToSigmaRatio () const void SetSpatialSigmaCache ( SigmaCacheType * s) SigmaCacheType * GetSpatialSigmaCache () const SigmaCacheType * GetSpatialSigmaCache () const void ComputeAngularWeights (const PointType & , int , const typename ParticleSystem::PointVectorType & , const shapeworks::ParticleDomain * , std::vector< double > & ) const virtual VectorFunction::Pointer Clone ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#protected-functions","text":"Name SamplingFunction () virtual ~SamplingFunction () void operator= (const SamplingFunction & ) SamplingFunction (const SamplingFunction & )","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#public-attributes","text":"Name constexpr static int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#protected-attributes","text":"Name double m_MinimumNeighborhoodRadius double m_MaximumNeighborhoodRadius double m_FlatCutoff double m_NeighborhoodToSigmaRatio SigmaCacheType::Pointer m_SpatialSigmaCache","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::VectorFunction Name virtual void AfterIteration () virtual void BeforeIteration () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions inherited from shapeworks::VectorFunction Name VectorFunction () virtual ~VectorFunction () VectorFunction (const VectorFunction & ) Protected Attributes inherited from shapeworks::VectorFunction Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#detailed-description","text":"class shapeworks :: SamplingFunction ; This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. Please note that CurvatureSamplingFunction is currently being used in all cases the curvature part is generally disabled though as the Rho value is always set to 0 The following description is an excerpt from J Cates, P T Fletcher, M Styner, M Shenton, R Whitaker. Shape Modeling and Analysis with Entropy-Based Particle Systems. Information Processing in Medical Imaging IPMI 2007, LNCS 4584, pp. 333\ufffd345, 2007. We treat a surface as a subset of \\(\\Re^d\\) , where \\(d=2\\) or \\(d=3\\) depending whether we are processing curves in the plane or surfaces in a volume, refspectively. The method we describe here deals with smooth, closed manifolds of codimension one, and we will refer to such manifolds as { surfaces} . We sample a surface \\({\\cal S} \\subset \\Re^d\\) using a discrete set of \\(N\\) points that are considered random variables \\(Z = (X_1, X_2, \\ldots, X_N)\\) drawn from a probability density function (PDF), \\(p(X)\\) . We denote a realization of this PDF with lower case, and thus we have \\(z = (x_1, x_2,\\ldots, x_N)\\) , where \\(z \\in {\\cal S}^N\\) . The probability of a realization \\(x\\) is \\(p(X = x)\\) , which we denote simply as \\(p(x)\\) . The amount of information contained in such a random sampling is, in the limit, the differential entropy of the PDF, which is \\(H[X] = -\\int_S p(x) \\log p(x) dx = -E\\{\\log p(X)\\}\\) , where \\(E\\{ \\cdot \\}\\) is the expectation. When we have a sufficient number of points sampled from \\(p\\) , we can approximate the expectation by the sample mean, which gives \\(H[X] \\approx - (1/N)\\sum_{i} \\log p(x_i)\\) . We must also estimate \\(p(x_i)\\) . Density functions on surfaces can be quite complex, and so we use a nonparametric, Parzen windowing estimation of this density using the particles themselves. Thus we have p(x_i) \\approx \\frac{1}{N(N-1)} \\sum^N_{j=1, j \\neq i} G(x_i - x_j, \\sigma_i), where \\(G(x_i - x_j, \\sigma_i)\\) is a \\(d\\) -dimensional, isotropic Gaussian with standard deviation \\(\\sigma_i\\) . The cost function \\(C\\) , is therefore an approximation of (negative) entropy: -H[X] \\approx C(x_1, \\dots, x_N) = \\sum_{i} \\log \\frac{1}{N(N-1)} \\sum_{j \\neq i} G(x_i - x_j, \\sigma_i).","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-tgradientnumerictype","text":"typedef float shapeworks :: SamplingFunction :: TGradientNumericType ;","title":"typedef TGradientNumericType"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-self","text":"typedef SamplingFunction shapeworks :: SamplingFunction :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: SamplingFunction :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: SamplingFunction :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-superclass","text":"typedef VectorFunction shapeworks :: SamplingFunction :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-gradientnumerictype","text":"typedef TGradientNumericType shapeworks :: SamplingFunction :: GradientNumericType ; Data type representing individual gradient components.","title":"typedef GradientNumericType"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-sigmacachetype","text":"typedef GenericContainerArray < double > shapeworks :: SamplingFunction :: SigmaCacheType ; Cache type for the sigma values.","title":"typedef SigmaCacheType"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-vectortype","text":"typedef Superclass :: VectorType shapeworks :: SamplingFunction :: VectorType ; Vector & Point types.","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-pointtype","text":"typedef ParticleSystem :: PointType shapeworks :: SamplingFunction :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#typedef-gradientvectortype","text":"typedef vnl_vector_fixed < TGradientNumericType , VDimension > shapeworks :: SamplingFunction :: GradientVectorType ;","title":"typedef GradientVectorType"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-itktypemacro","text":"itkTypeMacro ( SamplingFunction , VectorFunction )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-evaluate","text":"virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const Reimplements : shapeworks::VectorFunction::Evaluate Reimplemented by : shapeworks::CurvatureSamplingFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-evaluate_1","text":"inline virtual VectorType Evaluate ( unsigned int idx , unsigned int d , const ParticleSystem * system , double & maxdt , double & energy ) const Reimplements : shapeworks::VectorFunction::Evaluate Reimplemented by : shapeworks::CurvatureSamplingFunction::Evaluate","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-energy","text":"inline virtual double Energy ( unsigned int , unsigned int , const ParticleSystem * ) const Reimplements : shapeworks::VectorFunction::Energy Reimplemented by : shapeworks::CurvatureSamplingFunction::Energy","title":"function Energy"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-resetbuffers","text":"inline virtual void ResetBuffers () Reimplements : shapeworks::VectorFunction::ResetBuffers May be called by the solver class.","title":"function ResetBuffers"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-estimatesigma","text":"virtual double EstimateSigma ( unsigned int idx , const typename ParticleSystem :: PointVectorType & neighborhood , const shapeworks :: ParticleDomain * domain , const std :: vector < double > & weights , const PointType & pos , double initial_sigma , double precision , int & err ) const Estimate the best sigma for Parzen windowing in a given neighborhood. The best sigma is the sigma that maximizes probability at the given point","title":"function EstimateSigma"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-anglecoefficient","text":"TGradientNumericType AngleCoefficient ( const GradientVectorType & , const GradientVectorType & ) const Returns a weighting coefficient based on the angle between two vectors. Weights smoothly approach zero as the angle between two normals approaches 90 degrees.","title":"function AngleCoefficient"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-setminimumneighborhoodradius","text":"inline void SetMinimumNeighborhoodRadius ( double s ) Minimum radius of the neighborhood of points that are considered in the calculation. The neighborhood is a spherical radius in 3D space. The actual radius used in a calculation may exceed this value, but will not exceed the MaximumNeighborhoodRadius.","title":"function SetMinimumNeighborhoodRadius"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-getminimumneighborhoodradius","text":"inline double GetMinimumNeighborhoodRadius () const","title":"function GetMinimumNeighborhoodRadius"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-setmaximumneighborhoodradius","text":"inline void SetMaximumNeighborhoodRadius ( double s ) Maximum radius of the neighborhood of points that are considered in the calculation. The neighborhood is a spherical radius in 3D space.","title":"function SetMaximumNeighborhoodRadius"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-getmaximumneighborhoodradius","text":"inline double GetMaximumNeighborhoodRadius () const","title":"function GetMaximumNeighborhoodRadius"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-setflatcutoff","text":"inline void SetFlatCutoff ( double s ) Numerical parameters","title":"function SetFlatCutoff"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-getflatcutoff","text":"inline double GetFlatCutoff () const","title":"function GetFlatCutoff"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-setneighborhoodtosigmaratio","text":"inline void SetNeighborhoodToSigmaRatio ( double s )","title":"function SetNeighborhoodToSigmaRatio"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-getneighborhoodtosigmaratio","text":"inline double GetNeighborhoodToSigmaRatio () const","title":"function GetNeighborhoodToSigmaRatio"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-setspatialsigmacache","text":"inline void SetSpatialSigmaCache ( SigmaCacheType * s ) Access the cache of sigma values for each particle position. This cache is populated by registering this object as an observer of the correct particle system (see SetParticleSystem).","title":"function SetSpatialSigmaCache"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-getspatialsigmacache","text":"inline SigmaCacheType * GetSpatialSigmaCache ()","title":"function GetSpatialSigmaCache"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-getspatialsigmacache_1","text":"inline const SigmaCacheType * GetSpatialSigmaCache () const","title":"function GetSpatialSigmaCache"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-computeangularweights","text":"void ComputeAngularWeights ( const PointType & , int , const typename ParticleSystem :: PointVectorType & , const shapeworks :: ParticleDomain * , std :: vector < double > & ) const Compute a set of weights based on the difference in the normals of a central point and each of its neighbors. Difference of > 90 degrees results in a weight of 0.","title":"function ComputeAngularWeights"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-clone","text":"inline virtual VectorFunction :: Pointer Clone () Reimplements : shapeworks::VectorFunction::Clone Reimplemented by : shapeworks::CurvatureSamplingFunction::Clone","title":"function Clone"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-samplingfunction","text":"inline SamplingFunction ()","title":"function SamplingFunction"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-samplingfunction_1","text":"inline virtual ~ SamplingFunction ()","title":"function ~SamplingFunction"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-operator","text":"void operator = ( const SamplingFunction & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#function-samplingfunction_2","text":"SamplingFunction ( const SamplingFunction & )","title":"function SamplingFunction"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#variable-vdimension","text":"static constexpr static int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#variable-m_minimumneighborhoodradius","text":"double m_MinimumNeighborhoodRadius ;","title":"variable m_MinimumNeighborhoodRadius"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#variable-m_maximumneighborhoodradius","text":"double m_MaximumNeighborhoodRadius ;","title":"variable m_MaximumNeighborhoodRadius"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#variable-m_flatcutoff","text":"double m_FlatCutoff ;","title":"variable m_FlatCutoff"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#variable-m_neighborhoodtosigmaratio","text":"double m_NeighborhoodToSigmaRatio ;","title":"variable m_NeighborhoodToSigmaRatio"},{"location":"api/Classes/classshapeworks_1_1SamplingFunction.html#variable-m_spatialsigmacache","text":"SigmaCacheType :: Pointer m_SpatialSigmaCache ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_SpatialSigmaCache"},{"location":"api/Classes/classshapeworks_1_1Session.html","text":"shapeworks::Session Representation of a session. More... #include Inherits from QObject, QEnableSharedFromThis< Session > Public Slots Name void set_feature_auto_scale (bool value) void set_landmark_drag_mode (bool mode) bool get_landmark_drag_mode () void handle_clear_cache () void handle_new_mesh () void handle_thread_complete () Public Signals Name void data_changed () signal that the data has changed void points_changed () void landmarks_changed () void planes_changed () void ffc_changed () void update_display () void new_mesh () void feature_range_changed () void update_view_mode () void image_slice_settings_changed () void ffc_paint_mode_changed () void repaint () void reinsert_shapes () Public Functions Name Session (QWidget * parent, Preferences & prefs) constructor ~Session () destructor void set_parent (QWidget * parent) set QWidget parent bool save_project (QString filename) save project to file bool load_project (QString filename) load project from file bool load_light_project (QString filename) read a lightweight project file bool load_xl_project (QString filename) load a shapeworks project void set_project_path (QString relative_path) std::shared_ptr< shapeworks::Project > get_project () void load_original_files (std::vector< std::string > filenames) import files void load_groomed_files (std::vector< std::string > file_names, double iso, int domains_per_shape) load groomed files bool load_point_files (std::vector< std::string > local, std::vector< std::string > world, int domains_per_shape) bool update_particles (std::vector< Particles > particles) int get_num_particles () Return the total number of particles for all domains, combined. ParticleSystemEvaluation get_local_particle_system (int domain) void update_procrustes_transforms (std::vector< std::vector< std::vector< double > > > transforms) bool is_light_project () bool get_groomed_present () void remove_shapes (QList< int > list) remove shapes ShapeList get_shapes () return all shapes void calculate_reconstructed_samples () QString get_filename () get the filename QString get_display_name () get file display name bool original_present () bool groomed_present () bool particles_present () bool groups_available () int get_num_shapes () int get_domains_per_shape () std::string get_default_feature_map () std::shared_ptr< MeshManager > get_mesh_manager () shapeworks::Parameters & parameters () std::vector< DomainType > get_groomed_domain_types () double update_auto_glyph_size () double get_auto_glyph_size () void clear_particles () clear particles from session (e.g. groom start, optimize start) bool get_feature_auto_scale () double get_feature_range_max () double get_feature_range_min () void set_feature_range (double min, double max) void set_feature_range_min (double value) void set_feature_range_max (double value) void handle_ctrl_click ( PickResult result) void trigger_landmarks_changed () void trigger_planes_changed () void trigger_ffc_changed () void set_active_landmark_domain (int id) int get_active_landmark_domain () void set_placing_landmark (int id) int get_placing_landmark () void set_landmarks_active (bool active) bool get_landmarks_active () void set_planes_active (bool active) bool get_planes_active () void set_show_landmark_labels (bool show) bool get_show_landmark_labels () void set_show_planes (bool show) bool get_show_planes () bool should_show_planes () void set_show_landmarks (bool show) bool get_show_landmarks () bool set_image_name (std::string image_name) std::string get_image_name () void set_image_axis (QString axis) Axis get_image_axis () void set_image_3d_mode (bool mode) bool get_image_3d_mode () void set_image_share_window_and_level (bool enabled) bool get_image_share_window_and_level () void set_image_sync_slice (bool enabled) bool get_image_sync_slice () bool has_constraints () void set_loading (bool loading) bool is_loading () void set_tool_state (std::string state) std::string get_tool_state () bool is_analysis_mode () void set_ffc_paint_active (bool enabled) bool get_ffc_paint_active () void set_ffc_paint_mode_inclusive (bool inclusive) bool get_ffc_paint_mode_inclusive () void set_ffc_paint_size (double size) double get_ffc_paint_size () bool get_show_good_bad_particles () void set_show_good_bad_particles (bool enabled) bool get_show_difference_vectors () void set_show_difference_vectors (bool enabled) bool should_difference_vectors_show () std::vector< bool > get_good_bad_particles () void set_good_bad_particles (const std::vector< bool > & good_bad) void set_difference_particles ( Particles particles) Particles get_difference_particles () void set_compare_settings ( CompareSettings settings) CompareSettings get_compare_settings () void trigger_repaint () void trigger_reinsert_shapes () void set_display_mode (DisplayMode mode) set display mode (original, groomed, reconstructed) DisplayMode get_display_mode () return the current display mode void set_glyph_lut (vtkSmartPointer< vtkLookupTable > lut) vtkSmartPointer< vtkLookupTable > get_glyph_lut () bool is_supported_file_format (std::string filename) Point3 get_point (const Eigen::VectorXd & points, int i) Public Attributes Name const std::string DATA_C const std::string GROOM_C const std::string OPTIMIZE_C const std::string ANALYSIS_C const std::string DEEPSSM_C Detailed Description class shapeworks :: Session ; Representation of a session. The Session class encapsulates everything about a session/project. Public Slots Documentation slot set_feature_auto_scale void set_feature_auto_scale ( bool value ) slot set_landmark_drag_mode void set_landmark_drag_mode ( bool mode ) slot get_landmark_drag_mode bool get_landmark_drag_mode () slot handle_clear_cache void handle_clear_cache () slot handle_new_mesh void handle_new_mesh () slot handle_thread_complete void handle_thread_complete () Public Signals Documentation signal data_changed void data_changed () signal that the data has changed signal points_changed void points_changed () signal landmarks_changed void landmarks_changed () signal planes_changed void planes_changed () signal ffc_changed void ffc_changed () signal update_display void update_display () signal new_mesh void new_mesh () signal feature_range_changed void feature_range_changed () signal update_view_mode void update_view_mode () signal image_slice_settings_changed void image_slice_settings_changed () signal ffc_paint_mode_changed void ffc_paint_mode_changed () signal repaint void repaint () signal reinsert_shapes void reinsert_shapes () Public Functions Documentation function Session Session ( QWidget * parent , Preferences & prefs ) constructor function ~Session ~ Session () destructor function set_parent void set_parent ( QWidget * parent ) set QWidget parent function save_project bool save_project ( QString filename ) save project to file function load_project bool load_project ( QString filename ) load project from file function load_light_project bool load_light_project ( QString filename ) read a lightweight project file function load_xl_project bool load_xl_project ( QString filename ) load a shapeworks project function set_project_path void set_project_path ( QString relative_path ) function get_project std :: shared_ptr < shapeworks :: Project > get_project () function load_original_files void load_original_files ( std :: vector < std :: string > filenames ) import files function load_groomed_files void load_groomed_files ( std :: vector < std :: string > file_names , double iso , int domains_per_shape ) load groomed files function load_point_files bool load_point_files ( std :: vector < std :: string > local , std :: vector < std :: string > world , int domains_per_shape ) function update_particles bool update_particles ( std :: vector < Particles > particles ) function get_num_particles int get_num_particles () Return the total number of particles for all domains, combined. function get_local_particle_system ParticleSystemEvaluation get_local_particle_system ( int domain ) function update_procrustes_transforms void update_procrustes_transforms ( std :: vector < std :: vector < std :: vector < double > > > transforms ) function is_light_project bool is_light_project () function get_groomed_present bool get_groomed_present () function remove_shapes void remove_shapes ( QList < int > list ) remove shapes function get_shapes ShapeList get_shapes () return all shapes function calculate_reconstructed_samples void calculate_reconstructed_samples () function get_filename QString get_filename () get the filename function get_display_name QString get_display_name () get file display name function original_present bool original_present () function groomed_present bool groomed_present () function particles_present bool particles_present () function groups_available bool groups_available () function get_num_shapes int get_num_shapes () function get_domains_per_shape int get_domains_per_shape () function get_default_feature_map std :: string get_default_feature_map () function get_mesh_manager inline std :: shared_ptr < MeshManager > get_mesh_manager () function parameters shapeworks :: Parameters & parameters () function get_groomed_domain_types std :: vector < DomainType > get_groomed_domain_types () function update_auto_glyph_size double update_auto_glyph_size () function get_auto_glyph_size double get_auto_glyph_size () function clear_particles void clear_particles () clear particles from session (e.g. groom start, optimize start) function get_feature_auto_scale bool get_feature_auto_scale () function get_feature_range_max double get_feature_range_max () function get_feature_range_min double get_feature_range_min () function set_feature_range void set_feature_range ( double min , double max ) function set_feature_range_min void set_feature_range_min ( double value ) function set_feature_range_max void set_feature_range_max ( double value ) function handle_ctrl_click void handle_ctrl_click ( PickResult result ) function trigger_landmarks_changed void trigger_landmarks_changed () function trigger_planes_changed void trigger_planes_changed () function trigger_ffc_changed void trigger_ffc_changed () function set_active_landmark_domain void set_active_landmark_domain ( int id ) function get_active_landmark_domain int get_active_landmark_domain () function set_placing_landmark void set_placing_landmark ( int id ) function get_placing_landmark int get_placing_landmark () function set_landmarks_active void set_landmarks_active ( bool active ) function get_landmarks_active bool get_landmarks_active () function set_planes_active void set_planes_active ( bool active ) function get_planes_active bool get_planes_active () function set_show_landmark_labels void set_show_landmark_labels ( bool show ) function get_show_landmark_labels bool get_show_landmark_labels () function set_show_planes void set_show_planes ( bool show ) function get_show_planes bool get_show_planes () function should_show_planes bool should_show_planes () function set_show_landmarks void set_show_landmarks ( bool show ) function get_show_landmarks bool get_show_landmarks () function set_image_name bool set_image_name ( std :: string image_name ) function get_image_name std :: string get_image_name () function set_image_axis void set_image_axis ( QString axis ) function get_image_axis Axis get_image_axis () function set_image_3d_mode void set_image_3d_mode ( bool mode ) function get_image_3d_mode bool get_image_3d_mode () function set_image_share_window_and_level void set_image_share_window_and_level ( bool enabled ) function get_image_share_window_and_level bool get_image_share_window_and_level () function set_image_sync_slice void set_image_sync_slice ( bool enabled ) function get_image_sync_slice bool get_image_sync_slice () function has_constraints bool has_constraints () function set_loading void set_loading ( bool loading ) function is_loading bool is_loading () function set_tool_state void set_tool_state ( std :: string state ) function get_tool_state std :: string get_tool_state () function is_analysis_mode bool is_analysis_mode () function set_ffc_paint_active void set_ffc_paint_active ( bool enabled ) function get_ffc_paint_active bool get_ffc_paint_active () function set_ffc_paint_mode_inclusive void set_ffc_paint_mode_inclusive ( bool inclusive ) function get_ffc_paint_mode_inclusive bool get_ffc_paint_mode_inclusive () function set_ffc_paint_size void set_ffc_paint_size ( double size ) function get_ffc_paint_size double get_ffc_paint_size () function get_show_good_bad_particles bool get_show_good_bad_particles () function set_show_good_bad_particles void set_show_good_bad_particles ( bool enabled ) function get_show_difference_vectors bool get_show_difference_vectors () function set_show_difference_vectors void set_show_difference_vectors ( bool enabled ) function should_difference_vectors_show bool should_difference_vectors_show () function get_good_bad_particles std :: vector < bool > get_good_bad_particles () function set_good_bad_particles void set_good_bad_particles ( const std :: vector < bool > & good_bad ) function set_difference_particles inline void set_difference_particles ( Particles particles ) function get_difference_particles inline Particles get_difference_particles () function set_compare_settings void set_compare_settings ( CompareSettings settings ) function get_compare_settings CompareSettings get_compare_settings () function trigger_repaint void trigger_repaint () function trigger_reinsert_shapes void trigger_reinsert_shapes () function set_display_mode void set_display_mode ( DisplayMode mode ) set display mode (original, groomed, reconstructed) function get_display_mode DisplayMode get_display_mode () return the current display mode function set_glyph_lut inline void set_glyph_lut ( vtkSmartPointer < vtkLookupTable > lut ) function get_glyph_lut inline vtkSmartPointer < vtkLookupTable > get_glyph_lut () function is_supported_file_format static bool is_supported_file_format ( std :: string filename ) function get_point static Point3 get_point ( const Eigen :: VectorXd & points , int i ) Public Attributes Documentation variable DATA_C static const std :: string DATA_C ; variable GROOM_C static const std :: string GROOM_C ; variable OPTIMIZE_C static const std :: string OPTIMIZE_C ; variable ANALYSIS_C static const std :: string ANALYSIS_C ; variable DEEPSSM_C static const std :: string DEEPSSM_C ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Session"},{"location":"api/Classes/classshapeworks_1_1Session.html#shapeworkssession","text":"Representation of a session. More... #include Inherits from QObject, QEnableSharedFromThis< Session >","title":"shapeworks::Session"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-slots","text":"Name void set_feature_auto_scale (bool value) void set_landmark_drag_mode (bool mode) bool get_landmark_drag_mode () void handle_clear_cache () void handle_new_mesh () void handle_thread_complete ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-signals","text":"Name void data_changed () signal that the data has changed void points_changed () void landmarks_changed () void planes_changed () void ffc_changed () void update_display () void new_mesh () void feature_range_changed () void update_view_mode () void image_slice_settings_changed () void ffc_paint_mode_changed () void repaint () void reinsert_shapes ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-functions","text":"Name Session (QWidget * parent, Preferences & prefs) constructor ~Session () destructor void set_parent (QWidget * parent) set QWidget parent bool save_project (QString filename) save project to file bool load_project (QString filename) load project from file bool load_light_project (QString filename) read a lightweight project file bool load_xl_project (QString filename) load a shapeworks project void set_project_path (QString relative_path) std::shared_ptr< shapeworks::Project > get_project () void load_original_files (std::vector< std::string > filenames) import files void load_groomed_files (std::vector< std::string > file_names, double iso, int domains_per_shape) load groomed files bool load_point_files (std::vector< std::string > local, std::vector< std::string > world, int domains_per_shape) bool update_particles (std::vector< Particles > particles) int get_num_particles () Return the total number of particles for all domains, combined. ParticleSystemEvaluation get_local_particle_system (int domain) void update_procrustes_transforms (std::vector< std::vector< std::vector< double > > > transforms) bool is_light_project () bool get_groomed_present () void remove_shapes (QList< int > list) remove shapes ShapeList get_shapes () return all shapes void calculate_reconstructed_samples () QString get_filename () get the filename QString get_display_name () get file display name bool original_present () bool groomed_present () bool particles_present () bool groups_available () int get_num_shapes () int get_domains_per_shape () std::string get_default_feature_map () std::shared_ptr< MeshManager > get_mesh_manager () shapeworks::Parameters & parameters () std::vector< DomainType > get_groomed_domain_types () double update_auto_glyph_size () double get_auto_glyph_size () void clear_particles () clear particles from session (e.g. groom start, optimize start) bool get_feature_auto_scale () double get_feature_range_max () double get_feature_range_min () void set_feature_range (double min, double max) void set_feature_range_min (double value) void set_feature_range_max (double value) void handle_ctrl_click ( PickResult result) void trigger_landmarks_changed () void trigger_planes_changed () void trigger_ffc_changed () void set_active_landmark_domain (int id) int get_active_landmark_domain () void set_placing_landmark (int id) int get_placing_landmark () void set_landmarks_active (bool active) bool get_landmarks_active () void set_planes_active (bool active) bool get_planes_active () void set_show_landmark_labels (bool show) bool get_show_landmark_labels () void set_show_planes (bool show) bool get_show_planes () bool should_show_planes () void set_show_landmarks (bool show) bool get_show_landmarks () bool set_image_name (std::string image_name) std::string get_image_name () void set_image_axis (QString axis) Axis get_image_axis () void set_image_3d_mode (bool mode) bool get_image_3d_mode () void set_image_share_window_and_level (bool enabled) bool get_image_share_window_and_level () void set_image_sync_slice (bool enabled) bool get_image_sync_slice () bool has_constraints () void set_loading (bool loading) bool is_loading () void set_tool_state (std::string state) std::string get_tool_state () bool is_analysis_mode () void set_ffc_paint_active (bool enabled) bool get_ffc_paint_active () void set_ffc_paint_mode_inclusive (bool inclusive) bool get_ffc_paint_mode_inclusive () void set_ffc_paint_size (double size) double get_ffc_paint_size () bool get_show_good_bad_particles () void set_show_good_bad_particles (bool enabled) bool get_show_difference_vectors () void set_show_difference_vectors (bool enabled) bool should_difference_vectors_show () std::vector< bool > get_good_bad_particles () void set_good_bad_particles (const std::vector< bool > & good_bad) void set_difference_particles ( Particles particles) Particles get_difference_particles () void set_compare_settings ( CompareSettings settings) CompareSettings get_compare_settings () void trigger_repaint () void trigger_reinsert_shapes () void set_display_mode (DisplayMode mode) set display mode (original, groomed, reconstructed) DisplayMode get_display_mode () return the current display mode void set_glyph_lut (vtkSmartPointer< vtkLookupTable > lut) vtkSmartPointer< vtkLookupTable > get_glyph_lut () bool is_supported_file_format (std::string filename) Point3 get_point (const Eigen::VectorXd & points, int i)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-attributes","text":"Name const std::string DATA_C const std::string GROOM_C const std::string OPTIMIZE_C const std::string ANALYSIS_C const std::string DEEPSSM_C","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1Session.html#detailed-description","text":"class shapeworks :: Session ; Representation of a session. The Session class encapsulates everything about a session/project.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1Session.html#slot-set_feature_auto_scale","text":"void set_feature_auto_scale ( bool value )","title":"slot set_feature_auto_scale"},{"location":"api/Classes/classshapeworks_1_1Session.html#slot-set_landmark_drag_mode","text":"void set_landmark_drag_mode ( bool mode )","title":"slot set_landmark_drag_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#slot-get_landmark_drag_mode","text":"bool get_landmark_drag_mode ()","title":"slot get_landmark_drag_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#slot-handle_clear_cache","text":"void handle_clear_cache ()","title":"slot handle_clear_cache"},{"location":"api/Classes/classshapeworks_1_1Session.html#slot-handle_new_mesh","text":"void handle_new_mesh ()","title":"slot handle_new_mesh"},{"location":"api/Classes/classshapeworks_1_1Session.html#slot-handle_thread_complete","text":"void handle_thread_complete ()","title":"slot handle_thread_complete"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-data_changed","text":"void data_changed () signal that the data has changed","title":"signal data_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-points_changed","text":"void points_changed ()","title":"signal points_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-landmarks_changed","text":"void landmarks_changed ()","title":"signal landmarks_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-planes_changed","text":"void planes_changed ()","title":"signal planes_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-ffc_changed","text":"void ffc_changed ()","title":"signal ffc_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-update_display","text":"void update_display ()","title":"signal update_display"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-new_mesh","text":"void new_mesh ()","title":"signal new_mesh"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-feature_range_changed","text":"void feature_range_changed ()","title":"signal feature_range_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-update_view_mode","text":"void update_view_mode ()","title":"signal update_view_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-image_slice_settings_changed","text":"void image_slice_settings_changed ()","title":"signal image_slice_settings_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-ffc_paint_mode_changed","text":"void ffc_paint_mode_changed ()","title":"signal ffc_paint_mode_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-repaint","text":"void repaint ()","title":"signal repaint"},{"location":"api/Classes/classshapeworks_1_1Session.html#signal-reinsert_shapes","text":"void reinsert_shapes ()","title":"signal reinsert_shapes"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-session","text":"Session ( QWidget * parent , Preferences & prefs ) constructor","title":"function Session"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-session_1","text":"~ Session () destructor","title":"function ~Session"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_parent","text":"void set_parent ( QWidget * parent ) set QWidget parent","title":"function set_parent"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-save_project","text":"bool save_project ( QString filename ) save project to file","title":"function save_project"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-load_project","text":"bool load_project ( QString filename ) load project from file","title":"function load_project"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-load_light_project","text":"bool load_light_project ( QString filename ) read a lightweight project file","title":"function load_light_project"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-load_xl_project","text":"bool load_xl_project ( QString filename ) load a shapeworks project","title":"function load_xl_project"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_project_path","text":"void set_project_path ( QString relative_path )","title":"function set_project_path"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_project","text":"std :: shared_ptr < shapeworks :: Project > get_project ()","title":"function get_project"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-load_original_files","text":"void load_original_files ( std :: vector < std :: string > filenames ) import files","title":"function load_original_files"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-load_groomed_files","text":"void load_groomed_files ( std :: vector < std :: string > file_names , double iso , int domains_per_shape ) load groomed files","title":"function load_groomed_files"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-load_point_files","text":"bool load_point_files ( std :: vector < std :: string > local , std :: vector < std :: string > world , int domains_per_shape )","title":"function load_point_files"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-update_particles","text":"bool update_particles ( std :: vector < Particles > particles )","title":"function update_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_num_particles","text":"int get_num_particles () Return the total number of particles for all domains, combined.","title":"function get_num_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_local_particle_system","text":"ParticleSystemEvaluation get_local_particle_system ( int domain )","title":"function get_local_particle_system"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-update_procrustes_transforms","text":"void update_procrustes_transforms ( std :: vector < std :: vector < std :: vector < double > > > transforms )","title":"function update_procrustes_transforms"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-is_light_project","text":"bool is_light_project ()","title":"function is_light_project"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_groomed_present","text":"bool get_groomed_present ()","title":"function get_groomed_present"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-remove_shapes","text":"void remove_shapes ( QList < int > list ) remove shapes","title":"function remove_shapes"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_shapes","text":"ShapeList get_shapes () return all shapes","title":"function get_shapes"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-calculate_reconstructed_samples","text":"void calculate_reconstructed_samples ()","title":"function calculate_reconstructed_samples"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_filename","text":"QString get_filename () get the filename","title":"function get_filename"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_display_name","text":"QString get_display_name () get file display name","title":"function get_display_name"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-original_present","text":"bool original_present ()","title":"function original_present"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-groomed_present","text":"bool groomed_present ()","title":"function groomed_present"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-particles_present","text":"bool particles_present ()","title":"function particles_present"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-groups_available","text":"bool groups_available ()","title":"function groups_available"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_num_shapes","text":"int get_num_shapes ()","title":"function get_num_shapes"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_domains_per_shape","text":"int get_domains_per_shape ()","title":"function get_domains_per_shape"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_default_feature_map","text":"std :: string get_default_feature_map ()","title":"function get_default_feature_map"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_mesh_manager","text":"inline std :: shared_ptr < MeshManager > get_mesh_manager ()","title":"function get_mesh_manager"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-parameters","text":"shapeworks :: Parameters & parameters ()","title":"function parameters"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_groomed_domain_types","text":"std :: vector < DomainType > get_groomed_domain_types ()","title":"function get_groomed_domain_types"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-update_auto_glyph_size","text":"double update_auto_glyph_size ()","title":"function update_auto_glyph_size"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_auto_glyph_size","text":"double get_auto_glyph_size ()","title":"function get_auto_glyph_size"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-clear_particles","text":"void clear_particles () clear particles from session (e.g. groom start, optimize start)","title":"function clear_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_feature_auto_scale","text":"bool get_feature_auto_scale ()","title":"function get_feature_auto_scale"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_feature_range_max","text":"double get_feature_range_max ()","title":"function get_feature_range_max"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_feature_range_min","text":"double get_feature_range_min ()","title":"function get_feature_range_min"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_feature_range","text":"void set_feature_range ( double min , double max )","title":"function set_feature_range"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_feature_range_min","text":"void set_feature_range_min ( double value )","title":"function set_feature_range_min"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_feature_range_max","text":"void set_feature_range_max ( double value )","title":"function set_feature_range_max"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-handle_ctrl_click","text":"void handle_ctrl_click ( PickResult result )","title":"function handle_ctrl_click"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-trigger_landmarks_changed","text":"void trigger_landmarks_changed ()","title":"function trigger_landmarks_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-trigger_planes_changed","text":"void trigger_planes_changed ()","title":"function trigger_planes_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-trigger_ffc_changed","text":"void trigger_ffc_changed ()","title":"function trigger_ffc_changed"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_active_landmark_domain","text":"void set_active_landmark_domain ( int id )","title":"function set_active_landmark_domain"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_active_landmark_domain","text":"int get_active_landmark_domain ()","title":"function get_active_landmark_domain"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_placing_landmark","text":"void set_placing_landmark ( int id )","title":"function set_placing_landmark"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_placing_landmark","text":"int get_placing_landmark ()","title":"function get_placing_landmark"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_landmarks_active","text":"void set_landmarks_active ( bool active )","title":"function set_landmarks_active"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_landmarks_active","text":"bool get_landmarks_active ()","title":"function get_landmarks_active"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_planes_active","text":"void set_planes_active ( bool active )","title":"function set_planes_active"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_planes_active","text":"bool get_planes_active ()","title":"function get_planes_active"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_show_landmark_labels","text":"void set_show_landmark_labels ( bool show )","title":"function set_show_landmark_labels"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_show_landmark_labels","text":"bool get_show_landmark_labels ()","title":"function get_show_landmark_labels"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_show_planes","text":"void set_show_planes ( bool show )","title":"function set_show_planes"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_show_planes","text":"bool get_show_planes ()","title":"function get_show_planes"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-should_show_planes","text":"bool should_show_planes ()","title":"function should_show_planes"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_show_landmarks","text":"void set_show_landmarks ( bool show )","title":"function set_show_landmarks"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_show_landmarks","text":"bool get_show_landmarks ()","title":"function get_show_landmarks"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_image_name","text":"bool set_image_name ( std :: string image_name )","title":"function set_image_name"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_image_name","text":"std :: string get_image_name ()","title":"function get_image_name"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_image_axis","text":"void set_image_axis ( QString axis )","title":"function set_image_axis"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_image_axis","text":"Axis get_image_axis ()","title":"function get_image_axis"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_image_3d_mode","text":"void set_image_3d_mode ( bool mode )","title":"function set_image_3d_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_image_3d_mode","text":"bool get_image_3d_mode ()","title":"function get_image_3d_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_image_share_window_and_level","text":"void set_image_share_window_and_level ( bool enabled )","title":"function set_image_share_window_and_level"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_image_share_window_and_level","text":"bool get_image_share_window_and_level ()","title":"function get_image_share_window_and_level"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_image_sync_slice","text":"void set_image_sync_slice ( bool enabled )","title":"function set_image_sync_slice"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_image_sync_slice","text":"bool get_image_sync_slice ()","title":"function get_image_sync_slice"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-has_constraints","text":"bool has_constraints ()","title":"function has_constraints"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_loading","text":"void set_loading ( bool loading )","title":"function set_loading"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-is_loading","text":"bool is_loading ()","title":"function is_loading"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_tool_state","text":"void set_tool_state ( std :: string state )","title":"function set_tool_state"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_tool_state","text":"std :: string get_tool_state ()","title":"function get_tool_state"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-is_analysis_mode","text":"bool is_analysis_mode ()","title":"function is_analysis_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_ffc_paint_active","text":"void set_ffc_paint_active ( bool enabled )","title":"function set_ffc_paint_active"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_ffc_paint_active","text":"bool get_ffc_paint_active ()","title":"function get_ffc_paint_active"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_ffc_paint_mode_inclusive","text":"void set_ffc_paint_mode_inclusive ( bool inclusive )","title":"function set_ffc_paint_mode_inclusive"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_ffc_paint_mode_inclusive","text":"bool get_ffc_paint_mode_inclusive ()","title":"function get_ffc_paint_mode_inclusive"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_ffc_paint_size","text":"void set_ffc_paint_size ( double size )","title":"function set_ffc_paint_size"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_ffc_paint_size","text":"double get_ffc_paint_size ()","title":"function get_ffc_paint_size"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_show_good_bad_particles","text":"bool get_show_good_bad_particles ()","title":"function get_show_good_bad_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_show_good_bad_particles","text":"void set_show_good_bad_particles ( bool enabled )","title":"function set_show_good_bad_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_show_difference_vectors","text":"bool get_show_difference_vectors ()","title":"function get_show_difference_vectors"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_show_difference_vectors","text":"void set_show_difference_vectors ( bool enabled )","title":"function set_show_difference_vectors"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-should_difference_vectors_show","text":"bool should_difference_vectors_show ()","title":"function should_difference_vectors_show"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_good_bad_particles","text":"std :: vector < bool > get_good_bad_particles ()","title":"function get_good_bad_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_good_bad_particles","text":"void set_good_bad_particles ( const std :: vector < bool > & good_bad )","title":"function set_good_bad_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_difference_particles","text":"inline void set_difference_particles ( Particles particles )","title":"function set_difference_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_difference_particles","text":"inline Particles get_difference_particles ()","title":"function get_difference_particles"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_compare_settings","text":"void set_compare_settings ( CompareSettings settings )","title":"function set_compare_settings"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_compare_settings","text":"CompareSettings get_compare_settings ()","title":"function get_compare_settings"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-trigger_repaint","text":"void trigger_repaint ()","title":"function trigger_repaint"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-trigger_reinsert_shapes","text":"void trigger_reinsert_shapes ()","title":"function trigger_reinsert_shapes"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_display_mode","text":"void set_display_mode ( DisplayMode mode ) set display mode (original, groomed, reconstructed)","title":"function set_display_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_display_mode","text":"DisplayMode get_display_mode () return the current display mode","title":"function get_display_mode"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-set_glyph_lut","text":"inline void set_glyph_lut ( vtkSmartPointer < vtkLookupTable > lut )","title":"function set_glyph_lut"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_glyph_lut","text":"inline vtkSmartPointer < vtkLookupTable > get_glyph_lut ()","title":"function get_glyph_lut"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-is_supported_file_format","text":"static bool is_supported_file_format ( std :: string filename )","title":"function is_supported_file_format"},{"location":"api/Classes/classshapeworks_1_1Session.html#function-get_point","text":"static Point3 get_point ( const Eigen :: VectorXd & points , int i )","title":"function get_point"},{"location":"api/Classes/classshapeworks_1_1Session.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Session.html#variable-data_c","text":"static const std :: string DATA_C ;","title":"variable DATA_C"},{"location":"api/Classes/classshapeworks_1_1Session.html#variable-groom_c","text":"static const std :: string GROOM_C ;","title":"variable GROOM_C"},{"location":"api/Classes/classshapeworks_1_1Session.html#variable-optimize_c","text":"static const std :: string OPTIMIZE_C ;","title":"variable OPTIMIZE_C"},{"location":"api/Classes/classshapeworks_1_1Session.html#variable-analysis_c","text":"static const std :: string ANALYSIS_C ;","title":"variable ANALYSIS_C"},{"location":"api/Classes/classshapeworks_1_1Session.html#variable-deepssm_c","text":"static const std :: string DEEPSSM_C ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable DEEPSSM_C"},{"location":"api/Classes/classshapeworks_1_1Shape.html","text":"shapeworks::Shape Representation of a single shape/patient/subject. #include Public Classes Name class Point TODO: replace this wherever it is used. Public Functions Name Shape () ~Shape () std::string get_display_name () MeshGroup get_meshes (DisplayMode display_mode, bool wait =false) void set_annotations (std::vector< std::string > annotations, bool only_overwrite_blank =true) std::vector< std::string > get_annotations () void set_mesh_manager (std::shared_ptr< MeshManager > mesh_manager) void set_subject (std::shared_ptr< shapeworks::Subject > subject) bool is_subject () Is this shape a population subject (e.g. mean/pca constructions are not) std::shared_ptr< shapeworks::Subject > get_subject () Return the pointer to the subject object. void import_original_file (const std::string & filename) Import the original raw mesh or image file. MeshGroup get_original_meshes (bool wait =false) Retrieve the original meshes. MeshGroup get_groomed_meshes (bool wait =false) Retrieve the groomed meshes. MeshGroup get_reconstructed_meshes (bool wait =false) Retrieve the reconstructed meshes. void reset_groomed_mesh () Reset the groomed mesh so that it will be re-created. bool import_global_point_files (std::vector< std::string > filenames) Import global correspondence point files. bool import_local_point_files (std::vector< std::string > filenames) Import local correspondence point files. bool import_landmarks_files (std::vector< std::string > filenames) Import landmarks files. bool store_landmarks () Store landmarks. bool import_constraints (std::vector< std::string > filenames) import constraints bool store_constraints () Store constraints. void set_particles ( Particles particles) Set particles. Particles get_particles () Get particles. void set_particle_transform (vtkSmartPointer< vtkTransform > transform) Set the particle transform (alignment) void set_alignment_type (int alignment) Set the alignment type. Eigen::VectorXd get_global_correspondence_points () Get the global correspondence points. std::vector< Eigen::VectorXd > get_particles_for_display () Get the global correspondence points for display. Eigen::VectorXd get_local_correspondence_points () Get the local correspondence points. void clear_reconstructed_mesh () int get_id () Get the id of this shape. void set_id (int id) Set the id of this shape. std::vector< std::string > get_original_filenames () std::vector< std::string > get_original_filenames_with_path () std::string get_original_filename () std::string get_original_filename_with_path () std::string get_groomed_filename () std::string get_groomed_filename_with_path (int domain) std::string get_global_point_filename () std::string get_global_point_filename_with_path () std::string get_local_point_filename () std::string get_local_point_filename_with_path () void set_transform (vtkSmartPointer< vtkTransform > transform) vtkSmartPointer< vtkTransform > get_transform (int domain =0) vtkSmartPointer< vtkTransform > get_inverse_transform (int domain =0) bool has_alignment () vtkSmartPointer< vtkTransform > get_original_transform (int domain =0) void set_reconstruction_transforms (std::vector< vtkSmartPointer< vtkTransform > > transforms) vtkSmartPointer< vtkTransform > get_reconstruction_transform (int domain) vtkSmartPointer< vtkTransform > get_groomed_transform (int domain =0) vtkSmartPointer< vtkTransform > get_procrustes_transform (int domain =0) std::vector< vtkSmartPointer< vtkTransform > > get_procrustes_transforms () vtkSmartPointer< vtkTransform > get_alignment (int domain =0) void load_feature (DisplayMode display_mode, std::string feature) std::shared_ptr< Image > get_image_volume (std::string image_volume_name) Eigen::VectorXf get_point_features (std::string feature) void set_point_features (std::string feature, Eigen::VectorXf values) void load_feature_from_scalar_file (std::string filename, std::string feature_name) void set_override_feature (std::string feature) std::string get_override_feature () Eigen::MatrixXd & landmarks () std::vector< Constraints > & constraints () Constraints & get_constraints (int domain_id) bool has_planes () std::vector< std::shared_ptr< VtkMeshWrapper > > get_groomed_mesh_wrappers () Public Functions Documentation function Shape Shape () function ~Shape ~ Shape () function get_display_name std :: string get_display_name () function get_meshes MeshGroup get_meshes ( DisplayMode display_mode , bool wait = false ) function set_annotations void set_annotations ( std :: vector < std :: string > annotations , bool only_overwrite_blank = true ) function get_annotations std :: vector < std :: string > get_annotations () function set_mesh_manager void set_mesh_manager ( std :: shared_ptr < MeshManager > mesh_manager ) function set_subject void set_subject ( std :: shared_ptr < shapeworks :: Subject > subject ) function is_subject bool is_subject () Is this shape a population subject (e.g. mean/pca constructions are not) function get_subject std :: shared_ptr < shapeworks :: Subject > get_subject () Return the pointer to the subject object. function import_original_file void import_original_file ( const std :: string & filename ) Import the original raw mesh or image file. function get_original_meshes MeshGroup get_original_meshes ( bool wait = false ) Retrieve the original meshes. function get_groomed_meshes MeshGroup get_groomed_meshes ( bool wait = false ) Retrieve the groomed meshes. function get_reconstructed_meshes MeshGroup get_reconstructed_meshes ( bool wait = false ) Retrieve the reconstructed meshes. function reset_groomed_mesh void reset_groomed_mesh () Reset the groomed mesh so that it will be re-created. function import_global_point_files bool import_global_point_files ( std :: vector < std :: string > filenames ) Import global correspondence point files. function import_local_point_files bool import_local_point_files ( std :: vector < std :: string > filenames ) Import local correspondence point files. function import_landmarks_files bool import_landmarks_files ( std :: vector < std :: string > filenames ) Import landmarks files. function store_landmarks bool store_landmarks () Store landmarks. function import_constraints bool import_constraints ( std :: vector < std :: string > filenames ) import constraints function store_constraints bool store_constraints () Store constraints. function set_particles void set_particles ( Particles particles ) Set particles. function get_particles Particles get_particles () Get particles. function set_particle_transform void set_particle_transform ( vtkSmartPointer < vtkTransform > transform ) Set the particle transform (alignment) function set_alignment_type void set_alignment_type ( int alignment ) Set the alignment type. function get_global_correspondence_points Eigen :: VectorXd get_global_correspondence_points () Get the global correspondence points. function get_particles_for_display std :: vector < Eigen :: VectorXd > get_particles_for_display () Get the global correspondence points for display. function get_local_correspondence_points Eigen :: VectorXd get_local_correspondence_points () Get the local correspondence points. function clear_reconstructed_mesh void clear_reconstructed_mesh () function get_id int get_id () Get the id of this shape. function set_id void set_id ( int id ) Set the id of this shape. function get_original_filenames std :: vector < std :: string > get_original_filenames () function get_original_filenames_with_path std :: vector < std :: string > get_original_filenames_with_path () function get_original_filename std :: string get_original_filename () function get_original_filename_with_path std :: string get_original_filename_with_path () function get_groomed_filename std :: string get_groomed_filename () function get_groomed_filename_with_path std :: string get_groomed_filename_with_path ( int domain ) function get_global_point_filename std :: string get_global_point_filename () function get_global_point_filename_with_path std :: string get_global_point_filename_with_path () function get_local_point_filename std :: string get_local_point_filename () function get_local_point_filename_with_path std :: string get_local_point_filename_with_path () function set_transform void set_transform ( vtkSmartPointer < vtkTransform > transform ) function get_transform vtkSmartPointer < vtkTransform > get_transform ( int domain = 0 ) function get_inverse_transform vtkSmartPointer < vtkTransform > get_inverse_transform ( int domain = 0 ) function has_alignment bool has_alignment () function get_original_transform vtkSmartPointer < vtkTransform > get_original_transform ( int domain = 0 ) function set_reconstruction_transforms void set_reconstruction_transforms ( std :: vector < vtkSmartPointer < vtkTransform > > transforms ) function get_reconstruction_transform vtkSmartPointer < vtkTransform > get_reconstruction_transform ( int domain ) function get_groomed_transform vtkSmartPointer < vtkTransform > get_groomed_transform ( int domain = 0 ) function get_procrustes_transform vtkSmartPointer < vtkTransform > get_procrustes_transform ( int domain = 0 ) function get_procrustes_transforms std :: vector < vtkSmartPointer < vtkTransform > > get_procrustes_transforms () function get_alignment vtkSmartPointer < vtkTransform > get_alignment ( int domain = 0 ) function load_feature void load_feature ( DisplayMode display_mode , std :: string feature ) function get_image_volume std :: shared_ptr < Image > get_image_volume ( std :: string image_volume_name ) function get_point_features Eigen :: VectorXf get_point_features ( std :: string feature ) function set_point_features void set_point_features ( std :: string feature , Eigen :: VectorXf values ) function load_feature_from_scalar_file void load_feature_from_scalar_file ( std :: string filename , std :: string feature_name ) function set_override_feature void set_override_feature ( std :: string feature ) function get_override_feature std :: string get_override_feature () function landmarks Eigen :: MatrixXd & landmarks () function constraints std :: vector < Constraints > & constraints () function get_constraints Constraints & get_constraints ( int domain_id ) function has_planes bool has_planes () function get_groomed_mesh_wrappers std :: vector < std :: shared_ptr < VtkMeshWrapper > > get_groomed_mesh_wrappers () Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Shape"},{"location":"api/Classes/classshapeworks_1_1Shape.html#shapeworksshape","text":"Representation of a single shape/patient/subject. #include ","title":"shapeworks::Shape"},{"location":"api/Classes/classshapeworks_1_1Shape.html#public-classes","text":"Name class Point TODO: replace this wherever it is used.","title":"Public Classes"},{"location":"api/Classes/classshapeworks_1_1Shape.html#public-functions","text":"Name Shape () ~Shape () std::string get_display_name () MeshGroup get_meshes (DisplayMode display_mode, bool wait =false) void set_annotations (std::vector< std::string > annotations, bool only_overwrite_blank =true) std::vector< std::string > get_annotations () void set_mesh_manager (std::shared_ptr< MeshManager > mesh_manager) void set_subject (std::shared_ptr< shapeworks::Subject > subject) bool is_subject () Is this shape a population subject (e.g. mean/pca constructions are not) std::shared_ptr< shapeworks::Subject > get_subject () Return the pointer to the subject object. void import_original_file (const std::string & filename) Import the original raw mesh or image file. MeshGroup get_original_meshes (bool wait =false) Retrieve the original meshes. MeshGroup get_groomed_meshes (bool wait =false) Retrieve the groomed meshes. MeshGroup get_reconstructed_meshes (bool wait =false) Retrieve the reconstructed meshes. void reset_groomed_mesh () Reset the groomed mesh so that it will be re-created. bool import_global_point_files (std::vector< std::string > filenames) Import global correspondence point files. bool import_local_point_files (std::vector< std::string > filenames) Import local correspondence point files. bool import_landmarks_files (std::vector< std::string > filenames) Import landmarks files. bool store_landmarks () Store landmarks. bool import_constraints (std::vector< std::string > filenames) import constraints bool store_constraints () Store constraints. void set_particles ( Particles particles) Set particles. Particles get_particles () Get particles. void set_particle_transform (vtkSmartPointer< vtkTransform > transform) Set the particle transform (alignment) void set_alignment_type (int alignment) Set the alignment type. Eigen::VectorXd get_global_correspondence_points () Get the global correspondence points. std::vector< Eigen::VectorXd > get_particles_for_display () Get the global correspondence points for display. Eigen::VectorXd get_local_correspondence_points () Get the local correspondence points. void clear_reconstructed_mesh () int get_id () Get the id of this shape. void set_id (int id) Set the id of this shape. std::vector< std::string > get_original_filenames () std::vector< std::string > get_original_filenames_with_path () std::string get_original_filename () std::string get_original_filename_with_path () std::string get_groomed_filename () std::string get_groomed_filename_with_path (int domain) std::string get_global_point_filename () std::string get_global_point_filename_with_path () std::string get_local_point_filename () std::string get_local_point_filename_with_path () void set_transform (vtkSmartPointer< vtkTransform > transform) vtkSmartPointer< vtkTransform > get_transform (int domain =0) vtkSmartPointer< vtkTransform > get_inverse_transform (int domain =0) bool has_alignment () vtkSmartPointer< vtkTransform > get_original_transform (int domain =0) void set_reconstruction_transforms (std::vector< vtkSmartPointer< vtkTransform > > transforms) vtkSmartPointer< vtkTransform > get_reconstruction_transform (int domain) vtkSmartPointer< vtkTransform > get_groomed_transform (int domain =0) vtkSmartPointer< vtkTransform > get_procrustes_transform (int domain =0) std::vector< vtkSmartPointer< vtkTransform > > get_procrustes_transforms () vtkSmartPointer< vtkTransform > get_alignment (int domain =0) void load_feature (DisplayMode display_mode, std::string feature) std::shared_ptr< Image > get_image_volume (std::string image_volume_name) Eigen::VectorXf get_point_features (std::string feature) void set_point_features (std::string feature, Eigen::VectorXf values) void load_feature_from_scalar_file (std::string filename, std::string feature_name) void set_override_feature (std::string feature) std::string get_override_feature () Eigen::MatrixXd & landmarks () std::vector< Constraints > & constraints () Constraints & get_constraints (int domain_id) bool has_planes () std::vector< std::shared_ptr< VtkMeshWrapper > > get_groomed_mesh_wrappers ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Shape.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-shape","text":"Shape ()","title":"function Shape"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-shape_1","text":"~ Shape ()","title":"function ~Shape"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_display_name","text":"std :: string get_display_name ()","title":"function get_display_name"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_meshes","text":"MeshGroup get_meshes ( DisplayMode display_mode , bool wait = false )","title":"function get_meshes"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_annotations","text":"void set_annotations ( std :: vector < std :: string > annotations , bool only_overwrite_blank = true )","title":"function set_annotations"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_annotations","text":"std :: vector < std :: string > get_annotations ()","title":"function get_annotations"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_mesh_manager","text":"void set_mesh_manager ( std :: shared_ptr < MeshManager > mesh_manager )","title":"function set_mesh_manager"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_subject","text":"void set_subject ( std :: shared_ptr < shapeworks :: Subject > subject )","title":"function set_subject"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-is_subject","text":"bool is_subject () Is this shape a population subject (e.g. mean/pca constructions are not)","title":"function is_subject"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_subject","text":"std :: shared_ptr < shapeworks :: Subject > get_subject () Return the pointer to the subject object.","title":"function get_subject"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-import_original_file","text":"void import_original_file ( const std :: string & filename ) Import the original raw mesh or image file.","title":"function import_original_file"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_original_meshes","text":"MeshGroup get_original_meshes ( bool wait = false ) Retrieve the original meshes.","title":"function get_original_meshes"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_groomed_meshes","text":"MeshGroup get_groomed_meshes ( bool wait = false ) Retrieve the groomed meshes.","title":"function get_groomed_meshes"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_reconstructed_meshes","text":"MeshGroup get_reconstructed_meshes ( bool wait = false ) Retrieve the reconstructed meshes.","title":"function get_reconstructed_meshes"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-reset_groomed_mesh","text":"void reset_groomed_mesh () Reset the groomed mesh so that it will be re-created.","title":"function reset_groomed_mesh"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-import_global_point_files","text":"bool import_global_point_files ( std :: vector < std :: string > filenames ) Import global correspondence point files.","title":"function import_global_point_files"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-import_local_point_files","text":"bool import_local_point_files ( std :: vector < std :: string > filenames ) Import local correspondence point files.","title":"function import_local_point_files"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-import_landmarks_files","text":"bool import_landmarks_files ( std :: vector < std :: string > filenames ) Import landmarks files.","title":"function import_landmarks_files"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-store_landmarks","text":"bool store_landmarks () Store landmarks.","title":"function store_landmarks"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-import_constraints","text":"bool import_constraints ( std :: vector < std :: string > filenames ) import constraints","title":"function import_constraints"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-store_constraints","text":"bool store_constraints () Store constraints.","title":"function store_constraints"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_particles","text":"void set_particles ( Particles particles ) Set particles.","title":"function set_particles"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_particles","text":"Particles get_particles () Get particles.","title":"function get_particles"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_particle_transform","text":"void set_particle_transform ( vtkSmartPointer < vtkTransform > transform ) Set the particle transform (alignment)","title":"function set_particle_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_alignment_type","text":"void set_alignment_type ( int alignment ) Set the alignment type.","title":"function set_alignment_type"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_global_correspondence_points","text":"Eigen :: VectorXd get_global_correspondence_points () Get the global correspondence points.","title":"function get_global_correspondence_points"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_particles_for_display","text":"std :: vector < Eigen :: VectorXd > get_particles_for_display () Get the global correspondence points for display.","title":"function get_particles_for_display"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_local_correspondence_points","text":"Eigen :: VectorXd get_local_correspondence_points () Get the local correspondence points.","title":"function get_local_correspondence_points"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-clear_reconstructed_mesh","text":"void clear_reconstructed_mesh ()","title":"function clear_reconstructed_mesh"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_id","text":"int get_id () Get the id of this shape.","title":"function get_id"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_id","text":"void set_id ( int id ) Set the id of this shape.","title":"function set_id"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_original_filenames","text":"std :: vector < std :: string > get_original_filenames ()","title":"function get_original_filenames"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_original_filenames_with_path","text":"std :: vector < std :: string > get_original_filenames_with_path ()","title":"function get_original_filenames_with_path"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_original_filename","text":"std :: string get_original_filename ()","title":"function get_original_filename"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_original_filename_with_path","text":"std :: string get_original_filename_with_path ()","title":"function get_original_filename_with_path"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_groomed_filename","text":"std :: string get_groomed_filename ()","title":"function get_groomed_filename"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_groomed_filename_with_path","text":"std :: string get_groomed_filename_with_path ( int domain )","title":"function get_groomed_filename_with_path"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_global_point_filename","text":"std :: string get_global_point_filename ()","title":"function get_global_point_filename"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_global_point_filename_with_path","text":"std :: string get_global_point_filename_with_path ()","title":"function get_global_point_filename_with_path"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_local_point_filename","text":"std :: string get_local_point_filename ()","title":"function get_local_point_filename"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_local_point_filename_with_path","text":"std :: string get_local_point_filename_with_path ()","title":"function get_local_point_filename_with_path"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_transform","text":"void set_transform ( vtkSmartPointer < vtkTransform > transform )","title":"function set_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_transform","text":"vtkSmartPointer < vtkTransform > get_transform ( int domain = 0 )","title":"function get_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_inverse_transform","text":"vtkSmartPointer < vtkTransform > get_inverse_transform ( int domain = 0 )","title":"function get_inverse_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-has_alignment","text":"bool has_alignment ()","title":"function has_alignment"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_original_transform","text":"vtkSmartPointer < vtkTransform > get_original_transform ( int domain = 0 )","title":"function get_original_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_reconstruction_transforms","text":"void set_reconstruction_transforms ( std :: vector < vtkSmartPointer < vtkTransform > > transforms )","title":"function set_reconstruction_transforms"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_reconstruction_transform","text":"vtkSmartPointer < vtkTransform > get_reconstruction_transform ( int domain )","title":"function get_reconstruction_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_groomed_transform","text":"vtkSmartPointer < vtkTransform > get_groomed_transform ( int domain = 0 )","title":"function get_groomed_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_procrustes_transform","text":"vtkSmartPointer < vtkTransform > get_procrustes_transform ( int domain = 0 )","title":"function get_procrustes_transform"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_procrustes_transforms","text":"std :: vector < vtkSmartPointer < vtkTransform > > get_procrustes_transforms ()","title":"function get_procrustes_transforms"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_alignment","text":"vtkSmartPointer < vtkTransform > get_alignment ( int domain = 0 )","title":"function get_alignment"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-load_feature","text":"void load_feature ( DisplayMode display_mode , std :: string feature )","title":"function load_feature"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_image_volume","text":"std :: shared_ptr < Image > get_image_volume ( std :: string image_volume_name )","title":"function get_image_volume"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_point_features","text":"Eigen :: VectorXf get_point_features ( std :: string feature )","title":"function get_point_features"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_point_features","text":"void set_point_features ( std :: string feature , Eigen :: VectorXf values )","title":"function set_point_features"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-load_feature_from_scalar_file","text":"void load_feature_from_scalar_file ( std :: string filename , std :: string feature_name )","title":"function load_feature_from_scalar_file"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-set_override_feature","text":"void set_override_feature ( std :: string feature )","title":"function set_override_feature"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_override_feature","text":"std :: string get_override_feature ()","title":"function get_override_feature"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-landmarks","text":"Eigen :: MatrixXd & landmarks ()","title":"function landmarks"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-constraints","text":"std :: vector < Constraints > & constraints ()","title":"function constraints"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_constraints","text":"Constraints & get_constraints ( int domain_id )","title":"function get_constraints"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-has_planes","text":"bool has_planes ()","title":"function has_planes"},{"location":"api/Classes/classshapeworks_1_1Shape.html#function-get_groomed_mesh_wrappers","text":"std :: vector < std :: shared_ptr < VtkMeshWrapper > > get_groomed_mesh_wrappers () Updated on 2023-10-24 at 22:16:02 +0000","title":"function get_groomed_mesh_wrappers"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html","text":"shapeworks::ShapeEvaluation Public Functions Name ShapeEvaluation () double ComputeCompactness (const ParticleSystemEvaluation & ParticleSystemEvaluation, const int nModes, const std::string & saveTo =\"\") Eigen::VectorXd ComputeFullCompactness (const ParticleSystemEvaluation & ParticleSystemEvaluation, std::function< void(float)> progress_callback =nullptr) double ComputeGeneralization (const ParticleSystemEvaluation & ParticleSystemEvaluation, const int nModes, const std::string & saveTo =\"\") Eigen::VectorXd ComputeFullGeneralization (const ParticleSystemEvaluation & ParticleSystemEvaluation, std::function< void(float)> progress_callback =nullptr) double ComputeSpecificity (const ParticleSystemEvaluation & ParticleSystemEvaluation, const int nModes, const std::string & saveTo =\"\") Eigen::VectorXd ComputeFullSpecificity (const ParticleSystemEvaluation & ParticleSystemEvaluation, std::function< void(float)> progress_callback =nullptr) Public Attributes Name const unsigned VDimension Public Functions Documentation function ShapeEvaluation ShapeEvaluation () function ComputeCompactness static double ComputeCompactness ( const ParticleSystemEvaluation & ParticleSystemEvaluation , const int nModes , const std :: string & saveTo = \"\" ) function ComputeFullCompactness static Eigen :: VectorXd ComputeFullCompactness ( const ParticleSystemEvaluation & ParticleSystemEvaluation , std :: function < void ( float ) > progress_callback = nullptr ) function ComputeGeneralization static double ComputeGeneralization ( const ParticleSystemEvaluation & ParticleSystemEvaluation , const int nModes , const std :: string & saveTo = \"\" ) function ComputeFullGeneralization static Eigen :: VectorXd ComputeFullGeneralization ( const ParticleSystemEvaluation & ParticleSystemEvaluation , std :: function < void ( float ) > progress_callback = nullptr ) function ComputeSpecificity static double ComputeSpecificity ( const ParticleSystemEvaluation & ParticleSystemEvaluation , const int nModes , const std :: string & saveTo = \"\" ) function ComputeFullSpecificity static Eigen :: VectorXd ComputeFullSpecificity ( const ParticleSystemEvaluation & ParticleSystemEvaluation , std :: function < void ( float ) > progress_callback = nullptr ) Public Attributes Documentation variable VDimension static const unsigned VDimension = 3 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeEvaluation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#shapeworksshapeevaluation","text":"","title":"shapeworks::ShapeEvaluation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#public-functions","text":"Name ShapeEvaluation () double ComputeCompactness (const ParticleSystemEvaluation & ParticleSystemEvaluation, const int nModes, const std::string & saveTo =\"\") Eigen::VectorXd ComputeFullCompactness (const ParticleSystemEvaluation & ParticleSystemEvaluation, std::function< void(float)> progress_callback =nullptr) double ComputeGeneralization (const ParticleSystemEvaluation & ParticleSystemEvaluation, const int nModes, const std::string & saveTo =\"\") Eigen::VectorXd ComputeFullGeneralization (const ParticleSystemEvaluation & ParticleSystemEvaluation, std::function< void(float)> progress_callback =nullptr) double ComputeSpecificity (const ParticleSystemEvaluation & ParticleSystemEvaluation, const int nModes, const std::string & saveTo =\"\") Eigen::VectorXd ComputeFullSpecificity (const ParticleSystemEvaluation & ParticleSystemEvaluation, std::function< void(float)> progress_callback =nullptr)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#public-attributes","text":"Name const unsigned VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#function-shapeevaluation","text":"ShapeEvaluation ()","title":"function ShapeEvaluation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#function-computecompactness","text":"static double ComputeCompactness ( const ParticleSystemEvaluation & ParticleSystemEvaluation , const int nModes , const std :: string & saveTo = \"\" )","title":"function ComputeCompactness"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#function-computefullcompactness","text":"static Eigen :: VectorXd ComputeFullCompactness ( const ParticleSystemEvaluation & ParticleSystemEvaluation , std :: function < void ( float ) > progress_callback = nullptr )","title":"function ComputeFullCompactness"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#function-computegeneralization","text":"static double ComputeGeneralization ( const ParticleSystemEvaluation & ParticleSystemEvaluation , const int nModes , const std :: string & saveTo = \"\" )","title":"function ComputeGeneralization"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#function-computefullgeneralization","text":"static Eigen :: VectorXd ComputeFullGeneralization ( const ParticleSystemEvaluation & ParticleSystemEvaluation , std :: function < void ( float ) > progress_callback = nullptr )","title":"function ComputeFullGeneralization"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#function-computespecificity","text":"static double ComputeSpecificity ( const ParticleSystemEvaluation & ParticleSystemEvaluation , const int nModes , const std :: string & saveTo = \"\" )","title":"function ComputeSpecificity"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#function-computefullspecificity","text":"static Eigen :: VectorXd ComputeFullSpecificity ( const ParticleSystemEvaluation & ParticleSystemEvaluation , std :: function < void ( float ) > progress_callback = nullptr )","title":"function ComputeFullSpecificity"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluation.html#variable-vdimension","text":"static const unsigned VDimension = 3 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html","text":"shapeworks::ShapeEvaluationJob Inherits from shapeworks::Job , QObject Public Types Name enum class JobType Public Signals Name void report_progress (shapeworks::ShapeEvaluationJob::JobType job_type, float progress) void result_ready (shapeworks::ShapeEvaluationJob::JobType job_type, Eigen::VectorXd data) Public Functions Name ShapeEvaluationJob (JobType job_type, ParticleShapeStatistics stats) virtual void run () override run the job virtual QString name () override get the name of the job Additional inherited members Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Public Types Documentation enum JobType Enumerator Value Description CompactnessType SpecificityType GeneralizationType Public Signals Documentation signal report_progress void report_progress ( shapeworks :: ShapeEvaluationJob :: JobType job_type , float progress ) signal result_ready void result_ready ( shapeworks :: ShapeEvaluationJob :: JobType job_type , Eigen :: VectorXd data ) Public Functions Documentation function ShapeEvaluationJob ShapeEvaluationJob ( JobType job_type , ParticleShapeStatistics stats ) function run virtual void run () override run the job Reimplements : shapeworks::Job::run function name virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeEvaluationJob"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#shapeworksshapeevaluationjob","text":"Inherits from shapeworks::Job , QObject","title":"shapeworks::ShapeEvaluationJob"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#public-types","text":"Name enum class JobType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#public-signals","text":"Name void report_progress (shapeworks::ShapeEvaluationJob::JobType job_type, float progress) void result_ready (shapeworks::ShapeEvaluationJob::JobType job_type, Eigen::VectorXd data)","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#public-functions","text":"Name ShapeEvaluationJob (JobType job_type, ParticleShapeStatistics stats) virtual void run () override run the job virtual QString name () override get the name of the job","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#additional-inherited-members","text":"Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#enum-jobtype","text":"Enumerator Value Description CompactnessType SpecificityType GeneralizationType","title":"enum JobType"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#signal-report_progress","text":"void report_progress ( shapeworks :: ShapeEvaluationJob :: JobType job_type , float progress )","title":"signal report_progress"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#signal-result_ready","text":"void result_ready ( shapeworks :: ShapeEvaluationJob :: JobType job_type , Eigen :: VectorXd data )","title":"signal result_ready"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#function-shapeevaluationjob","text":"ShapeEvaluationJob ( JobType job_type , ParticleShapeStatistics stats )","title":"function ShapeEvaluationJob"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#function-run","text":"virtual void run () override run the job Reimplements : shapeworks::Job::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1ShapeEvaluationJob.html#function-name","text":"virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name Updated on 2023-10-24 at 22:16:02 +0000","title":"function name"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html","text":"shapeworks::ShapeGradientMatrix Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! More... #include Inherits from vnl_matrix< double >, shapeworks::Observer Public Types Name typedef double DataType typedef ShapeGradientMatrix Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef ParticleSystem ParticleSystemType Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ShapeGradientMatrix , Observer ) virtual void BeforeIteration () virtual void AfterIteration () void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetAttributesPerDomain (const std::vector< int > & i) void SetAttributeScales (const std::vector< double > & s) void SetXYZ (int i, bool val) void SetNormals (int i, bool val) virtual void SetMatrix (const vnl_matrix< double > & m) virtual void ResizeMatrix (int rs, int cs) void SetValues (const ParticleSystemType * ps, int idx, int d) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) Protected Functions Name ShapeGradientMatrix () virtual ~ShapeGradientMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const Protected Attributes Name int m_DomainsPerShape Additional inherited members Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks Detailed Description class shapeworks :: ShapeGradientMatrix ; Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! Each column represents a single shape. Public Types Documentation typedef DataType typedef double shapeworks :: ShapeGradientMatrix :: DataType ; Standard class typedefs typedef Self typedef ShapeGradientMatrix shapeworks :: ShapeGradientMatrix :: Self ; typedef Superclass typedef Observer shapeworks :: ShapeGradientMatrix :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: ShapeGradientMatrix :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: ShapeGradientMatrix :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: ShapeGradientMatrix :: ConstWeakPointer ; typedef ParticleSystemType typedef ParticleSystem shapeworks :: ShapeGradientMatrix :: ParticleSystemType ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) function itkTypeMacro itkTypeMacro ( ShapeGradientMatrix , Observer ) function BeforeIteration inline virtual void BeforeIteration () function AfterIteration inline virtual void AfterIteration () function SetDomainsPerShape inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points! function GetDomainsPerShape inline int GetDomainsPerShape () const function SetAttributesPerDomain inline void SetAttributesPerDomain ( const std :: vector < int > & i ) function SetAttributeScales inline void SetAttributeScales ( const std :: vector < double > & s ) function SetXYZ inline void SetXYZ ( int i , bool val ) function SetNormals inline void SetNormals ( int i , bool val ) function SetMatrix inline virtual void SetMatrix ( const vnl_matrix < double > & m ) function ResizeMatrix inline virtual void ResizeMatrix ( int rs , int cs ) function SetValues void SetValues ( const ParticleSystemType * ps , int idx , int d ) function DomainAddEventCallback inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method. function PositionAddEventCallback inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback function PositionSetEventCallback inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionSetEventCallback function PositionRemoveEventCallback inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback Protected Functions Documentation function ShapeGradientMatrix inline ShapeGradientMatrix () function ~ShapeGradientMatrix inline virtual ~ ShapeGradientMatrix () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Protected Attributes Documentation variable m_DomainsPerShape int m_DomainsPerShape ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeGradientMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#shapeworksshapegradientmatrix","text":"Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! More... #include Inherits from vnl_matrix< double >, shapeworks::Observer","title":"shapeworks::ShapeGradientMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#public-types","text":"Name typedef double DataType typedef ShapeGradientMatrix Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer typedef ParticleSystem ParticleSystemType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ShapeGradientMatrix , Observer ) virtual void BeforeIteration () virtual void AfterIteration () void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetAttributesPerDomain (const std::vector< int > & i) void SetAttributeScales (const std::vector< double > & s) void SetXYZ (int i, bool val) void SetNormals (int i, bool val) virtual void SetMatrix (const vnl_matrix< double > & m) virtual void ResizeMatrix (int rs, int cs) void SetValues (const ParticleSystemType * ps, int idx, int d) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & )","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#protected-functions","text":"Name ShapeGradientMatrix () virtual ~ShapeGradientMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#protected-attributes","text":"Name int m_DomainsPerShape","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#additional-inherited-members","text":"Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#detailed-description","text":"class shapeworks :: ShapeGradientMatrix ; Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! Each column represents a single shape.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#typedef-datatype","text":"typedef double shapeworks :: ShapeGradientMatrix :: DataType ; Standard class typedefs","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#typedef-self","text":"typedef ShapeGradientMatrix shapeworks :: ShapeGradientMatrix :: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#typedef-superclass","text":"typedef Observer shapeworks :: ShapeGradientMatrix :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: ShapeGradientMatrix :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: ShapeGradientMatrix :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: ShapeGradientMatrix :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#typedef-particlesystemtype","text":"typedef ParticleSystem shapeworks :: ShapeGradientMatrix :: ParticleSystemType ;","title":"typedef ParticleSystemType"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-itknewmacro","text":"itkNewMacro ( Self )","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-itktypemacro","text":"itkTypeMacro ( ShapeGradientMatrix , Observer )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-beforeiteration","text":"inline virtual void BeforeIteration ()","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-afteriteration","text":"inline virtual void AfterIteration ()","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points!","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-getdomainspershape","text":"inline int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-setattributesperdomain","text":"inline void SetAttributesPerDomain ( const std :: vector < int > & i )","title":"function SetAttributesPerDomain"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-setattributescales","text":"inline void SetAttributeScales ( const std :: vector < double > & s )","title":"function SetAttributeScales"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-setxyz","text":"inline void SetXYZ ( int i , bool val )","title":"function SetXYZ"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-setnormals","text":"inline void SetNormals ( int i , bool val )","title":"function SetNormals"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-setmatrix","text":"inline virtual void SetMatrix ( const vnl_matrix < double > & m )","title":"function SetMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-resizematrix","text":"inline virtual void ResizeMatrix ( int rs , int cs )","title":"function ResizeMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-setvalues","text":"void SetValues ( const ParticleSystemType * ps , int idx , int d )","title":"function SetValues"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-domainaddeventcallback","text":"inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method.","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-positionseteventcallback","text":"inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionSetEventCallback","title":"function PositionSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-positionremoveeventcallback","text":"inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback","title":"function PositionRemoveEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-shapegradientmatrix","text":"inline ShapeGradientMatrix ()","title":"function ShapeGradientMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-shapegradientmatrix_1","text":"inline virtual ~ ShapeGradientMatrix ()","title":"function ~ShapeGradientMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeGradientMatrix.html#variable-m_domainspershape","text":"int m_DomainsPerShape ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_DomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html","text":"shapeworks::ShapeMatrix Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! More... #include Inherits from vnl_matrix< double >, shapeworks::Observer Public Types Name typedef double DataType typedef ShapeMatrix Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer Public Functions Name itkNewMacro ( Self ) itkTypeMacro ( ShapeMatrix , Observer ) virtual void BeforeIteration () virtual void AfterIteration () void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetAttributesPerDomain (const std::vector< int > & i) void SetAttributeScales (const std::vector< double > & s) void SetXYZ (int i, bool val) void SetNormals (int i, bool val) virtual void SetMatrix (const vnl_matrix< double > & m) virtual void ResizeMatrix (int rs, int cs) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) void SetValues (const ParticleSystem * ps, int idx, int d) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void PrintMatrix () bool CheckForNans () Protected Functions Name ShapeMatrix () virtual ~ShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const Protected Attributes Name int m_DomainsPerShape Additional inherited members Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks Detailed Description class shapeworks :: ShapeMatrix ; Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! Each column represents a single shape. Public Types Documentation typedef DataType typedef double shapeworks :: ShapeMatrix :: DataType ; Standard class typedefs typedef Self typedef ShapeMatrix shapeworks :: ShapeMatrix :: Self ; typedef Superclass typedef Observer shapeworks :: ShapeMatrix :: Superclass ; typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: ShapeMatrix :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: ShapeMatrix :: ConstPointer ; typedef ConstWeakPointer typedef itk :: WeakPointer < const Self > shapeworks :: ShapeMatrix :: ConstWeakPointer ; Public Functions Documentation function itkNewMacro itkNewMacro ( Self ) Method for creation through the object factory. function itkTypeMacro itkTypeMacro ( ShapeMatrix , Observer ) Run-time type information (and related methods). function BeforeIteration inline virtual void BeforeIteration () function AfterIteration inline virtual void AfterIteration () function SetDomainsPerShape inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points! function GetDomainsPerShape inline int GetDomainsPerShape () const function SetAttributesPerDomain inline void SetAttributesPerDomain ( const std :: vector < int > & i ) function SetAttributeScales inline void SetAttributeScales ( const std :: vector < double > & s ) function SetXYZ inline void SetXYZ ( int i , bool val ) function SetNormals inline void SetNormals ( int i , bool val ) function SetMatrix inline virtual void SetMatrix ( const vnl_matrix < double > & m ) function ResizeMatrix inline virtual void ResizeMatrix ( int rs , int cs ) function DomainAddEventCallback inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method. function SetValues inline void SetValues ( const ParticleSystem * ps , int idx , int d ) function PositionAddEventCallback inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback function PositionSetEventCallback inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionSetEventCallback function PositionRemoveEventCallback inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback function PrintMatrix inline void PrintMatrix () function CheckForNans inline bool CheckForNans () Protected Functions Documentation function ShapeMatrix inline ShapeMatrix () function ~ShapeMatrix inline virtual ~ ShapeMatrix () function PrintSelf inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const Protected Attributes Documentation variable m_DomainsPerShape int m_DomainsPerShape ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#shapeworksshapematrix","text":"Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! More... #include Inherits from vnl_matrix< double >, shapeworks::Observer","title":"shapeworks::ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#public-types","text":"Name typedef double DataType typedef ShapeMatrix Self typedef Observer Superclass typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::WeakPointer< const Self > ConstWeakPointer","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#public-functions","text":"Name itkNewMacro ( Self ) itkTypeMacro ( ShapeMatrix , Observer ) virtual void BeforeIteration () virtual void AfterIteration () void SetDomainsPerShape (int i) int GetDomainsPerShape () const void SetAttributesPerDomain (const std::vector< int > & i) void SetAttributeScales (const std::vector< double > & s) void SetXYZ (int i, bool val) void SetNormals (int i, bool val) virtual void SetMatrix (const vnl_matrix< double > & m) virtual void ResizeMatrix (int rs, int cs) virtual void DomainAddEventCallback (Object * , const itk::EventObject & ) void SetValues (const ParticleSystem * ps, int idx, int d) virtual void PositionAddEventCallback (Object * o, const itk::EventObject & e) virtual void PositionSetEventCallback (Object * o, const itk::EventObject & e) virtual void PositionRemoveEventCallback (Object * , const itk::EventObject & ) void PrintMatrix () bool CheckForNans ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#protected-functions","text":"Name ShapeMatrix () virtual ~ShapeMatrix () void PrintSelf (std::ostream & os, itk::Indent indent) const","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#protected-attributes","text":"Name int m_DomainsPerShape","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#additional-inherited-members","text":"Public Classes inherited from shapeworks::Observer Name struct DefinedCallbacksStruct Public Functions inherited from shapeworks::Observer Name virtual void TransformSetEventCallback (Object * , const itk::EventObject & ) virtual void PrefixTransformSetEventCallback (Object * , const itk::EventObject & ) virtual void NeighborhoodSetEventCallback (Object * , const itk::EventObject & ) Protected Functions inherited from shapeworks::Observer Name Observer () virtual ~Observer () Public Attributes inherited from shapeworks::Observer Name DefinedCallbacksStruct m_DefinedCallbacks","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#detailed-description","text":"class shapeworks :: ShapeMatrix ; Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! Each column represents a single shape.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#typedef-datatype","text":"typedef double shapeworks :: ShapeMatrix :: DataType ; Standard class typedefs","title":"typedef DataType"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#typedef-self","text":"typedef ShapeMatrix shapeworks :: ShapeMatrix :: Self ;","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#typedef-superclass","text":"typedef Observer shapeworks :: ShapeMatrix :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: ShapeMatrix :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: ShapeMatrix :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#typedef-constweakpointer","text":"typedef itk :: WeakPointer < const Self > shapeworks :: ShapeMatrix :: ConstWeakPointer ;","title":"typedef ConstWeakPointer"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-itknewmacro","text":"itkNewMacro ( Self ) Method for creation through the object factory.","title":"function itkNewMacro"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-itktypemacro","text":"itkTypeMacro ( ShapeMatrix , Observer ) Run-time type information (and related methods).","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-beforeiteration","text":"inline virtual void BeforeIteration ()","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-afteriteration","text":"inline virtual void AfterIteration ()","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-setdomainspershape","text":"inline void SetDomainsPerShape ( int i ) Set/Get the number of domains per shape. This can only be safely done before shapes are initialized with points!","title":"function SetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-getdomainspershape","text":"inline int GetDomainsPerShape () const","title":"function GetDomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-setattributesperdomain","text":"inline void SetAttributesPerDomain ( const std :: vector < int > & i )","title":"function SetAttributesPerDomain"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-setattributescales","text":"inline void SetAttributeScales ( const std :: vector < double > & s )","title":"function SetAttributeScales"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-setxyz","text":"inline void SetXYZ ( int i , bool val )","title":"function SetXYZ"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-setnormals","text":"inline void SetNormals ( int i , bool val )","title":"function SetNormals"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-setmatrix","text":"inline virtual void SetMatrix ( const vnl_matrix < double > & m )","title":"function SetMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-resizematrix","text":"inline virtual void ResizeMatrix ( int rs , int cs )","title":"function ResizeMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-domainaddeventcallback","text":"inline virtual void DomainAddEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::DomainAddEventCallback Callbacks that may be defined by a subclass. If a subclass defines one of these callback methods, the corresponding flag in m_DefinedCallbacks should be set to true so that the ParticleSystem will know to register the appropriate event with this method.","title":"function DomainAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-setvalues","text":"inline void SetValues ( const ParticleSystem * ps , int idx , int d )","title":"function SetValues"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-positionaddeventcallback","text":"inline virtual void PositionAddEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionAddEventCallback","title":"function PositionAddEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-positionseteventcallback","text":"inline virtual void PositionSetEventCallback ( Object * o , const itk :: EventObject & e ) Reimplements : shapeworks::Observer::PositionSetEventCallback","title":"function PositionSetEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-positionremoveeventcallback","text":"inline virtual void PositionRemoveEventCallback ( Object * , const itk :: EventObject & ) Reimplements : shapeworks::Observer::PositionRemoveEventCallback","title":"function PositionRemoveEventCallback"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-printmatrix","text":"inline void PrintMatrix ()","title":"function PrintMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-checkfornans","text":"inline bool CheckForNans ()","title":"function CheckForNans"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-shapematrix","text":"inline ShapeMatrix ()","title":"function ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-shapematrix_1","text":"inline virtual ~ ShapeMatrix ()","title":"function ~ShapeMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#function-printself","text":"inline void PrintSelf ( std :: ostream & os , itk :: Indent indent ) const","title":"function PrintSelf"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeMatrix.html#variable-m_domainspershape","text":"int m_DomainsPerShape ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_DomainsPerShape"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html","text":"shapeworks::ShapeWorksStudioApp Main ShapeWorksStudio window. More... #include Inherits from QMainWindow Public Slots Name void open_project (QString filename) void on_action_new_project_triggered () void on_action_open_project_triggered () void on_action_show_project_folder_triggered () bool on_action_save_project_triggered () bool save_project_as (QString type) void save_as_swproj_clicked () void save_as_xlsx_clicked () void on_action_quit_triggered () void on_action_import_triggered () void splash_screen_closed () void on_vertical_scroll_bar_valueChanged () void on_action_import_mode_triggered () void on_action_groom_mode_triggered () void on_action_optimize_mode_triggered () void on_action_analysis_mode_triggered () void on_action_deepssm_mode_triggered () void on_actionShow_Tool_Window_triggered () void on_actionExport_PCA_Mesh_triggered () void on_actionExport_Eigenvalues_triggered () void on_actionExport_Eigenvectors_triggered () void on_actionExport_PCA_Mode_Points_triggered () void on_action_preferences_triggered () void action_export_current_mesh_triggered (int index =0) void on_action_export_current_particles_triggered () void on_action_export_mesh_scalars_triggered () void on_action_export_pca_scores_triggered () void action_export_pca_montage_triggered () void action_export_screenshot_triggered () void action_export_particle_scalars_triggered () void action_export_all_subjects_particle_scalars_triggered () void on_center_checkbox_stateChanged () void on_zoom_slider_valueChanged () void on_view_mode_combobox_currentIndexChanged (QString disp_mode) void on_auto_view_button_clicked () void handle_pca_changed () void handle_slider_update () void handle_mca_changed () void handle_project_changed () void handle_points_changed () void handle_groom_start () void handle_groom_complete () void handle_optimize_start () void handle_optimize_complete () void handle_reconstruction_complete () void handle_display_setting_changed () void handle_glyph_changed () void handle_opacity_changed () void handle_alignment_changed () void handle_open_recent () void handle_color_scheme () void handle_pca_update () void clear_message () void handle_message (std::string str) void handle_error (std::string str) void handle_warning (std::string str) void handle_debug (std::string str) void handle_status (std::string str) void handle_progress_with_message (int amt, std::string str) void handle_progress (int amt) void message_callback (std::string str) void handle_new_mesh () void handle_clear_cache () void handle_compare_settings_changed () void handle_lightbox_right_click (int index) void update_feature_map_selection (int index) void update_feature_map_scale () void image_combo_changed (int index) void show_splash_screen () void hide_splash_screen () void about () void keyboard_shortcuts () void toggle_log_window () QSharedPointer< PythonWorker > get_py_worker () Preferences & prefs () QSharedPointer< Session > session () Public Functions Name ShapeWorksStudioApp () ~ShapeWorksStudioApp () void closeEvent (QCloseEvent * event) override void initialize_vtk () void import_files (QStringList file_names) Protected Functions Name void dragEnterEvent (QDragEnterEvent * event) override void dragLeaveEvent (QDragLeaveEvent * event) override void dropEvent (QDropEvent * event) override Detailed Description class shapeworks :: ShapeWorksStudioApp ; Main ShapeWorksStudio window. This class represents the primary ShapeWorksStudio window interface Public Slots Documentation slot open_project void open_project ( QString filename ) slot on_action_new_project_triggered void on_action_new_project_triggered () slot on_action_open_project_triggered void on_action_open_project_triggered () slot on_action_show_project_folder_triggered void on_action_show_project_folder_triggered () slot on_action_save_project_triggered bool on_action_save_project_triggered () slot save_project_as bool save_project_as ( QString type ) slot save_as_swproj_clicked void save_as_swproj_clicked () slot save_as_xlsx_clicked void save_as_xlsx_clicked () slot on_action_quit_triggered void on_action_quit_triggered () slot on_action_import_triggered void on_action_import_triggered () slot splash_screen_closed void splash_screen_closed () slot on_vertical_scroll_bar_valueChanged void on_vertical_scroll_bar_valueChanged () slot on_action_import_mode_triggered void on_action_import_mode_triggered () slot on_action_groom_mode_triggered void on_action_groom_mode_triggered () slot on_action_optimize_mode_triggered void on_action_optimize_mode_triggered () slot on_action_analysis_mode_triggered void on_action_analysis_mode_triggered () slot on_action_deepssm_mode_triggered void on_action_deepssm_mode_triggered () slot on_actionShow_Tool_Window_triggered void on_actionShow_Tool_Window_triggered () slot on_actionExport_PCA_Mesh_triggered void on_actionExport_PCA_Mesh_triggered () slot on_actionExport_Eigenvalues_triggered void on_actionExport_Eigenvalues_triggered () slot on_actionExport_Eigenvectors_triggered void on_actionExport_Eigenvectors_triggered () slot on_actionExport_PCA_Mode_Points_triggered void on_actionExport_PCA_Mode_Points_triggered () slot on_action_preferences_triggered void on_action_preferences_triggered () slot action_export_current_mesh_triggered void action_export_current_mesh_triggered ( int index = 0 ) slot on_action_export_current_particles_triggered void on_action_export_current_particles_triggered () slot on_action_export_mesh_scalars_triggered void on_action_export_mesh_scalars_triggered () slot on_action_export_pca_scores_triggered void on_action_export_pca_scores_triggered () slot action_export_pca_montage_triggered void action_export_pca_montage_triggered () slot action_export_screenshot_triggered void action_export_screenshot_triggered () slot action_export_particle_scalars_triggered void action_export_particle_scalars_triggered () slot action_export_all_subjects_particle_scalars_triggered void action_export_all_subjects_particle_scalars_triggered () slot on_center_checkbox_stateChanged void on_center_checkbox_stateChanged () slot on_zoom_slider_valueChanged void on_zoom_slider_valueChanged () slot on_view_mode_combobox_currentIndexChanged void on_view_mode_combobox_currentIndexChanged ( QString disp_mode ) slot on_auto_view_button_clicked void on_auto_view_button_clicked () slot handle_pca_changed void handle_pca_changed () slot handle_slider_update void handle_slider_update () slot handle_mca_changed void handle_mca_changed () slot handle_project_changed void handle_project_changed () slot handle_points_changed void handle_points_changed () slot handle_groom_start void handle_groom_start () slot handle_groom_complete void handle_groom_complete () slot handle_optimize_start void handle_optimize_start () slot handle_optimize_complete void handle_optimize_complete () slot handle_reconstruction_complete void handle_reconstruction_complete () slot handle_display_setting_changed void handle_display_setting_changed () slot handle_glyph_changed void handle_glyph_changed () slot handle_opacity_changed void handle_opacity_changed () slot handle_alignment_changed void handle_alignment_changed () slot handle_open_recent void handle_open_recent () slot handle_color_scheme void handle_color_scheme () slot handle_pca_update void handle_pca_update () slot clear_message void clear_message () slot handle_message void handle_message ( std :: string str ) slot handle_error void handle_error ( std :: string str ) slot handle_warning void handle_warning ( std :: string str ) slot handle_debug void handle_debug ( std :: string str ) slot handle_status void handle_status ( std :: string str ) slot handle_progress_with_message void handle_progress_with_message ( int amt , std :: string str ) slot handle_progress void handle_progress ( int amt ) slot message_callback void message_callback ( std :: string str ) slot handle_new_mesh void handle_new_mesh () slot handle_clear_cache void handle_clear_cache () slot handle_compare_settings_changed void handle_compare_settings_changed () slot handle_lightbox_right_click void handle_lightbox_right_click ( int index ) slot update_feature_map_selection void update_feature_map_selection ( int index ) slot update_feature_map_scale void update_feature_map_scale () slot image_combo_changed void image_combo_changed ( int index ) slot show_splash_screen void show_splash_screen () slot hide_splash_screen void hide_splash_screen () slot about void about () slot keyboard_shortcuts void keyboard_shortcuts () slot toggle_log_window void toggle_log_window () slot get_py_worker QSharedPointer < PythonWorker > get_py_worker () slot prefs inline Preferences & prefs () slot session inline QSharedPointer < Session > session () Public Functions Documentation function ShapeWorksStudioApp ShapeWorksStudioApp () function ~ShapeWorksStudioApp ~ ShapeWorksStudioApp () function closeEvent void closeEvent ( QCloseEvent * event ) override function initialize_vtk void initialize_vtk () function import_files void import_files ( QStringList file_names ) Protected Functions Documentation function dragEnterEvent void dragEnterEvent ( QDragEnterEvent * event ) override function dragLeaveEvent void dragLeaveEvent ( QDragLeaveEvent * event ) override function dropEvent void dropEvent ( QDropEvent * event ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeWorksStudioApp"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#shapeworksshapeworksstudioapp","text":"Main ShapeWorksStudio window. More... #include Inherits from QMainWindow","title":"shapeworks::ShapeWorksStudioApp"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#public-slots","text":"Name void open_project (QString filename) void on_action_new_project_triggered () void on_action_open_project_triggered () void on_action_show_project_folder_triggered () bool on_action_save_project_triggered () bool save_project_as (QString type) void save_as_swproj_clicked () void save_as_xlsx_clicked () void on_action_quit_triggered () void on_action_import_triggered () void splash_screen_closed () void on_vertical_scroll_bar_valueChanged () void on_action_import_mode_triggered () void on_action_groom_mode_triggered () void on_action_optimize_mode_triggered () void on_action_analysis_mode_triggered () void on_action_deepssm_mode_triggered () void on_actionShow_Tool_Window_triggered () void on_actionExport_PCA_Mesh_triggered () void on_actionExport_Eigenvalues_triggered () void on_actionExport_Eigenvectors_triggered () void on_actionExport_PCA_Mode_Points_triggered () void on_action_preferences_triggered () void action_export_current_mesh_triggered (int index =0) void on_action_export_current_particles_triggered () void on_action_export_mesh_scalars_triggered () void on_action_export_pca_scores_triggered () void action_export_pca_montage_triggered () void action_export_screenshot_triggered () void action_export_particle_scalars_triggered () void action_export_all_subjects_particle_scalars_triggered () void on_center_checkbox_stateChanged () void on_zoom_slider_valueChanged () void on_view_mode_combobox_currentIndexChanged (QString disp_mode) void on_auto_view_button_clicked () void handle_pca_changed () void handle_slider_update () void handle_mca_changed () void handle_project_changed () void handle_points_changed () void handle_groom_start () void handle_groom_complete () void handle_optimize_start () void handle_optimize_complete () void handle_reconstruction_complete () void handle_display_setting_changed () void handle_glyph_changed () void handle_opacity_changed () void handle_alignment_changed () void handle_open_recent () void handle_color_scheme () void handle_pca_update () void clear_message () void handle_message (std::string str) void handle_error (std::string str) void handle_warning (std::string str) void handle_debug (std::string str) void handle_status (std::string str) void handle_progress_with_message (int amt, std::string str) void handle_progress (int amt) void message_callback (std::string str) void handle_new_mesh () void handle_clear_cache () void handle_compare_settings_changed () void handle_lightbox_right_click (int index) void update_feature_map_selection (int index) void update_feature_map_scale () void image_combo_changed (int index) void show_splash_screen () void hide_splash_screen () void about () void keyboard_shortcuts () void toggle_log_window () QSharedPointer< PythonWorker > get_py_worker () Preferences & prefs () QSharedPointer< Session > session ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#public-functions","text":"Name ShapeWorksStudioApp () ~ShapeWorksStudioApp () void closeEvent (QCloseEvent * event) override void initialize_vtk () void import_files (QStringList file_names)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#protected-functions","text":"Name void dragEnterEvent (QDragEnterEvent * event) override void dragLeaveEvent (QDragLeaveEvent * event) override void dropEvent (QDropEvent * event) override","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#detailed-description","text":"class shapeworks :: ShapeWorksStudioApp ; Main ShapeWorksStudio window. This class represents the primary ShapeWorksStudio window interface","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-open_project","text":"void open_project ( QString filename )","title":"slot open_project"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_new_project_triggered","text":"void on_action_new_project_triggered ()","title":"slot on_action_new_project_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_open_project_triggered","text":"void on_action_open_project_triggered ()","title":"slot on_action_open_project_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_show_project_folder_triggered","text":"void on_action_show_project_folder_triggered ()","title":"slot on_action_show_project_folder_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_save_project_triggered","text":"bool on_action_save_project_triggered ()","title":"slot on_action_save_project_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-save_project_as","text":"bool save_project_as ( QString type )","title":"slot save_project_as"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-save_as_swproj_clicked","text":"void save_as_swproj_clicked ()","title":"slot save_as_swproj_clicked"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-save_as_xlsx_clicked","text":"void save_as_xlsx_clicked ()","title":"slot save_as_xlsx_clicked"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_quit_triggered","text":"void on_action_quit_triggered ()","title":"slot on_action_quit_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_import_triggered","text":"void on_action_import_triggered ()","title":"slot on_action_import_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-splash_screen_closed","text":"void splash_screen_closed ()","title":"slot splash_screen_closed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_vertical_scroll_bar_valuechanged","text":"void on_vertical_scroll_bar_valueChanged ()","title":"slot on_vertical_scroll_bar_valueChanged"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_import_mode_triggered","text":"void on_action_import_mode_triggered ()","title":"slot on_action_import_mode_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_groom_mode_triggered","text":"void on_action_groom_mode_triggered ()","title":"slot on_action_groom_mode_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_optimize_mode_triggered","text":"void on_action_optimize_mode_triggered ()","title":"slot on_action_optimize_mode_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_analysis_mode_triggered","text":"void on_action_analysis_mode_triggered ()","title":"slot on_action_analysis_mode_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_deepssm_mode_triggered","text":"void on_action_deepssm_mode_triggered ()","title":"slot on_action_deepssm_mode_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_actionshow_tool_window_triggered","text":"void on_actionShow_Tool_Window_triggered ()","title":"slot on_actionShow_Tool_Window_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_actionexport_pca_mesh_triggered","text":"void on_actionExport_PCA_Mesh_triggered ()","title":"slot on_actionExport_PCA_Mesh_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_actionexport_eigenvalues_triggered","text":"void on_actionExport_Eigenvalues_triggered ()","title":"slot on_actionExport_Eigenvalues_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_actionexport_eigenvectors_triggered","text":"void on_actionExport_Eigenvectors_triggered ()","title":"slot on_actionExport_Eigenvectors_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_actionexport_pca_mode_points_triggered","text":"void on_actionExport_PCA_Mode_Points_triggered ()","title":"slot on_actionExport_PCA_Mode_Points_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_preferences_triggered","text":"void on_action_preferences_triggered ()","title":"slot on_action_preferences_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-action_export_current_mesh_triggered","text":"void action_export_current_mesh_triggered ( int index = 0 )","title":"slot action_export_current_mesh_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_export_current_particles_triggered","text":"void on_action_export_current_particles_triggered ()","title":"slot on_action_export_current_particles_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_export_mesh_scalars_triggered","text":"void on_action_export_mesh_scalars_triggered ()","title":"slot on_action_export_mesh_scalars_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_action_export_pca_scores_triggered","text":"void on_action_export_pca_scores_triggered ()","title":"slot on_action_export_pca_scores_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-action_export_pca_montage_triggered","text":"void action_export_pca_montage_triggered ()","title":"slot action_export_pca_montage_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-action_export_screenshot_triggered","text":"void action_export_screenshot_triggered ()","title":"slot action_export_screenshot_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-action_export_particle_scalars_triggered","text":"void action_export_particle_scalars_triggered ()","title":"slot action_export_particle_scalars_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-action_export_all_subjects_particle_scalars_triggered","text":"void action_export_all_subjects_particle_scalars_triggered ()","title":"slot action_export_all_subjects_particle_scalars_triggered"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_center_checkbox_statechanged","text":"void on_center_checkbox_stateChanged ()","title":"slot on_center_checkbox_stateChanged"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_zoom_slider_valuechanged","text":"void on_zoom_slider_valueChanged ()","title":"slot on_zoom_slider_valueChanged"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_view_mode_combobox_currentindexchanged","text":"void on_view_mode_combobox_currentIndexChanged ( QString disp_mode )","title":"slot on_view_mode_combobox_currentIndexChanged"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-on_auto_view_button_clicked","text":"void on_auto_view_button_clicked ()","title":"slot on_auto_view_button_clicked"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_pca_changed","text":"void handle_pca_changed ()","title":"slot handle_pca_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_slider_update","text":"void handle_slider_update ()","title":"slot handle_slider_update"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_mca_changed","text":"void handle_mca_changed ()","title":"slot handle_mca_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_project_changed","text":"void handle_project_changed ()","title":"slot handle_project_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_points_changed","text":"void handle_points_changed ()","title":"slot handle_points_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_groom_start","text":"void handle_groom_start ()","title":"slot handle_groom_start"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_groom_complete","text":"void handle_groom_complete ()","title":"slot handle_groom_complete"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_optimize_start","text":"void handle_optimize_start ()","title":"slot handle_optimize_start"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_optimize_complete","text":"void handle_optimize_complete ()","title":"slot handle_optimize_complete"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_reconstruction_complete","text":"void handle_reconstruction_complete ()","title":"slot handle_reconstruction_complete"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_display_setting_changed","text":"void handle_display_setting_changed ()","title":"slot handle_display_setting_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_glyph_changed","text":"void handle_glyph_changed ()","title":"slot handle_glyph_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_opacity_changed","text":"void handle_opacity_changed ()","title":"slot handle_opacity_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_alignment_changed","text":"void handle_alignment_changed ()","title":"slot handle_alignment_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_open_recent","text":"void handle_open_recent ()","title":"slot handle_open_recent"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_color_scheme","text":"void handle_color_scheme ()","title":"slot handle_color_scheme"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_pca_update","text":"void handle_pca_update ()","title":"slot handle_pca_update"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-clear_message","text":"void clear_message ()","title":"slot clear_message"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_message","text":"void handle_message ( std :: string str )","title":"slot handle_message"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_error","text":"void handle_error ( std :: string str )","title":"slot handle_error"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_warning","text":"void handle_warning ( std :: string str )","title":"slot handle_warning"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_debug","text":"void handle_debug ( std :: string str )","title":"slot handle_debug"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_status","text":"void handle_status ( std :: string str )","title":"slot handle_status"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_progress_with_message","text":"void handle_progress_with_message ( int amt , std :: string str )","title":"slot handle_progress_with_message"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_progress","text":"void handle_progress ( int amt )","title":"slot handle_progress"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-message_callback","text":"void message_callback ( std :: string str )","title":"slot message_callback"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_new_mesh","text":"void handle_new_mesh ()","title":"slot handle_new_mesh"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_clear_cache","text":"void handle_clear_cache ()","title":"slot handle_clear_cache"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_compare_settings_changed","text":"void handle_compare_settings_changed ()","title":"slot handle_compare_settings_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-handle_lightbox_right_click","text":"void handle_lightbox_right_click ( int index )","title":"slot handle_lightbox_right_click"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-update_feature_map_selection","text":"void update_feature_map_selection ( int index )","title":"slot update_feature_map_selection"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-update_feature_map_scale","text":"void update_feature_map_scale ()","title":"slot update_feature_map_scale"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-image_combo_changed","text":"void image_combo_changed ( int index )","title":"slot image_combo_changed"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-show_splash_screen","text":"void show_splash_screen ()","title":"slot show_splash_screen"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-hide_splash_screen","text":"void hide_splash_screen ()","title":"slot hide_splash_screen"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-about","text":"void about ()","title":"slot about"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-keyboard_shortcuts","text":"void keyboard_shortcuts ()","title":"slot keyboard_shortcuts"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-toggle_log_window","text":"void toggle_log_window ()","title":"slot toggle_log_window"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-get_py_worker","text":"QSharedPointer < PythonWorker > get_py_worker ()","title":"slot get_py_worker"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-prefs","text":"inline Preferences & prefs ()","title":"slot prefs"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#slot-session","text":"inline QSharedPointer < Session > session ()","title":"slot session"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-shapeworksstudioapp","text":"ShapeWorksStudioApp ()","title":"function ShapeWorksStudioApp"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-shapeworksstudioapp_1","text":"~ ShapeWorksStudioApp ()","title":"function ~ShapeWorksStudioApp"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-closeevent","text":"void closeEvent ( QCloseEvent * event ) override","title":"function closeEvent"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-initialize_vtk","text":"void initialize_vtk ()","title":"function initialize_vtk"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-import_files","text":"void import_files ( QStringList file_names )","title":"function import_files"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-dragenterevent","text":"void dragEnterEvent ( QDragEnterEvent * event ) override","title":"function dragEnterEvent"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-dragleaveevent","text":"void dragLeaveEvent ( QDragLeaveEvent * event ) override","title":"function dragLeaveEvent"},{"location":"api/Classes/classshapeworks_1_1ShapeWorksStudioApp.html#function-dropevent","text":"void dropEvent ( QDropEvent * event ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"function dropEvent"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html","text":"title: shapeworks::Shape::Point summary: TODO: replace this wherever it is used. shapeworks::Shape::Point TODO: replace this wherever it is used. #include Public Functions Name Point () Point (double _x, double _y, double _z) Public Attributes Name double x double y double z Public Functions Documentation function Point inline Point () function Point inline Point ( double _x , double _y , double _z ) Public Attributes Documentation variable x double x ; variable y double y ; variable z double z ; Updated on 2023-10-24 at 22:16:02 +0000","title":"classshapeworks 1 1Shape 1 1Point"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#shapeworksshapepoint","text":"TODO: replace this wherever it is used. #include ","title":"shapeworks::Shape::Point"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#public-functions","text":"Name Point () Point (double _x, double _y, double _z)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#public-attributes","text":"Name double x double y double z","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#function-point","text":"inline Point ()","title":"function Point"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#function-point_1","text":"inline Point ( double _x , double _y , double _z )","title":"function Point"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#variable-x","text":"double x ;","title":"variable x"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#variable-y","text":"double y ;","title":"variable y"},{"location":"api/Classes/classshapeworks_1_1Shape_1_1Point.html#variable-z","text":"double z ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable z"},{"location":"api/Classes/classshapeworks_1_1ShapeworksCommand.html","text":"shapeworks::ShapeworksCommand Inherits from shapeworks::Command Public Functions Name virtual const std::string type () override Additional inherited members Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser Public Functions Documentation function type inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeworksCommand"},{"location":"api/Classes/classshapeworks_1_1ShapeworksCommand.html#shapeworksshapeworkscommand","text":"Inherits from shapeworks::Command","title":"shapeworks::ShapeworksCommand"},{"location":"api/Classes/classshapeworks_1_1ShapeworksCommand.html#public-functions","text":"Name virtual const std::string type () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeworksCommand.html#additional-inherited-members","text":"Public Functions inherited from shapeworks::Command Name const std::string name () const const std::string usage () const const std::string desc () const std::vector< std::string > parse_args (const std::vector< std::string > & arguments) parses the arguments for this command, saving them in the parser and returning the leftovers int run ( SharedCommandData & sharedData) calls execute for this command using the parsed args, returning system exit value Protected Functions inherited from shapeworks::Command Name virtual void buildParser () Protected Attributes inherited from shapeworks::Command Name optparse::OptionParser parser","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1ShapeworksCommand.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeworksCommand.html#function-type","text":"inline virtual const std :: string type () override Reimplements : shapeworks::Command::type Updated on 2023-10-24 at 22:16:02 +0000","title":"function type"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html","text":"shapeworks::ShapeworksUtils Public Functions Name time_point now () get the current time double elapsed (time_point start, time_point end, bool print_elapsed =true) return elapsed time in seconds, optionally printing to console unsigned rngSeed () returns random seed void setRngSeed (const unsigned seed) sets random seed unsigned generateNumber () generates random number bool is_directory (const std::string & pathname) returns true if pathname is a directory bool exists (const std::string & filename) returns true if filename exists Matrix33 getMatrix (const vtkSmartPointer< vtkMatrix4x4 > & mat) converts a vtkMatrix4x4 to a Matrix33 and corresponding translationVector Vector3 getOffset (const vtkSmartPointer< vtkMatrix4x4 > & mat) Public Functions Documentation function now static inline time_point now () get the current time function elapsed static double elapsed ( time_point start , time_point end , bool print_elapsed = true ) return elapsed time in seconds, optionally printing to console function rngSeed static inline unsigned rngSeed () returns random seed function setRngSeed static void setRngSeed ( const unsigned seed ) sets random seed function generateNumber static inline unsigned generateNumber () generates random number function is_directory static bool is_directory ( const std :: string & pathname ) returns true if pathname is a directory function exists static bool exists ( const std :: string & filename ) returns true if filename exists function getMatrix static Matrix33 getMatrix ( const vtkSmartPointer < vtkMatrix4x4 > & mat ) converts a vtkMatrix4x4 to a Matrix33 and corresponding translationVector function getOffset static Vector3 getOffset ( const vtkSmartPointer < vtkMatrix4x4 > & mat ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeworksUtils"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#shapeworksshapeworksutils","text":"","title":"shapeworks::ShapeworksUtils"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#public-functions","text":"Name time_point now () get the current time double elapsed (time_point start, time_point end, bool print_elapsed =true) return elapsed time in seconds, optionally printing to console unsigned rngSeed () returns random seed void setRngSeed (const unsigned seed) sets random seed unsigned generateNumber () generates random number bool is_directory (const std::string & pathname) returns true if pathname is a directory bool exists (const std::string & filename) returns true if filename exists Matrix33 getMatrix (const vtkSmartPointer< vtkMatrix4x4 > & mat) converts a vtkMatrix4x4 to a Matrix33 and corresponding translationVector Vector3 getOffset (const vtkSmartPointer< vtkMatrix4x4 > & mat)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-now","text":"static inline time_point now () get the current time","title":"function now"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-elapsed","text":"static double elapsed ( time_point start , time_point end , bool print_elapsed = true ) return elapsed time in seconds, optionally printing to console","title":"function elapsed"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-rngseed","text":"static inline unsigned rngSeed () returns random seed","title":"function rngSeed"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-setrngseed","text":"static void setRngSeed ( const unsigned seed ) sets random seed","title":"function setRngSeed"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-generatenumber","text":"static inline unsigned generateNumber () generates random number","title":"function generateNumber"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-is_directory","text":"static bool is_directory ( const std :: string & pathname ) returns true if pathname is a directory","title":"function is_directory"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-exists","text":"static bool exists ( const std :: string & filename ) returns true if filename exists","title":"function exists"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-getmatrix","text":"static Matrix33 getMatrix ( const vtkSmartPointer < vtkMatrix4x4 > & mat ) converts a vtkMatrix4x4 to a Matrix33 and corresponding translationVector","title":"function getMatrix"},{"location":"api/Classes/classshapeworks_1_1ShapeworksUtils.html#function-getoffset","text":"static Vector3 getOffset ( const vtkSmartPointer < vtkMatrix4x4 > & mat ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function getOffset"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html","text":"shapeworks::ShapeworksWorker Inherits from QObject Public Types Name enum ThreadType Public Slots Name void process () Public Signals Name void result_ready () void failure () void finished () Public Functions Name ShapeworksWorker (ThreadType type, QSharedPointer< Groom > groom, QSharedPointer< Optimize > optimize, QSharedPointer< OptimizeParameters > optimize_parameters, QSharedPointer< Session > session, double maxAngle =45., float decimationPercent =0.3f, int numClusters =5) ~ShapeworksWorker () Public Types Documentation enum ThreadType Enumerator Value Description GroomType OptimizeType ReconstructType Public Slots Documentation slot process void process () Public Signals Documentation signal result_ready void result_ready () signal failure void failure () signal finished void finished () Public Functions Documentation function ShapeworksWorker ShapeworksWorker ( ThreadType type , QSharedPointer < Groom > groom , QSharedPointer < Optimize > optimize , QSharedPointer < OptimizeParameters > optimize_parameters , QSharedPointer < Session > session , double maxAngle = 45. , float decimationPercent = 0.3f , int numClusters = 5 ) function ~ShapeworksWorker ~ ShapeworksWorker () Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::ShapeworksWorker"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#shapeworksshapeworksworker","text":"Inherits from QObject","title":"shapeworks::ShapeworksWorker"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-types","text":"Name enum ThreadType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-slots","text":"Name void process ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-signals","text":"Name void result_ready () void failure () void finished ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-functions","text":"Name ShapeworksWorker (ThreadType type, QSharedPointer< Groom > groom, QSharedPointer< Optimize > optimize, QSharedPointer< OptimizeParameters > optimize_parameters, QSharedPointer< Session > session, double maxAngle =45., float decimationPercent =0.3f, int numClusters =5) ~ShapeworksWorker ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#enum-threadtype","text":"Enumerator Value Description GroomType OptimizeType ReconstructType","title":"enum ThreadType"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#slot-process","text":"void process ()","title":"slot process"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#signal-result_ready","text":"void result_ready ()","title":"signal result_ready"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#signal-failure","text":"void failure ()","title":"signal failure"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#signal-finished","text":"void finished ()","title":"signal finished"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#function-shapeworksworker","text":"ShapeworksWorker ( ThreadType type , QSharedPointer < Groom > groom , QSharedPointer < Optimize > optimize , QSharedPointer < OptimizeParameters > optimize_parameters , QSharedPointer < Session > session , double maxAngle = 45. , float decimationPercent = 0.3f , int numClusters = 5 )","title":"function ShapeworksWorker"},{"location":"api/Classes/classshapeworks_1_1ShapeworksWorker.html#function-shapeworksworker_1","text":"~ ShapeworksWorker () Updated on 2023-10-24 at 22:16:02 +0000","title":"function ~ShapeworksWorker"},{"location":"api/Classes/classshapeworks_1_1SliceView.html","text":"shapeworks::SliceView SliceView . More... #include Public Types Name enum SliceChange Public Functions Name SliceView ( Viewer * viewer) void set_volume (std::shared_ptr< Image > volume) void set_mesh (vtkSmartPointer< vtkPolyData > poly_data) void set_orientation (int orientation) bool is_image_loaded () void update_renderer () void update_camera () Point handle_key (std::string key) void change_slice (SliceChange change) Point get_slice_position () void set_slice_position (Point point) void set_window_and_level (double window, double level) double get_spacing () int get_orientation_index () void update_particles () Viewer * get_viewer () bool should_point_show (double x, double y, double z) Detailed Description class shapeworks :: SliceView ; SliceView . Provide slice viewing to the Viewer Public Types Documentation enum SliceChange Enumerator Value Description Down Up Public Functions Documentation function SliceView SliceView ( Viewer * viewer ) function set_volume void set_volume ( std :: shared_ptr < Image > volume ) function set_mesh void set_mesh ( vtkSmartPointer < vtkPolyData > poly_data ) function set_orientation void set_orientation ( int orientation ) function is_image_loaded bool is_image_loaded () function update_renderer void update_renderer () function update_camera void update_camera () function handle_key Point handle_key ( std :: string key ) function change_slice void change_slice ( SliceChange change ) function get_slice_position Point get_slice_position () function set_slice_position void set_slice_position ( Point point ) function set_window_and_level void set_window_and_level ( double window , double level ) function get_spacing double get_spacing () function get_orientation_index int get_orientation_index () function update_particles void update_particles () function get_viewer Viewer * get_viewer () function should_point_show bool should_point_show ( double x , double y , double z ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::SliceView"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#shapeworkssliceview","text":"SliceView . More... #include ","title":"shapeworks::SliceView"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#public-types","text":"Name enum SliceChange","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#public-functions","text":"Name SliceView ( Viewer * viewer) void set_volume (std::shared_ptr< Image > volume) void set_mesh (vtkSmartPointer< vtkPolyData > poly_data) void set_orientation (int orientation) bool is_image_loaded () void update_renderer () void update_camera () Point handle_key (std::string key) void change_slice (SliceChange change) Point get_slice_position () void set_slice_position (Point point) void set_window_and_level (double window, double level) double get_spacing () int get_orientation_index () void update_particles () Viewer * get_viewer () bool should_point_show (double x, double y, double z)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#detailed-description","text":"class shapeworks :: SliceView ; SliceView . Provide slice viewing to the Viewer","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#enum-slicechange","text":"Enumerator Value Description Down Up","title":"enum SliceChange"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-sliceview","text":"SliceView ( Viewer * viewer )","title":"function SliceView"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-set_volume","text":"void set_volume ( std :: shared_ptr < Image > volume )","title":"function set_volume"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-set_mesh","text":"void set_mesh ( vtkSmartPointer < vtkPolyData > poly_data )","title":"function set_mesh"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-set_orientation","text":"void set_orientation ( int orientation )","title":"function set_orientation"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-is_image_loaded","text":"bool is_image_loaded ()","title":"function is_image_loaded"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-update_renderer","text":"void update_renderer ()","title":"function update_renderer"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-update_camera","text":"void update_camera ()","title":"function update_camera"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-handle_key","text":"Point handle_key ( std :: string key )","title":"function handle_key"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-change_slice","text":"void change_slice ( SliceChange change )","title":"function change_slice"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-get_slice_position","text":"Point get_slice_position ()","title":"function get_slice_position"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-set_slice_position","text":"void set_slice_position ( Point point )","title":"function set_slice_position"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-set_window_and_level","text":"void set_window_and_level ( double window , double level )","title":"function set_window_and_level"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-get_spacing","text":"double get_spacing ()","title":"function get_spacing"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-get_orientation_index","text":"int get_orientation_index ()","title":"function get_orientation_index"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-update_particles","text":"void update_particles ()","title":"function update_particles"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-get_viewer","text":"Viewer * get_viewer ()","title":"function get_viewer"},{"location":"api/Classes/classshapeworks_1_1SliceView.html#function-should_point_show","text":"bool should_point_show ( double x , double y , double z ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function should_point_show"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html","text":"shapeworks::SplashScreen More... #include Inherits from QDialog Public Signals Name void open_project (QString file_path) signal to open a particular project Public Functions Name SplashScreen (QWidget * parent, Preferences & preferences) constructor virtual ~SplashScreen () destructor Detailed Description class shapeworks :: SplashScreen ; The SplashScreen is a QDialog that implements the user interface for the Studio Splash Screen It supports a recent file list as well as loading other existing projects Public Signals Documentation signal open_project void open_project ( QString file_path ) signal to open a particular project Public Functions Documentation function SplashScreen SplashScreen ( QWidget * parent , Preferences & preferences ) constructor function ~SplashScreen virtual ~ SplashScreen () destructor Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::SplashScreen"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#shapeworkssplashscreen","text":"More... #include Inherits from QDialog","title":"shapeworks::SplashScreen"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#public-signals","text":"Name void open_project (QString file_path) signal to open a particular project","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#public-functions","text":"Name SplashScreen (QWidget * parent, Preferences & preferences) constructor virtual ~SplashScreen () destructor","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#detailed-description","text":"class shapeworks :: SplashScreen ; The SplashScreen is a QDialog that implements the user interface for the Studio Splash Screen It supports a recent file list as well as loading other existing projects","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#signal-open_project","text":"void open_project ( QString file_path ) signal to open a particular project","title":"signal open_project"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#function-splashscreen","text":"SplashScreen ( QWidget * parent , Preferences & preferences ) constructor","title":"function SplashScreen"},{"location":"api/Classes/classshapeworks_1_1SplashScreen.html#function-splashscreen_1","text":"virtual ~ SplashScreen () destructor Updated on 2023-10-24 at 22:16:02 +0000","title":"function ~SplashScreen"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html","text":"shapeworks::StatsGroupLDAJob Inherits from shapeworks::Job , QObject Public Functions Name StatsGroupLDAJob () void set_stats ( ParticleShapeStatistics stats) virtual void run () override run the job virtual QString name () override get the name of the job Eigen::VectorXf get_group_pvalues () void plot (JKQTPlotter * plot, QString group_1_name, QString group_2_name) Additional inherited members Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted? Public Functions Documentation function StatsGroupLDAJob StatsGroupLDAJob () function set_stats void set_stats ( ParticleShapeStatistics stats ) function run virtual void run () override run the job Reimplements : shapeworks::Job::run function name virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name function get_group_pvalues Eigen :: VectorXf get_group_pvalues () function plot void plot ( JKQTPlotter * plot , QString group_1_name , QString group_2_name ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StatsGroupLDAJob"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#shapeworksstatsgroupldajob","text":"Inherits from shapeworks::Job , QObject","title":"shapeworks::StatsGroupLDAJob"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#public-functions","text":"Name StatsGroupLDAJob () void set_stats ( ParticleShapeStatistics stats) virtual void run () override run the job virtual QString name () override get the name of the job Eigen::VectorXf get_group_pvalues () void plot (JKQTPlotter * plot, QString group_1_name, QString group_2_name)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#additional-inherited-members","text":"Public Signals inherited from shapeworks::Job Name void progress (double ) void finished () Public Functions inherited from shapeworks::Job Name Job () virtual ~Job () virtual QString get_completion_message () get a message to display when the job is complete virtual QString get_abort_message () get a message to display when the job is aborted void start_timer () start the timer qint64 timer_elapsed () how much time has elapsed since the timer was started void set_complete (bool complete) set the job as complete bool is_complete () const is the job complete? void abort () abort the job bool is_aborted () const was the job aborted?","title":"Additional inherited members"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#function-statsgroupldajob","text":"StatsGroupLDAJob ()","title":"function StatsGroupLDAJob"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#function-set_stats","text":"void set_stats ( ParticleShapeStatistics stats )","title":"function set_stats"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#function-run","text":"virtual void run () override run the job Reimplements : shapeworks::Job::run","title":"function run"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#function-name","text":"virtual QString name () override get the name of the job Reimplements : shapeworks::Job::name","title":"function name"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#function-get_group_pvalues","text":"Eigen :: VectorXf get_group_pvalues ()","title":"function get_group_pvalues"},{"location":"api/Classes/classshapeworks_1_1StatsGroupLDAJob.html#function-plot","text":"void plot ( JKQTPlotter * plot , QString group_1_name , QString group_2_name ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function plot"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html","text":"shapeworks::StatusBarWidget StatusBarWidget . More... #include Inherits from QWidget Public Signals Name void toggle_log_window () Public Functions Name StatusBarWidget (QMainWindow * parent =0) void set_message (MessageType message_type, QString message) void set_progress (int value) void resizeEvent (QResizeEvent * event) override Detailed Description class shapeworks :: StatusBarWidget ; StatusBarWidget . This widget is used in place of the standard QStatusBar It supports a log window toggle, current message, with color, and progressbar Public Signals Documentation signal toggle_log_window void toggle_log_window () Public Functions Documentation function StatusBarWidget StatusBarWidget ( QMainWindow * parent = 0 ) function set_message void set_message ( MessageType message_type , QString message ) function set_progress void set_progress ( int value ) function resizeEvent void resizeEvent ( QResizeEvent * event ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StatusBarWidget"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#shapeworksstatusbarwidget","text":"StatusBarWidget . More... #include Inherits from QWidget","title":"shapeworks::StatusBarWidget"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#public-signals","text":"Name void toggle_log_window ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#public-functions","text":"Name StatusBarWidget (QMainWindow * parent =0) void set_message (MessageType message_type, QString message) void set_progress (int value) void resizeEvent (QResizeEvent * event) override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#detailed-description","text":"class shapeworks :: StatusBarWidget ; StatusBarWidget . This widget is used in place of the standard QStatusBar It supports a log window toggle, current message, with color, and progressbar","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#signal-toggle_log_window","text":"void toggle_log_window ()","title":"signal toggle_log_window"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#function-statusbarwidget","text":"StatusBarWidget ( QMainWindow * parent = 0 )","title":"function StatusBarWidget"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#function-set_message","text":"void set_message ( MessageType message_type , QString message )","title":"function set_message"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#function-set_progress","text":"void set_progress ( int value )","title":"function set_progress"},{"location":"api/Classes/classshapeworks_1_1StatusBarWidget.html#function-resizeevent","text":"void resizeEvent ( QResizeEvent * event ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"function resizeEvent"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html","text":"shapeworks::StringUtils String utility functions. #include Public Functions Name std::string removeExtension (std::string const & filename) std::string getPath (std::string const & filename) std::string getFilename (std::string const & pathname) Remove path from filename and return. std::string getBaseFilenameWithoutExtension (std::string const & pathname) Get just the filename without path and without extension. std::string toLower (std::string s) bool hasSuffix (std::string const & filename, std::string const & suffix) std::vector< std::string > getFileNamesFromPaths (const std::vector< std::string > & paths) std::string getLowerExtension (std::string const & filename) std::string safeString (const char * s) std::string replace_string (std::string str, const std::string & search, const std::string & replace) Replace a search string with a replacement. Public Functions Documentation function removeExtension static std :: string removeExtension ( std :: string const & filename ) function getPath static std :: string getPath ( std :: string const & filename ) function getFilename static std :: string getFilename ( std :: string const & pathname ) Remove path from filename and return. function getBaseFilenameWithoutExtension static std :: string getBaseFilenameWithoutExtension ( std :: string const & pathname ) Get just the filename without path and without extension. function toLower static std :: string toLower ( std :: string s ) function hasSuffix static bool hasSuffix ( std :: string const & filename , std :: string const & suffix ) function getFileNamesFromPaths static std :: vector < std :: string > getFileNamesFromPaths ( const std :: vector < std :: string > & paths ) function getLowerExtension static std :: string getLowerExtension ( std :: string const & filename ) function safeString static inline std :: string safeString ( const char * s ) function replace_string static std :: string replace_string ( std :: string str , const std :: string & search , const std :: string & replace ) Replace a search string with a replacement. Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StringUtils"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#shapeworksstringutils","text":"String utility functions. #include ","title":"shapeworks::StringUtils"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#public-functions","text":"Name std::string removeExtension (std::string const & filename) std::string getPath (std::string const & filename) std::string getFilename (std::string const & pathname) Remove path from filename and return. std::string getBaseFilenameWithoutExtension (std::string const & pathname) Get just the filename without path and without extension. std::string toLower (std::string s) bool hasSuffix (std::string const & filename, std::string const & suffix) std::vector< std::string > getFileNamesFromPaths (const std::vector< std::string > & paths) std::string getLowerExtension (std::string const & filename) std::string safeString (const char * s) std::string replace_string (std::string str, const std::string & search, const std::string & replace) Replace a search string with a replacement.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-removeextension","text":"static std :: string removeExtension ( std :: string const & filename )","title":"function removeExtension"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-getpath","text":"static std :: string getPath ( std :: string const & filename )","title":"function getPath"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-getfilename","text":"static std :: string getFilename ( std :: string const & pathname ) Remove path from filename and return.","title":"function getFilename"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-getbasefilenamewithoutextension","text":"static std :: string getBaseFilenameWithoutExtension ( std :: string const & pathname ) Get just the filename without path and without extension.","title":"function getBaseFilenameWithoutExtension"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-tolower","text":"static std :: string toLower ( std :: string s )","title":"function toLower"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-hassuffix","text":"static bool hasSuffix ( std :: string const & filename , std :: string const & suffix )","title":"function hasSuffix"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-getfilenamesfrompaths","text":"static std :: vector < std :: string > getFileNamesFromPaths ( const std :: vector < std :: string > & paths )","title":"function getFileNamesFromPaths"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-getlowerextension","text":"static std :: string getLowerExtension ( std :: string const & filename )","title":"function getLowerExtension"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-safestring","text":"static inline std :: string safeString ( const char * s )","title":"function safeString"},{"location":"api/Classes/classshapeworks_1_1StringUtils.html#function-replace_string","text":"static std :: string replace_string ( std :: string str , const std :: string & search , const std :: string & replace ) Replace a search string with a replacement. Updated on 2023-10-24 at 22:16:02 +0000","title":"function replace_string"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html","text":"shapeworks::StudioHandleWidget Inherits from vtkHandleWidget Public Functions Name StudioHandleWidget * New () StudioHandleWidget () void set_domain (int domain) void set_plane (int plane) void set_point (int point) void set_plane_widget ( PlaneWidget * plane_widget) Protected Functions Name void RightClickSelectAction (vtkAbstractWidget * w) void CustomMoveAction (vtkAbstractWidget * w) void CustomSelectAction (vtkAbstractWidget * w) void CustomEndSelectAction (vtkAbstractWidget * w) Protected Attributes Name int domain_ int plane_ int point_ PlaneWidget * plane_widget_ bool shift_active_ int start_y_ Public Functions Documentation function New static StudioHandleWidget * New () function StudioHandleWidget StudioHandleWidget () function set_domain inline void set_domain ( int domain ) function set_plane inline void set_plane ( int plane ) function set_point inline void set_point ( int point ) function set_plane_widget inline void set_plane_widget ( PlaneWidget * plane_widget ) Protected Functions Documentation function RightClickSelectAction static void RightClickSelectAction ( vtkAbstractWidget * w ) function CustomMoveAction static void CustomMoveAction ( vtkAbstractWidget * w ) function CustomSelectAction static void CustomSelectAction ( vtkAbstractWidget * w ) function CustomEndSelectAction static void CustomEndSelectAction ( vtkAbstractWidget * w ) Protected Attributes Documentation variable domain_ int domain_ = -1 ; variable plane_ int plane_ = -1 ; variable point_ int point_ = -1 ; variable plane_widget_ PlaneWidget * plane_widget_ ; variable shift_active_ bool shift_active_ = false ; variable start_y_ int start_y_ = 0 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StudioHandleWidget"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#shapeworksstudiohandlewidget","text":"Inherits from vtkHandleWidget","title":"shapeworks::StudioHandleWidget"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#public-functions","text":"Name StudioHandleWidget * New () StudioHandleWidget () void set_domain (int domain) void set_plane (int plane) void set_point (int point) void set_plane_widget ( PlaneWidget * plane_widget)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#protected-functions","text":"Name void RightClickSelectAction (vtkAbstractWidget * w) void CustomMoveAction (vtkAbstractWidget * w) void CustomSelectAction (vtkAbstractWidget * w) void CustomEndSelectAction (vtkAbstractWidget * w)","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#protected-attributes","text":"Name int domain_ int plane_ int point_ PlaneWidget * plane_widget_ bool shift_active_ int start_y_","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-new","text":"static StudioHandleWidget * New ()","title":"function New"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-studiohandlewidget","text":"StudioHandleWidget ()","title":"function StudioHandleWidget"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-set_domain","text":"inline void set_domain ( int domain )","title":"function set_domain"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-set_plane","text":"inline void set_plane ( int plane )","title":"function set_plane"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-set_point","text":"inline void set_point ( int point )","title":"function set_point"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-set_plane_widget","text":"inline void set_plane_widget ( PlaneWidget * plane_widget )","title":"function set_plane_widget"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-rightclickselectaction","text":"static void RightClickSelectAction ( vtkAbstractWidget * w )","title":"function RightClickSelectAction"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-custommoveaction","text":"static void CustomMoveAction ( vtkAbstractWidget * w )","title":"function CustomMoveAction"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-customselectaction","text":"static void CustomSelectAction ( vtkAbstractWidget * w )","title":"function CustomSelectAction"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#function-customendselectaction","text":"static void CustomEndSelectAction ( vtkAbstractWidget * w )","title":"function CustomEndSelectAction"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#variable-domain_","text":"int domain_ = -1 ;","title":"variable domain_"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#variable-plane_","text":"int plane_ = -1 ;","title":"variable plane_"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#variable-point_","text":"int point_ = -1 ;","title":"variable point_"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#variable-plane_widget_","text":"PlaneWidget * plane_widget_ ;","title":"variable plane_widget_"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#variable-shift_active_","text":"bool shift_active_ = false ;","title":"variable shift_active_"},{"location":"api/Classes/classshapeworks_1_1StudioHandleWidget.html#variable-start_y_","text":"int start_y_ = 0 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable start_y_"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html","text":"shapeworks::StudioInteractorStyle Inherits from vtkInteractorStyleTrackballCamera Public Functions Name StudioInteractorStyle * New () vtkTypeMacro ( StudioInteractorStyle , vtkInteractorStyleTrackballCamera ) void set_lightbox ( Lightbox * lightbox) StudioInteractorStyle () virtual ~StudioInteractorStyle () void OnLeftButtonDown () override void OnRightButtonDown () override void OnRightButtonUp () override void OnMouseWheelForward () override void OnMouseWheelBackward () override void OnKeyDown () override void Dolly () override void Rotate () override void OnMouseMove () override Protected Functions Name void Dolly (double factor) override Public Functions Documentation function New static StudioInteractorStyle * New () function vtkTypeMacro vtkTypeMacro ( StudioInteractorStyle , vtkInteractorStyleTrackballCamera ) function set_lightbox void set_lightbox ( Lightbox * lightbox ) function StudioInteractorStyle StudioInteractorStyle () function ~StudioInteractorStyle virtual ~ StudioInteractorStyle () function OnLeftButtonDown void OnLeftButtonDown () override function OnRightButtonDown void OnRightButtonDown () override function OnRightButtonUp void OnRightButtonUp () override function OnMouseWheelForward void OnMouseWheelForward () override function OnMouseWheelBackward void OnMouseWheelBackward () override function OnKeyDown void OnKeyDown () override function Dolly void Dolly () override function Rotate void Rotate () override function OnMouseMove void OnMouseMove () override Protected Functions Documentation function Dolly void Dolly ( double factor ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StudioInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#shapeworksstudiointeractorstyle","text":"Inherits from vtkInteractorStyleTrackballCamera","title":"shapeworks::StudioInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#public-functions","text":"Name StudioInteractorStyle * New () vtkTypeMacro ( StudioInteractorStyle , vtkInteractorStyleTrackballCamera ) void set_lightbox ( Lightbox * lightbox) StudioInteractorStyle () virtual ~StudioInteractorStyle () void OnLeftButtonDown () override void OnRightButtonDown () override void OnRightButtonUp () override void OnMouseWheelForward () override void OnMouseWheelBackward () override void OnKeyDown () override void Dolly () override void Rotate () override void OnMouseMove () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#protected-functions","text":"Name void Dolly (double factor) override","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-new","text":"static StudioInteractorStyle * New ()","title":"function New"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-vtktypemacro","text":"vtkTypeMacro ( StudioInteractorStyle , vtkInteractorStyleTrackballCamera )","title":"function vtkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-set_lightbox","text":"void set_lightbox ( Lightbox * lightbox )","title":"function set_lightbox"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-studiointeractorstyle","text":"StudioInteractorStyle ()","title":"function StudioInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-studiointeractorstyle_1","text":"virtual ~ StudioInteractorStyle ()","title":"function ~StudioInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-onleftbuttondown","text":"void OnLeftButtonDown () override","title":"function OnLeftButtonDown"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-onrightbuttondown","text":"void OnRightButtonDown () override","title":"function OnRightButtonDown"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-onrightbuttonup","text":"void OnRightButtonUp () override","title":"function OnRightButtonUp"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-onmousewheelforward","text":"void OnMouseWheelForward () override","title":"function OnMouseWheelForward"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-onmousewheelbackward","text":"void OnMouseWheelBackward () override","title":"function OnMouseWheelBackward"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-onkeydown","text":"void OnKeyDown () override","title":"function OnKeyDown"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-dolly","text":"void Dolly () override","title":"function Dolly"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-rotate","text":"void Rotate () override","title":"function Rotate"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-onmousemove","text":"void OnMouseMove () override","title":"function OnMouseMove"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioInteractorStyle.html#function-dolly_1","text":"void Dolly ( double factor ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"function Dolly"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html","text":"shapeworks::StudioMesh Representation of a single mesh. More... #include Public Functions Name StudioMesh () Constructor. ~StudioMesh () Destructor. vtkSmartPointer< vtkPolyData > get_poly_data () Get the mesh polydata. void set_poly_data (vtkSmartPointer< vtkPolyData > poly_data) Set the poly data directly. void set_error_message (std::string error_message) Set the error message. std::string get_error_message () Return the error message. void apply_feature_map (std::string name, ImageType::Pointer image) Apply a feature map. void apply_scalars (MeshHandle mesh) Apply scalars from another mesh, with a transform. void interpolate_scalars_to_mesh (std::string name, Eigen::VectorXd positions, Eigen::VectorXf scalar_values) Interpolation scalars at positions to this mesh. double get_largest_dimension_size () Return the range of largest axis (e.g. 200 for an object that sits in 100x200x100) vtkFloatArray * get_or_create_array (std::string name, float default_value) Get or create and return an array with a given name. void paint_ffc (double world_pos[], double radius, bool inclusive) Paint free form constraint. bool has_ffc_paint () Does this mesh have free form constraint paint? Public Attributes Name constexpr const char *const FFC_PAINT Detailed Description class shapeworks :: StudioMesh ; Representation of a single mesh. The Mesh class represents a single mesh generated from an image file or set of particles. It is responsible for loading the image and generating a mesh from it. TODO: Merge this functionality with Libs/Mesh/Mesh class Public Functions Documentation function StudioMesh StudioMesh () Constructor. function ~StudioMesh ~ StudioMesh () Destructor. function get_poly_data vtkSmartPointer < vtkPolyData > get_poly_data () Get the mesh polydata. function set_poly_data void set_poly_data ( vtkSmartPointer < vtkPolyData > poly_data ) Set the poly data directly. function set_error_message void set_error_message ( std :: string error_message ) Set the error message. function get_error_message std :: string get_error_message () Return the error message. function apply_feature_map void apply_feature_map ( std :: string name , ImageType :: Pointer image ) Apply a feature map. function apply_scalars void apply_scalars ( MeshHandle mesh ) Apply scalars from another mesh, with a transform. function interpolate_scalars_to_mesh void interpolate_scalars_to_mesh ( std :: string name , Eigen :: VectorXd positions , Eigen :: VectorXf scalar_values ) Interpolation scalars at positions to this mesh. function get_largest_dimension_size double get_largest_dimension_size () Return the range of largest axis (e.g. 200 for an object that sits in 100x200x100) function get_or_create_array vtkFloatArray * get_or_create_array ( std :: string name , float default_value ) Get or create and return an array with a given name. function paint_ffc void paint_ffc ( double world_pos [], double radius , bool inclusive ) Paint free form constraint. function has_ffc_paint bool has_ffc_paint () Does this mesh have free form constraint paint? Public Attributes Documentation variable FFC_PAINT static constexpr const char * const FFC_PAINT = \"ffc_paint\" ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StudioMesh"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#shapeworksstudiomesh","text":"Representation of a single mesh. More... #include ","title":"shapeworks::StudioMesh"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#public-functions","text":"Name StudioMesh () Constructor. ~StudioMesh () Destructor. vtkSmartPointer< vtkPolyData > get_poly_data () Get the mesh polydata. void set_poly_data (vtkSmartPointer< vtkPolyData > poly_data) Set the poly data directly. void set_error_message (std::string error_message) Set the error message. std::string get_error_message () Return the error message. void apply_feature_map (std::string name, ImageType::Pointer image) Apply a feature map. void apply_scalars (MeshHandle mesh) Apply scalars from another mesh, with a transform. void interpolate_scalars_to_mesh (std::string name, Eigen::VectorXd positions, Eigen::VectorXf scalar_values) Interpolation scalars at positions to this mesh. double get_largest_dimension_size () Return the range of largest axis (e.g. 200 for an object that sits in 100x200x100) vtkFloatArray * get_or_create_array (std::string name, float default_value) Get or create and return an array with a given name. void paint_ffc (double world_pos[], double radius, bool inclusive) Paint free form constraint. bool has_ffc_paint () Does this mesh have free form constraint paint?","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#public-attributes","text":"Name constexpr const char *const FFC_PAINT","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#detailed-description","text":"class shapeworks :: StudioMesh ; Representation of a single mesh. The Mesh class represents a single mesh generated from an image file or set of particles. It is responsible for loading the image and generating a mesh from it. TODO: Merge this functionality with Libs/Mesh/Mesh class","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-studiomesh","text":"StudioMesh () Constructor.","title":"function StudioMesh"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-studiomesh_1","text":"~ StudioMesh () Destructor.","title":"function ~StudioMesh"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-get_poly_data","text":"vtkSmartPointer < vtkPolyData > get_poly_data () Get the mesh polydata.","title":"function get_poly_data"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-set_poly_data","text":"void set_poly_data ( vtkSmartPointer < vtkPolyData > poly_data ) Set the poly data directly.","title":"function set_poly_data"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-set_error_message","text":"void set_error_message ( std :: string error_message ) Set the error message.","title":"function set_error_message"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-get_error_message","text":"std :: string get_error_message () Return the error message.","title":"function get_error_message"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-apply_feature_map","text":"void apply_feature_map ( std :: string name , ImageType :: Pointer image ) Apply a feature map.","title":"function apply_feature_map"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-apply_scalars","text":"void apply_scalars ( MeshHandle mesh ) Apply scalars from another mesh, with a transform.","title":"function apply_scalars"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-interpolate_scalars_to_mesh","text":"void interpolate_scalars_to_mesh ( std :: string name , Eigen :: VectorXd positions , Eigen :: VectorXf scalar_values ) Interpolation scalars at positions to this mesh.","title":"function interpolate_scalars_to_mesh"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-get_largest_dimension_size","text":"double get_largest_dimension_size () Return the range of largest axis (e.g. 200 for an object that sits in 100x200x100)","title":"function get_largest_dimension_size"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-get_or_create_array","text":"vtkFloatArray * get_or_create_array ( std :: string name , float default_value ) Get or create and return an array with a given name.","title":"function get_or_create_array"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-paint_ffc","text":"void paint_ffc ( double world_pos [], double radius , bool inclusive ) Paint free form constraint.","title":"function paint_ffc"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#function-has_ffc_paint","text":"bool has_ffc_paint () Does this mesh have free form constraint paint?","title":"function has_ffc_paint"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioMesh.html#variable-ffc_paint","text":"static constexpr const char * const FFC_PAINT = \"ffc_paint\" ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable FFC_PAINT"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html","text":"shapeworks::StudioSliceInteractorStyle Inherits from vtkInteractorStyleImage Public Functions Name StudioSliceInteractorStyle * New () vtkTypeMacro ( StudioSliceInteractorStyle , vtkInteractorStyleImage ) void set_lightbox ( Lightbox * lightbox) StudioSliceInteractorStyle () virtual ~StudioSliceInteractorStyle () void OnLeftButtonDown () override void OnRightButtonDown () override void OnKeyDown () override void WindowLevel () override Public Functions Documentation function New static StudioSliceInteractorStyle * New () function vtkTypeMacro vtkTypeMacro ( StudioSliceInteractorStyle , vtkInteractorStyleImage ) function set_lightbox void set_lightbox ( Lightbox * lightbox ) function StudioSliceInteractorStyle StudioSliceInteractorStyle () function ~StudioSliceInteractorStyle virtual ~ StudioSliceInteractorStyle () function OnLeftButtonDown void OnLeftButtonDown () override function OnRightButtonDown void OnRightButtonDown () override function OnKeyDown void OnKeyDown () override function WindowLevel void WindowLevel () override Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StudioSliceInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#shapeworksstudiosliceinteractorstyle","text":"Inherits from vtkInteractorStyleImage","title":"shapeworks::StudioSliceInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#public-functions","text":"Name StudioSliceInteractorStyle * New () vtkTypeMacro ( StudioSliceInteractorStyle , vtkInteractorStyleImage ) void set_lightbox ( Lightbox * lightbox) StudioSliceInteractorStyle () virtual ~StudioSliceInteractorStyle () void OnLeftButtonDown () override void OnRightButtonDown () override void OnKeyDown () override void WindowLevel () override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-new","text":"static StudioSliceInteractorStyle * New ()","title":"function New"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-vtktypemacro","text":"vtkTypeMacro ( StudioSliceInteractorStyle , vtkInteractorStyleImage )","title":"function vtkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-set_lightbox","text":"void set_lightbox ( Lightbox * lightbox )","title":"function set_lightbox"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-studiosliceinteractorstyle","text":"StudioSliceInteractorStyle ()","title":"function StudioSliceInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-studiosliceinteractorstyle_1","text":"virtual ~ StudioSliceInteractorStyle ()","title":"function ~StudioSliceInteractorStyle"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-onleftbuttondown","text":"void OnLeftButtonDown () override","title":"function OnLeftButtonDown"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-onrightbuttondown","text":"void OnRightButtonDown () override","title":"function OnRightButtonDown"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-onkeydown","text":"void OnKeyDown () override","title":"function OnKeyDown"},{"location":"api/Classes/classshapeworks_1_1StudioSliceInteractorStyle.html#function-windowlevel","text":"void WindowLevel () override Updated on 2023-10-24 at 22:16:02 +0000","title":"function WindowLevel"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html","text":"shapeworks::StudioUtils Utilities for Studio. #include Public Functions Name bool ask_multiple_domains_as_single (QWidget * parent, std::shared_ptr< Project > project) QStringList to_string_list (std::vector< std::string > vector) convert a vector of std::string to QStringList QImage vtk_image_to_qimage (vtkSmartPointer< vtkImageData > image_data) convert vtkImageData to QImage vtkSmartPointer< vtkPolyData > reverse_poly_data (vtkSmartPointer< vtkPolyData > poly_data) reverse a poly data QString get_platform_string () return platform string void add_viewport_border (vtkRenderer * renderer, double * color) add a color border to a viewport Public Functions Documentation function ask_multiple_domains_as_single static bool ask_multiple_domains_as_single ( QWidget * parent , std :: shared_ptr < Project > project ) function to_string_list static QStringList to_string_list ( std :: vector < std :: string > vector ) convert a vector of std::string to QStringList function vtk_image_to_qimage static QImage vtk_image_to_qimage ( vtkSmartPointer < vtkImageData > image_data ) convert vtkImageData to QImage function reverse_poly_data static vtkSmartPointer < vtkPolyData > reverse_poly_data ( vtkSmartPointer < vtkPolyData > poly_data ) reverse a poly data function get_platform_string static QString get_platform_string () return platform string function add_viewport_border static void add_viewport_border ( vtkRenderer * renderer , double * color ) add a color border to a viewport Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StudioUtils"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#shapeworksstudioutils","text":"Utilities for Studio. #include ","title":"shapeworks::StudioUtils"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#public-functions","text":"Name bool ask_multiple_domains_as_single (QWidget * parent, std::shared_ptr< Project > project) QStringList to_string_list (std::vector< std::string > vector) convert a vector of std::string to QStringList QImage vtk_image_to_qimage (vtkSmartPointer< vtkImageData > image_data) convert vtkImageData to QImage vtkSmartPointer< vtkPolyData > reverse_poly_data (vtkSmartPointer< vtkPolyData > poly_data) reverse a poly data QString get_platform_string () return platform string void add_viewport_border (vtkRenderer * renderer, double * color) add a color border to a viewport","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#function-ask_multiple_domains_as_single","text":"static bool ask_multiple_domains_as_single ( QWidget * parent , std :: shared_ptr < Project > project )","title":"function ask_multiple_domains_as_single"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#function-to_string_list","text":"static QStringList to_string_list ( std :: vector < std :: string > vector ) convert a vector of std::string to QStringList","title":"function to_string_list"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#function-vtk_image_to_qimage","text":"static QImage vtk_image_to_qimage ( vtkSmartPointer < vtkImageData > image_data ) convert vtkImageData to QImage","title":"function vtk_image_to_qimage"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#function-reverse_poly_data","text":"static vtkSmartPointer < vtkPolyData > reverse_poly_data ( vtkSmartPointer < vtkPolyData > poly_data ) reverse a poly data","title":"function reverse_poly_data"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#function-get_platform_string","text":"static QString get_platform_string () return platform string","title":"function get_platform_string"},{"location":"api/Classes/classshapeworks_1_1StudioUtils.html#function-add_viewport_border","text":"static void add_viewport_border ( vtkRenderer * renderer , double * color ) add a color border to a viewport Updated on 2023-10-24 at 22:16:02 +0000","title":"function add_viewport_border"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html","text":"shapeworks::StudioVtkOutputWindow Implementation of vtkOutputWindow to capture and display VTK error messages. #include Inherits from QObject, vtkOutputWindow Public Functions Name StudioVtkOutputWindow * New () vtkTypeMacro ( StudioVtkOutputWindow , vtkOutputWindow ) StudioVtkOutputWindow () void DisplayErrorText (const char * text) override void DisplayWarningText (const char * text) override void DisplayGenericWarningText (const char * text) override void DisplayDebugText (const char * text) override Public Functions Documentation function New static StudioVtkOutputWindow * New () function vtkTypeMacro vtkTypeMacro ( StudioVtkOutputWindow , vtkOutputWindow ) function StudioVtkOutputWindow StudioVtkOutputWindow () function DisplayErrorText void DisplayErrorText ( const char * text ) override function DisplayWarningText void DisplayWarningText ( const char * text ) override function DisplayGenericWarningText void DisplayGenericWarningText ( const char * text ) override function DisplayDebugText void DisplayDebugText ( const char * text ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::StudioVtkOutputWindow"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#shapeworksstudiovtkoutputwindow","text":"Implementation of vtkOutputWindow to capture and display VTK error messages. #include Inherits from QObject, vtkOutputWindow","title":"shapeworks::StudioVtkOutputWindow"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#public-functions","text":"Name StudioVtkOutputWindow * New () vtkTypeMacro ( StudioVtkOutputWindow , vtkOutputWindow ) StudioVtkOutputWindow () void DisplayErrorText (const char * text) override void DisplayWarningText (const char * text) override void DisplayGenericWarningText (const char * text) override void DisplayDebugText (const char * text) override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#function-new","text":"static StudioVtkOutputWindow * New ()","title":"function New"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#function-vtktypemacro","text":"vtkTypeMacro ( StudioVtkOutputWindow , vtkOutputWindow )","title":"function vtkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#function-studiovtkoutputwindow","text":"StudioVtkOutputWindow ()","title":"function StudioVtkOutputWindow"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#function-displayerrortext","text":"void DisplayErrorText ( const char * text ) override","title":"function DisplayErrorText"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#function-displaywarningtext","text":"void DisplayWarningText ( const char * text ) override","title":"function DisplayWarningText"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#function-displaygenericwarningtext","text":"void DisplayGenericWarningText ( const char * text ) override","title":"function DisplayGenericWarningText"},{"location":"api/Classes/classshapeworks_1_1StudioVtkOutputWindow.html#function-displaydebugtext","text":"void DisplayDebugText ( const char * text ) override Updated on 2023-10-24 at 22:16:02 +0000","title":"function DisplayDebugText"},{"location":"api/Classes/classshapeworks_1_1Style.html","text":"shapeworks::Style Public Functions Name Style () void apply_normal_button_style (QPushButton * button) void apply_abort_button_style (QPushButton * button) Public Functions Documentation function Style Style () function apply_normal_button_style static void apply_normal_button_style ( QPushButton * button ) function apply_abort_button_style static void apply_abort_button_style ( QPushButton * button ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Style"},{"location":"api/Classes/classshapeworks_1_1Style.html#shapeworksstyle","text":"","title":"shapeworks::Style"},{"location":"api/Classes/classshapeworks_1_1Style.html#public-functions","text":"Name Style () void apply_normal_button_style (QPushButton * button) void apply_abort_button_style (QPushButton * button)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Style.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Style.html#function-style","text":"Style ()","title":"function Style"},{"location":"api/Classes/classshapeworks_1_1Style.html#function-apply_normal_button_style","text":"static void apply_normal_button_style ( QPushButton * button )","title":"function apply_normal_button_style"},{"location":"api/Classes/classshapeworks_1_1Style.html#function-apply_abort_button_style","text":"static void apply_abort_button_style ( QPushButton * button ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function apply_abort_button_style"},{"location":"api/Classes/classshapeworks_1_1Subject.html","text":"shapeworks::Subject Representation of a single subject. More... #include Public Types Name using project::types::StringMap StringMap using project::types::StringList StringList Public Functions Name Subject () ~Subject () void set_original_filenames (StringList filenames) Set original filenames (one per domain) StringList get_original_filenames () Get original filenames. void set_groomed_filenames (StringList filenames) Set groomed filenames. StringList get_groomed_filenames () Get groomed filenames. void set_local_particle_filenames (StringList filenames) Set local particle filenames (one per domain) StringList get_local_particle_filenames () Get local particle filenames. void set_world_particle_filenames (StringList filenames) Set the world particle filenames. StringList get_world_particle_filenames () Get the world particle filenames. void set_landmarks_filenames (StringList filenames) Get the landmarks filenames (one per domain) StringList get_landmarks_filenames () Set the landmarks filenames. void set_constraints_filenames (StringList filenames) Get the constraints filenames (one per domain) StringList get_constraints_filenames () Set the constratins filenames. void set_number_of_domains (int number_of_domains) Set the number of domains. int get_number_of_domains () Get the number of domains. StringMap get_feature_filenames () const Get the feature map filenames. void set_feature_filenames (const StringMap & feature_filenames) Set the feature map filenames. std::vector< std::vector< double > > get_groomed_transforms () const Get the groomed transforms (one vector per domain) void set_groomed_transforms (std::vector< std::vector< double > > transforms) Set the groomed transforms (one vector per domain) void set_groomed_transform (int i, std::vector< double > transform) Set the i-th groomed transform. std::vector< std::vector< double > > get_procrustes_transforms () const Get the procrustes transforms (one vector per domain) void set_procrustes_transforms (std::vector< std::vector< double > > transforms) Set the procrustes transforms (one vector per domain) StringMap get_group_values () const Get the group values. std::string get_group_value (std::string group_name) Get a specific group value. void set_group_values (const StringMap & group_values) Set the group values. StringMap get_extra_values () const Get extra values (extra columns we don't interpret) void set_extra_values (StringMap extra_values) StringMap get_table_values () const Get all table values. void set_table_values (StringMap table_values) std::string get_display_name () Get the display name. void set_display_name (std::string display_name) Set the display name. bool is_fixed () Get if this subject is fixed or not. void set_fixed (bool fixed) Set if this subject is fixed or not. Detailed Description class shapeworks :: Subject ; Representation of a single subject. The Subject class encapsulates one \"sample\" in the shapeworks system (e.g. one row in a spreadsheet project) A Subject may have multiple segmentations/domains associated with it. Public Types Documentation using StringMap using shapeworks :: Subject :: StringMap = project :: types :: StringMap ; using StringList using shapeworks :: Subject :: StringList = project :: types :: StringList ; Public Functions Documentation function Subject Subject () function ~Subject ~ Subject () function set_original_filenames void set_original_filenames ( StringList filenames ) Set original filenames (one per domain) function get_original_filenames StringList get_original_filenames () Get original filenames. function set_groomed_filenames void set_groomed_filenames ( StringList filenames ) Set groomed filenames. function get_groomed_filenames StringList get_groomed_filenames () Get groomed filenames. function set_local_particle_filenames void set_local_particle_filenames ( StringList filenames ) Set local particle filenames (one per domain) function get_local_particle_filenames StringList get_local_particle_filenames () Get local particle filenames. function set_world_particle_filenames void set_world_particle_filenames ( StringList filenames ) Set the world particle filenames. function get_world_particle_filenames StringList get_world_particle_filenames () Get the world particle filenames. function set_landmarks_filenames void set_landmarks_filenames ( StringList filenames ) Get the landmarks filenames (one per domain) function get_landmarks_filenames StringList get_landmarks_filenames () Set the landmarks filenames. function set_constraints_filenames void set_constraints_filenames ( StringList filenames ) Get the constraints filenames (one per domain) function get_constraints_filenames StringList get_constraints_filenames () Set the constratins filenames. function set_number_of_domains void set_number_of_domains ( int number_of_domains ) Set the number of domains. function get_number_of_domains int get_number_of_domains () Get the number of domains. function get_feature_filenames StringMap get_feature_filenames () const Get the feature map filenames. function set_feature_filenames void set_feature_filenames ( const StringMap & feature_filenames ) Set the feature map filenames. function get_groomed_transforms std :: vector < std :: vector < double > > get_groomed_transforms () const Get the groomed transforms (one vector per domain) function set_groomed_transforms void set_groomed_transforms ( std :: vector < std :: vector < double > > transforms ) Set the groomed transforms (one vector per domain) function set_groomed_transform void set_groomed_transform ( int i , std :: vector < double > transform ) Set the i-th groomed transform. function get_procrustes_transforms std :: vector < std :: vector < double > > get_procrustes_transforms () const Get the procrustes transforms (one vector per domain) function set_procrustes_transforms void set_procrustes_transforms ( std :: vector < std :: vector < double > > transforms ) Set the procrustes transforms (one vector per domain) function get_group_values StringMap get_group_values () const Get the group values. function get_group_value std :: string get_group_value ( std :: string group_name ) Get a specific group value. function set_group_values void set_group_values ( const StringMap & group_values ) Set the group values. function get_extra_values StringMap get_extra_values () const Get extra values (extra columns we don't interpret) function set_extra_values void set_extra_values ( StringMap extra_values ) function get_table_values StringMap get_table_values () const Get all table values. function set_table_values void set_table_values ( StringMap table_values ) function get_display_name std :: string get_display_name () Get the display name. function set_display_name void set_display_name ( std :: string display_name ) Set the display name. function is_fixed bool is_fixed () Get if this subject is fixed or not. function set_fixed void set_fixed ( bool fixed ) Set if this subject is fixed or not. Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Subject"},{"location":"api/Classes/classshapeworks_1_1Subject.html#shapeworkssubject","text":"Representation of a single subject. More... #include ","title":"shapeworks::Subject"},{"location":"api/Classes/classshapeworks_1_1Subject.html#public-types","text":"Name using project::types::StringMap StringMap using project::types::StringList StringList","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1Subject.html#public-functions","text":"Name Subject () ~Subject () void set_original_filenames (StringList filenames) Set original filenames (one per domain) StringList get_original_filenames () Get original filenames. void set_groomed_filenames (StringList filenames) Set groomed filenames. StringList get_groomed_filenames () Get groomed filenames. void set_local_particle_filenames (StringList filenames) Set local particle filenames (one per domain) StringList get_local_particle_filenames () Get local particle filenames. void set_world_particle_filenames (StringList filenames) Set the world particle filenames. StringList get_world_particle_filenames () Get the world particle filenames. void set_landmarks_filenames (StringList filenames) Get the landmarks filenames (one per domain) StringList get_landmarks_filenames () Set the landmarks filenames. void set_constraints_filenames (StringList filenames) Get the constraints filenames (one per domain) StringList get_constraints_filenames () Set the constratins filenames. void set_number_of_domains (int number_of_domains) Set the number of domains. int get_number_of_domains () Get the number of domains. StringMap get_feature_filenames () const Get the feature map filenames. void set_feature_filenames (const StringMap & feature_filenames) Set the feature map filenames. std::vector< std::vector< double > > get_groomed_transforms () const Get the groomed transforms (one vector per domain) void set_groomed_transforms (std::vector< std::vector< double > > transforms) Set the groomed transforms (one vector per domain) void set_groomed_transform (int i, std::vector< double > transform) Set the i-th groomed transform. std::vector< std::vector< double > > get_procrustes_transforms () const Get the procrustes transforms (one vector per domain) void set_procrustes_transforms (std::vector< std::vector< double > > transforms) Set the procrustes transforms (one vector per domain) StringMap get_group_values () const Get the group values. std::string get_group_value (std::string group_name) Get a specific group value. void set_group_values (const StringMap & group_values) Set the group values. StringMap get_extra_values () const Get extra values (extra columns we don't interpret) void set_extra_values (StringMap extra_values) StringMap get_table_values () const Get all table values. void set_table_values (StringMap table_values) std::string get_display_name () Get the display name. void set_display_name (std::string display_name) Set the display name. bool is_fixed () Get if this subject is fixed or not. void set_fixed (bool fixed) Set if this subject is fixed or not.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Subject.html#detailed-description","text":"class shapeworks :: Subject ; Representation of a single subject. The Subject class encapsulates one \"sample\" in the shapeworks system (e.g. one row in a spreadsheet project) A Subject may have multiple segmentations/domains associated with it.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Subject.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1Subject.html#using-stringmap","text":"using shapeworks :: Subject :: StringMap = project :: types :: StringMap ;","title":"using StringMap"},{"location":"api/Classes/classshapeworks_1_1Subject.html#using-stringlist","text":"using shapeworks :: Subject :: StringList = project :: types :: StringList ;","title":"using StringList"},{"location":"api/Classes/classshapeworks_1_1Subject.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-subject","text":"Subject ()","title":"function Subject"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-subject_1","text":"~ Subject ()","title":"function ~Subject"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_original_filenames","text":"void set_original_filenames ( StringList filenames ) Set original filenames (one per domain)","title":"function set_original_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_original_filenames","text":"StringList get_original_filenames () Get original filenames.","title":"function get_original_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_groomed_filenames","text":"void set_groomed_filenames ( StringList filenames ) Set groomed filenames.","title":"function set_groomed_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_groomed_filenames","text":"StringList get_groomed_filenames () Get groomed filenames.","title":"function get_groomed_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_local_particle_filenames","text":"void set_local_particle_filenames ( StringList filenames ) Set local particle filenames (one per domain)","title":"function set_local_particle_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_local_particle_filenames","text":"StringList get_local_particle_filenames () Get local particle filenames.","title":"function get_local_particle_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_world_particle_filenames","text":"void set_world_particle_filenames ( StringList filenames ) Set the world particle filenames.","title":"function set_world_particle_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_world_particle_filenames","text":"StringList get_world_particle_filenames () Get the world particle filenames.","title":"function get_world_particle_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_landmarks_filenames","text":"void set_landmarks_filenames ( StringList filenames ) Get the landmarks filenames (one per domain)","title":"function set_landmarks_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_landmarks_filenames","text":"StringList get_landmarks_filenames () Set the landmarks filenames.","title":"function get_landmarks_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_constraints_filenames","text":"void set_constraints_filenames ( StringList filenames ) Get the constraints filenames (one per domain)","title":"function set_constraints_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_constraints_filenames","text":"StringList get_constraints_filenames () Set the constratins filenames.","title":"function get_constraints_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_number_of_domains","text":"void set_number_of_domains ( int number_of_domains ) Set the number of domains.","title":"function set_number_of_domains"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_number_of_domains","text":"int get_number_of_domains () Get the number of domains.","title":"function get_number_of_domains"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_feature_filenames","text":"StringMap get_feature_filenames () const Get the feature map filenames.","title":"function get_feature_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_feature_filenames","text":"void set_feature_filenames ( const StringMap & feature_filenames ) Set the feature map filenames.","title":"function set_feature_filenames"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_groomed_transforms","text":"std :: vector < std :: vector < double > > get_groomed_transforms () const Get the groomed transforms (one vector per domain)","title":"function get_groomed_transforms"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_groomed_transforms","text":"void set_groomed_transforms ( std :: vector < std :: vector < double > > transforms ) Set the groomed transforms (one vector per domain)","title":"function set_groomed_transforms"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_groomed_transform","text":"void set_groomed_transform ( int i , std :: vector < double > transform ) Set the i-th groomed transform.","title":"function set_groomed_transform"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_procrustes_transforms","text":"std :: vector < std :: vector < double > > get_procrustes_transforms () const Get the procrustes transforms (one vector per domain)","title":"function get_procrustes_transforms"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_procrustes_transforms","text":"void set_procrustes_transforms ( std :: vector < std :: vector < double > > transforms ) Set the procrustes transforms (one vector per domain)","title":"function set_procrustes_transforms"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_group_values","text":"StringMap get_group_values () const Get the group values.","title":"function get_group_values"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_group_value","text":"std :: string get_group_value ( std :: string group_name ) Get a specific group value.","title":"function get_group_value"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_group_values","text":"void set_group_values ( const StringMap & group_values ) Set the group values.","title":"function set_group_values"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_extra_values","text":"StringMap get_extra_values () const Get extra values (extra columns we don't interpret)","title":"function get_extra_values"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_extra_values","text":"void set_extra_values ( StringMap extra_values )","title":"function set_extra_values"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_table_values","text":"StringMap get_table_values () const Get all table values.","title":"function get_table_values"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_table_values","text":"void set_table_values ( StringMap table_values )","title":"function set_table_values"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-get_display_name","text":"std :: string get_display_name () Get the display name.","title":"function get_display_name"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_display_name","text":"void set_display_name ( std :: string display_name ) Set the display name.","title":"function set_display_name"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-is_fixed","text":"bool is_fixed () Get if this subject is fixed or not.","title":"function is_fixed"},{"location":"api/Classes/classshapeworks_1_1Subject.html#function-set_fixed","text":"void set_fixed ( bool fixed ) Set if this subject is fixed or not. Updated on 2023-10-24 at 22:16:02 +0000","title":"function set_fixed"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html","text":"shapeworks::Telemetry Inherits from QObject Public Slots Name void handle_network_reply (QNetworkReply * reply) Public Functions Name Telemetry ( Preferences & prefs) void record_event (const QString & name, const QVariantMap & params) Public Slots Documentation slot handle_network_reply void handle_network_reply ( QNetworkReply * reply ) Public Functions Documentation function Telemetry Telemetry ( Preferences & prefs ) function record_event void record_event ( const QString & name , const QVariantMap & params ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Telemetry"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#shapeworkstelemetry","text":"Inherits from QObject","title":"shapeworks::Telemetry"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#public-slots","text":"Name void handle_network_reply (QNetworkReply * reply)","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#public-functions","text":"Name Telemetry ( Preferences & prefs) void record_event (const QString & name, const QVariantMap & params)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#slot-handle_network_reply","text":"void handle_network_reply ( QNetworkReply * reply )","title":"slot handle_network_reply"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#function-telemetry","text":"Telemetry ( Preferences & prefs )","title":"function Telemetry"},{"location":"api/Classes/classshapeworks_1_1Telemetry.html#function-record_event","text":"void record_event ( const QString & name , const QVariantMap & params ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function record_event"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html","text":"shapeworks::UpdateChecker Update Checker. More... #include Inherits from QDialog Public Slots Name void handleNetworkReply (QNetworkReply * reply) Public Functions Name UpdateChecker ( Preferences & prefs, QWidget * parent =nullptr) ~UpdateChecker () void run_auto_update_check () void run_manual_update_check () Detailed Description class shapeworks :: UpdateChecker ; Update Checker. This class checks for new versions of ShapeWorks and informs the user with a dialog Public Slots Documentation slot handleNetworkReply void handleNetworkReply ( QNetworkReply * reply ) Public Functions Documentation function UpdateChecker explicit UpdateChecker ( Preferences & prefs , QWidget * parent = nullptr ) function ~UpdateChecker ~ UpdateChecker () function run_auto_update_check void run_auto_update_check () function run_manual_update_check void run_manual_update_check () Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::UpdateChecker"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#shapeworksupdatechecker","text":"Update Checker. More... #include Inherits from QDialog","title":"shapeworks::UpdateChecker"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#public-slots","text":"Name void handleNetworkReply (QNetworkReply * reply)","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#public-functions","text":"Name UpdateChecker ( Preferences & prefs, QWidget * parent =nullptr) ~UpdateChecker () void run_auto_update_check () void run_manual_update_check ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#detailed-description","text":"class shapeworks :: UpdateChecker ; Update Checker. This class checks for new versions of ShapeWorks and informs the user with a dialog","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#slot-handlenetworkreply","text":"void handleNetworkReply ( QNetworkReply * reply )","title":"slot handleNetworkReply"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#function-updatechecker","text":"explicit UpdateChecker ( Preferences & prefs , QWidget * parent = nullptr )","title":"function UpdateChecker"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#function-updatechecker_1","text":"~ UpdateChecker ()","title":"function ~UpdateChecker"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#function-run_auto_update_check","text":"void run_auto_update_check ()","title":"function run_auto_update_check"},{"location":"api/Classes/classshapeworks_1_1UpdateChecker.html#function-run_manual_update_check","text":"void run_manual_update_check () Updated on 2023-10-24 at 22:16:02 +0000","title":"function run_manual_update_check"},{"location":"api/Classes/classshapeworks_1_1Variant.html","text":"shapeworks::Variant Variant class to represent multiple types. More... #include Public Functions Name Variant () Variant (const std::string & v) Variant (int v) Variant (double v) Variant (const char * v) Variant (bool v) Variant (std::vector< double > v) Variant (std::vector< int > v) Variant (std::vector< bool > v) Variant (std::vector< std::string > v) operator std::string () const operator bool () const operator int () const operator unsigned int () const operator long () const operator unsigned long () const operator float () const operator double () const operator std::vector< double > () const operator std::vector< int > () const operator std::vector< bool > () const operator std::vector< std::string > () const Detailed Description class shapeworks :: Variant ; Variant class to represent multiple types. This class was adapted from optparse to contain multiple types as a string This is used for storing parameters in a spreadsheet Public Functions Documentation function Variant inline Variant () function Variant inline Variant ( const std :: string & v ) function Variant inline Variant ( int v ) function Variant inline Variant ( double v ) function Variant inline Variant ( const char * v ) function Variant inline Variant ( bool v ) function Variant inline Variant ( std :: vector < double > v ) function Variant inline Variant ( std :: vector < int > v ) function Variant inline Variant ( std :: vector < bool > v ) function Variant inline Variant ( std :: vector < std :: string > v ) function operator std::string operator std :: string () const function operator bool operator bool () const function operator int operator int () const function operator unsigned int operator unsigned int () const function operator long operator long () const function operator unsigned long operator unsigned long () const function operator float operator float () const function operator double operator double () const function operator std::vector< double > operator std :: vector < double > () const function operator std::vector< int > operator std :: vector < int > () const function operator std::vector< bool > operator std :: vector < bool > () const function operator std::vector< std::string > operator std :: vector < std :: string > () const Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#shapeworksvariant","text":"Variant class to represent multiple types. More... #include ","title":"shapeworks::Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#public-functions","text":"Name Variant () Variant (const std::string & v) Variant (int v) Variant (double v) Variant (const char * v) Variant (bool v) Variant (std::vector< double > v) Variant (std::vector< int > v) Variant (std::vector< bool > v) Variant (std::vector< std::string > v) operator std::string () const operator bool () const operator int () const operator unsigned int () const operator long () const operator unsigned long () const operator float () const operator double () const operator std::vector< double > () const operator std::vector< int > () const operator std::vector< bool > () const operator std::vector< std::string > () const","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Variant.html#detailed-description","text":"class shapeworks :: Variant ; Variant class to represent multiple types. This class was adapted from optparse to contain multiple types as a string This is used for storing parameters in a spreadsheet","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Variant.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant","text":"inline Variant ()","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_1","text":"inline Variant ( const std :: string & v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_2","text":"inline Variant ( int v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_3","text":"inline Variant ( double v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_4","text":"inline Variant ( const char * v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_5","text":"inline Variant ( bool v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_6","text":"inline Variant ( std :: vector < double > v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_7","text":"inline Variant ( std :: vector < int > v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_8","text":"inline Variant ( std :: vector < bool > v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-variant_9","text":"inline Variant ( std :: vector < std :: string > v )","title":"function Variant"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-stdstring","text":"operator std :: string () const","title":"function operator std::string"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-bool","text":"operator bool () const","title":"function operator bool"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-int","text":"operator int () const","title":"function operator int"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-unsigned-int","text":"operator unsigned int () const","title":"function operator unsigned int"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-long","text":"operator long () const","title":"function operator long"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-unsigned-long","text":"operator unsigned long () const","title":"function operator unsigned long"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-float","text":"operator float () const","title":"function operator float"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-double","text":"operator double () const","title":"function operator double"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-stdvector-double","text":"operator std :: vector < double > () const","title":"function operator std::vector< double >"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-stdvector-int","text":"operator std :: vector < int > () const","title":"function operator std::vector< int >"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-stdvector-bool","text":"operator std :: vector < bool > () const","title":"function operator std::vector< bool >"},{"location":"api/Classes/classshapeworks_1_1Variant.html#function-operator-stdvector-stdstring","text":"operator std :: vector < std :: string > () const Updated on 2023-10-24 at 22:16:02 +0000","title":"function operator std::vector< std::string >"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html","text":"shapeworks::VectorFunction More... #include Inherits from itk::LightObject Inherited by shapeworks::CorrespondenceFunction , shapeworks::DisentangledCorrespondenceFunction , shapeworks::DualVectorFunction , shapeworks::LegacyCorrespondenceFunction , shapeworks::SamplingFunction Public Types Name typedef VectorFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::LightObject Superclass typedef vnl_vector_fixed< double, VDimension > VectorType Public Functions Name itkTypeMacro ( VectorFunction , LightObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const =0 virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep, double & energy) const =0 virtual double Energy (unsigned int , unsigned int , const ParticleSystem * ) const =0 virtual void ResetBuffers () virtual void AfterIteration () virtual void BeforeIteration () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual VectorFunction::Pointer Clone () virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r) Protected Functions Name VectorFunction () virtual ~VectorFunction () void operator= (const VectorFunction & ) VectorFunction (const VectorFunction & ) Public Attributes Name constexpr static unsigned int VDimension Protected Attributes Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber Detailed Description class shapeworks :: VectorFunction ; This is the base class defining the API for a function that takes a particle system, domain, and location index as arguments and returns a vector-valued result. Public Types Documentation typedef Self typedef VectorFunction shapeworks :: VectorFunction :: Self ; Standard class typedefs. typedef Pointer typedef itk :: SmartPointer < Self > shapeworks :: VectorFunction :: Pointer ; typedef ConstPointer typedef itk :: SmartPointer < const Self > shapeworks :: VectorFunction :: ConstPointer ; typedef Superclass typedef itk :: LightObject shapeworks :: VectorFunction :: Superclass ; typedef VectorType typedef vnl_vector_fixed < double , VDimension > shapeworks :: VectorFunction :: VectorType ; Type of vectors. Public Functions Documentation function itkTypeMacro itkTypeMacro ( VectorFunction , LightObject ) function itkStaticConstMacro itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Method for object allocation through the factory. Dimensionality of the domain of the particle system. function Evaluate virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const = 0 Reimplemented by : shapeworks::CorrespondenceFunction::Evaluate , shapeworks::CurvatureSamplingFunction::Evaluate , shapeworks::DisentangledCorrespondenceFunction::Evaluate , shapeworks::LegacyCorrespondenceFunction::Evaluate , shapeworks::SamplingFunction::Evaluate , shapeworks::DualVectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain. function Evaluate virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep , double & energy ) const = 0 Reimplemented by : shapeworks::SamplingFunction::Evaluate , shapeworks::DualVectorFunction::Evaluate , shapeworks::CorrespondenceFunction::Evaluate , shapeworks::CurvatureSamplingFunction::Evaluate , shapeworks::DisentangledCorrespondenceFunction::Evaluate , shapeworks::LegacyCorrespondenceFunction::Evaluate function Energy virtual double Energy ( unsigned int , unsigned int , const ParticleSystem * ) const = 0 Reimplemented by : shapeworks::CorrespondenceFunction::Energy , shapeworks::CurvatureSamplingFunction::Energy , shapeworks::DisentangledCorrespondenceFunction::Energy , shapeworks::LegacyCorrespondenceFunction::Energy , shapeworks::DualVectorFunction::Energy , shapeworks::SamplingFunction::Energy function ResetBuffers inline virtual void ResetBuffers () Reimplemented by : shapeworks::SamplingFunction::ResetBuffers May be called by the solver class. function AfterIteration inline virtual void AfterIteration () Reimplemented by : shapeworks::CorrespondenceFunction::AfterIteration , shapeworks::CurvatureSamplingFunction::AfterIteration , shapeworks::DisentangledCorrespondenceFunction::AfterIteration , shapeworks::DualVectorFunction::AfterIteration , shapeworks::LegacyCorrespondenceFunction::AfterIteration This method is called by a solver after each iteration. Subclasses may or may not implement this method. function BeforeIteration inline virtual void BeforeIteration () Reimplemented by : shapeworks::CorrespondenceFunction::BeforeIteration , shapeworks::CurvatureSamplingFunction::BeforeIteration , shapeworks::DisentangledCorrespondenceFunction::BeforeIteration , shapeworks::DualVectorFunction::BeforeIteration , shapeworks::LegacyCorrespondenceFunction::BeforeIteration This method is called by a solver before each iteration. Subclasses may or may not implement this method. function BeforeEvaluate inline virtual void BeforeEvaluate ( unsigned int , unsigned int , const ParticleSystem * ) Reimplemented by : shapeworks::DualVectorFunction::BeforeEvaluate , shapeworks::CurvatureSamplingFunction::BeforeEvaluate This method may be called to set up the state of the function object before a call to Evaluate. It is necessary in order to initialize certain constants and variables that may be used for calculating the Energy as well as the Gradients. Typically this is only necessary for the adaptive gradient descent algorithm. function SetParticleSystem inline virtual void SetParticleSystem ( ParticleSystem * p ) Reimplemented by : shapeworks::DualVectorFunction::SetParticleSystem Some subclasses may require a pointer to the particle system and its domain number. These methods set/get those values. function GetParticleSystem inline virtual ParticleSystem * GetParticleSystem () const function SetDomainNumber inline virtual void SetDomainNumber ( unsigned int i ) Reimplemented by : shapeworks::DualVectorFunction::SetDomainNumber function GetDomainNumber inline virtual int GetDomainNumber () const function Clone inline virtual VectorFunction :: Pointer Clone () Reimplemented by : shapeworks::CorrespondenceFunction::Clone , shapeworks::CurvatureSamplingFunction::Clone , shapeworks::DisentangledCorrespondenceFunction::Clone , shapeworks::DualVectorFunction::Clone , shapeworks::LegacyCorrespondenceFunction::Clone , shapeworks::SamplingFunction::Clone function GetRelativeEnergyScaling inline virtual double GetRelativeEnergyScaling () const Reimplemented by : shapeworks::DualVectorFunction::GetRelativeEnergyScaling function SetRelativeEnergyScaling inline virtual void SetRelativeEnergyScaling ( double r ) Reimplemented by : shapeworks::DualVectorFunction::SetRelativeEnergyScaling Protected Functions Documentation function VectorFunction inline VectorFunction () function ~VectorFunction inline virtual ~ VectorFunction () function operator= void operator = ( const VectorFunction & ) function VectorFunction VectorFunction ( const VectorFunction & ) Public Attributes Documentation variable VDimension static constexpr static unsigned int VDimension = 3 ; Protected Attributes Documentation variable m_ParticleSystem ParticleSystem * m_ParticleSystem ; variable m_DomainNumber unsigned int m_DomainNumber ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::VectorFunction"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#shapeworksvectorfunction","text":"More... #include Inherits from itk::LightObject Inherited by shapeworks::CorrespondenceFunction , shapeworks::DisentangledCorrespondenceFunction , shapeworks::DualVectorFunction , shapeworks::LegacyCorrespondenceFunction , shapeworks::SamplingFunction","title":"shapeworks::VectorFunction"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#public-types","text":"Name typedef VectorFunction Self typedef itk::SmartPointer< Self > Pointer typedef itk::SmartPointer< const Self > ConstPointer typedef itk::LightObject Superclass typedef vnl_vector_fixed< double, VDimension > VectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#public-functions","text":"Name itkTypeMacro ( VectorFunction , LightObject ) itkStaticConstMacro (Dimension , unsigned int , VDimension ) virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const =0 virtual VectorType Evaluate (unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep, double & energy) const =0 virtual double Energy (unsigned int , unsigned int , const ParticleSystem * ) const =0 virtual void ResetBuffers () virtual void AfterIteration () virtual void BeforeIteration () virtual void BeforeEvaluate (unsigned int , unsigned int , const ParticleSystem * ) virtual void SetParticleSystem ( ParticleSystem * p) virtual ParticleSystem * GetParticleSystem () const virtual void SetDomainNumber (unsigned int i) virtual int GetDomainNumber () const virtual VectorFunction::Pointer Clone () virtual double GetRelativeEnergyScaling () const virtual void SetRelativeEnergyScaling (double r)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#protected-functions","text":"Name VectorFunction () virtual ~VectorFunction () void operator= (const VectorFunction & ) VectorFunction (const VectorFunction & )","title":"Protected Functions"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#public-attributes","text":"Name constexpr static unsigned int VDimension","title":"Public Attributes"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#protected-attributes","text":"Name ParticleSystem * m_ParticleSystem unsigned int m_DomainNumber","title":"Protected Attributes"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#detailed-description","text":"class shapeworks :: VectorFunction ; This is the base class defining the API for a function that takes a particle system, domain, and location index as arguments and returns a vector-valued result.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#typedef-self","text":"typedef VectorFunction shapeworks :: VectorFunction :: Self ; Standard class typedefs.","title":"typedef Self"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#typedef-pointer","text":"typedef itk :: SmartPointer < Self > shapeworks :: VectorFunction :: Pointer ;","title":"typedef Pointer"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#typedef-constpointer","text":"typedef itk :: SmartPointer < const Self > shapeworks :: VectorFunction :: ConstPointer ;","title":"typedef ConstPointer"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#typedef-superclass","text":"typedef itk :: LightObject shapeworks :: VectorFunction :: Superclass ;","title":"typedef Superclass"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#typedef-vectortype","text":"typedef vnl_vector_fixed < double , VDimension > shapeworks :: VectorFunction :: VectorType ; Type of vectors.","title":"typedef VectorType"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-itktypemacro","text":"itkTypeMacro ( VectorFunction , LightObject )","title":"function itkTypeMacro"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-itkstaticconstmacro","text":"itkStaticConstMacro ( Dimension , unsigned int , VDimension ) Method for object allocation through the factory. Dimensionality of the domain of the particle system.","title":"function itkStaticConstMacro"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-evaluate","text":"virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep ) const = 0 Reimplemented by : shapeworks::CorrespondenceFunction::Evaluate , shapeworks::CurvatureSamplingFunction::Evaluate , shapeworks::DisentangledCorrespondenceFunction::Evaluate , shapeworks::LegacyCorrespondenceFunction::Evaluate , shapeworks::SamplingFunction::Evaluate , shapeworks::DualVectorFunction::Evaluate The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-evaluate_1","text":"virtual VectorType Evaluate ( unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep , double & energy ) const = 0 Reimplemented by : shapeworks::SamplingFunction::Evaluate , shapeworks::DualVectorFunction::Evaluate , shapeworks::CorrespondenceFunction::Evaluate , shapeworks::CurvatureSamplingFunction::Evaluate , shapeworks::DisentangledCorrespondenceFunction::Evaluate , shapeworks::LegacyCorrespondenceFunction::Evaluate","title":"function Evaluate"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-energy","text":"virtual double Energy ( unsigned int , unsigned int , const ParticleSystem * ) const = 0 Reimplemented by : shapeworks::CorrespondenceFunction::Energy , shapeworks::CurvatureSamplingFunction::Energy , shapeworks::DisentangledCorrespondenceFunction::Energy , shapeworks::LegacyCorrespondenceFunction::Energy , shapeworks::DualVectorFunction::Energy , shapeworks::SamplingFunction::Energy","title":"function Energy"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-resetbuffers","text":"inline virtual void ResetBuffers () Reimplemented by : shapeworks::SamplingFunction::ResetBuffers May be called by the solver class.","title":"function ResetBuffers"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-afteriteration","text":"inline virtual void AfterIteration () Reimplemented by : shapeworks::CorrespondenceFunction::AfterIteration , shapeworks::CurvatureSamplingFunction::AfterIteration , shapeworks::DisentangledCorrespondenceFunction::AfterIteration , shapeworks::DualVectorFunction::AfterIteration , shapeworks::LegacyCorrespondenceFunction::AfterIteration This method is called by a solver after each iteration. Subclasses may or may not implement this method.","title":"function AfterIteration"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-beforeiteration","text":"inline virtual void BeforeIteration () Reimplemented by : shapeworks::CorrespondenceFunction::BeforeIteration , shapeworks::CurvatureSamplingFunction::BeforeIteration , shapeworks::DisentangledCorrespondenceFunction::BeforeIteration , shapeworks::DualVectorFunction::BeforeIteration , shapeworks::LegacyCorrespondenceFunction::BeforeIteration This method is called by a solver before each iteration. Subclasses may or may not implement this method.","title":"function BeforeIteration"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-beforeevaluate","text":"inline virtual void BeforeEvaluate ( unsigned int , unsigned int , const ParticleSystem * ) Reimplemented by : shapeworks::DualVectorFunction::BeforeEvaluate , shapeworks::CurvatureSamplingFunction::BeforeEvaluate This method may be called to set up the state of the function object before a call to Evaluate. It is necessary in order to initialize certain constants and variables that may be used for calculating the Energy as well as the Gradients. Typically this is only necessary for the adaptive gradient descent algorithm.","title":"function BeforeEvaluate"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-setparticlesystem","text":"inline virtual void SetParticleSystem ( ParticleSystem * p ) Reimplemented by : shapeworks::DualVectorFunction::SetParticleSystem Some subclasses may require a pointer to the particle system and its domain number. These methods set/get those values.","title":"function SetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-getparticlesystem","text":"inline virtual ParticleSystem * GetParticleSystem () const","title":"function GetParticleSystem"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-setdomainnumber","text":"inline virtual void SetDomainNumber ( unsigned int i ) Reimplemented by : shapeworks::DualVectorFunction::SetDomainNumber","title":"function SetDomainNumber"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-getdomainnumber","text":"inline virtual int GetDomainNumber () const","title":"function GetDomainNumber"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-clone","text":"inline virtual VectorFunction :: Pointer Clone () Reimplemented by : shapeworks::CorrespondenceFunction::Clone , shapeworks::CurvatureSamplingFunction::Clone , shapeworks::DisentangledCorrespondenceFunction::Clone , shapeworks::DualVectorFunction::Clone , shapeworks::LegacyCorrespondenceFunction::Clone , shapeworks::SamplingFunction::Clone","title":"function Clone"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-getrelativeenergyscaling","text":"inline virtual double GetRelativeEnergyScaling () const Reimplemented by : shapeworks::DualVectorFunction::GetRelativeEnergyScaling","title":"function GetRelativeEnergyScaling"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-setrelativeenergyscaling","text":"inline virtual void SetRelativeEnergyScaling ( double r ) Reimplemented by : shapeworks::DualVectorFunction::SetRelativeEnergyScaling","title":"function SetRelativeEnergyScaling"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-vectorfunction","text":"inline VectorFunction ()","title":"function VectorFunction"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-vectorfunction_1","text":"inline virtual ~ VectorFunction ()","title":"function ~VectorFunction"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-operator","text":"void operator = ( const VectorFunction & )","title":"function operator="},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#function-vectorfunction_2","text":"VectorFunction ( const VectorFunction & )","title":"function VectorFunction"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#variable-vdimension","text":"static constexpr static unsigned int VDimension = 3 ;","title":"variable VDimension"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#protected-attributes-documentation","text":"","title":"Protected Attributes Documentation"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#variable-m_particlesystem","text":"ParticleSystem * m_ParticleSystem ;","title":"variable m_ParticleSystem"},{"location":"api/Classes/classshapeworks_1_1VectorFunction.html#variable-m_domainnumber","text":"unsigned int m_DomainNumber ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_DomainNumber"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html","text":"shapeworks::VectorImage Gradient (vector) image. #include Public Types Name using itk::GradientImageFilter< Image::ImageType > GradientImageFilter using itk::Image< Covariant, 3 > ImageType using itk::VectorLinearInterpolateImageFunction< ImageType, Image::PixelType > GradientInterpolatorType using itk::ImageRegionIterator< ImageType > ImageIterator Public Functions Name VectorImage (const Image & dt_img) Creates a gradient vector image of image (presumably a distance transform) VectorImage () =delete ~VectorImage () =default Vector evaluate (Point p) Returns a Vector (which can be normalized using v.Normalize() ). ImageIterator iterator () Public Types Documentation using GradientImageFilter using shapeworks :: VectorImage :: GradientImageFilter = itk :: GradientImageFilter < Image :: ImageType > ; using ImageType using shapeworks :: VectorImage :: ImageType = itk :: Image < Covariant , 3 > ; using GradientInterpolatorType using shapeworks :: VectorImage :: GradientInterpolatorType = itk :: VectorLinearInterpolateImageFunction < ImageType , Image :: PixelType > ; using ImageIterator using shapeworks :: VectorImage :: ImageIterator = itk :: ImageRegionIterator < ImageType > ; Public Functions Documentation function VectorImage VectorImage ( const Image & dt_img ) Creates a gradient vector image of image (presumably a distance transform) function VectorImage VectorImage () = delete function ~VectorImage ~ VectorImage () = default function evaluate Vector evaluate ( Point p ) Returns a Vector (which can be normalized using v.Normalize() ). function iterator ImageIterator iterator () Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::VectorImage"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#shapeworksvectorimage","text":"Gradient (vector) image. #include ","title":"shapeworks::VectorImage"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#public-types","text":"Name using itk::GradientImageFilter< Image::ImageType > GradientImageFilter using itk::Image< Covariant, 3 > ImageType using itk::VectorLinearInterpolateImageFunction< ImageType, Image::PixelType > GradientInterpolatorType using itk::ImageRegionIterator< ImageType > ImageIterator","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#public-functions","text":"Name VectorImage (const Image & dt_img) Creates a gradient vector image of image (presumably a distance transform) VectorImage () =delete ~VectorImage () =default Vector evaluate (Point p) Returns a Vector (which can be normalized using v.Normalize() ). ImageIterator iterator ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#using-gradientimagefilter","text":"using shapeworks :: VectorImage :: GradientImageFilter = itk :: GradientImageFilter < Image :: ImageType > ;","title":"using GradientImageFilter"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#using-imagetype","text":"using shapeworks :: VectorImage :: ImageType = itk :: Image < Covariant , 3 > ;","title":"using ImageType"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#using-gradientinterpolatortype","text":"using shapeworks :: VectorImage :: GradientInterpolatorType = itk :: VectorLinearInterpolateImageFunction < ImageType , Image :: PixelType > ;","title":"using GradientInterpolatorType"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#using-imageiterator","text":"using shapeworks :: VectorImage :: ImageIterator = itk :: ImageRegionIterator < ImageType > ;","title":"using ImageIterator"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#function-vectorimage","text":"VectorImage ( const Image & dt_img ) Creates a gradient vector image of image (presumably a distance transform)","title":"function VectorImage"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#function-vectorimage_1","text":"VectorImage () = delete","title":"function VectorImage"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#function-vectorimage_2","text":"~ VectorImage () = default","title":"function ~VectorImage"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#function-evaluate","text":"Vector evaluate ( Point p ) Returns a Vector (which can be normalized using v.Normalize() ).","title":"function evaluate"},{"location":"api/Classes/classshapeworks_1_1VectorImage.html#function-iterator","text":"ImageIterator iterator () Updated on 2023-10-24 at 22:16:02 +0000","title":"function iterator"},{"location":"api/Classes/classshapeworks_1_1Viewer.html","text":"shapeworks::Viewer 3D Viewer More... #include Public Functions Name Viewer () ~Viewer () =default void set_renderer (vtkSmartPointer< vtkRenderer > renderer) vtkSmartPointer< vtkRenderer > get_renderer () void display_shape (std::shared_ptr< Shape > shape) void clear_viewer () void reset_camera (std::array< double, 3 > c) void reset_camera () void set_color_series ( ColorMap color_series) void set_glyph_size_and_quality (double size, double quality) double get_glyph_size () double get_glyph_quality () void set_session (QSharedPointer< Session > session) QSharedPointer< Session > get_session () void set_show_glyphs (bool show) void set_show_surface (bool show) void set_scale_arrows (bool scale) void update_points () void update_glyph_properties () int handle_pick (int * click_pos) PickResult handle_ctrl_click (int * click_pos) void set_selected_point (int id) void set_glyph_lut (vtkSmartPointer< vtkLookupTable > lut) void set_loading_screen (vtkSmartPointer< vtkImageData > loading_screen) void set_color_scheme (int i) void handle_new_mesh () bool is_viewer_ready () void set_visualizer ( Visualizer * visualizer) void update_feature_range (double * range) void update_opacities () std::shared_ptr< Shape > get_shape () void update_landmarks () void update_planes () void update_ffc_mode () std::vector< vtkSmartPointer< vtkActor > > get_surface_actors () std::vector< vtkSmartPointer< vtkActor > > get_unclipped_surface_actors () MeshGroup get_meshes () vtkSmartPointer< vtkTransform > get_transform (int alignment_domain, int domain) vtkSmartPointer< vtkTransform > get_landmark_transform (int domain) vtkSmartPointer< vtkTransform > get_inverse_landmark_transform (int domain) vtkSmartPointer< vtkTransform > get_image_transform () SliceView & slice_view () void update_image_volume () vtkSmartPointer< vtkPoints > get_glyph_points () vtkSmartPointer< vtkTransform > get_alignment_transform () void update_clipping_planes () vtkSmartPointer< vtkPolygonalSurfacePointPlacer > get_point_placer () void handle_ffc_paint (double display_pos[2], double world_pos[3]) void update_actors () void remove_scalar_bar () bool is_ready () vtkFloatArray * get_particle_scalars () vtkSmartPointer< vtkPolyData > get_particle_poly_data () void insert_compare_meshes () void set_scalar_visibility (vtkSmartPointer< vtkPolyData > poly_data, vtkSmartPointer< vtkPolyDataMapper > mapper, std::string scalar) bool is_reverse (vtkSmartPointer< vtkTransform > transform) Detailed Description class shapeworks :: Viewer ; 3D Viewer The Viewer class encapsulates all the functionality for visualizing a single subject/shape Public Functions Documentation function Viewer Viewer () function ~Viewer ~ Viewer () = default function set_renderer void set_renderer ( vtkSmartPointer < vtkRenderer > renderer ) function get_renderer vtkSmartPointer < vtkRenderer > get_renderer () function display_shape void display_shape ( std :: shared_ptr < Shape > shape ) function clear_viewer void clear_viewer () function reset_camera void reset_camera ( std :: array < double , 3 > c ) function reset_camera void reset_camera () function set_color_series void set_color_series ( ColorMap color_series ) function set_glyph_size_and_quality void set_glyph_size_and_quality ( double size , double quality ) function get_glyph_size double get_glyph_size () function get_glyph_quality double get_glyph_quality () function set_session void set_session ( QSharedPointer < Session > session ) function get_session QSharedPointer < Session > get_session () function set_show_glyphs void set_show_glyphs ( bool show ) function set_show_surface void set_show_surface ( bool show ) function set_scale_arrows void set_scale_arrows ( bool scale ) function update_points void update_points () function update_glyph_properties void update_glyph_properties () function handle_pick int handle_pick ( int * click_pos ) function handle_ctrl_click PickResult handle_ctrl_click ( int * click_pos ) function set_selected_point void set_selected_point ( int id ) function set_glyph_lut void set_glyph_lut ( vtkSmartPointer < vtkLookupTable > lut ) function set_loading_screen void set_loading_screen ( vtkSmartPointer < vtkImageData > loading_screen ) function set_color_scheme void set_color_scheme ( int i ) function handle_new_mesh void handle_new_mesh () function is_viewer_ready bool is_viewer_ready () function set_visualizer void set_visualizer ( Visualizer * visualizer ) function update_feature_range void update_feature_range ( double * range ) function update_opacities void update_opacities () function get_shape std :: shared_ptr < Shape > get_shape () function update_landmarks void update_landmarks () function update_planes void update_planes () function update_ffc_mode void update_ffc_mode () function get_surface_actors std :: vector < vtkSmartPointer < vtkActor > > get_surface_actors () function get_unclipped_surface_actors std :: vector < vtkSmartPointer < vtkActor > > get_unclipped_surface_actors () function get_meshes MeshGroup get_meshes () function get_transform vtkSmartPointer < vtkTransform > get_transform ( int alignment_domain , int domain ) function get_landmark_transform vtkSmartPointer < vtkTransform > get_landmark_transform ( int domain ) function get_inverse_landmark_transform vtkSmartPointer < vtkTransform > get_inverse_landmark_transform ( int domain ) function get_image_transform vtkSmartPointer < vtkTransform > get_image_transform () function slice_view SliceView & slice_view () function update_image_volume void update_image_volume () function get_glyph_points vtkSmartPointer < vtkPoints > get_glyph_points () function get_alignment_transform vtkSmartPointer < vtkTransform > get_alignment_transform () function update_clipping_planes void update_clipping_planes () function get_point_placer vtkSmartPointer < vtkPolygonalSurfacePointPlacer > get_point_placer () function handle_ffc_paint void handle_ffc_paint ( double display_pos [ 2 ], double world_pos [ 3 ] ) function update_actors void update_actors () function remove_scalar_bar void remove_scalar_bar () function is_ready inline bool is_ready () function get_particle_scalars vtkFloatArray * get_particle_scalars () function get_particle_poly_data vtkSmartPointer < vtkPolyData > get_particle_poly_data () function insert_compare_meshes void insert_compare_meshes () function set_scalar_visibility void set_scalar_visibility ( vtkSmartPointer < vtkPolyData > poly_data , vtkSmartPointer < vtkPolyDataMapper > mapper , std :: string scalar ) function is_reverse static bool is_reverse ( vtkSmartPointer < vtkTransform > transform ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Viewer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#shapeworksviewer","text":"3D Viewer More... #include ","title":"shapeworks::Viewer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#public-functions","text":"Name Viewer () ~Viewer () =default void set_renderer (vtkSmartPointer< vtkRenderer > renderer) vtkSmartPointer< vtkRenderer > get_renderer () void display_shape (std::shared_ptr< Shape > shape) void clear_viewer () void reset_camera (std::array< double, 3 > c) void reset_camera () void set_color_series ( ColorMap color_series) void set_glyph_size_and_quality (double size, double quality) double get_glyph_size () double get_glyph_quality () void set_session (QSharedPointer< Session > session) QSharedPointer< Session > get_session () void set_show_glyphs (bool show) void set_show_surface (bool show) void set_scale_arrows (bool scale) void update_points () void update_glyph_properties () int handle_pick (int * click_pos) PickResult handle_ctrl_click (int * click_pos) void set_selected_point (int id) void set_glyph_lut (vtkSmartPointer< vtkLookupTable > lut) void set_loading_screen (vtkSmartPointer< vtkImageData > loading_screen) void set_color_scheme (int i) void handle_new_mesh () bool is_viewer_ready () void set_visualizer ( Visualizer * visualizer) void update_feature_range (double * range) void update_opacities () std::shared_ptr< Shape > get_shape () void update_landmarks () void update_planes () void update_ffc_mode () std::vector< vtkSmartPointer< vtkActor > > get_surface_actors () std::vector< vtkSmartPointer< vtkActor > > get_unclipped_surface_actors () MeshGroup get_meshes () vtkSmartPointer< vtkTransform > get_transform (int alignment_domain, int domain) vtkSmartPointer< vtkTransform > get_landmark_transform (int domain) vtkSmartPointer< vtkTransform > get_inverse_landmark_transform (int domain) vtkSmartPointer< vtkTransform > get_image_transform () SliceView & slice_view () void update_image_volume () vtkSmartPointer< vtkPoints > get_glyph_points () vtkSmartPointer< vtkTransform > get_alignment_transform () void update_clipping_planes () vtkSmartPointer< vtkPolygonalSurfacePointPlacer > get_point_placer () void handle_ffc_paint (double display_pos[2], double world_pos[3]) void update_actors () void remove_scalar_bar () bool is_ready () vtkFloatArray * get_particle_scalars () vtkSmartPointer< vtkPolyData > get_particle_poly_data () void insert_compare_meshes () void set_scalar_visibility (vtkSmartPointer< vtkPolyData > poly_data, vtkSmartPointer< vtkPolyDataMapper > mapper, std::string scalar) bool is_reverse (vtkSmartPointer< vtkTransform > transform)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#detailed-description","text":"class shapeworks :: Viewer ; 3D Viewer The Viewer class encapsulates all the functionality for visualizing a single subject/shape","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-viewer","text":"Viewer ()","title":"function Viewer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-viewer_1","text":"~ Viewer () = default","title":"function ~Viewer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_renderer","text":"void set_renderer ( vtkSmartPointer < vtkRenderer > renderer )","title":"function set_renderer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_renderer","text":"vtkSmartPointer < vtkRenderer > get_renderer ()","title":"function get_renderer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-display_shape","text":"void display_shape ( std :: shared_ptr < Shape > shape )","title":"function display_shape"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-clear_viewer","text":"void clear_viewer ()","title":"function clear_viewer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-reset_camera","text":"void reset_camera ( std :: array < double , 3 > c )","title":"function reset_camera"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-reset_camera_1","text":"void reset_camera ()","title":"function reset_camera"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_color_series","text":"void set_color_series ( ColorMap color_series )","title":"function set_color_series"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_glyph_size_and_quality","text":"void set_glyph_size_and_quality ( double size , double quality )","title":"function set_glyph_size_and_quality"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_glyph_size","text":"double get_glyph_size ()","title":"function get_glyph_size"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_glyph_quality","text":"double get_glyph_quality ()","title":"function get_glyph_quality"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_session","text":"void set_session ( QSharedPointer < Session > session )","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_session","text":"QSharedPointer < Session > get_session ()","title":"function get_session"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_show_glyphs","text":"void set_show_glyphs ( bool show )","title":"function set_show_glyphs"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_show_surface","text":"void set_show_surface ( bool show )","title":"function set_show_surface"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_scale_arrows","text":"void set_scale_arrows ( bool scale )","title":"function set_scale_arrows"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_points","text":"void update_points ()","title":"function update_points"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_glyph_properties","text":"void update_glyph_properties ()","title":"function update_glyph_properties"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-handle_pick","text":"int handle_pick ( int * click_pos )","title":"function handle_pick"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-handle_ctrl_click","text":"PickResult handle_ctrl_click ( int * click_pos )","title":"function handle_ctrl_click"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_selected_point","text":"void set_selected_point ( int id )","title":"function set_selected_point"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_glyph_lut","text":"void set_glyph_lut ( vtkSmartPointer < vtkLookupTable > lut )","title":"function set_glyph_lut"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_loading_screen","text":"void set_loading_screen ( vtkSmartPointer < vtkImageData > loading_screen )","title":"function set_loading_screen"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_color_scheme","text":"void set_color_scheme ( int i )","title":"function set_color_scheme"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-handle_new_mesh","text":"void handle_new_mesh ()","title":"function handle_new_mesh"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-is_viewer_ready","text":"bool is_viewer_ready ()","title":"function is_viewer_ready"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_visualizer","text":"void set_visualizer ( Visualizer * visualizer )","title":"function set_visualizer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_feature_range","text":"void update_feature_range ( double * range )","title":"function update_feature_range"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_opacities","text":"void update_opacities ()","title":"function update_opacities"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_shape","text":"std :: shared_ptr < Shape > get_shape ()","title":"function get_shape"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_landmarks","text":"void update_landmarks ()","title":"function update_landmarks"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_planes","text":"void update_planes ()","title":"function update_planes"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_ffc_mode","text":"void update_ffc_mode ()","title":"function update_ffc_mode"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_surface_actors","text":"std :: vector < vtkSmartPointer < vtkActor > > get_surface_actors ()","title":"function get_surface_actors"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_unclipped_surface_actors","text":"std :: vector < vtkSmartPointer < vtkActor > > get_unclipped_surface_actors ()","title":"function get_unclipped_surface_actors"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_meshes","text":"MeshGroup get_meshes ()","title":"function get_meshes"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_transform","text":"vtkSmartPointer < vtkTransform > get_transform ( int alignment_domain , int domain )","title":"function get_transform"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_landmark_transform","text":"vtkSmartPointer < vtkTransform > get_landmark_transform ( int domain )","title":"function get_landmark_transform"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_inverse_landmark_transform","text":"vtkSmartPointer < vtkTransform > get_inverse_landmark_transform ( int domain )","title":"function get_inverse_landmark_transform"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_image_transform","text":"vtkSmartPointer < vtkTransform > get_image_transform ()","title":"function get_image_transform"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-slice_view","text":"SliceView & slice_view ()","title":"function slice_view"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_image_volume","text":"void update_image_volume ()","title":"function update_image_volume"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_glyph_points","text":"vtkSmartPointer < vtkPoints > get_glyph_points ()","title":"function get_glyph_points"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_alignment_transform","text":"vtkSmartPointer < vtkTransform > get_alignment_transform ()","title":"function get_alignment_transform"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_clipping_planes","text":"void update_clipping_planes ()","title":"function update_clipping_planes"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_point_placer","text":"vtkSmartPointer < vtkPolygonalSurfacePointPlacer > get_point_placer ()","title":"function get_point_placer"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-handle_ffc_paint","text":"void handle_ffc_paint ( double display_pos [ 2 ], double world_pos [ 3 ] )","title":"function handle_ffc_paint"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-update_actors","text":"void update_actors ()","title":"function update_actors"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-remove_scalar_bar","text":"void remove_scalar_bar ()","title":"function remove_scalar_bar"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-is_ready","text":"inline bool is_ready ()","title":"function is_ready"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_particle_scalars","text":"vtkFloatArray * get_particle_scalars ()","title":"function get_particle_scalars"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-get_particle_poly_data","text":"vtkSmartPointer < vtkPolyData > get_particle_poly_data ()","title":"function get_particle_poly_data"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-insert_compare_meshes","text":"void insert_compare_meshes ()","title":"function insert_compare_meshes"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-set_scalar_visibility","text":"void set_scalar_visibility ( vtkSmartPointer < vtkPolyData > poly_data , vtkSmartPointer < vtkPolyDataMapper > mapper , std :: string scalar )","title":"function set_scalar_visibility"},{"location":"api/Classes/classshapeworks_1_1Viewer.html#function-is_reverse","text":"static bool is_reverse ( vtkSmartPointer < vtkTransform > transform ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function is_reverse"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html","text":"shapeworks::Visualizer Controls display of objects in viewers. More... #include Inherits from QObject Public Slots Name void update_viewer_properties () update viewer properties (e.g. glyph size, quality, etc) void handle_feature_range_changed () void handle_image_slice_settings_changed () Public Functions Name Visualizer ( Preferences & prefs) ~Visualizer () void set_lightbox (LightboxHandle lightbox) set the lightbox void set_session (SessionHandle session) set the session void set_center (bool center) turn automatic centering on/off bool get_center () get centering on/off void set_alignment_domain (int domain) set the alignment domain int get_alignment_domain () get the current alignment domain void set_show_glyphs (bool show) turn on/off glyph display void set_show_surface (bool show) turn on/off surface display void display_samples () update the display using the current settings void update_samples () void update_landmarks () void update_planes () void update_ffc_mode () void display_sample (int i) void display_shape (ShapeHandle shape) void display_shapes (ShapeList shapes) void set_selected_point_one (int id) void set_selected_point_two (int id) void set_mean (const Eigen::VectorXd & mean) void set_mean_shape (ShapeHandle mean_shape) ShapeHandle get_mean_shape () void reset_camera () void update_lut () Particles get_current_shape () vtkFloatArray * get_current_particle_scalars () vtkSmartPointer< vtkPolyData > get_current_particle_poly_data () void handle_new_mesh () vtkSmartPointer< vtkPolyData > get_current_mesh (int index) std::vector< vtkSmartPointer< vtkPolyData > > get_current_meshes_transformed (int index) const std::string & get_feature_map () const Get the currently selected feature map. void set_uniform_feature_range (bool value) Set if we are using a uniform feature range. bool get_uniform_feature_range (void ) Return if we are using a uniform feature range. void set_feature_map (const std::string & feature_map) Set the currently selected feature map. void clear_viewers () clear out the viewers void reset_feature_range () Reset the feature range (e.g. for a new feature) double * get_feature_range () Get the current feature range. double * get_feature_raw_range () Get the current raw feature range. bool get_feature_range_valid () Return if the feature range is valid or not. void update_feature_range (double * range) Update the feature range with a given range. void update_feature_range (double min, double max) Update the feature range with a given range. vtkSmartPointer< vtkTransform > get_transform (std::shared_ptr< Shape > shape, int alignment_domain, int domain) Request the transform for a given shape and domain. vtkSmartPointer< vtkTransform > get_transform (std::shared_ptr< Shape > shape, DisplayMode display_mode, int alignment_domain, int domain) Request the transform for a given shape and domain and display mode. void set_opacities (std::vector< float > opacities) Set domain opacities. std::vector< float > get_opacities () Get domain opacities. void set_domain_particle_visibilities (std::vector< bool > visibilities) Set the per-domain particle visibilities. std::vector< bool > get_domain_particle_visibilities () Get the per-domain particle visibilities. double get_current_glyph_size () Get the current glyph size. void handle_ctrl_click ( PickResult result) Handle ctrl click. void redraw () Redraw renderers. QPixmap export_to_pixmap (QSize size, bool transparent_background, bool show_orientation_marker, bool show_color_scale, bool & ready) Export render window to pixmap. QSize get_render_size () Return render window size. Detailed Description class shapeworks :: Visualizer ; Controls display of objects in viewers. The Visualizer class maintains state and control over viewer properties. Additionally, it performs all shape-based statistical functions. Public Slots Documentation slot update_viewer_properties void update_viewer_properties () update viewer properties (e.g. glyph size, quality, etc) slot handle_feature_range_changed void handle_feature_range_changed () slot handle_image_slice_settings_changed void handle_image_slice_settings_changed () Public Functions Documentation function Visualizer Visualizer ( Preferences & prefs ) function ~Visualizer ~ Visualizer () function set_lightbox void set_lightbox ( LightboxHandle lightbox ) set the lightbox function set_session void set_session ( SessionHandle session ) set the session function set_center void set_center ( bool center ) turn automatic centering on/off function get_center bool get_center () get centering on/off function set_alignment_domain void set_alignment_domain ( int domain ) set the alignment domain function get_alignment_domain int get_alignment_domain () get the current alignment domain function set_show_glyphs void set_show_glyphs ( bool show ) turn on/off glyph display function set_show_surface void set_show_surface ( bool show ) turn on/off surface display function display_samples void display_samples () update the display using the current settings function update_samples void update_samples () function update_landmarks void update_landmarks () function update_planes void update_planes () function update_ffc_mode void update_ffc_mode () function display_sample void display_sample ( int i ) function display_shape void display_shape ( ShapeHandle shape ) function display_shapes void display_shapes ( ShapeList shapes ) function set_selected_point_one void set_selected_point_one ( int id ) function set_selected_point_two void set_selected_point_two ( int id ) function set_mean void set_mean ( const Eigen :: VectorXd & mean ) function set_mean_shape void set_mean_shape ( ShapeHandle mean_shape ) function get_mean_shape ShapeHandle get_mean_shape () function reset_camera void reset_camera () function update_lut void update_lut () function get_current_shape Particles get_current_shape () function get_current_particle_scalars vtkFloatArray * get_current_particle_scalars () function get_current_particle_poly_data vtkSmartPointer < vtkPolyData > get_current_particle_poly_data () function handle_new_mesh void handle_new_mesh () function get_current_mesh vtkSmartPointer < vtkPolyData > get_current_mesh ( int index ) function get_current_meshes_transformed std :: vector < vtkSmartPointer < vtkPolyData > > get_current_meshes_transformed ( int index ) function get_feature_map const std :: string & get_feature_map () const Get the currently selected feature map. function set_uniform_feature_range void set_uniform_feature_range ( bool value ) Set if we are using a uniform feature range. function get_uniform_feature_range bool get_uniform_feature_range ( void ) Return if we are using a uniform feature range. function set_feature_map void set_feature_map ( const std :: string & feature_map ) Set the currently selected feature map. function clear_viewers void clear_viewers () clear out the viewers function reset_feature_range void reset_feature_range () Reset the feature range (e.g. for a new feature) function get_feature_range double * get_feature_range () Get the current feature range. function get_feature_raw_range double * get_feature_raw_range () Get the current raw feature range. function get_feature_range_valid bool get_feature_range_valid () Return if the feature range is valid or not. function update_feature_range void update_feature_range ( double * range ) Update the feature range with a given range. function update_feature_range void update_feature_range ( double min , double max ) Update the feature range with a given range. function get_transform vtkSmartPointer < vtkTransform > get_transform ( std :: shared_ptr < Shape > shape , int alignment_domain , int domain ) Request the transform for a given shape and domain. function get_transform vtkSmartPointer < vtkTransform > get_transform ( std :: shared_ptr < Shape > shape , DisplayMode display_mode , int alignment_domain , int domain ) Request the transform for a given shape and domain and display mode. function set_opacities void set_opacities ( std :: vector < float > opacities ) Set domain opacities. function get_opacities std :: vector < float > get_opacities () Get domain opacities. function set_domain_particle_visibilities void set_domain_particle_visibilities ( std :: vector < bool > visibilities ) Set the per-domain particle visibilities. function get_domain_particle_visibilities std :: vector < bool > get_domain_particle_visibilities () Get the per-domain particle visibilities. function get_current_glyph_size double get_current_glyph_size () Get the current glyph size. function handle_ctrl_click void handle_ctrl_click ( PickResult result ) Handle ctrl click. function redraw void redraw () Redraw renderers. function export_to_pixmap QPixmap export_to_pixmap ( QSize size , bool transparent_background , bool show_orientation_marker , bool show_color_scale , bool & ready ) Export render window to pixmap. function get_render_size QSize get_render_size () Return render window size. Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Visualizer"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#shapeworksvisualizer","text":"Controls display of objects in viewers. More... #include Inherits from QObject","title":"shapeworks::Visualizer"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#public-slots","text":"Name void update_viewer_properties () update viewer properties (e.g. glyph size, quality, etc) void handle_feature_range_changed () void handle_image_slice_settings_changed ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#public-functions","text":"Name Visualizer ( Preferences & prefs) ~Visualizer () void set_lightbox (LightboxHandle lightbox) set the lightbox void set_session (SessionHandle session) set the session void set_center (bool center) turn automatic centering on/off bool get_center () get centering on/off void set_alignment_domain (int domain) set the alignment domain int get_alignment_domain () get the current alignment domain void set_show_glyphs (bool show) turn on/off glyph display void set_show_surface (bool show) turn on/off surface display void display_samples () update the display using the current settings void update_samples () void update_landmarks () void update_planes () void update_ffc_mode () void display_sample (int i) void display_shape (ShapeHandle shape) void display_shapes (ShapeList shapes) void set_selected_point_one (int id) void set_selected_point_two (int id) void set_mean (const Eigen::VectorXd & mean) void set_mean_shape (ShapeHandle mean_shape) ShapeHandle get_mean_shape () void reset_camera () void update_lut () Particles get_current_shape () vtkFloatArray * get_current_particle_scalars () vtkSmartPointer< vtkPolyData > get_current_particle_poly_data () void handle_new_mesh () vtkSmartPointer< vtkPolyData > get_current_mesh (int index) std::vector< vtkSmartPointer< vtkPolyData > > get_current_meshes_transformed (int index) const std::string & get_feature_map () const Get the currently selected feature map. void set_uniform_feature_range (bool value) Set if we are using a uniform feature range. bool get_uniform_feature_range (void ) Return if we are using a uniform feature range. void set_feature_map (const std::string & feature_map) Set the currently selected feature map. void clear_viewers () clear out the viewers void reset_feature_range () Reset the feature range (e.g. for a new feature) double * get_feature_range () Get the current feature range. double * get_feature_raw_range () Get the current raw feature range. bool get_feature_range_valid () Return if the feature range is valid or not. void update_feature_range (double * range) Update the feature range with a given range. void update_feature_range (double min, double max) Update the feature range with a given range. vtkSmartPointer< vtkTransform > get_transform (std::shared_ptr< Shape > shape, int alignment_domain, int domain) Request the transform for a given shape and domain. vtkSmartPointer< vtkTransform > get_transform (std::shared_ptr< Shape > shape, DisplayMode display_mode, int alignment_domain, int domain) Request the transform for a given shape and domain and display mode. void set_opacities (std::vector< float > opacities) Set domain opacities. std::vector< float > get_opacities () Get domain opacities. void set_domain_particle_visibilities (std::vector< bool > visibilities) Set the per-domain particle visibilities. std::vector< bool > get_domain_particle_visibilities () Get the per-domain particle visibilities. double get_current_glyph_size () Get the current glyph size. void handle_ctrl_click ( PickResult result) Handle ctrl click. void redraw () Redraw renderers. QPixmap export_to_pixmap (QSize size, bool transparent_background, bool show_orientation_marker, bool show_color_scale, bool & ready) Export render window to pixmap. QSize get_render_size () Return render window size.","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#detailed-description","text":"class shapeworks :: Visualizer ; Controls display of objects in viewers. The Visualizer class maintains state and control over viewer properties. Additionally, it performs all shape-based statistical functions.","title":"Detailed Description"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#slot-update_viewer_properties","text":"void update_viewer_properties () update viewer properties (e.g. glyph size, quality, etc)","title":"slot update_viewer_properties"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#slot-handle_feature_range_changed","text":"void handle_feature_range_changed ()","title":"slot handle_feature_range_changed"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#slot-handle_image_slice_settings_changed","text":"void handle_image_slice_settings_changed ()","title":"slot handle_image_slice_settings_changed"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-visualizer","text":"Visualizer ( Preferences & prefs )","title":"function Visualizer"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-visualizer_1","text":"~ Visualizer ()","title":"function ~Visualizer"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_lightbox","text":"void set_lightbox ( LightboxHandle lightbox ) set the lightbox","title":"function set_lightbox"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_session","text":"void set_session ( SessionHandle session ) set the session","title":"function set_session"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_center","text":"void set_center ( bool center ) turn automatic centering on/off","title":"function set_center"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_center","text":"bool get_center () get centering on/off","title":"function get_center"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_alignment_domain","text":"void set_alignment_domain ( int domain ) set the alignment domain","title":"function set_alignment_domain"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_alignment_domain","text":"int get_alignment_domain () get the current alignment domain","title":"function get_alignment_domain"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_show_glyphs","text":"void set_show_glyphs ( bool show ) turn on/off glyph display","title":"function set_show_glyphs"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_show_surface","text":"void set_show_surface ( bool show ) turn on/off surface display","title":"function set_show_surface"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-display_samples","text":"void display_samples () update the display using the current settings","title":"function display_samples"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-update_samples","text":"void update_samples ()","title":"function update_samples"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-update_landmarks","text":"void update_landmarks ()","title":"function update_landmarks"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-update_planes","text":"void update_planes ()","title":"function update_planes"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-update_ffc_mode","text":"void update_ffc_mode ()","title":"function update_ffc_mode"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-display_sample","text":"void display_sample ( int i )","title":"function display_sample"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-display_shape","text":"void display_shape ( ShapeHandle shape )","title":"function display_shape"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-display_shapes","text":"void display_shapes ( ShapeList shapes )","title":"function display_shapes"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_selected_point_one","text":"void set_selected_point_one ( int id )","title":"function set_selected_point_one"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_selected_point_two","text":"void set_selected_point_two ( int id )","title":"function set_selected_point_two"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_mean","text":"void set_mean ( const Eigen :: VectorXd & mean )","title":"function set_mean"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_mean_shape","text":"void set_mean_shape ( ShapeHandle mean_shape )","title":"function set_mean_shape"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_mean_shape","text":"ShapeHandle get_mean_shape ()","title":"function get_mean_shape"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-reset_camera","text":"void reset_camera ()","title":"function reset_camera"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-update_lut","text":"void update_lut ()","title":"function update_lut"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_current_shape","text":"Particles get_current_shape ()","title":"function get_current_shape"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_current_particle_scalars","text":"vtkFloatArray * get_current_particle_scalars ()","title":"function get_current_particle_scalars"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_current_particle_poly_data","text":"vtkSmartPointer < vtkPolyData > get_current_particle_poly_data ()","title":"function get_current_particle_poly_data"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-handle_new_mesh","text":"void handle_new_mesh ()","title":"function handle_new_mesh"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_current_mesh","text":"vtkSmartPointer < vtkPolyData > get_current_mesh ( int index )","title":"function get_current_mesh"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_current_meshes_transformed","text":"std :: vector < vtkSmartPointer < vtkPolyData > > get_current_meshes_transformed ( int index )","title":"function get_current_meshes_transformed"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_feature_map","text":"const std :: string & get_feature_map () const Get the currently selected feature map.","title":"function get_feature_map"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_uniform_feature_range","text":"void set_uniform_feature_range ( bool value ) Set if we are using a uniform feature range.","title":"function set_uniform_feature_range"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_uniform_feature_range","text":"bool get_uniform_feature_range ( void ) Return if we are using a uniform feature range.","title":"function get_uniform_feature_range"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_feature_map","text":"void set_feature_map ( const std :: string & feature_map ) Set the currently selected feature map.","title":"function set_feature_map"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-clear_viewers","text":"void clear_viewers () clear out the viewers","title":"function clear_viewers"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-reset_feature_range","text":"void reset_feature_range () Reset the feature range (e.g. for a new feature)","title":"function reset_feature_range"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_feature_range","text":"double * get_feature_range () Get the current feature range.","title":"function get_feature_range"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_feature_raw_range","text":"double * get_feature_raw_range () Get the current raw feature range.","title":"function get_feature_raw_range"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_feature_range_valid","text":"bool get_feature_range_valid () Return if the feature range is valid or not.","title":"function get_feature_range_valid"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-update_feature_range","text":"void update_feature_range ( double * range ) Update the feature range with a given range.","title":"function update_feature_range"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-update_feature_range_1","text":"void update_feature_range ( double min , double max ) Update the feature range with a given range.","title":"function update_feature_range"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_transform","text":"vtkSmartPointer < vtkTransform > get_transform ( std :: shared_ptr < Shape > shape , int alignment_domain , int domain ) Request the transform for a given shape and domain.","title":"function get_transform"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_transform_1","text":"vtkSmartPointer < vtkTransform > get_transform ( std :: shared_ptr < Shape > shape , DisplayMode display_mode , int alignment_domain , int domain ) Request the transform for a given shape and domain and display mode.","title":"function get_transform"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_opacities","text":"void set_opacities ( std :: vector < float > opacities ) Set domain opacities.","title":"function set_opacities"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_opacities","text":"std :: vector < float > get_opacities () Get domain opacities.","title":"function get_opacities"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-set_domain_particle_visibilities","text":"void set_domain_particle_visibilities ( std :: vector < bool > visibilities ) Set the per-domain particle visibilities.","title":"function set_domain_particle_visibilities"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_domain_particle_visibilities","text":"std :: vector < bool > get_domain_particle_visibilities () Get the per-domain particle visibilities.","title":"function get_domain_particle_visibilities"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_current_glyph_size","text":"double get_current_glyph_size () Get the current glyph size.","title":"function get_current_glyph_size"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-handle_ctrl_click","text":"void handle_ctrl_click ( PickResult result ) Handle ctrl click.","title":"function handle_ctrl_click"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-redraw","text":"void redraw () Redraw renderers.","title":"function redraw"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-export_to_pixmap","text":"QPixmap export_to_pixmap ( QSize size , bool transparent_background , bool show_orientation_marker , bool show_color_scale , bool & ready ) Export render window to pixmap.","title":"function export_to_pixmap"},{"location":"api/Classes/classshapeworks_1_1Visualizer.html#function-get_render_size","text":"QSize get_render_size () Return render window size. Updated on 2023-10-24 at 22:16:02 +0000","title":"function get_render_size"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html","text":"shapeworks::VtkMeshWrapper Inherits from shapeworks::MeshWrapper Public Types Name using MeshWrapper::PointType PointType using MeshWrapper::GradNType GradNType using vnl_vector_fixed< float, DIMENSION > NormalType using vnl_vector_fixed< double, DIMENSION > VectorType Public Functions Name VtkMeshWrapper (vtkSmartPointer< vtkPolyData > mesh, bool geodesics_enabled =false, size_t geodesics_cache_multiplier_size =0) ~VtkMeshWrapper () =default double ComputeDistance (const PointType & pointa, int idxa, const PointType & pointb, int idxb, VectorType * out_grad =nullptr) const override virtual bool IsWithinDistance (const PointType & pointa, int idxa, const PointType & pointb, int idxb, double test_dist, double & dist) const override virtual PointType GeodesicWalk (PointType p, int idx, VectorType vector) const override virtual VectorType ProjectVectorToSurfaceTangent (const PointType & pointa, int idx, VectorType & vector) const override virtual NormalType SampleNormalAtPoint (PointType p, int idx =-1) const override virtual GradNType SampleGradNAtPoint (PointType p, int idx) const override virtual PointType SnapToMesh (PointType pointa, int idx) const override virtual PointType GetPointOnMesh () const override virtual const PointType & GetMeshLowerBound () const override virtual const PointType & GetMeshUpperBound () const override virtual void InvalidateParticle (int idx) override virtual vtkSmartPointer< vtkPolyData > GetPolydata () const override Public Types Documentation using PointType using shapeworks :: VtkMeshWrapper :: PointType = MeshWrapper :: PointType ; using GradNType using shapeworks :: VtkMeshWrapper :: GradNType = MeshWrapper :: GradNType ; using NormalType using shapeworks :: VtkMeshWrapper :: NormalType = vnl_vector_fixed < float , DIMENSION > ; using VectorType using shapeworks :: VtkMeshWrapper :: VectorType = vnl_vector_fixed < double , DIMENSION > ; Public Functions Documentation function VtkMeshWrapper explicit VtkMeshWrapper ( vtkSmartPointer < vtkPolyData > mesh , bool geodesics_enabled = false , size_t geodesics_cache_multiplier_size = 0 ) function ~VtkMeshWrapper ~ VtkMeshWrapper () = default function ComputeDistance double ComputeDistance ( const PointType & pointa , int idxa , const PointType & pointb , int idxb , VectorType * out_grad = nullptr ) const override function IsWithinDistance virtual bool IsWithinDistance ( const PointType & pointa , int idxa , const PointType & pointb , int idxb , double test_dist , double & dist ) const override Reimplements : shapeworks::MeshWrapper::IsWithinDistance function GeodesicWalk virtual PointType GeodesicWalk ( PointType p , int idx , VectorType vector ) const override Reimplements : shapeworks::MeshWrapper::GeodesicWalk function ProjectVectorToSurfaceTangent virtual VectorType ProjectVectorToSurfaceTangent ( const PointType & pointa , int idx , VectorType & vector ) const override Reimplements : shapeworks::MeshWrapper::ProjectVectorToSurfaceTangent function SampleNormalAtPoint virtual NormalType SampleNormalAtPoint ( PointType p , int idx = -1 ) const override Reimplements : shapeworks::MeshWrapper::SampleNormalAtPoint function SampleGradNAtPoint virtual GradNType SampleGradNAtPoint ( PointType p , int idx ) const override Reimplements : shapeworks::MeshWrapper::SampleGradNAtPoint function SnapToMesh virtual PointType SnapToMesh ( PointType pointa , int idx ) const override Reimplements : shapeworks::MeshWrapper::SnapToMesh function GetPointOnMesh virtual PointType GetPointOnMesh () const override Reimplements : shapeworks::MeshWrapper::GetPointOnMesh function GetMeshLowerBound inline virtual const PointType & GetMeshLowerBound () const override Reimplements : shapeworks::MeshWrapper::GetMeshLowerBound function GetMeshUpperBound inline virtual const PointType & GetMeshUpperBound () const override Reimplements : shapeworks::MeshWrapper::GetMeshUpperBound function InvalidateParticle virtual void InvalidateParticle ( int idx ) override Reimplements : shapeworks::MeshWrapper::InvalidateParticle function GetPolydata inline virtual vtkSmartPointer < vtkPolyData > GetPolydata () const override Reimplements : shapeworks::MeshWrapper::GetPolydata Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::VtkMeshWrapper"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#shapeworksvtkmeshwrapper","text":"Inherits from shapeworks::MeshWrapper","title":"shapeworks::VtkMeshWrapper"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#public-types","text":"Name using MeshWrapper::PointType PointType using MeshWrapper::GradNType GradNType using vnl_vector_fixed< float, DIMENSION > NormalType using vnl_vector_fixed< double, DIMENSION > VectorType","title":"Public Types"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#public-functions","text":"Name VtkMeshWrapper (vtkSmartPointer< vtkPolyData > mesh, bool geodesics_enabled =false, size_t geodesics_cache_multiplier_size =0) ~VtkMeshWrapper () =default double ComputeDistance (const PointType & pointa, int idxa, const PointType & pointb, int idxb, VectorType * out_grad =nullptr) const override virtual bool IsWithinDistance (const PointType & pointa, int idxa, const PointType & pointb, int idxb, double test_dist, double & dist) const override virtual PointType GeodesicWalk (PointType p, int idx, VectorType vector) const override virtual VectorType ProjectVectorToSurfaceTangent (const PointType & pointa, int idx, VectorType & vector) const override virtual NormalType SampleNormalAtPoint (PointType p, int idx =-1) const override virtual GradNType SampleGradNAtPoint (PointType p, int idx) const override virtual PointType SnapToMesh (PointType pointa, int idx) const override virtual PointType GetPointOnMesh () const override virtual const PointType & GetMeshLowerBound () const override virtual const PointType & GetMeshUpperBound () const override virtual void InvalidateParticle (int idx) override virtual vtkSmartPointer< vtkPolyData > GetPolydata () const override","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#using-pointtype","text":"using shapeworks :: VtkMeshWrapper :: PointType = MeshWrapper :: PointType ;","title":"using PointType"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#using-gradntype","text":"using shapeworks :: VtkMeshWrapper :: GradNType = MeshWrapper :: GradNType ;","title":"using GradNType"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#using-normaltype","text":"using shapeworks :: VtkMeshWrapper :: NormalType = vnl_vector_fixed < float , DIMENSION > ;","title":"using NormalType"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#using-vectortype","text":"using shapeworks :: VtkMeshWrapper :: VectorType = vnl_vector_fixed < double , DIMENSION > ;","title":"using VectorType"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-vtkmeshwrapper","text":"explicit VtkMeshWrapper ( vtkSmartPointer < vtkPolyData > mesh , bool geodesics_enabled = false , size_t geodesics_cache_multiplier_size = 0 )","title":"function VtkMeshWrapper"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-vtkmeshwrapper_1","text":"~ VtkMeshWrapper () = default","title":"function ~VtkMeshWrapper"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-computedistance","text":"double ComputeDistance ( const PointType & pointa , int idxa , const PointType & pointb , int idxb , VectorType * out_grad = nullptr ) const override","title":"function ComputeDistance"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-iswithindistance","text":"virtual bool IsWithinDistance ( const PointType & pointa , int idxa , const PointType & pointb , int idxb , double test_dist , double & dist ) const override Reimplements : shapeworks::MeshWrapper::IsWithinDistance","title":"function IsWithinDistance"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-geodesicwalk","text":"virtual PointType GeodesicWalk ( PointType p , int idx , VectorType vector ) const override Reimplements : shapeworks::MeshWrapper::GeodesicWalk","title":"function GeodesicWalk"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-projectvectortosurfacetangent","text":"virtual VectorType ProjectVectorToSurfaceTangent ( const PointType & pointa , int idx , VectorType & vector ) const override Reimplements : shapeworks::MeshWrapper::ProjectVectorToSurfaceTangent","title":"function ProjectVectorToSurfaceTangent"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-samplenormalatpoint","text":"virtual NormalType SampleNormalAtPoint ( PointType p , int idx = -1 ) const override Reimplements : shapeworks::MeshWrapper::SampleNormalAtPoint","title":"function SampleNormalAtPoint"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-samplegradnatpoint","text":"virtual GradNType SampleGradNAtPoint ( PointType p , int idx ) const override Reimplements : shapeworks::MeshWrapper::SampleGradNAtPoint","title":"function SampleGradNAtPoint"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-snaptomesh","text":"virtual PointType SnapToMesh ( PointType pointa , int idx ) const override Reimplements : shapeworks::MeshWrapper::SnapToMesh","title":"function SnapToMesh"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-getpointonmesh","text":"virtual PointType GetPointOnMesh () const override Reimplements : shapeworks::MeshWrapper::GetPointOnMesh","title":"function GetPointOnMesh"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-getmeshlowerbound","text":"inline virtual const PointType & GetMeshLowerBound () const override Reimplements : shapeworks::MeshWrapper::GetMeshLowerBound","title":"function GetMeshLowerBound"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-getmeshupperbound","text":"inline virtual const PointType & GetMeshUpperBound () const override Reimplements : shapeworks::MeshWrapper::GetMeshUpperBound","title":"function GetMeshUpperBound"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-invalidateparticle","text":"virtual void InvalidateParticle ( int idx ) override Reimplements : shapeworks::MeshWrapper::InvalidateParticle","title":"function InvalidateParticle"},{"location":"api/Classes/classshapeworks_1_1VtkMeshWrapper.html#function-getpolydata","text":"inline virtual vtkSmartPointer < vtkPolyData > GetPolydata () const override Reimplements : shapeworks::MeshWrapper::GetPolydata Updated on 2023-10-24 at 22:16:02 +0000","title":"function GetPolydata"},{"location":"api/Classes/classshapeworks_1_1WheelEventForwarder.html","text":"shapeworks::WheelEventForwarder Inherits from QObject Public Functions Name WheelEventForwarder (QScrollBar * target) ~WheelEventForwarder () bool eventFilter (QObject * obj, QEvent * event) Public Functions Documentation function WheelEventForwarder explicit WheelEventForwarder ( QScrollBar * target ) function ~WheelEventForwarder ~ WheelEventForwarder () function eventFilter bool eventFilter ( QObject * obj , QEvent * event ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::WheelEventForwarder"},{"location":"api/Classes/classshapeworks_1_1WheelEventForwarder.html#shapeworkswheeleventforwarder","text":"Inherits from QObject","title":"shapeworks::WheelEventForwarder"},{"location":"api/Classes/classshapeworks_1_1WheelEventForwarder.html#public-functions","text":"Name WheelEventForwarder (QScrollBar * target) ~WheelEventForwarder () bool eventFilter (QObject * obj, QEvent * event)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1WheelEventForwarder.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1WheelEventForwarder.html#function-wheeleventforwarder","text":"explicit WheelEventForwarder ( QScrollBar * target )","title":"function WheelEventForwarder"},{"location":"api/Classes/classshapeworks_1_1WheelEventForwarder.html#function-wheeleventforwarder_1","text":"~ WheelEventForwarder ()","title":"function ~WheelEventForwarder"},{"location":"api/Classes/classshapeworks_1_1WheelEventForwarder.html#function-eventfilter","text":"bool eventFilter ( QObject * obj , QEvent * event ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function eventFilter"},{"location":"api/Classes/classshapeworks_1_1Worker.html","text":"shapeworks::Worker Inherits from QObject Public Slots Name void process () Public Signals Name void error_message (QString ) void warning_message (QString ) void status_message (QString ) void progress (int ) void finished () Public Functions Name Worker () ~Worker () void run_job (QSharedPointer< Job > job) Worker * create_worker () Public Slots Documentation slot process void process () Public Signals Documentation signal error_message void error_message ( QString ) signal warning_message void warning_message ( QString ) signal status_message void status_message ( QString ) signal progress void progress ( int ) signal finished void finished () Public Functions Documentation function Worker Worker () function ~Worker ~ Worker () function run_job void run_job ( QSharedPointer < Job > job ) function create_worker static Worker * create_worker () Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Worker"},{"location":"api/Classes/classshapeworks_1_1Worker.html#shapeworksworker","text":"Inherits from QObject","title":"shapeworks::Worker"},{"location":"api/Classes/classshapeworks_1_1Worker.html#public-slots","text":"Name void process ()","title":"Public Slots"},{"location":"api/Classes/classshapeworks_1_1Worker.html#public-signals","text":"Name void error_message (QString ) void warning_message (QString ) void status_message (QString ) void progress (int ) void finished ()","title":"Public Signals"},{"location":"api/Classes/classshapeworks_1_1Worker.html#public-functions","text":"Name Worker () ~Worker () void run_job (QSharedPointer< Job > job) Worker * create_worker ()","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1Worker.html#public-slots-documentation","text":"","title":"Public Slots Documentation"},{"location":"api/Classes/classshapeworks_1_1Worker.html#slot-process","text":"void process ()","title":"slot process"},{"location":"api/Classes/classshapeworks_1_1Worker.html#public-signals-documentation","text":"","title":"Public Signals Documentation"},{"location":"api/Classes/classshapeworks_1_1Worker.html#signal-error_message","text":"void error_message ( QString )","title":"signal error_message"},{"location":"api/Classes/classshapeworks_1_1Worker.html#signal-warning_message","text":"void warning_message ( QString )","title":"signal warning_message"},{"location":"api/Classes/classshapeworks_1_1Worker.html#signal-status_message","text":"void status_message ( QString )","title":"signal status_message"},{"location":"api/Classes/classshapeworks_1_1Worker.html#signal-progress","text":"void progress ( int )","title":"signal progress"},{"location":"api/Classes/classshapeworks_1_1Worker.html#signal-finished","text":"void finished ()","title":"signal finished"},{"location":"api/Classes/classshapeworks_1_1Worker.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1Worker.html#function-worker","text":"Worker ()","title":"function Worker"},{"location":"api/Classes/classshapeworks_1_1Worker.html#function-worker_1","text":"~ Worker ()","title":"function ~Worker"},{"location":"api/Classes/classshapeworks_1_1Worker.html#function-run_job","text":"void run_job ( QSharedPointer < Job > job )","title":"function run_job"},{"location":"api/Classes/classshapeworks_1_1Worker.html#function-create_worker","text":"static Worker * create_worker () Updated on 2023-10-24 at 22:16:02 +0000","title":"function create_worker"},{"location":"api/Classes/classshapeworks_1_1shapeworks__exception.html","text":"shapeworks::shapeworks_exception Inherits from std::runtime_error Public Functions Name shapeworks_exception (char const *const message) shapeworks_exception (std::string const & message) Public Functions Documentation function shapeworks_exception shapeworks_exception ( char const * const message ) function shapeworks_exception shapeworks_exception ( std :: string const & message ) Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::shapeworks_exception"},{"location":"api/Classes/classshapeworks_1_1shapeworks__exception.html#shapeworksshapeworks_exception","text":"Inherits from std::runtime_error","title":"shapeworks::shapeworks_exception"},{"location":"api/Classes/classshapeworks_1_1shapeworks__exception.html#public-functions","text":"Name shapeworks_exception (char const *const message) shapeworks_exception (std::string const & message)","title":"Public Functions"},{"location":"api/Classes/classshapeworks_1_1shapeworks__exception.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classshapeworks_1_1shapeworks__exception.html#function-shapeworks_exception","text":"shapeworks_exception ( char const * const message )","title":"function shapeworks_exception"},{"location":"api/Classes/classshapeworks_1_1shapeworks__exception.html#function-shapeworks_exception_1","text":"shapeworks_exception ( std :: string const & message ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function shapeworks_exception"},{"location":"api/Classes/classvec2d.html","text":"vec2d Public Functions Name vec2d () vec2d (double X, double Y) vec2d operator- () vec2d operator- (const vec2d & r) vec2d operator+ (const vec2d & r) vec2d operator* (double g) double operator* (const vec2d & r) double norm () double unit () bool operator== (const vec2d & r) const Public Attributes Name double x double y Public Functions Documentation function vec2d inline vec2d () function vec2d inline vec2d ( double X , double Y ) function operator- inline vec2d operator - () function operator- inline vec2d operator - ( const vec2d & r ) function operator+ inline vec2d operator + ( const vec2d & r ) function operator* inline vec2d operator * ( double g ) function operator* inline double operator * ( const vec2d & r ) function norm inline double norm () function unit inline double unit () function operator== inline bool operator == ( const vec2d & r ) const Public Attributes Documentation variable x double x ; variable y double y ; Updated on 2023-10-24 at 22:16:02 +0000","title":"vec2d"},{"location":"api/Classes/classvec2d.html#vec2d","text":"","title":"vec2d"},{"location":"api/Classes/classvec2d.html#public-functions","text":"Name vec2d () vec2d (double X, double Y) vec2d operator- () vec2d operator- (const vec2d & r) vec2d operator+ (const vec2d & r) vec2d operator* (double g) double operator* (const vec2d & r) double norm () double unit () bool operator== (const vec2d & r) const","title":"Public Functions"},{"location":"api/Classes/classvec2d.html#public-attributes","text":"Name double x double y","title":"Public Attributes"},{"location":"api/Classes/classvec2d.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classvec2d.html#function-vec2d","text":"inline vec2d ()","title":"function vec2d"},{"location":"api/Classes/classvec2d.html#function-vec2d_1","text":"inline vec2d ( double X , double Y )","title":"function vec2d"},{"location":"api/Classes/classvec2d.html#function-operator-","text":"inline vec2d operator - ()","title":"function operator-"},{"location":"api/Classes/classvec2d.html#function-operator-_1","text":"inline vec2d operator - ( const vec2d & r )","title":"function operator-"},{"location":"api/Classes/classvec2d.html#function-operator","text":"inline vec2d operator + ( const vec2d & r )","title":"function operator+"},{"location":"api/Classes/classvec2d.html#function-operator_1","text":"inline vec2d operator * ( double g )","title":"function operator*"},{"location":"api/Classes/classvec2d.html#function-operator_2","text":"inline double operator * ( const vec2d & r )","title":"function operator*"},{"location":"api/Classes/classvec2d.html#function-norm","text":"inline double norm ()","title":"function norm"},{"location":"api/Classes/classvec2d.html#function-unit","text":"inline double unit ()","title":"function unit"},{"location":"api/Classes/classvec2d.html#function-operator_3","text":"inline bool operator == ( const vec2d & r ) const","title":"function operator=="},{"location":"api/Classes/classvec2d.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classvec2d.html#variable-x","text":"double x ;","title":"variable x"},{"location":"api/Classes/classvec2d.html#variable-y","text":"double y ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable y"},{"location":"api/Classes/classvec3d.html","text":"vec3d Public Functions Name vec3d () vec3d (double rx, double ry, double rz) vec3d (const vec2d & r) vec3d operator+ (const vec3d & v) const vec3d operator- (const vec3d & v) const vec3d operator^ (const vec3d & v) const double operator* (const vec3d & v) const vec3d operator* (const double g) const vec3d operator/ (const double g) const const vec3d & operator+= (const vec3d & v) const vec3d & operator-= (const vec3d & v) const vec3d & operator/= (const double f) const vec3d & operator/= (const int n) const vec3d & operator*= (const double f) vec3d operator- () const double Length () const double SqrLength () const vec3d & Normalize () Public Attributes Name double x double y double z Public Functions Documentation function vec3d inline vec3d () function vec3d inline vec3d ( double rx , double ry , double rz ) function vec3d inline vec3d ( const vec2d & r ) function operator+ inline vec3d operator + ( const vec3d & v ) const function operator- inline vec3d operator - ( const vec3d & v ) const function operator^ inline vec3d operator ^ ( const vec3d & v ) const function operator* inline double operator * ( const vec3d & v ) const function operator* inline vec3d operator * ( const double g ) const function operator/ inline vec3d operator / ( const double g ) const function operator+= inline const vec3d & operator += ( const vec3d & v ) function operator-= inline const vec3d & operator -= ( const vec3d & v ) function operator/= inline const vec3d & operator /= ( const double f ) function operator/= inline const vec3d & operator /= ( const int n ) function operator*= inline const vec3d & operator *= ( const double f ) function operator- inline vec3d operator - () const function Length inline double Length () const function SqrLength inline double SqrLength () const function Normalize inline vec3d & Normalize () Public Attributes Documentation variable x double x ; variable y double y ; variable z double z ; Updated on 2023-10-24 at 22:16:02 +0000","title":"vec3d"},{"location":"api/Classes/classvec3d.html#vec3d","text":"","title":"vec3d"},{"location":"api/Classes/classvec3d.html#public-functions","text":"Name vec3d () vec3d (double rx, double ry, double rz) vec3d (const vec2d & r) vec3d operator+ (const vec3d & v) const vec3d operator- (const vec3d & v) const vec3d operator^ (const vec3d & v) const double operator* (const vec3d & v) const vec3d operator* (const double g) const vec3d operator/ (const double g) const const vec3d & operator+= (const vec3d & v) const vec3d & operator-= (const vec3d & v) const vec3d & operator/= (const double f) const vec3d & operator/= (const int n) const vec3d & operator*= (const double f) vec3d operator- () const double Length () const double SqrLength () const vec3d & Normalize ()","title":"Public Functions"},{"location":"api/Classes/classvec3d.html#public-attributes","text":"Name double x double y double z","title":"Public Attributes"},{"location":"api/Classes/classvec3d.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classvec3d.html#function-vec3d","text":"inline vec3d ()","title":"function vec3d"},{"location":"api/Classes/classvec3d.html#function-vec3d_1","text":"inline vec3d ( double rx , double ry , double rz )","title":"function vec3d"},{"location":"api/Classes/classvec3d.html#function-vec3d_2","text":"inline vec3d ( const vec2d & r )","title":"function vec3d"},{"location":"api/Classes/classvec3d.html#function-operator","text":"inline vec3d operator + ( const vec3d & v ) const","title":"function operator+"},{"location":"api/Classes/classvec3d.html#function-operator-","text":"inline vec3d operator - ( const vec3d & v ) const","title":"function operator-"},{"location":"api/Classes/classvec3d.html#function-operator_1","text":"inline vec3d operator ^ ( const vec3d & v ) const","title":"function operator^"},{"location":"api/Classes/classvec3d.html#function-operator_2","text":"inline double operator * ( const vec3d & v ) const","title":"function operator*"},{"location":"api/Classes/classvec3d.html#function-operator_3","text":"inline vec3d operator * ( const double g ) const","title":"function operator*"},{"location":"api/Classes/classvec3d.html#function-operator_4","text":"inline vec3d operator / ( const double g ) const","title":"function operator/"},{"location":"api/Classes/classvec3d.html#function-operator_5","text":"inline const vec3d & operator += ( const vec3d & v )","title":"function operator+="},{"location":"api/Classes/classvec3d.html#function-operator-_1","text":"inline const vec3d & operator -= ( const vec3d & v )","title":"function operator-="},{"location":"api/Classes/classvec3d.html#function-operator_6","text":"inline const vec3d & operator /= ( const double f )","title":"function operator/="},{"location":"api/Classes/classvec3d.html#function-operator_7","text":"inline const vec3d & operator /= ( const int n )","title":"function operator/="},{"location":"api/Classes/classvec3d.html#function-operator_8","text":"inline const vec3d & operator *= ( const double f )","title":"function operator*="},{"location":"api/Classes/classvec3d.html#function-operator-_2","text":"inline vec3d operator - () const","title":"function operator-"},{"location":"api/Classes/classvec3d.html#function-length","text":"inline double Length () const","title":"function Length"},{"location":"api/Classes/classvec3d.html#function-sqrlength","text":"inline double SqrLength () const","title":"function SqrLength"},{"location":"api/Classes/classvec3d.html#function-normalize","text":"inline vec3d & Normalize ()","title":"function Normalize"},{"location":"api/Classes/classvec3d.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classvec3d.html#variable-x","text":"double x ;","title":"variable x"},{"location":"api/Classes/classvec3d.html#variable-y","text":"double y ;","title":"variable y"},{"location":"api/Classes/classvec3d.html#variable-z","text":"double z ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable z"},{"location":"api/Classes/classvec6d.html","text":"vec6d Public Functions Name vec6d () Public Attributes Name double x double y double z double xy double yz double xz Public Functions Documentation function vec6d inline vec6d () Public Attributes Documentation variable x double x ; variable y double y ; variable z double z ; variable xy double xy ; variable yz double yz ; variable xz double xz ; Updated on 2023-10-24 at 22:16:02 +0000","title":"vec6d"},{"location":"api/Classes/classvec6d.html#vec6d","text":"","title":"vec6d"},{"location":"api/Classes/classvec6d.html#public-functions","text":"Name vec6d ()","title":"Public Functions"},{"location":"api/Classes/classvec6d.html#public-attributes","text":"Name double x double y double z double xy double yz double xz","title":"Public Attributes"},{"location":"api/Classes/classvec6d.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classvec6d.html#function-vec6d","text":"inline vec6d ()","title":"function vec6d"},{"location":"api/Classes/classvec6d.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/classvec6d.html#variable-x","text":"double x ;","title":"variable x"},{"location":"api/Classes/classvec6d.html#variable-y","text":"double y ;","title":"variable y"},{"location":"api/Classes/classvec6d.html#variable-z","text":"double z ;","title":"variable z"},{"location":"api/Classes/classvec6d.html#variable-xy","text":"double xy ;","title":"variable xy"},{"location":"api/Classes/classvec6d.html#variable-yz","text":"double yz ;","title":"variable yz"},{"location":"api/Classes/classvec6d.html#variable-xz","text":"double xz ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable xz"},{"location":"api/Classes/classvtkPolyDataToImageData.html","text":"vtkPolyDataToImageData Inherits from vtkImageAlgorithm Public Functions Name vtkTypeMacro ( vtkPolyDataToImageData , vtkImageAlgorithm ) void PrintSelf (ostream & os, vtkIndent indent) vtkSetMacro (Border , unsigned int ) vtkGetMacro (Border , unsigned int ) vtkSetMacro (Spacing , double ) vtkGetMacro (Spacing , double ) vtkSetMacro (SampleDistance , double ) vtkGetMacro (SampleDistance , double ) vtkSetMacro (InitialBallSize , unsigned int ) vtkGetMacro (InitialBallSize , unsigned int ) vtkSetMacro (FinalBallSize , unsigned int ) vtkGetMacro (FinalBallSize , unsigned int ) virtual int FillInputPortInformation (int port, vtkInformation * info) vtkPolyDataToImageData * New () Protected Functions Name vtkPolyDataToImageData () ~vtkPolyDataToImageData () virtual int RequestInformation (vtkInformation * request, vtkInformationVector ** inputVector, vtkInformationVector * outputVector) virtual int RequestData (vtkInformation * request, vtkInformationVector ** inputVector, vtkInformationVector * outputVector) virtual int RequestUpdateExtent (vtkInformation * request, vtkInformationVector ** inputVector, vtkInformationVector * outputVector) Public Functions Documentation function vtkTypeMacro vtkTypeMacro ( vtkPolyDataToImageData , vtkImageAlgorithm ) function PrintSelf void PrintSelf ( ostream & os , vtkIndent indent ) function vtkSetMacro vtkSetMacro ( Border , unsigned int ) function vtkGetMacro vtkGetMacro ( Border , unsigned int ) function vtkSetMacro vtkSetMacro ( Spacing , double ) function vtkGetMacro vtkGetMacro ( Spacing , double ) function vtkSetMacro vtkSetMacro ( SampleDistance , double ) function vtkGetMacro vtkGetMacro ( SampleDistance , double ) function vtkSetMacro vtkSetMacro ( InitialBallSize , unsigned int ) function vtkGetMacro vtkGetMacro ( InitialBallSize , unsigned int ) function vtkSetMacro vtkSetMacro ( FinalBallSize , unsigned int ) function vtkGetMacro vtkGetMacro ( FinalBallSize , unsigned int ) function FillInputPortInformation virtual int FillInputPortInformation ( int port , vtkInformation * info ) function New static vtkPolyDataToImageData * New () Protected Functions Documentation function vtkPolyDataToImageData vtkPolyDataToImageData () function ~vtkPolyDataToImageData inline ~ vtkPolyDataToImageData () function RequestInformation virtual int RequestInformation ( vtkInformation * request , vtkInformationVector ** inputVector , vtkInformationVector * outputVector ) function RequestData virtual int RequestData ( vtkInformation * request , vtkInformationVector ** inputVector , vtkInformationVector * outputVector ) function RequestUpdateExtent virtual int RequestUpdateExtent ( vtkInformation * request , vtkInformationVector ** inputVector , vtkInformationVector * outputVector ) Updated on 2023-10-24 at 22:16:02 +0000","title":"vtkPolyDataToImageData"},{"location":"api/Classes/classvtkPolyDataToImageData.html#vtkpolydatatoimagedata","text":"Inherits from vtkImageAlgorithm","title":"vtkPolyDataToImageData"},{"location":"api/Classes/classvtkPolyDataToImageData.html#public-functions","text":"Name vtkTypeMacro ( vtkPolyDataToImageData , vtkImageAlgorithm ) void PrintSelf (ostream & os, vtkIndent indent) vtkSetMacro (Border , unsigned int ) vtkGetMacro (Border , unsigned int ) vtkSetMacro (Spacing , double ) vtkGetMacro (Spacing , double ) vtkSetMacro (SampleDistance , double ) vtkGetMacro (SampleDistance , double ) vtkSetMacro (InitialBallSize , unsigned int ) vtkGetMacro (InitialBallSize , unsigned int ) vtkSetMacro (FinalBallSize , unsigned int ) vtkGetMacro (FinalBallSize , unsigned int ) virtual int FillInputPortInformation (int port, vtkInformation * info) vtkPolyDataToImageData * New ()","title":"Public Functions"},{"location":"api/Classes/classvtkPolyDataToImageData.html#protected-functions","text":"Name vtkPolyDataToImageData () ~vtkPolyDataToImageData () virtual int RequestInformation (vtkInformation * request, vtkInformationVector ** inputVector, vtkInformationVector * outputVector) virtual int RequestData (vtkInformation * request, vtkInformationVector ** inputVector, vtkInformationVector * outputVector) virtual int RequestUpdateExtent (vtkInformation * request, vtkInformationVector ** inputVector, vtkInformationVector * outputVector)","title":"Protected Functions"},{"location":"api/Classes/classvtkPolyDataToImageData.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtktypemacro","text":"vtkTypeMacro ( vtkPolyDataToImageData , vtkImageAlgorithm )","title":"function vtkTypeMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-printself","text":"void PrintSelf ( ostream & os , vtkIndent indent )","title":"function PrintSelf"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtksetmacro","text":"vtkSetMacro ( Border , unsigned int )","title":"function vtkSetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtkgetmacro","text":"vtkGetMacro ( Border , unsigned int )","title":"function vtkGetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtksetmacro_1","text":"vtkSetMacro ( Spacing , double )","title":"function vtkSetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtkgetmacro_1","text":"vtkGetMacro ( Spacing , double )","title":"function vtkGetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtksetmacro_2","text":"vtkSetMacro ( SampleDistance , double )","title":"function vtkSetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtkgetmacro_2","text":"vtkGetMacro ( SampleDistance , double )","title":"function vtkGetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtksetmacro_3","text":"vtkSetMacro ( InitialBallSize , unsigned int )","title":"function vtkSetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtkgetmacro_3","text":"vtkGetMacro ( InitialBallSize , unsigned int )","title":"function vtkGetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtksetmacro_4","text":"vtkSetMacro ( FinalBallSize , unsigned int )","title":"function vtkSetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtkgetmacro_4","text":"vtkGetMacro ( FinalBallSize , unsigned int )","title":"function vtkGetMacro"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-fillinputportinformation","text":"virtual int FillInputPortInformation ( int port , vtkInformation * info )","title":"function FillInputPortInformation"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-new","text":"static vtkPolyDataToImageData * New ()","title":"function New"},{"location":"api/Classes/classvtkPolyDataToImageData.html#protected-functions-documentation","text":"","title":"Protected Functions Documentation"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtkpolydatatoimagedata","text":"vtkPolyDataToImageData ()","title":"function vtkPolyDataToImageData"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-vtkpolydatatoimagedata_1","text":"inline ~ vtkPolyDataToImageData ()","title":"function ~vtkPolyDataToImageData"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-requestinformation","text":"virtual int RequestInformation ( vtkInformation * request , vtkInformationVector ** inputVector , vtkInformationVector * outputVector )","title":"function RequestInformation"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-requestdata","text":"virtual int RequestData ( vtkInformation * request , vtkInformationVector ** inputVector , vtkInformationVector * outputVector )","title":"function RequestData"},{"location":"api/Classes/classvtkPolyDataToImageData.html#function-requestupdateextent","text":"virtual int RequestUpdateExtent ( vtkInformation * request , vtkInformationVector ** inputVector , vtkInformationVector * outputVector ) Updated on 2023-10-24 at 22:16:02 +0000","title":"function RequestUpdateExtent"},{"location":"api/Classes/index_classes.html","text":"Classes class ColorScheme struct rgb class ColorSchemes class CustomSlider class CustomSurfaceReconstructionFilter class FEAreaCoverage class Surface class FEAutoMesher class FECVDDecimationModifier class Cluster struct EDGE class NODE class FECoreMesh class FEEdge class FEElement class FEElementData class FEElement_ class FEFace class FEFillHole class EdgeRing struct FACE class FEFixMesh class FEItem class FEMesh class FEMeshSmoothingModifier class FENode class FENodeElementList class FENodeFaceList class FENodeNodeList class FETri3 class FEVTKExport class FEVTKimport class GLCOLOR struct Intersection class LegacyMeshGenerator class MeshSettings Settings for creating a mesh. class ObjectReader class ObjectWriter class ParticleEvent:: Parent class ParticleGradientDescentPositionOptimizer class ParticleImageDomain class ParticleImageDomainWithCurvature class ParticleImageDomainWithGradN class ParticleImageDomainWithGradients class ParticleImplicitSurfaceDomain class ParticleMeanCurvatureAttribute class ParticleProcrustesRegistration class ParticleShapeLinearRegressionMatrixAttribute class ParticleShapeMatrixAttribute Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! class ParticleShapeMixedEffectsMatrixAttribute class Preferences Application preferences. class Procrustes3D struct Quad struct Ray class Reconstruction struct SimilarityTransform3D class StudioLogger Handle logger callbacks via Qt for thread correctness. class SurfaceReconstructor struct Triangle namespace Ui class Utils struct VTKEXPORT namespace fmt struct formatter< QString > namespace itk class AdvancedTransform Transform maps points, vectors and covariant vectors from an input space to an output space. class BSplineInterpolateImageFunctionWithDoubleCoefficents class CompactlySupportedRBFSparseKernelTransform namespace Functor class MultiplyByConstant class KernelTransform2 class MultiplyByConstantImageFilter Multiply input pixels by a constant. class SparseKernelTransform class TPGACLevelSetImageFilter class ThinPlateSplineKernelTransform2 class mat3d class matrix class meshFIM class object_reader class object_writer class quatd namespace shapeworks User usage reporting (telemetry) class AnalysisTool class AnalysisUtils class Analyze High level analyze API. class AnalyzeCommandGroup class ColorMap class ColorMaps class Command class CompareSettings class CompareWidget class Constraint class Constraints class ContourDomain class CorrespondenceFunction Correspondence term. class CurvatureSamplingFunction Please note: This is the sampling function currently being used. struct CrossDomainNeighborhood class DataTool class DeepSSMJob Qt Wrapper for DeepSSM. class DeepSSMParameters class DeepSSMTool class DisentangledCorrespondenceFunction class DualVectorFunction class EigenUtils class ExcelProjectReader Excel file format reader for Project . class ExcelProjectWriter Excel file format writer for Project . class Executable class ExportImageDialog class ExportUtils Export utilities for Studio. class FreeFormConstraint class GenericContainer This class seems to be only a wrapper around std::vector implementing ITK DataObject (for smart pointer?) class GenericContainerArray This class appears to be an array of GenericContainers (e.g. std::vector) that implements the Observer interface. The array size tracks the number of domains in the system. E.g. one per domain. class GradientDescentOptimizer class Groom High level groom API. class GroomCommandGroup class GroomParameters class GroomTool class GroupPvalueJob class Image class ImageCommand class ImageDomain class ImageDomainWithCurvature class ImageDomainWithGradN class ImageDomainWithGradients class ImageLabel An extention of QLabel especially for scaled images. class ImageUtils Helper functions for image. class ImplicitSurfaceDomain class IndexRegion Indices into a 3d region of memory (can be negative, e.g., for the purpose of padding an image) class Job class JsonProjectReader JSON file format reader for Project . class JsonProjectWriter JSON file format writer for Project . class KeyboardShortcuts class LandmarkDefinition Landmark class containing properties of each landmark. class LandmarkItemDelegate class LandmarkTableModel class LandmarkWidget LandmarkWidget . class LegacyCorrespondenceFunction class LegacyShapeMatrix class Lightbox Display multiple Viewers in a tiled display. class LinearRegressionShapeMatrix class LogWindow Log Window. class Logging ShapeWorks Logging Library. class MatrixContainer class MeanCurvatureContainer class Mesh class MeshCache Thread safe cache for meshes index by shape. class MeshCommand class MeshDomain class MeshGenerator struct MeshGeoEntry class MeshGroup Representation of a group of meshes. class MeshManager Class to manage meshes. class MeshReader reads mesh (used only by one of the Mesh constructors) class MeshReconstructors class MeshSlice MeshSlice . class MeshUtils class MeshWarper class MeshWorkItem Provides concurrent access to a list of shapes to work needing reconstruction. class MeshWorkQueue class MeshWorker class MeshWrapper class MixedEffectsShapeMatrix struct MultiVariateNormalRandom class NetworkAnalysisJob class Observer This class is an observer interface for classes to monitor for changes to the optimizer (observer pattern) struct DefinedCallbacksStruct class OptimizationVisualizer class Optimize class OptimizeCommandGroup class OptimizeParameterFile class OptimizeParameters class OptimizeTool class PaintWidget class Parameters Parameter settings. class ParticleArea class ParticleAreaJob class ParticleAreaPanel class ParticleColors Supplies particle colors. class ParticleDomain class ParticleEvent class ParticleGaussianModeWriter class ParticleGoodBadAssessment Performs good/bad points assessment and reports the bad positions of the particle system. class ParticleNeighborhood class ParticleNormalEvaluation class ParticleNormalEvaluationJob struct ParticlePointIndexPair class ParticleRegionDomain class ParticleRegionNeighborhood struct IteratorNodePair class ParticleShapeStatistics class ParticleSurfaceNeighborhood class ParticleSystem A facade class managing interactions with a particle system. class ParticleSystemCommand class ParticleSystemEvaluation class Particles Representation of correspondence points for a shape including multiple domains. class PhysicalRegion physical bounds of a 3d region of space class PickResult class PlaneConstraint class PlaneWidget PlaneWidget . class PowerOfTwoPointTree class PowerOfTwoPointTreeNode class PreferencesWindow Qt UI dialog to control preferences. class ProcrustesRegistration class Project Representation of a project. class ProjectCommandGroup class ProjectReader Base class for Project readers. class ProjectUtils class PythonWorker class QMeshWarper Wraps MeshWarper as a QObject. class QOptimize Wraps Optimize as a QObject. class ReconstructSurface struct Reconstruction class Sampler struct CuttingPlaneType struct SphereType class SamplingFunction This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. class Session Representation of a session. class Shape Representation of a single shape/patient/subject. class Point TODO: replace this wherever it is used. class ShapeEvaluation class ShapeEvaluationJob class ShapeGradientMatrix Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! class ShapeMatrix Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! class ShapeWorksStudioApp Main ShapeWorksStudio window. class ShapeworksCommand class ShapeworksUtils class ShapeworksWorker struct SharedCommandData class SliceView SliceView . class SplashScreen class StatsGroupLDAJob class StatusBarWidget StatusBarWidget . class StringUtils String utility functions. class StudioHandleWidget class StudioInteractorStyle class StudioMesh Representation of a single mesh. class StudioSliceInteractorStyle class StudioUtils Utilities for Studio. class StudioVtkOutputWindow Implementation of vtkOutputWindow to capture and display VTK error messages. class Style class Subject Representation of a single subject. class Telemetry class UpdateChecker Update Checker. class Variant Variant class to represent multiple types. class VectorFunction class VectorImage Gradient (vector) image. class Viewer 3D Viewer class Visualizer Controls display of objects in viewers. class VtkMeshWrapper class WheelEventForwarder class Worker namespace mesh namespace particles struct powstruct struct powstruct< a, 0 > namespace project namespace prefixes namespace types class shapeworks_exception namespace std namespace utils class vec2d class vec3d class vec6d class vtkPolyDataToImageData Updated on 2023-10-24 at 22:16:03 +0000","title":"Classes"},{"location":"api/Classes/index_classes.html#classes","text":"class ColorScheme struct rgb class ColorSchemes class CustomSlider class CustomSurfaceReconstructionFilter class FEAreaCoverage class Surface class FEAutoMesher class FECVDDecimationModifier class Cluster struct EDGE class NODE class FECoreMesh class FEEdge class FEElement class FEElementData class FEElement_ class FEFace class FEFillHole class EdgeRing struct FACE class FEFixMesh class FEItem class FEMesh class FEMeshSmoothingModifier class FENode class FENodeElementList class FENodeFaceList class FENodeNodeList class FETri3 class FEVTKExport class FEVTKimport class GLCOLOR struct Intersection class LegacyMeshGenerator class MeshSettings Settings for creating a mesh. class ObjectReader class ObjectWriter class ParticleEvent:: Parent class ParticleGradientDescentPositionOptimizer class ParticleImageDomain class ParticleImageDomainWithCurvature class ParticleImageDomainWithGradN class ParticleImageDomainWithGradients class ParticleImplicitSurfaceDomain class ParticleMeanCurvatureAttribute class ParticleProcrustesRegistration class ParticleShapeLinearRegressionMatrixAttribute class ParticleShapeMatrixAttribute Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! class ParticleShapeMixedEffectsMatrixAttribute class Preferences Application preferences. class Procrustes3D struct Quad struct Ray class Reconstruction struct SimilarityTransform3D class StudioLogger Handle logger callbacks via Qt for thread correctness. class SurfaceReconstructor struct Triangle namespace Ui class Utils struct VTKEXPORT namespace fmt struct formatter< QString > namespace itk class AdvancedTransform Transform maps points, vectors and covariant vectors from an input space to an output space. class BSplineInterpolateImageFunctionWithDoubleCoefficents class CompactlySupportedRBFSparseKernelTransform namespace Functor class MultiplyByConstant class KernelTransform2 class MultiplyByConstantImageFilter Multiply input pixels by a constant. class SparseKernelTransform class TPGACLevelSetImageFilter class ThinPlateSplineKernelTransform2 class mat3d class matrix class meshFIM class object_reader class object_writer class quatd namespace shapeworks User usage reporting (telemetry) class AnalysisTool class AnalysisUtils class Analyze High level analyze API. class AnalyzeCommandGroup class ColorMap class ColorMaps class Command class CompareSettings class CompareWidget class Constraint class Constraints class ContourDomain class CorrespondenceFunction Correspondence term. class CurvatureSamplingFunction Please note: This is the sampling function currently being used. struct CrossDomainNeighborhood class DataTool class DeepSSMJob Qt Wrapper for DeepSSM. class DeepSSMParameters class DeepSSMTool class DisentangledCorrespondenceFunction class DualVectorFunction class EigenUtils class ExcelProjectReader Excel file format reader for Project . class ExcelProjectWriter Excel file format writer for Project . class Executable class ExportImageDialog class ExportUtils Export utilities for Studio. class FreeFormConstraint class GenericContainer This class seems to be only a wrapper around std::vector implementing ITK DataObject (for smart pointer?) class GenericContainerArray This class appears to be an array of GenericContainers (e.g. std::vector) that implements the Observer interface. The array size tracks the number of domains in the system. E.g. one per domain. class GradientDescentOptimizer class Groom High level groom API. class GroomCommandGroup class GroomParameters class GroomTool class GroupPvalueJob class Image class ImageCommand class ImageDomain class ImageDomainWithCurvature class ImageDomainWithGradN class ImageDomainWithGradients class ImageLabel An extention of QLabel especially for scaled images. class ImageUtils Helper functions for image. class ImplicitSurfaceDomain class IndexRegion Indices into a 3d region of memory (can be negative, e.g., for the purpose of padding an image) class Job class JsonProjectReader JSON file format reader for Project . class JsonProjectWriter JSON file format writer for Project . class KeyboardShortcuts class LandmarkDefinition Landmark class containing properties of each landmark. class LandmarkItemDelegate class LandmarkTableModel class LandmarkWidget LandmarkWidget . class LegacyCorrespondenceFunction class LegacyShapeMatrix class Lightbox Display multiple Viewers in a tiled display. class LinearRegressionShapeMatrix class LogWindow Log Window. class Logging ShapeWorks Logging Library. class MatrixContainer class MeanCurvatureContainer class Mesh class MeshCache Thread safe cache for meshes index by shape. class MeshCommand class MeshDomain class MeshGenerator struct MeshGeoEntry class MeshGroup Representation of a group of meshes. class MeshManager Class to manage meshes. class MeshReader reads mesh (used only by one of the Mesh constructors) class MeshReconstructors class MeshSlice MeshSlice . class MeshUtils class MeshWarper class MeshWorkItem Provides concurrent access to a list of shapes to work needing reconstruction. class MeshWorkQueue class MeshWorker class MeshWrapper class MixedEffectsShapeMatrix struct MultiVariateNormalRandom class NetworkAnalysisJob class Observer This class is an observer interface for classes to monitor for changes to the optimizer (observer pattern) struct DefinedCallbacksStruct class OptimizationVisualizer class Optimize class OptimizeCommandGroup class OptimizeParameterFile class OptimizeParameters class OptimizeTool class PaintWidget class Parameters Parameter settings. class ParticleArea class ParticleAreaJob class ParticleAreaPanel class ParticleColors Supplies particle colors. class ParticleDomain class ParticleEvent class ParticleGaussianModeWriter class ParticleGoodBadAssessment Performs good/bad points assessment and reports the bad positions of the particle system. class ParticleNeighborhood class ParticleNormalEvaluation class ParticleNormalEvaluationJob struct ParticlePointIndexPair class ParticleRegionDomain class ParticleRegionNeighborhood struct IteratorNodePair class ParticleShapeStatistics class ParticleSurfaceNeighborhood class ParticleSystem A facade class managing interactions with a particle system. class ParticleSystemCommand class ParticleSystemEvaluation class Particles Representation of correspondence points for a shape including multiple domains. class PhysicalRegion physical bounds of a 3d region of space class PickResult class PlaneConstraint class PlaneWidget PlaneWidget . class PowerOfTwoPointTree class PowerOfTwoPointTreeNode class PreferencesWindow Qt UI dialog to control preferences. class ProcrustesRegistration class Project Representation of a project. class ProjectCommandGroup class ProjectReader Base class for Project readers. class ProjectUtils class PythonWorker class QMeshWarper Wraps MeshWarper as a QObject. class QOptimize Wraps Optimize as a QObject. class ReconstructSurface struct Reconstruction class Sampler struct CuttingPlaneType struct SphereType class SamplingFunction This function returns an estimate of the gradient of the entropy of a particle distribution with respect to change in position of a specific particle in that distribution. class Session Representation of a session. class Shape Representation of a single shape/patient/subject. class Point TODO: replace this wherever it is used. class ShapeEvaluation class ShapeEvaluationJob class ShapeGradientMatrix Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! class ShapeMatrix Each column describes a shape. A shape may be composed of m_DomainsPerShape domains (default 1). ALL DOMAINS ARE NOT ASSUMED TO HAVE THE SAME NUMBER OF PARTICLES! class ShapeWorksStudioApp Main ShapeWorksStudio window. class ShapeworksCommand class ShapeworksUtils class ShapeworksWorker struct SharedCommandData class SliceView SliceView . class SplashScreen class StatsGroupLDAJob class StatusBarWidget StatusBarWidget . class StringUtils String utility functions. class StudioHandleWidget class StudioInteractorStyle class StudioMesh Representation of a single mesh. class StudioSliceInteractorStyle class StudioUtils Utilities for Studio. class StudioVtkOutputWindow Implementation of vtkOutputWindow to capture and display VTK error messages. class Style class Subject Representation of a single subject. class Telemetry class UpdateChecker Update Checker. class Variant Variant class to represent multiple types. class VectorFunction class VectorImage Gradient (vector) image. class Viewer 3D Viewer class Visualizer Controls display of objects in viewers. class VtkMeshWrapper class WheelEventForwarder class Worker namespace mesh namespace particles struct powstruct struct powstruct< a, 0 > namespace project namespace prefixes namespace types class shapeworks_exception namespace std namespace utils class vec2d class vec3d class vec6d class vtkPolyDataToImageData Updated on 2023-10-24 at 22:16:03 +0000","title":"Classes"},{"location":"api/Classes/structColorScheme_1_1rgb.html","text":"ColorScheme::rgb Public Functions Name rgb () rgb (float l, float m, float n) Public Attributes Name float r float g float b Public Functions Documentation function rgb inline rgb () function rgb inline rgb ( float l , float m , float n ) Public Attributes Documentation variable r float r ; variable g float g ; variable b float b ; Updated on 2023-10-24 at 22:16:02 +0000","title":"ColorScheme::rgb"},{"location":"api/Classes/structColorScheme_1_1rgb.html#colorschemergb","text":"","title":"ColorScheme::rgb"},{"location":"api/Classes/structColorScheme_1_1rgb.html#public-functions","text":"Name rgb () rgb (float l, float m, float n)","title":"Public Functions"},{"location":"api/Classes/structColorScheme_1_1rgb.html#public-attributes","text":"Name float r float g float b","title":"Public Attributes"},{"location":"api/Classes/structColorScheme_1_1rgb.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structColorScheme_1_1rgb.html#function-rgb","text":"inline rgb ()","title":"function rgb"},{"location":"api/Classes/structColorScheme_1_1rgb.html#function-rgb_1","text":"inline rgb ( float l , float m , float n )","title":"function rgb"},{"location":"api/Classes/structColorScheme_1_1rgb.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structColorScheme_1_1rgb.html#variable-r","text":"float r ;","title":"variable r"},{"location":"api/Classes/structColorScheme_1_1rgb.html#variable-g","text":"float g ;","title":"variable g"},{"location":"api/Classes/structColorScheme_1_1rgb.html#variable-b","text":"float b ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable b"},{"location":"api/Classes/structFECVDDecimationModifier_1_1EDGE.html","text":"FECVDDecimationModifier::EDGE Public Attributes Name int face int node Public Attributes Documentation variable face int face ; variable node int node ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FECVDDecimationModifier::EDGE"},{"location":"api/Classes/structFECVDDecimationModifier_1_1EDGE.html#fecvddecimationmodifieredge","text":"","title":"FECVDDecimationModifier::EDGE"},{"location":"api/Classes/structFECVDDecimationModifier_1_1EDGE.html#public-attributes","text":"Name int face int node","title":"Public Attributes"},{"location":"api/Classes/structFECVDDecimationModifier_1_1EDGE.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structFECVDDecimationModifier_1_1EDGE.html#variable-face","text":"int face ;","title":"variable face"},{"location":"api/Classes/structFECVDDecimationModifier_1_1EDGE.html#variable-node","text":"int node ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable node"},{"location":"api/Classes/structFEFillHole_1_1FACE.html","text":"FEFillHole::FACE Public Attributes Name vec3d r int n Public Attributes Documentation variable r vec3d r ; variable n int n ; Updated on 2023-10-24 at 22:16:02 +0000","title":"FEFillHole::FACE"},{"location":"api/Classes/structFEFillHole_1_1FACE.html#fefillholeface","text":"","title":"FEFillHole::FACE"},{"location":"api/Classes/structFEFillHole_1_1FACE.html#public-attributes","text":"Name vec3d r int n","title":"Public Attributes"},{"location":"api/Classes/structFEFillHole_1_1FACE.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structFEFillHole_1_1FACE.html#variable-r","text":"vec3d r ;","title":"variable r"},{"location":"api/Classes/structFEFillHole_1_1FACE.html#variable-n","text":"int n ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable n"},{"location":"api/Classes/structIntersection.html","text":"Intersection Public Attributes Name vec3d point float r int m_index int m_faceIndex Public Attributes Documentation variable point vec3d point ; variable r float r ; variable m_index int m_index ; variable m_faceIndex int m_faceIndex ; Updated on 2023-10-24 at 22:16:02 +0000","title":"Intersection"},{"location":"api/Classes/structIntersection.html#intersection","text":"","title":"Intersection"},{"location":"api/Classes/structIntersection.html#public-attributes","text":"Name vec3d point float r int m_index int m_faceIndex","title":"Public Attributes"},{"location":"api/Classes/structIntersection.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structIntersection.html#variable-point","text":"vec3d point ;","title":"variable point"},{"location":"api/Classes/structIntersection.html#variable-r","text":"float r ;","title":"variable r"},{"location":"api/Classes/structIntersection.html#variable-m_index","text":"int m_index ;","title":"variable m_index"},{"location":"api/Classes/structIntersection.html#variable-m_faceindex","text":"int m_faceIndex ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable m_faceIndex"},{"location":"api/Classes/structQuad.html","text":"Quad Public Attributes Name vec3d r0 vec3d r1 vec3d r2 vec3d r3 Public Attributes Documentation variable r0 vec3d r0 ; variable r1 vec3d r1 ; variable r2 vec3d r2 ; variable r3 vec3d r3 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"Quad"},{"location":"api/Classes/structQuad.html#quad","text":"","title":"Quad"},{"location":"api/Classes/structQuad.html#public-attributes","text":"Name vec3d r0 vec3d r1 vec3d r2 vec3d r3","title":"Public Attributes"},{"location":"api/Classes/structQuad.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structQuad.html#variable-r0","text":"vec3d r0 ;","title":"variable r0"},{"location":"api/Classes/structQuad.html#variable-r1","text":"vec3d r1 ;","title":"variable r1"},{"location":"api/Classes/structQuad.html#variable-r2","text":"vec3d r2 ;","title":"variable r2"},{"location":"api/Classes/structQuad.html#variable-r3","text":"vec3d r3 ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable r3"},{"location":"api/Classes/structRay.html","text":"Ray Public Attributes Name vec3d origin vec3d direction Public Attributes Documentation variable origin vec3d origin ; variable direction vec3d direction ; Updated on 2023-10-24 at 22:16:02 +0000","title":"Ray"},{"location":"api/Classes/structRay.html#ray","text":"","title":"Ray"},{"location":"api/Classes/structRay.html#public-attributes","text":"Name vec3d origin vec3d direction","title":"Public Attributes"},{"location":"api/Classes/structRay.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structRay.html#variable-origin","text":"vec3d origin ;","title":"variable origin"},{"location":"api/Classes/structRay.html#variable-direction","text":"vec3d direction ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable direction"},{"location":"api/Classes/structSimilarityTransform3D.html","text":"SimilarityTransform3D Public Attributes Name vnl_matrix_fixed< double, 3, 3 > rotation double scale vnl_vector_fixed< double, 3 > translation Public Attributes Documentation variable rotation vnl_matrix_fixed < double , 3 , 3 > rotation ; variable scale double scale ; variable translation vnl_vector_fixed < double , 3 > translation ; Updated on 2023-10-24 at 22:16:02 +0000","title":"SimilarityTransform3D"},{"location":"api/Classes/structSimilarityTransform3D.html#similaritytransform3d","text":"","title":"SimilarityTransform3D"},{"location":"api/Classes/structSimilarityTransform3D.html#public-attributes","text":"Name vnl_matrix_fixed< double, 3, 3 > rotation double scale vnl_vector_fixed< double, 3 > translation","title":"Public Attributes"},{"location":"api/Classes/structSimilarityTransform3D.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structSimilarityTransform3D.html#variable-rotation","text":"vnl_matrix_fixed < double , 3 , 3 > rotation ;","title":"variable rotation"},{"location":"api/Classes/structSimilarityTransform3D.html#variable-scale","text":"double scale ;","title":"variable scale"},{"location":"api/Classes/structSimilarityTransform3D.html#variable-translation","text":"vnl_vector_fixed < double , 3 > translation ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable translation"},{"location":"api/Classes/structTriangle.html","text":"Triangle Public Attributes Name vec3d r0 vec3d r1 vec3d r2 vec3d fn Public Attributes Documentation variable r0 vec3d r0 ; variable r1 vec3d r1 ; variable r2 vec3d r2 ; variable fn vec3d fn ; Updated on 2023-10-24 at 22:16:02 +0000","title":"Triangle"},{"location":"api/Classes/structTriangle.html#triangle","text":"","title":"Triangle"},{"location":"api/Classes/structTriangle.html#public-attributes","text":"Name vec3d r0 vec3d r1 vec3d r2 vec3d fn","title":"Public Attributes"},{"location":"api/Classes/structTriangle.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structTriangle.html#variable-r0","text":"vec3d r0 ;","title":"variable r0"},{"location":"api/Classes/structTriangle.html#variable-r1","text":"vec3d r1 ;","title":"variable r1"},{"location":"api/Classes/structTriangle.html#variable-r2","text":"vec3d r2 ;","title":"variable r2"},{"location":"api/Classes/structTriangle.html#variable-fn","text":"vec3d fn ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable fn"},{"location":"api/Classes/structVTKEXPORT.html","text":"VTKEXPORT Public Attributes Name bool bshellthick bool bscalar_data Public Attributes Documentation variable bshellthick bool bshellthick ; variable bscalar_data bool bscalar_data ; Updated on 2023-10-24 at 22:16:02 +0000","title":"VTKEXPORT"},{"location":"api/Classes/structVTKEXPORT.html#vtkexport","text":"","title":"VTKEXPORT"},{"location":"api/Classes/structVTKEXPORT.html#public-attributes","text":"Name bool bshellthick bool bscalar_data","title":"Public Attributes"},{"location":"api/Classes/structVTKEXPORT.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structVTKEXPORT.html#variable-bshellthick","text":"bool bshellthick ;","title":"variable bshellthick"},{"location":"api/Classes/structVTKEXPORT.html#variable-bscalar_data","text":"bool bscalar_data ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable bscalar_data"},{"location":"api/Classes/structfmt_1_1formatter_3_01QString_01_4.html","text":"fmt::formatter< QString > Public Functions Name constexpr auto parse (format_parse_context & ctx) template auto format (const QString & str, FormatContext & ctx) const Public Functions Documentation function parse inline constexpr auto parse ( format_parse_context & ctx ) function format template < typename FormatContext > inline auto format ( const QString & str , FormatContext & ctx ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"fmt::formatter< QString >"},{"location":"api/Classes/structfmt_1_1formatter_3_01QString_01_4.html#fmtformatter-qstring","text":"","title":"fmt::formatter< QString >"},{"location":"api/Classes/structfmt_1_1formatter_3_01QString_01_4.html#public-functions","text":"Name constexpr auto parse (format_parse_context & ctx) template auto format (const QString & str, FormatContext & ctx) const","title":"Public Functions"},{"location":"api/Classes/structfmt_1_1formatter_3_01QString_01_4.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structfmt_1_1formatter_3_01QString_01_4.html#function-parse","text":"inline constexpr auto parse ( format_parse_context & ctx )","title":"function parse"},{"location":"api/Classes/structfmt_1_1formatter_3_01QString_01_4.html#function-format","text":"template < typename FormatContext > inline auto format ( const QString & str , FormatContext & ctx ) const Updated on 2023-10-24 at 22:16:01 +0000","title":"function format"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html","text":"shapeworks::CurvatureSamplingFunction::CrossDomainNeighborhood Public Functions Name CrossDomainNeighborhood (const ParticlePointIndexPair & pi_pair_, double weight_, double distance_, int dom_) Public Attributes Name ParticlePointIndexPair pi_pair double weight double distance int dom Public Functions Documentation function CrossDomainNeighborhood inline CrossDomainNeighborhood ( const ParticlePointIndexPair & pi_pair_ , double weight_ , double distance_ , int dom_ ) Public Attributes Documentation variable pi_pair ParticlePointIndexPair pi_pair ; variable weight double weight ; variable distance double distance ; variable dom int dom ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::CurvatureSamplingFunction::CrossDomainNeighborhood"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#shapeworkscurvaturesamplingfunctioncrossdomainneighborhood","text":"","title":"shapeworks::CurvatureSamplingFunction::CrossDomainNeighborhood"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#public-functions","text":"Name CrossDomainNeighborhood (const ParticlePointIndexPair & pi_pair_, double weight_, double distance_, int dom_)","title":"Public Functions"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#public-attributes","text":"Name ParticlePointIndexPair pi_pair double weight double distance int dom","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#function-crossdomainneighborhood","text":"inline CrossDomainNeighborhood ( const ParticlePointIndexPair & pi_pair_ , double weight_ , double distance_ , int dom_ )","title":"function CrossDomainNeighborhood"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#variable-pi_pair","text":"ParticlePointIndexPair pi_pair ;","title":"variable pi_pair"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#variable-weight","text":"double weight ;","title":"variable weight"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#variable-distance","text":"double distance ;","title":"variable distance"},{"location":"api/Classes/structshapeworks_1_1CurvatureSamplingFunction_1_1CrossDomainNeighborhood.html#variable-dom","text":"int dom ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable dom"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html","text":"shapeworks::MeshGeoEntry Public Types Name enum Mode Public Functions Name void clear () bool is_full_mode () const void update_max_dist () bool has_entry (int target) Public Attributes Name Mode mode double max_dist robin_hood::unordered_flat_map< int, Eigen::Vector3d > data_partial std::array< Eigen::VectorXd, 3 > data_full Public Types Documentation enum Mode Enumerator Value Description Full Partial Public Functions Documentation function clear inline void clear () function is_full_mode inline bool is_full_mode () const function update_max_dist inline void update_max_dist () function has_entry inline bool has_entry ( int target ) Public Attributes Documentation variable mode Mode mode { Mode :: Partial }; variable max_dist double max_dist { 0.0 }; variable data_partial robin_hood :: unordered_flat_map < int , Eigen :: Vector3d > data_partial ; variable data_full std :: array < Eigen :: VectorXd , 3 > data_full ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MeshGeoEntry"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#shapeworksmeshgeoentry","text":"","title":"shapeworks::MeshGeoEntry"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#public-types","text":"Name enum Mode","title":"Public Types"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#public-functions","text":"Name void clear () bool is_full_mode () const void update_max_dist () bool has_entry (int target)","title":"Public Functions"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#public-attributes","text":"Name Mode mode double max_dist robin_hood::unordered_flat_map< int, Eigen::Vector3d > data_partial std::array< Eigen::VectorXd, 3 > data_full","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#enum-mode","text":"Enumerator Value Description Full Partial","title":"enum Mode"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#function-clear","text":"inline void clear ()","title":"function clear"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#function-is_full_mode","text":"inline bool is_full_mode () const","title":"function is_full_mode"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#function-update_max_dist","text":"inline void update_max_dist ()","title":"function update_max_dist"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#function-has_entry","text":"inline bool has_entry ( int target )","title":"function has_entry"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#variable-mode","text":"Mode mode { Mode :: Partial };","title":"variable mode"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#variable-max_dist","text":"double max_dist { 0.0 };","title":"variable max_dist"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#variable-data_partial","text":"robin_hood :: unordered_flat_map < int , Eigen :: Vector3d > data_partial ;","title":"variable data_partial"},{"location":"api/Classes/structshapeworks_1_1MeshGeoEntry.html#variable-data_full","text":"std :: array < Eigen :: VectorXd , 3 > data_full ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable data_full"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html","text":"shapeworks::MultiVariateNormalRandom Public Functions Name MultiVariateNormalRandom (Eigen::MatrixXd const & covar) MultiVariateNormalRandom (Eigen::VectorXd const & mean, Eigen::MatrixXd const & covar) Eigen::MatrixXd operator() () Public Attributes Name Eigen::VectorXd mean Eigen::MatrixXd transform boost::mt19937 gen boost::normal_distribution dist Public Functions Documentation function MultiVariateNormalRandom inline MultiVariateNormalRandom ( Eigen :: MatrixXd const & covar ) function MultiVariateNormalRandom inline MultiVariateNormalRandom ( Eigen :: VectorXd const & mean , Eigen :: MatrixXd const & covar ) function operator() inline Eigen :: MatrixXd operator ()() Public Attributes Documentation variable mean Eigen :: VectorXd mean ; variable transform Eigen :: MatrixXd transform ; variable gen boost :: mt19937 gen { 42 }; variable dist boost :: normal_distribution dist ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::MultiVariateNormalRandom"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#shapeworksmultivariatenormalrandom","text":"","title":"shapeworks::MultiVariateNormalRandom"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#public-functions","text":"Name MultiVariateNormalRandom (Eigen::MatrixXd const & covar) MultiVariateNormalRandom (Eigen::VectorXd const & mean, Eigen::MatrixXd const & covar) Eigen::MatrixXd operator() ()","title":"Public Functions"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#public-attributes","text":"Name Eigen::VectorXd mean Eigen::MatrixXd transform boost::mt19937 gen boost::normal_distribution dist","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#function-multivariatenormalrandom","text":"inline MultiVariateNormalRandom ( Eigen :: MatrixXd const & covar )","title":"function MultiVariateNormalRandom"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#function-multivariatenormalrandom_1","text":"inline MultiVariateNormalRandom ( Eigen :: VectorXd const & mean , Eigen :: MatrixXd const & covar )","title":"function MultiVariateNormalRandom"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#function-operator","text":"inline Eigen :: MatrixXd operator ()()","title":"function operator()"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#variable-mean","text":"Eigen :: VectorXd mean ;","title":"variable mean"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#variable-transform","text":"Eigen :: MatrixXd transform ;","title":"variable transform"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#variable-gen","text":"boost :: mt19937 gen { 42 };","title":"variable gen"},{"location":"api/Classes/structshapeworks_1_1MultiVariateNormalRandom.html#variable-dist","text":"boost :: normal_distribution dist ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable dist"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html","text":"shapeworks::Observer::DefinedCallbacksStruct More... #include Public Functions Name DefinedCallbacksStruct () Public Attributes Name bool DomainAddEvent bool TransformSetEvent bool PrefixTransformSetEvent bool NeighborhoodSetEvent bool PositionSetEvent bool PositionAddEvent bool PositionRemoveEvent Detailed Description struct shapeworks :: Observer :: DefinedCallbacksStruct ; Data structure indicating which callback functions are defined by a subclass. The ParticleSystem class will reference this structure to determine which callbacks to register. Public Functions Documentation function DefinedCallbacksStruct inline DefinedCallbacksStruct () Public Attributes Documentation variable DomainAddEvent bool DomainAddEvent ; variable TransformSetEvent bool TransformSetEvent ; variable PrefixTransformSetEvent bool PrefixTransformSetEvent ; variable NeighborhoodSetEvent bool NeighborhoodSetEvent ; variable PositionSetEvent bool PositionSetEvent ; variable PositionAddEvent bool PositionAddEvent ; variable PositionRemoveEvent bool PositionRemoveEvent ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::Observer::DefinedCallbacksStruct"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#shapeworksobserverdefinedcallbacksstruct","text":"More... #include ","title":"shapeworks::Observer::DefinedCallbacksStruct"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#public-functions","text":"Name DefinedCallbacksStruct ()","title":"Public Functions"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#public-attributes","text":"Name bool DomainAddEvent bool TransformSetEvent bool PrefixTransformSetEvent bool NeighborhoodSetEvent bool PositionSetEvent bool PositionAddEvent bool PositionRemoveEvent","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#detailed-description","text":"struct shapeworks :: Observer :: DefinedCallbacksStruct ; Data structure indicating which callback functions are defined by a subclass. The ParticleSystem class will reference this structure to determine which callbacks to register.","title":"Detailed Description"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#function-definedcallbacksstruct","text":"inline DefinedCallbacksStruct ()","title":"function DefinedCallbacksStruct"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#variable-domainaddevent","text":"bool DomainAddEvent ;","title":"variable DomainAddEvent"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#variable-transformsetevent","text":"bool TransformSetEvent ;","title":"variable TransformSetEvent"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#variable-prefixtransformsetevent","text":"bool PrefixTransformSetEvent ;","title":"variable PrefixTransformSetEvent"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#variable-neighborhoodsetevent","text":"bool NeighborhoodSetEvent ;","title":"variable NeighborhoodSetEvent"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#variable-positionsetevent","text":"bool PositionSetEvent ;","title":"variable PositionSetEvent"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#variable-positionaddevent","text":"bool PositionAddEvent ;","title":"variable PositionAddEvent"},{"location":"api/Classes/structshapeworks_1_1Observer_1_1DefinedCallbacksStruct.html#variable-positionremoveevent","text":"bool PositionRemoveEvent ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable PositionRemoveEvent"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html","text":"shapeworks::ParticlePointIndexPair More... #include Public Types Name typedef itk::Point< double, 3 > PointType Public Functions Name ParticlePointIndexPair () ParticlePointIndexPair (const PointType & p, unsigned int i =0) ParticlePointIndexPair (const ParticlePointIndexPair & o) const ParticlePointIndexPair & operator= (const ParticlePointIndexPair & o) Public Attributes Name PointType Point unsigned int Index Detailed Description struct shapeworks :: ParticlePointIndexPair ; Struct containing a Point and an index value associated with a point. This object is used mainly by [ParticleNeighborhood.h] Public Types Documentation typedef PointType typedef itk :: Point < double , 3 > shapeworks :: ParticlePointIndexPair :: PointType ; Public Functions Documentation function ParticlePointIndexPair inline ParticlePointIndexPair () function ParticlePointIndexPair inline ParticlePointIndexPair ( const PointType & p , unsigned int i = 0 ) function ParticlePointIndexPair inline ParticlePointIndexPair ( const ParticlePointIndexPair & o ) function operator= inline const ParticlePointIndexPair & operator = ( const ParticlePointIndexPair & o ) Public Attributes Documentation variable Point PointType Point ; variable Index unsigned int Index ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticlePointIndexPair"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#shapeworksparticlepointindexpair","text":"More... #include ","title":"shapeworks::ParticlePointIndexPair"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#public-types","text":"Name typedef itk::Point< double, 3 > PointType","title":"Public Types"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#public-functions","text":"Name ParticlePointIndexPair () ParticlePointIndexPair (const PointType & p, unsigned int i =0) ParticlePointIndexPair (const ParticlePointIndexPair & o) const ParticlePointIndexPair & operator= (const ParticlePointIndexPair & o)","title":"Public Functions"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#public-attributes","text":"Name PointType Point unsigned int Index","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#detailed-description","text":"struct shapeworks :: ParticlePointIndexPair ; Struct containing a Point and an index value associated with a point. This object is used mainly by [ParticleNeighborhood.h]","title":"Detailed Description"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#typedef-pointtype","text":"typedef itk :: Point < double , 3 > shapeworks :: ParticlePointIndexPair :: PointType ;","title":"typedef PointType"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#function-particlepointindexpair","text":"inline ParticlePointIndexPair ()","title":"function ParticlePointIndexPair"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#function-particlepointindexpair_1","text":"inline ParticlePointIndexPair ( const PointType & p , unsigned int i = 0 )","title":"function ParticlePointIndexPair"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#function-particlepointindexpair_2","text":"inline ParticlePointIndexPair ( const ParticlePointIndexPair & o )","title":"function ParticlePointIndexPair"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#function-operator","text":"inline const ParticlePointIndexPair & operator = ( const ParticlePointIndexPair & o )","title":"function operator="},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#variable-point","text":"PointType Point ;","title":"variable Point"},{"location":"api/Classes/structshapeworks_1_1ParticlePointIndexPair.html#variable-index","text":"unsigned int Index ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable Index"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html","text":"shapeworks::ParticleRegionNeighborhood::IteratorNodePair More... #include Public Types Name typedef PointTreeType::NodePointerType NodePointerType typedef PointTreeType::PointListType::iterator IteratorType Public Functions Name IteratorNodePair () ~IteratorNodePair () IteratorNodePair (const IteratorType & p, const NodePointerType & n) IteratorNodePair (const IteratorNodePair & o) const IteratorNodePair & operator= (const IteratorNodePair & o) Public Attributes Name IteratorType Iterator NodePointerType NodePointer Detailed Description struct shapeworks :: ParticleRegionNeighborhood :: IteratorNodePair ; Map for direct reference of PointIndexPairs and Tree nodes from the PointTree. This is used for fast removal or modification of point values. Public Types Documentation typedef NodePointerType typedef PointTreeType :: NodePointerType shapeworks :: ParticleRegionNeighborhood :: IteratorNodePair :: NodePointerType ; typedef IteratorType typedef PointTreeType :: PointListType :: iterator shapeworks :: ParticleRegionNeighborhood :: IteratorNodePair :: IteratorType ; Public Functions Documentation function IteratorNodePair inline IteratorNodePair () function ~IteratorNodePair inline ~ IteratorNodePair () function IteratorNodePair inline IteratorNodePair ( const IteratorType & p , const NodePointerType & n ) function IteratorNodePair inline IteratorNodePair ( const IteratorNodePair & o ) function operator= inline const IteratorNodePair & operator = ( const IteratorNodePair & o ) Public Attributes Documentation variable Iterator IteratorType Iterator ; variable NodePointer NodePointerType NodePointer ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::ParticleRegionNeighborhood::IteratorNodePair"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#shapeworksparticleregionneighborhooditeratornodepair","text":"More... #include ","title":"shapeworks::ParticleRegionNeighborhood::IteratorNodePair"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#public-types","text":"Name typedef PointTreeType::NodePointerType NodePointerType typedef PointTreeType::PointListType::iterator IteratorType","title":"Public Types"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#public-functions","text":"Name IteratorNodePair () ~IteratorNodePair () IteratorNodePair (const IteratorType & p, const NodePointerType & n) IteratorNodePair (const IteratorNodePair & o) const IteratorNodePair & operator= (const IteratorNodePair & o)","title":"Public Functions"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#public-attributes","text":"Name IteratorType Iterator NodePointerType NodePointer","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#detailed-description","text":"struct shapeworks :: ParticleRegionNeighborhood :: IteratorNodePair ; Map for direct reference of PointIndexPairs and Tree nodes from the PointTree. This is used for fast removal or modification of point values.","title":"Detailed Description"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#public-types-documentation","text":"","title":"Public Types Documentation"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#typedef-nodepointertype","text":"typedef PointTreeType :: NodePointerType shapeworks :: ParticleRegionNeighborhood :: IteratorNodePair :: NodePointerType ;","title":"typedef NodePointerType"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#typedef-iteratortype","text":"typedef PointTreeType :: PointListType :: iterator shapeworks :: ParticleRegionNeighborhood :: IteratorNodePair :: IteratorType ;","title":"typedef IteratorType"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#function-iteratornodepair","text":"inline IteratorNodePair ()","title":"function IteratorNodePair"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#function-iteratornodepair_1","text":"inline ~ IteratorNodePair ()","title":"function ~IteratorNodePair"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#function-iteratornodepair_2","text":"inline IteratorNodePair ( const IteratorType & p , const NodePointerType & n )","title":"function IteratorNodePair"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#function-iteratornodepair_3","text":"inline IteratorNodePair ( const IteratorNodePair & o )","title":"function IteratorNodePair"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#function-operator","text":"inline const IteratorNodePair & operator = ( const IteratorNodePair & o )","title":"function operator="},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#variable-iterator","text":"IteratorType Iterator ;","title":"variable Iterator"},{"location":"api/Classes/structshapeworks_1_1ParticleRegionNeighborhood_1_1IteratorNodePair.html#variable-nodepointer","text":"NodePointerType NodePointer ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable NodePointer"},{"location":"api/Classes/structshapeworks_1_1Reconstruction.html","text":"shapeworks::Reconstruction Public Attributes Name double dist int shapeIdx Eigen::MatrixXd rec Public Attributes Documentation variable dist double dist ; variable shapeIdx int shapeIdx ; variable rec Eigen :: MatrixXd rec ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Reconstruction"},{"location":"api/Classes/structshapeworks_1_1Reconstruction.html#shapeworksreconstruction","text":"","title":"shapeworks::Reconstruction"},{"location":"api/Classes/structshapeworks_1_1Reconstruction.html#public-attributes","text":"Name double dist int shapeIdx Eigen::MatrixXd rec","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1Reconstruction.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1Reconstruction.html#variable-dist","text":"double dist ;","title":"variable dist"},{"location":"api/Classes/structshapeworks_1_1Reconstruction.html#variable-shapeidx","text":"int shapeIdx ;","title":"variable shapeIdx"},{"location":"api/Classes/structshapeworks_1_1Reconstruction.html#variable-rec","text":"Eigen :: MatrixXd rec ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable rec"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html","text":"shapeworks::Sampler::CuttingPlaneType More... #include Public Attributes Name vnl_vector_fixed< double, 3 > a vnl_vector_fixed< double, 3 > b vnl_vector_fixed< double, 3 > c Detailed Description struct shapeworks :: Sampler :: CuttingPlaneType ; Convenient typedef for storing cutting plane information Public Attributes Documentation variable a vnl_vector_fixed < double , 3 > a ; variable b vnl_vector_fixed < double , 3 > b ; variable c vnl_vector_fixed < double , 3 > c ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Sampler::CuttingPlaneType"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html#shapeworkssamplercuttingplanetype","text":"More... #include ","title":"shapeworks::Sampler::CuttingPlaneType"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html#public-attributes","text":"Name vnl_vector_fixed< double, 3 > a vnl_vector_fixed< double, 3 > b vnl_vector_fixed< double, 3 > c","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html#detailed-description","text":"struct shapeworks :: Sampler :: CuttingPlaneType ; Convenient typedef for storing cutting plane information","title":"Detailed Description"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html#variable-a","text":"vnl_vector_fixed < double , 3 > a ;","title":"variable a"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html#variable-b","text":"vnl_vector_fixed < double , 3 > b ;","title":"variable b"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1CuttingPlaneType.html#variable-c","text":"vnl_vector_fixed < double , 3 > c ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable c"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1SphereType.html","text":"shapeworks::Sampler::SphereType More... #include Public Attributes Name vnl_vector_fixed< double, Dimension > center double radius Detailed Description struct shapeworks :: Sampler :: SphereType ; Convenient typedef for storing sphere information Public Attributes Documentation variable center vnl_vector_fixed < double , Dimension > center ; variable radius double radius ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::Sampler::SphereType"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1SphereType.html#shapeworkssamplerspheretype","text":"More... #include ","title":"shapeworks::Sampler::SphereType"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1SphereType.html#public-attributes","text":"Name vnl_vector_fixed< double, Dimension > center double radius","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1SphereType.html#detailed-description","text":"struct shapeworks :: Sampler :: SphereType ; Convenient typedef for storing sphere information","title":"Detailed Description"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1SphereType.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1SphereType.html#variable-center","text":"vnl_vector_fixed < double , Dimension > center ;","title":"variable center"},{"location":"api/Classes/structshapeworks_1_1Sampler_1_1SphereType.html#variable-radius","text":"double radius ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable radius"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html","text":"shapeworks::SharedCommandData Public Functions Name bool validImage () const bool validMesh () const bool validParticleSystem () const Public Attributes Name Image image std::unique_ptr< Mesh > mesh PhysicalRegion region ParticleSystemEvaluation particleSystem Field field Public Functions Documentation function validImage inline bool validImage () const function validMesh inline bool validMesh () const function validParticleSystem inline bool validParticleSystem () const Public Attributes Documentation variable image Image image ; variable mesh std :: unique_ptr < Mesh > mesh ; variable region PhysicalRegion region ; variable particleSystem ParticleSystemEvaluation particleSystem ; variable field Field field ; Updated on 2023-10-24 at 22:16:02 +0000","title":"shapeworks::SharedCommandData"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#shapeworkssharedcommanddata","text":"","title":"shapeworks::SharedCommandData"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#public-functions","text":"Name bool validImage () const bool validMesh () const bool validParticleSystem () const","title":"Public Functions"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#public-attributes","text":"Name Image image std::unique_ptr< Mesh > mesh PhysicalRegion region ParticleSystemEvaluation particleSystem Field field","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#public-functions-documentation","text":"","title":"Public Functions Documentation"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#function-validimage","text":"inline bool validImage () const","title":"function validImage"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#function-validmesh","text":"inline bool validMesh () const","title":"function validMesh"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#function-validparticlesystem","text":"inline bool validParticleSystem () const","title":"function validParticleSystem"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#variable-image","text":"Image image ;","title":"variable image"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#variable-mesh","text":"std :: unique_ptr < Mesh > mesh ;","title":"variable mesh"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#variable-region","text":"PhysicalRegion region ;","title":"variable region"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#variable-particlesystem","text":"ParticleSystemEvaluation particleSystem ;","title":"variable particleSystem"},{"location":"api/Classes/structshapeworks_1_1SharedCommandData.html#variable-field","text":"Field field ; Updated on 2023-10-24 at 22:16:02 +0000","title":"variable field"},{"location":"api/Classes/structshapeworks_1_1powstruct.html","text":"shapeworks::powstruct More... #include Public Attributes Name const int c Detailed Description template < int a , int b > struct shapeworks :: powstruct ; Compute pow(a,b)=c at compile time. Public Attributes Documentation variable c static const int c = a * powstruct < a , b - 1 >:: c ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::powstruct"},{"location":"api/Classes/structshapeworks_1_1powstruct.html#shapeworkspowstruct","text":"More... #include ","title":"shapeworks::powstruct"},{"location":"api/Classes/structshapeworks_1_1powstruct.html#public-attributes","text":"Name const int c","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1powstruct.html#detailed-description","text":"template < int a , int b > struct shapeworks :: powstruct ; Compute pow(a,b)=c at compile time.","title":"Detailed Description"},{"location":"api/Classes/structshapeworks_1_1powstruct.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1powstruct.html#variable-c","text":"static const int c = a * powstruct < a , b - 1 >:: c ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable c"},{"location":"api/Classes/structshapeworks_1_1powstruct_3_01a_00_010_01_4.html","text":"shapeworks::powstruct< a, 0 > More... Public Attributes Name const int c Detailed Description template < int a > struct shapeworks :: powstruct < a , 0 > ; Public Attributes Documentation variable c static const int c = 1 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"shapeworks::powstruct< a, 0 >"},{"location":"api/Classes/structshapeworks_1_1powstruct_3_01a_00_010_01_4.html#shapeworkspowstruct-a-0","text":"More...","title":"shapeworks::powstruct< a, 0 >"},{"location":"api/Classes/structshapeworks_1_1powstruct_3_01a_00_010_01_4.html#public-attributes","text":"Name const int c","title":"Public Attributes"},{"location":"api/Classes/structshapeworks_1_1powstruct_3_01a_00_010_01_4.html#detailed-description","text":"template < int a > struct shapeworks :: powstruct < a , 0 > ;","title":"Detailed Description"},{"location":"api/Classes/structshapeworks_1_1powstruct_3_01a_00_010_01_4.html#public-attributes-documentation","text":"","title":"Public Attributes Documentation"},{"location":"api/Classes/structshapeworks_1_1powstruct_3_01a_00_010_01_4.html#variable-c","text":"static const int c = 1 ; Updated on 2023-10-24 at 22:16:01 +0000","title":"variable c"},{"location":"api/Files/AnalysisTool_8h.html","text":"Studio/Analysis/AnalysisTool.h Namespaces Name shapeworks User usage reporting (telemetry) Classes Name class shapeworks::AnalysisTool Source code #pragma once #include #include // Qt #include #include // ShapeWorks #include #include // Studio #include #include #include #include class Ui_AnalysisTool ; class JKQTPlotter ; namespace shapeworks { class Session ; class Lightbox ; class ShapeWorksStudioApp ; class GroupPvalueJob ; class NetworkAnalysisJob ; class StatsGroupLDAJob ; class ParticleAreaPanel ; class AnalysisTool : public QWidget { Q_OBJECT ; public : using AlignmentType = Analyze :: AlignmentType ; enum GroupAnalysisType { None = 0 , Pvalues = 1 , NetworkAnalysis = 2 , LDA = 3 }; enum McaMode { Vanilla , Within , Between }; using PointType = itk :: Point < double , 3 > ; AnalysisTool ( Preferences & prefs ); ~ AnalysisTool (); void set_session ( QSharedPointer < Session > session ); QSharedPointer < Session > get_session (); void set_app ( ShapeWorksStudioApp * app ); ShapeWorksStudioApp * get_app () { return app_ ; } void set_active ( bool active ); bool get_active (); bool get_group_difference_mode (); std :: vector < Shape :: Point > get_group_difference_vectors (); std :: string get_analysis_mode (); void set_analysis_mode ( std :: string mode ); void set_labels ( QString which , QString value ); int get_pca_mode (); double get_group_ratio (); double get_pca_value (); bool pca_animate (); McaMode get_mca_level () const ; int get_sample_number (); bool compute_stats (); void update_slider (); void reset_stats (); void enable_actions ( bool newly_enabled = false ); Particles get_mean_shape_points (); ShapeHandle get_mean_shape (); Particles get_shape_points ( int mode , double value ); Particles get_multi_level_shape_points ( int mode , double value , McaMode level ); ShapeHandle get_mode_shape ( int mode , double value ); ShapeHandle get_mca_mode_shape ( int mode , double value , McaMode level ); ShapeHandle get_current_shape (); ParticleShapeStatistics get_stats (); void load_settings (); void store_settings (); void shutdown (); bool export_variance_graph ( QString filename ); void compute_shape_evaluations (); static const std :: string MODE_ALL_SAMPLES_C ; static const std :: string MODE_MEAN_C ; static const std :: string MODE_PCA_C ; static const std :: string MODE_SINGLE_SAMPLE_C ; static const std :: string MODE_REGRESSION_C ; GroupAnalysisType get_group_analysis_type (); public Q_SLOTS : // analysis mode void on_tabWidget_currentChanged (); void handle_analysis_options (); void handle_median (); void on_mean_button_clicked (); void on_group1_button_clicked (); void on_group2_button_clicked (); void on_difference_button_clicked (); // PCA void on_pcaSlider_valueChanged (); void on_group_slider_valueChanged (); void on_pcaModeSpinBox_valueChanged ( int i ); void handle_pca_animate_state_changed (); void handle_pca_timer (); void handle_group_animate_state_changed (); void handle_group_timer (); void handle_reconstruction_complete (); void on_reconstructionButton_clicked (); void set_feature_map ( const std :: string & feature_map ); std :: string get_display_feature_map (); void group_changed (); bool groups_active (); void on_view_open_button_toggled (); void on_surface_open_button_toggled (); void on_metrics_open_button_toggled (); bool is_group_active ( int shape_index ); void reconstruction_method_changed (); void initialize_mesh_warper (); void group_p_values_clicked (); void network_analysis_clicked (); void handle_eval_thread_complete ( ShapeEvaluationJob :: JobType job_type , Eigen :: VectorXd data ); void handle_eval_thread_progress ( ShapeEvaluationJob :: JobType job_type , float progress ); void handle_eval_particle_normals_progress ( float progress ); void handle_eval_particle_normals_complete ( std :: vector < bool > good_bad ); void handle_group_pvalues_complete (); void handle_alignment_changed ( int new_alignment ); void run_good_bad_particles (); void handle_lda_progress ( double progress ); void handle_lda_complete (); void handle_network_analysis_progress ( int progress ); void handle_network_analysis_complete (); void show_difference_to_mean_clicked (); void group_analysis_combo_changed (); Q_SIGNALS : void update_view (); void pca_update (); void progress ( int ); void reconstruction_complete (); private : void create_plot ( JKQTPlotter * plot , Eigen :: VectorXd data , QString title , QString x_label , QString y_label ); void compute_reconstructed_domain_transforms (); bool active_ = false ; void pca_labels_changed ( QString value , QString eigen , QString lambda ); void update_analysis_mode (); void update_interface (); bool group_pvalues_valid (); bool groups_on (); Particles convert_from_combined ( const Eigen :: VectorXd & points ); void update_group_boxes (); void update_group_values (); void update_domain_alignment_box (); void update_lda_graph (); void update_difference_particles (); ShapeHandle create_shape_from_points ( Particles points ); Preferences & preferences_ ; Ui_AnalysisTool * ui_ ; QSharedPointer < Session > session_ ; ShapeWorksStudioApp * app_ ; ParticleShapeStatistics stats_ ; bool stats_ready_ = false ; bool evals_ready_ = false ; bool large_particle_disclaimer_waived_ = false ; bool skip_evals_ = false ; Eigen :: VectorXd eval_specificity_ ; Eigen :: VectorXd eval_compactness_ ; Eigen :: VectorXd eval_generalization_ ; vnl_vector < double > empty_shape_ ; Eigen :: VectorXd temp_shape_ ; Eigen :: VectorXd temp_shape_mca ; std :: vector < int > number_of_particles_ar ; bool pca_animate_direction_ = true ; QTimer pca_animate_timer_ ; bool group_animate_direction_ = true ; QTimer group_animate_timer_ ; ShapeHandle computed_shape_ ; ShapeList group1_list_ ; ShapeList group2_list_ ; std :: string feature_map_ ; std :: vector < std :: string > current_group_names_ ; std :: vector < std :: string > current_group_values_ ; std :: vector < vtkSmartPointer < vtkTransform >> reconstruction_transforms_ ; QSharedPointer < GroupPvalueJob > group_pvalue_job_ ; QSharedPointer < StatsGroupLDAJob > group_lda_job_ ; QSharedPointer < NetworkAnalysisJob > network_analysis_job_ ; bool group_lda_job_running_ = false ; bool lda_computed_ = false ; bool block_group_change_ = false ; AlignmentType current_alignment_ { AlignmentType :: Local }; ParticleAreaPanel * particle_area_panel_ { nullptr }; }; } // namespace shapeworks Updated on 2023-10-24 at 22:16:03 +0000","title":"Studio/Analysis/AnalysisTool.h"},{"location":"api/Files/AnalysisTool_8h.html#studioanalysisanalysistoolh","text":"","title":"Studio/Analysis/AnalysisTool.h"},{"location":"api/Files/AnalysisTool_8h.html#namespaces","text":"Name shapeworks User usage reporting (telemetry)","title":"Namespaces"},{"location":"api/Files/AnalysisTool_8h.html#classes","text":"Name class shapeworks::AnalysisTool","title":"Classes"},{"location":"api/Files/AnalysisTool_8h.html#source-code","text":"#pragma once #include #include // Qt #include #include // ShapeWorks #include #include // Studio #include #include #include #include