|
FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
|
Helper class to select a slice from a regular grid. More...
#include <SlicerBase.hpp>
Public Member Functions | |
| SlicerBase (int o, double theCoordinateValue) | |
| void | setFragmentSelector (const RefPtr< FragmentSelector > &theFragmentSelector) |
| virtual void | addSlices (const RefPtr< Field > &InputCoordinates, const RefPtr< Field > &InputData)=0 |
| Expand the coordinate and data fields by slices as retrieved from the input coordinates and input data. | |
Public Member Functions inherited from MemCore::ReferenceBase< SlicerBase > | |
| auto | getObjectCountID () const noexcept |
| bool | isIdentical (const WeakPtr< Object, Object > &PossibleSelf) const noexcept |
| void | mkAutoDestructive () |
| refcount_t | refcount () const noexcept |
| ReferenceBase (Object *that) noexcept | |
| const auto & | self () const |
| refcount_t | wrefcount () const noexcept |
Public Member Functions inherited from Fiber::RegularCoordinateSlice | |
| void | setup (int orient) |
| RegularCoordinateSlice (int o) | |
| MultiIndex< 3 > | getIndex (index_t x, index_t y, index_t z) const |
| double | getComponent (const Eagle::FixedArray< double, 3 > &P) const |
| bool | getRectilinearIndex (double CoordinateValue, const MemCore::RefPtr< MemBase > &CoordValues, double &CoordinateIndex) |
| Given a dataset of three-dimensional coordinate values, either uniform or rectilinear, and a coordinate value for this slice selection, compute the coordinate index that corresponds to this coordinate. | |
| bool | getRectilinearIndex (double SliceCoordinateValue, const RefPtr< Field > &Coords, const RefPtr< FragmentID > &fid, double &CoordinateIndex) |
| bool | getSliceCornerIndex (MultiIndex< 3 > &I, const MultiIndex< 3 > &DataDims, int CornerX, int CornerY, index_t sliceIndex) const |
| Given the dimensions of a three-dimensional array, compute the 3D indices of a slice. | |
| MemCore::RefPtr< MemBase > | getCoordinates (index_t sliceIndex, const MultiIndex< 3 > &DataDims, const RefPtr< Field > &Coords, const RefPtr< FragmentID > &fid) |
| template<class Dest , class Source , class Converter > | |
| void | extractData (MultiArray< 2, Dest > &DestArray, const MultiArray< 3, Source > &SrcArray, const index_t &SliceNumber, const Converter &C, const MultiIndex< 3 > &SourceOffset=MIndex(0, 0, 0)) |
| Extract data slice from the source array to a 2D destination array, whereby the destination array must be larger than or equal to the source array. | |
| bool | validDestinationSize (const MultiIndex< 3 > &Dst, index_t DestSliceNumber, const MultiIndex< 3 > &Src) |
| template<class Dest , class Source , class Converter > | |
| bool | extractDataToOriented3D (MultiArray< 3, Dest > &DestArray, index_t DestSliceNumber, const MultiArray< 3, Source > &SrcArray, index_t SliceNumber, const Converter &C) |
| Extract data slice from the source array to the destination array, whereby the destination array must be larger than or equal to the source array. | |
Public Attributes | |
| const double | myCoordinateValue |
| RefPtr< Field > | OutputCoordinates |
| The output coordinates of the 2D slice. | |
| RefPtr< Field > | OutputData |
| The output coordinates of the 2D slice. | |
| RefPtr< FragmentSelector > | myFragmentSelector |
Public Attributes inherited from Fiber::RegularCoordinateSlice | |
| int | X |
| int | Y |
| int | Z |
Additional Inherited Members | |
Public Types inherited from MemCore::ReferenceBase< SlicerBase > | |
| typedef Object | reference_domain_t |
| typedef WeakPtr< Object, Object > | SelfPtr_t |
Protected Member Functions inherited from MemCore::ReferenceBase< SlicerBase > | |
| virtual void | extremeUnction () |
| ReferenceBase & | operator= (const ReferenceBase &R) |
| void | suicide () |
Helper class to select a slice from a regular grid.
|
pure virtual |
Expand the coordinate and data fields by slices as retrieved from the input coordinates and input data.
This function accumulates slices from all the fragments in the input data.
Implemented in Fiber::Slicer< Converter, InputTypes >, and Fiber::RangedFloatSlicer.