You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/Plugins/SimplnxCore/docs/ApplyTransformationToGeometryFilter.md
+20-24Lines changed: 20 additions & 24 deletions
Original file line number
Diff line number
Diff line change
@@ -2,41 +2,37 @@
2
2
3
3
## Group (Subgroup)
4
4
5
-
Rotation & Transformation
5
+
Rotation, Scale & Transformation
6
6
7
7
## Description
8
8
9
-
This **Filter** applies a spatial transformation to either and unstructured **Geometry** or an ImageGeometry. An "
10
-
unstructured" **Geometry** is any geometry that requires explicit definition of **Vertex** positions. Specifically, *
11
-
*Vertex**, **Edge**, **Triangle**, **Quadrilateral**, and **Tetrahedral****Geometries** may be transformed by this *
12
-
*Filter**. The transformation is applied in place, so the input **Geometry** will be modified.
9
+
### Unstructured Grid Geometries
13
10
14
-
If the user selects an **Image Geometry** then they will need to select which kind of **Interpolation Method* will be
15
-
used when transferring the data from the old geometry to the newly transformed geometry. If the user selects *any other*
16
-
kind of geometry then the user should select the "No Interpolation" selection to disable the requirement for a *Cell Attribute Matrix*.
11
+
This **Filter** applies a spatial transformation to either and unstructured **Geometry** or an **Image Geometry**. An "unstructured" **Geometry** is any geometry that requires explicit definition of **Vertex** positions. Specifically, **Vertex**, **Edge**, **Triangle**, **Quadrilateral**, and **Tetrahedral****Geometries** may be transformed by this **Filter**. The transformation is applied in place, so the input **Geometry** will be modified.
12
+
13
+
-**NO** interpolation will take place as the only changes that take place are the actual coordinates of the vertices.
14
+
15
+
### Image Geometry
16
+
17
+
If the user selects an **Image Geometry** then there are 2 additional required filter parameters that need to be set:
18
+
19
+
-**Interpolation Method**: This will be used when transferring the data from the old geometry to the newly transformed geometry.
20
+
-**Cell Attribute Matrix**: This Attribute Matrix holds the data that is associated with each cell of the image geometry.
17
21
18
22
The linear/Bi-Linear/Tri-Linear Interpolation is adapted from the equations presented
19
23
in [https://www.cs.purdue.edu/homes/cs530/slides/04.DataStructure.pdf, page 36}](https://www.cs.purdue.edu/homes/cs530/slides/04.DataStructure.pdf)
20
24
21
25
### Caveats
22
26
23
-
- If the user selects an **unstructured** based geometry, **NO** interpolation will take place as the only changes that
24
-
take place are the actual coordinates of the vertices.
25
-
26
-
- If the user selects an **Image Geometry** then the user should select one of the *Interpolation* methods and then also
27
-
select the appropriate *Cell Attribute Matrix*.
28
-
29
-
The **Scale** and **Rotation** transformation types will automatically translate the volume to (0, 0, 0), apply the scaling/rotation,
30
-
and then translate the volume back to its original location. If the **Manual Transformation Matrix** or **Pre-Computed Transformation
31
-
Matrix** types are selected, then it is up to the user to make sure that those translations are included, if necessary.
27
+
- The **Scale** and **Rotation** transformation types will automatically translate the volume to (0, 0, 0), apply the scaling/rotation, and then translate the volume back to its original location. If the **Manual Transformation Matrix** or **Pre-Computed Transformation Matrix** types are selected, then it is up to the user to make sure that those translations are included, if necessary.
errorMessage << "* Select either 'Nearest Neighbor Resampling' or 'Linear Interpolation' from the 'Image Geometry Resampling/Interpolation' parameter section.\n";
249
+
imageGeomInterpolationError = true;
250
+
}
242
251
243
-
// For nearest neighbor we can use any data array as we are only going to copy from a hit cell, no interpolation
-82006, fmt::format("DataPath '{}' is not an Cell AttributeMatrix. Please select the Cell level AttributeMatrix of the Image Geometry", pCellAttributeMatrixPath.toString()))};
255
+
errorMessage << "* Select the Image Geometry's cell level Attribute Matrix. This will contain all the data that will be interpolated onto the new Image Geometry.";
auto warning = Warning{-5555, fmt::format("The Selected Geometry is not an image geometry, so the Attribute Matrix '{}' will not be used when applying this transformation.",
433
+
auto warning = Warning{-5555, fmt::format("The selected geometry is not an 'Image Geometry'. NO interpolation is performed on the data. The 'Cell Attribute Matrix' DataPath can be empty.",
0 commit comments