mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-09-08 13:23:51 +00:00
There are occasions when you need a worklet to opeate on 2D or 3D indices. Most worklets operate on 1D indices, which requires recomputing the 3D index in each worklet instance. A workaround is to use a worklet that does a 3D scheduling and pull the working index from that. The problem was that there was no easy way to get this 3D index. To provide this option, a feature was added to the `BoundaryState` class that can be provided by `WorkletPointNeighborhood`. Thus, to get a 3D index in a worklet, use the `WorkletPointNeighborhood`, add `Boundary` as an argument to the `ExecutionSignature`, and then call `GetCenterIndex` on the `BoundaryState` object passed to the worklet operator. |
||
---|---|---|
.. | ||
cont | ||
exec | ||
filter | ||
internal | ||
interop | ||
io | ||
random | ||
rendering | ||
source | ||
testing | ||
thirdparty | ||
worklet | ||
.gitattributes | ||
Assert.h | ||
Atomic.h | ||
BinaryOperators.h | ||
BinaryPredicates.h | ||
Bitset.h | ||
Bounds.h | ||
CellClassification.h | ||
CellShape.h | ||
CellTraits.h | ||
CMakeLists.txt | ||
Deprecated.h | ||
ErrorCode.h | ||
Flags.h | ||
Geometry.h | ||
Geometry.hxx | ||
Hash.h | ||
ImplicitFunction.h | ||
List.h | ||
LowerBound.h | ||
Math.h | ||
Math.h.in | ||
Matrix.h | ||
NewtonsMethod.h | ||
Pair.h | ||
Particle.h | ||
Range.h | ||
RangeId2.h | ||
RangeId3.h | ||
RangeId.h | ||
StaticAssert.h | ||
Swap.h | ||
TopologyElementTag.h | ||
Transform3D.h | ||
Tuple.h | ||
Tuple.h.in | ||
TypeList.h | ||
Types.h | ||
TypeTraits.h | ||
UnaryPredicates.h | ||
UpperBound.h | ||
VecAxisAlignedPointCoordinates.h | ||
VecFlat.h | ||
VecFromPortal.h | ||
VecFromPortalPermute.h | ||
VectorAnalysis.h | ||
VecTraits.h | ||
VecVariable.h | ||
Version.h.in | ||
vtkm.module |