|
VTK
9.7.20261103
|
#include <vtkUnstructuredGridSideMap.h>
the numbering of the sides shared between the cells of a vtkUnstructuredGrid
vtkUnstructuredGridSideMap gives a vtkUnstructuredGrid a dense numbering of its sides, so that a side shared by two cells has one id and therefore one tuple in the grid's side data, a vtkSideData reached through vtkUnstructuredGrid::GetSideData(). It does this without storing any side-to-point connectivity: a side's points are recovered from the cell that owns it, through vtkCellTypeSides.
The addressing is by half-side. A half-side is a (cell, local side) pair, and its id is arithmetic:
halfSide = CellSideOffsets[cellId] + localSide
Half-sides are implicit in a vtkUnstructuredGrid already; what has to be stored is which of them name the same side. That is HalfSideToSide, one dense id per half-side, and the inverse, which lists the half-sides of each side and whose first entry is the side's representative.
Every query is O(1):
GetCellSide(cellId, localSide) -> side id GetSidePoints(sideId, ptIds) -> the representative's winding GetSideCells(sideId, cellIds) -> the incident cells GetSideOrientation(cellId, localSide) -> +1 or -1
VTK's canonical face and edge templates are consistently outward-oriented, so the two cells sharing a side traverse it in opposite directions. GetSidePoints() returns the representative cell's traversal, which is that cell's outward winding; the other cell sees it reversed. GetSideOrientation() reports which case a given cell is in, so no orientation array is stored.
Side data with a sign, such as a flux or the normal component of a velocity, is relative to the representative cell's outward normal, the winding GetSidePoints() returns. A reader whose file measures it from another cell negates the values of the sides where GetSideOrientation() is -1 for that cell.
The structure costs nothing until asked for. BuildMap() runs on demand and is re-run when the grid's topology changes. Two modes:
Once the side data holds anything, the numbering is pinned either way: a fresh derived build would be a different permutation and would silently transpose every value. A change of topology drops the numbering and the side data together, with a warning.
Both 3D and 2D cells take part. A 3D cell's sides are its faces; a 2D cell's sides are its edges. Either way they are the codimension-one boundary, so a side id means the same kind of thing in a volume mesh and in a surface mesh, and a surface mesh carries data on its edges the same way a volume mesh carries data on its faces. The sides are those of vtkCellTypeSides, read from its static tables, or from the cell for the higher-order cells. The edges of a pixel and of a higher-order quadrilateral, which follow its parametric axes, are reversed where needed to run round its boundary.
The structure depends on the topology of the grid only: moving its points keeps it, and the side data indexed by it.
Ghost cells take part like any other cell, so the numbering is per grid: a side on the boundary between two processes has an id on each of them, and there is no global side numbering.
BuildMap() is not thread safe, and every query calls it. Build the structure from one thread, e.g., by calling GetNumberOfSides(), before reading it from several; the queries are then thread safe as long as the grid's topology is not modified.
Definition at line 113 of file vtkUnstructuredGridSideMap.h.
Classes | |
| struct | IdColumn |
| One column of the structure, kept in the narrowest integer type its values fit in and read through a raw pointer. More... | |
Public Types | |
| typedef vtkObject | Superclass |
Public Member Functions | |
| virtual vtkTypeBool | IsA (const char *type) |
| Return 1 if this class is the same type of (or a subclass of) the named class. | |
| vtkUnstructuredGridSideMap * | NewInstance () const |
| void | PrintSelf (ostream &os, vtkIndent indent) override |
| Methods invoked by print to print information about the object including superclasses. | |
| bool | UsesGarbageCollector () const override |
| Indicate whether the class uses vtkGarbageCollector or not. | |
| void | BuildMap () |
| Build the side map if it is not up to date with the grid's topology. | |
| bool | IsMapBuilt () |
| Whether the side map is built and up to date. | |
| void | SetSideIds (vtkDataArray *halfSideToSide, vtkIdType numberOfSides) |
| Supply the side numbering rather than deriving one. | |
| virtual bool | GetAuthored () |
| Whether the numbering was supplied rather than derived. | |
| vtkIdType | GetNumberOfCellSides (vtkIdType cellId) |
| The number of sides of a cell: its faces for a 3D cell, its edges for a 2D cell, 0 otherwise. | |
| vtkIdType | GetHalfSideId (vtkIdType cellId, vtkIdType localSide) |
| The half-side id of side localSide of cell cellId, i.e., CellSideOffsets[cellId] + localSide, or -1 if there is no such side. | |
| void | GetSidePoints (vtkIdType sideId, vtkIdList *ptIds, vtkIdList *tempCellPointIds, vtkGenericCell *tempCell) |
| The points of a side, in the winding of the cell that represents it, which is that cell's outward winding. | |
| void | GetSideCells (vtkIdType sideId, vtkIdList *cellIds) |
| The cells incident on a side: one for a boundary side, two for an interior side of a conforming mesh, more where the mesh is non-manifold. | |
| int | GetSideOrientation (vtkIdType cellId, vtkIdType localSide) |
| +1 when this cell traverses the side the way GetSidePoints() returns it, -1 when it traverses it the other way. | |
| vtkIdType | CheckWindingConsistency (vtkIdList *offendingSides=nullptr) |
| Count the sides whose two cells traverse them the same way round, which they should not, and optionally list them. | |
| void | GetCellNeighbors (vtkIdType cellId, vtkIdList *neighborCellIds) |
| The cells that share a side with this one. | |
| void | Initialize () |
| Drop the side map and any supplied numbering. | |
| unsigned long | GetActualMemorySize () |
| Kibibytes held by the side structure. | |
| void | SetDataSet (vtkUnstructuredGrid *dataSet) |
| The grid these sides belong to. | |
| vtkUnstructuredGrid * | GetDataSet () |
| The grid these sides belong to. | |
| vtkIdType | GetNumberOfSides () |
| Sizes. | |
| vtkIdType | GetNumberOfHalfSides () |
| Sizes. | |
| vtkIdType | GetCellSide (vtkIdType cellId, vtkIdType localSide) |
| The side id of side localSide of cell cellId, i.e., HalfSideToSide[GetHalfSideId(cellId, localSide)], or -1 if there is no such side. | |
| void | GetCellSides (vtkIdType cellId, vtkIdList *sideIds) |
| The side id of side localSide of cell cellId, i.e., HalfSideToSide[GetHalfSideId(cellId, localSide)], or -1 if there is no such side. | |
| void | ShallowCopy (vtkUnstructuredGridSideMap *other) |
| ShallowCopy shares the structure; DeepCopy takes its own. | |
| void | DeepCopy (vtkUnstructuredGridSideMap *other) |
| ShallowCopy shares the structure; DeepCopy takes its own. | |
| vtkDataArray * | GetCellSideOffsets () |
| Direct access to the arrays, for filters that walk them rather than call the accessors. | |
| vtkDataArray * | GetHalfSideToSide () |
| Direct access to the arrays, for filters that walk them rather than call the accessors. | |
| vtkDataArray * | GetSideOffsets () |
| Direct access to the arrays, for filters that walk them rather than call the accessors. | |
| vtkDataArray * | GetSideCellsArray () |
| Direct access to the arrays, for filters that walk them rather than call the accessors. | |
| vtkDataArray * | GetSideLocalSidesArray () |
| Direct access to the arrays, for filters that walk them rather than call the accessors. | |
| Public Member Functions inherited from vtkObject | |
| vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
| virtual void | DebugOn () |
| Turn debugging output on. | |
| virtual void | DebugOff () |
| Turn debugging output off. | |
| bool | GetDebug () |
| Get the value of the debug flag. | |
| void | SetDebug (bool debugFlag) |
| Set the value of the debug flag. | |
| virtual void | Modified () |
| Update the modification time for this object. | |
| virtual vtkMTimeType | GetMTime () |
| Return this object's modified time. | |
| void | RemoveObserver (unsigned long tag) |
| void | RemoveObservers (unsigned long event) |
| void | RemoveObservers (const char *event) |
| void | RemoveAllObservers () |
| vtkTypeBool | HasObserver (unsigned long event) |
| vtkTypeBool | HasObserver (const char *event) |
| vtkTypeBool | InvokeEvent (unsigned long event) |
| vtkTypeBool | InvokeEvent (const char *event) |
| std::string | GetObjectDescription () const override |
| The object description printed in messages and PrintSelf output. | |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| vtkCommand * | GetCommand (unsigned long tag) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| void | RemoveObserver (vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| void | RemoveObservers (unsigned long event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| void | RemoveObservers (const char *event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
| template<class U, class T> | |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
| template<class U, class T> | |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
| template<class U, class T> | |
| unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| Allow user to set the AbortFlagOn() with the return value of the callback method. | |
| vtkTypeBool | InvokeEvent (unsigned long event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. | |
| vtkTypeBool | InvokeEvent (const char *event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. | |
| virtual void | SetObjectName (const std::string &objectName) |
| Set/get the name of this object for reporting purposes. | |
| virtual std::string | GetObjectName () const |
| Set/get the name of this object for reporting purposes. | |
| Public Member Functions inherited from vtkObjectBase | |
| const char * | GetClassName () const |
| Return the class name as a string. | |
| virtual vtkIdType | GetNumberOfGenerationsFromBase (const char *name) |
| Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
| virtual void | Delete () |
| Delete a VTK object. | |
| virtual void | FastDelete () |
| Delete a reference to this object. | |
| void | InitializeObjectBase () |
| void | Print (ostream &os) |
| Print an object to an ostream. | |
| void | Register (vtkObjectBase *o) |
| Increase the reference count (mark as used by another object). | |
| virtual void | UnRegister (vtkObjectBase *o) |
| Decrease the reference count (release by another object). | |
| int | GetReferenceCount () |
| Return the current reference count of this object. | |
| void | SetReferenceCount (int) |
| Sets the reference count. | |
| bool | GetIsInMemkind () const |
| A local state flag that remembers whether this object lives in the normal or extended memory space. | |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. | |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. | |
Static Public Member Functions | |
| static vtkUnstructuredGridSideMap * | New () |
| static vtkTypeBool | IsTypeOf (const char *type) |
| static vtkUnstructuredGridSideMap * | SafeDownCast (vtkObjectBase *o) |
| Static Public Member Functions inherited from vtkObject | |
| static vtkObject * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
| static void | BreakOnError () |
| This method is called when vtkErrorMacro executes. | |
| static void | SetGlobalWarningDisplay (vtkTypeBool val) |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
| static void | GlobalWarningDisplayOn () |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
| static void | GlobalWarningDisplayOff () |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
| static vtkTypeBool | GetGlobalWarningDisplay () |
| This is a global flag that controls whether any debug, warning or error messages are displayed. | |
| Static Public Member Functions inherited from vtkObjectBase | |
| static vtkTypeBool | IsTypeOf (const char *name) |
| Return 1 if this class type is the same type of (or a subclass of) the named class. | |
| static vtkIdType | GetNumberOfGenerationsFromBaseType (const char *name) |
| Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
| static vtkObjectBase * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
| static void | SetMemkindDirectory (const char *directoryname) |
| The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. | |
| static bool | GetUsingMemkind () |
| A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. | |
Protected Member Functions | |
| virtual vtkObjectBase * | NewInstanceInternal () const |
| vtkUnstructuredGridSideMap () | |
| ~vtkUnstructuredGridSideMap () override | |
| void | ReportReferences (vtkGarbageCollector *) override |
| bool | BuildCellSideOffsets () |
| void | DeriveSideIds () |
| void | BuildInverse () |
| void | ClearStructure () |
| bool | HasSideData () |
| Protected Member Functions inherited from vtkObject | |
| vtkObject () | |
| ~vtkObject () override | |
| void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
| void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
| void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
| These methods allow a command to exclusively grab all events. | |
| void | InternalReleaseFocus () |
| These methods allow a command to exclusively grab all events. | |
| Protected Member Functions inherited from vtkObjectBase | |
| vtkObjectBase () | |
| virtual | ~vtkObjectBase () |
| vtkObjectBase (const vtkObjectBase &) | |
| void | operator= (const vtkObjectBase &) |
Protected Attributes | |
| vtkUnstructuredGrid * | DataSet = nullptr |
| IdColumn | CellSideOffsets |
| IdColumn | HalfSideToSide |
| IdColumn | SideOffsets |
| IdColumn | SideCells |
| IdColumn | SideLocalSides |
| vtkIdType | NumberOfSides = 0 |
| vtkIdType | NumberOfHalfSides = 0 |
| bool | Authored = false |
| vtkTimeStamp | BuildTime |
| Protected Attributes inherited from vtkObject | |
| bool | Debug |
| vtkTimeStamp | MTime |
| vtkSubjectHelper * | SubjectHelper |
| std::string | ObjectName |
| Protected Attributes inherited from vtkObjectBase | |
| std::atomic< int32_t > | ReferenceCount |
| vtkWeakPointerBase ** | WeakPointers |
Additional Inherited Members | |
| Static Protected Member Functions inherited from vtkObjectBase | |
| static vtkMallocingFunction | GetCurrentMallocFunction () |
| static vtkReallocingFunction | GetCurrentReallocFunction () |
| static vtkFreeingFunction | GetCurrentFreeFunction () |
| static vtkFreeingFunction | GetAlternateFreeFunction () |
Definition at line 117 of file vtkUnstructuredGridSideMap.h.
|
protected |
|
overrideprotected |
|
static |
|
static |
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class.
Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObjectBase.
|
static |
|
protectedvirtual |
| vtkUnstructuredGridSideMap * vtkUnstructuredGridSideMap::NewInstance | ( | ) | const |
|
overridevirtual |
| void vtkUnstructuredGridSideMap::SetDataSet | ( | vtkUnstructuredGrid * | dataSet | ) |
The grid these sides belong to.
Setting another grid drops the structure. The grid is reported to the garbage collector, since a grid holds its side map, see ReportReferences().
| vtkUnstructuredGrid * vtkUnstructuredGridSideMap::GetDataSet | ( | ) |
The grid these sides belong to.
Setting another grid drops the structure. The grid is reported to the garbage collector, since a grid holds its side map, see ReportReferences().
|
inlineoverridevirtual |
Indicate whether the class uses vtkGarbageCollector or not.
Most classes will not need to do this, but if the class participates in a strongly-connected reference count cycle, participation can resolve these cycles.
If overriding this method to return true, the ReportReferences method should be overridden to report references that may be in cycles.
Reimplemented from vtkObjectBase.
Definition at line 130 of file vtkUnstructuredGridSideMap.h.
| void vtkUnstructuredGridSideMap::BuildMap | ( | ) |
Build the side map if it is not up to date with the grid's topology.
Called by every query, so there is normally no reason to call it directly.
| bool vtkUnstructuredGridSideMap::IsMapBuilt | ( | ) |
Whether the side map is built and up to date.
Does not build it.
| void vtkUnstructuredGridSideMap::SetSideIds | ( | vtkDataArray * | halfSideToSide, |
| vtkIdType | numberOfSides ) |
Supply the side numbering rather than deriving one.
halfSideToSide holds one side id per half-side, in half-side order, and the ids must cover [0, numberOfSides). No matching pass runs, so the caller is trusted: two half-sides given the same id are taken to be the same side.
This is how a reader keeps the file's own side numbering, so that data dimensioned on sides reads straight in with no permutation. The representative of each side is still its lowest half-side, so signed side data has to be measured from that cell, as the class description says.
|
virtual |
Whether the numbering was supplied rather than derived.
An authored numbering is data: it has to be copied and serialized, not recomputed.
| vtkIdType vtkUnstructuredGridSideMap::GetNumberOfSides | ( | ) |
Sizes.
| vtkIdType vtkUnstructuredGridSideMap::GetNumberOfHalfSides | ( | ) |
Sizes.
The number of sides of a cell: its faces for a 3D cell, its edges for a 2D cell, 0 otherwise.
The half-side id of side localSide of cell cellId, i.e., CellSideOffsets[cellId] + localSide, or -1 if there is no such side.
Each cell has its own half-sides, so two cells sharing a side have different half-side ids for it. A half-side id indexes HalfSideToSide.
The side id of side localSide of cell cellId, i.e., HalfSideToSide[GetHalfSideId(cellId, localSide)], or -1 if there is no such side.
Two cells sharing a side get the same side id, which indexes the side data. GetCellSides() gives the side ids of all the sides of a cell, in local side order.
The side id of side localSide of cell cellId, i.e., HalfSideToSide[GetHalfSideId(cellId, localSide)], or -1 if there is no such side.
Two cells sharing a side get the same side id, which indexes the side data. GetCellSides() gives the side ids of all the sides of a cell, in local side order.
| void vtkUnstructuredGridSideMap::GetSidePoints | ( | vtkIdType | sideId, |
| vtkIdList * | ptIds, | ||
| vtkIdList * | tempCellPointIds, | ||
| vtkGenericCell * | tempCell ) |
The points of a side, in the winding of the cell that represents it, which is that cell's outward winding.
A cell holding the side the other way sees these points reversed; GetSideOrientation() says which. tempCellPointIds and tempCell are scratch objects of the caller, e.g., one per thread.
The cells incident on a side: one for a boundary side, two for an interior side of a conforming mesh, more where the mesh is non-manifold.
The first is the representative, whose winding GetSidePoints() returns.
+1 when this cell traverses the side the way GetSidePoints() returns it, -1 when it traverses it the other way.
Derived from the structure rather than stored.
For the sign to mean outward, the two cells sharing a side have to traverse it opposite ways. For 3D cells that follows from the type: VTK's canonical face templates are outward-wound, so a correctly ordered cell cannot get it wrong. For 2D cells it does not: an edge's direction only means anything relative to the neighbouring cell, so it is the mesh that has to be consistently wound, not each cell in isolation. On a surface mesh that comes down to the cells all being wound the same way round, which is a property of the data. CheckWindingConsistency() says whether it holds.
| vtkIdType vtkUnstructuredGridSideMap::CheckWindingConsistency | ( | vtkIdList * | offendingSides = nullptr | ) |
Count the sides whose two cells traverse them the same way round, which they should not, and optionally list them.
Returns 0 for a consistently wound mesh.
This is a diagnostic, not part of the build, because it costs a second pass over the half-sides. It is worth running once on 2D data of unknown provenance: where it reports sides, GetSideOrientation() still says which cell represents a side, but its sign no longer means outward, and a signed quantity read through it will not cancel between neighbours. Boundary and non-manifold sides are skipped, having no two-sided convention to break.
The cells that share a side with this one.
| void vtkUnstructuredGridSideMap::Initialize | ( | ) |
Drop the side map and any supplied numbering.
The next query builds it again. Refused, with a warning, while the grid's side data holds any array, because the data is indexed by this numbering.
| void vtkUnstructuredGridSideMap::ShallowCopy | ( | vtkUnstructuredGridSideMap * | other | ) |
ShallowCopy shares the structure; DeepCopy takes its own.
Neither sets the grid, because the copy belongs to whichever grid is taking it: call SetDataSet() before.
| void vtkUnstructuredGridSideMap::DeepCopy | ( | vtkUnstructuredGridSideMap * | other | ) |
ShallowCopy shares the structure; DeepCopy takes its own.
Neither sets the grid, because the copy belongs to whichever grid is taking it: call SetDataSet() before.
| vtkDataArray * vtkUnstructuredGridSideMap::GetCellSideOffsets | ( | ) |
Direct access to the arrays, for filters that walk them rather than call the accessors.
Each has one component and is a vtkUnsignedCharArray, vtkTypeInt32Array or vtkTypeInt64Array, the narrowest that holds its values, so a filter can dispatch on these three types only, e.g., with vtkArrayDispatch::DispatchByArray and vtkTypeList::Create<vtkUnsignedCharArray, vtkTypeInt32Array, vtkTypeInt64Array>. A numbering given to SetSideIds() in one of these types is returned by GetHalfSideToSide() as given; one given in any other type is copied into the narrowest of them.
| vtkDataArray * vtkUnstructuredGridSideMap::GetHalfSideToSide | ( | ) |
Direct access to the arrays, for filters that walk them rather than call the accessors.
Each has one component and is a vtkUnsignedCharArray, vtkTypeInt32Array or vtkTypeInt64Array, the narrowest that holds its values, so a filter can dispatch on these three types only, e.g., with vtkArrayDispatch::DispatchByArray and vtkTypeList::Create<vtkUnsignedCharArray, vtkTypeInt32Array, vtkTypeInt64Array>. A numbering given to SetSideIds() in one of these types is returned by GetHalfSideToSide() as given; one given in any other type is copied into the narrowest of them.
| vtkDataArray * vtkUnstructuredGridSideMap::GetSideOffsets | ( | ) |
Direct access to the arrays, for filters that walk them rather than call the accessors.
Each has one component and is a vtkUnsignedCharArray, vtkTypeInt32Array or vtkTypeInt64Array, the narrowest that holds its values, so a filter can dispatch on these three types only, e.g., with vtkArrayDispatch::DispatchByArray and vtkTypeList::Create<vtkUnsignedCharArray, vtkTypeInt32Array, vtkTypeInt64Array>. A numbering given to SetSideIds() in one of these types is returned by GetHalfSideToSide() as given; one given in any other type is copied into the narrowest of them.
| vtkDataArray * vtkUnstructuredGridSideMap::GetSideCellsArray | ( | ) |
Direct access to the arrays, for filters that walk them rather than call the accessors.
Each has one component and is a vtkUnsignedCharArray, vtkTypeInt32Array or vtkTypeInt64Array, the narrowest that holds its values, so a filter can dispatch on these three types only, e.g., with vtkArrayDispatch::DispatchByArray and vtkTypeList::Create<vtkUnsignedCharArray, vtkTypeInt32Array, vtkTypeInt64Array>. A numbering given to SetSideIds() in one of these types is returned by GetHalfSideToSide() as given; one given in any other type is copied into the narrowest of them.
| vtkDataArray * vtkUnstructuredGridSideMap::GetSideLocalSidesArray | ( | ) |
Direct access to the arrays, for filters that walk them rather than call the accessors.
Each has one component and is a vtkUnsignedCharArray, vtkTypeInt32Array or vtkTypeInt64Array, the narrowest that holds its values, so a filter can dispatch on these three types only, e.g., with vtkArrayDispatch::DispatchByArray and vtkTypeList::Create<vtkUnsignedCharArray, vtkTypeInt32Array, vtkTypeInt64Array>. A numbering given to SetSideIds() in one of these types is returned by GetHalfSideToSide() as given; one given in any other type is copied into the narrowest of them.
| unsigned long vtkUnstructuredGridSideMap::GetActualMemorySize | ( | ) |
Kibibytes held by the side structure.
|
overrideprotectedvirtual |
Reimplemented from vtkObjectBase.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Definition at line 352 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 355 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 357 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 361 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 365 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 366 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 368 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 369 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 370 of file vtkUnstructuredGridSideMap.h.
|
protected |
Definition at line 371 of file vtkUnstructuredGridSideMap.h.