ActiViz .NET  5.8.0
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Static Private Member Functions
Kitware.VTK.vtkPKdTree Class Reference

vtkPKdTree - Build a k-d tree decomposition of a list of points. More...

Inheritance diagram for Kitware.VTK.vtkPKdTree:
[legend]
Collaboration diagram for Kitware.VTK.vtkPKdTree:
[legend]

List of all members.

Public Member Functions

 vtkPKdTree (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkPKdTree ()
 *Undocumented Block
int AssignRegions (IntPtr map, int numRegions)
 Assign spatial regions to processes via a user defined map. The user-supplied map is indexed by region ID, and provides a process ID for each region.
int AssignRegionsContiguous ()
 Let the PKdTree class assign a process to each region by assigning contiguous sets of spatial regions to each process. The set of regions assigned to each process will always have a union that is a convex space (a box). If the k-d tree has not yet been built, the regions will be assigned after BuildLocator executes.
int AssignRegionsRoundRobin ()
 Let the PKdTree class assign a process to each region in a round robin fashion. If the k-d tree has not yet been built, the regions will be assigned after BuildLocator executes.
override void BuildLocator ()
 Build the spatial decomposition. Call this explicitly after changing any parameters affecting the build of the tree. It must be called by all processes in the parallel application, or it will hang.
int CreateGlobalDataArrayBounds ()
 A convenience function which compiles the global bounds of the data arrays across processes. These bounds can be accessed with "GetCellArrayGlobalRange" and "GetPointArrayGlobalRange". This method must be called by all processes or it will hang. Returns 1 on error, 0 when no error.
int CreateProcessCellCountData ()
 Create tables of counts of cells per process per region. These tables can be accessed with queries like "HasData", "GetProcessCellCountForRegion", and so on. You must have called BuildLocator() beforehand. This method must be called by all processes or it will hang. Returns 1 on error, 0 when no error.
void GetAllProcessesBorderingOnPoint (float x, float y, float z, vtkIntArray list)
 The k-d tree spatial regions have been assigned to processes. Given a point on the boundary of one of the regions, this method creates a list of all processes whose region boundaries include that point. This may be required when looking for processes that have cells adjacent to the cells of a given process.
int GetCellArrayGlobalRange (string name, IntPtr range)
 An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.
int GetCellArrayGlobalRange (int arrayIndex, IntPtr range)
 An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.
int GetCellListsForProcessRegions (int ProcessId, int set, vtkIdList inRegionCells, vtkIdList onBoundaryCells)
 After regions have been assigned to processes, I may want to know which cells I have that are in the regions assigned to a particular process.
int GetCellListsForProcessRegions (int ProcessId, vtkDataSet set, vtkIdList inRegionCells, vtkIdList onBoundaryCells)
 After regions have been assigned to processes, I may want to know which cells I have that are in the regions assigned to a particular process.
int GetCellListsForProcessRegions (int ProcessId, vtkIdList inRegionCells, vtkIdList onBoundaryCells)
 After regions have been assigned to processes, I may want to know which cells I have that are in the regions assigned to a particular process.
virtual vtkMultiProcessController GetController ()
 Set/Get the communicator object.
int GetPointArrayGlobalRange (string name, IntPtr range)
 An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.
int GetPointArrayGlobalRange (int arrayIndex, IntPtr range)
 An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.
int GetProcessAssignedToRegion (int regionId)
 Returns the ID of the process assigned to the region.
int GetProcessCellCountForRegion (int processId, int regionId)
 Returns the number of cells the specified process has in the specified region.
int GetProcessListForRegion (int regionId, vtkIntArray processes)
 Adds the list of processes having data for the given region to the supplied list, returns the number of processes added.
int GetProcessesCellCountForRegion (int regionId, IntPtr count, int len)
 Writes the number of cells each process has for the region to the supplied list of length len. Returns the number of cell counts written. The order of the cell counts corresponds to the order of process IDs in the process list returned by GetProcessListForRegion.
virtual int GetRegionAssignment ()
 The PKdTree class can assign spatial regions to processors after building the k-d tree, using one of several partitioning criteria. These functions Set/Get whether this assignment is computed. The default is "Off", no assignment is computed. If "On", and no assignment scheme is specified, contiguous assignment will be computed. Specifying an assignment scheme (with AssignRegions*()) automatically turns on RegionAssignment.
int GetRegionAssignmentList (int procId, vtkIntArray list)
 Writes the list of region IDs assigned to the specified process. Regions IDs start at 0 and increase by 1 from there. Returns the number of regions in the list.
IntPtr GetRegionAssignmentMap ()
 Returns the region assignment map where index is the region and value is the processes id for that region.
virtual int GetRegionAssignmentMapLength ()
 Returns the number of regions in the region assignment map.
int GetRegionListForProcess (int processId, vtkIntArray regions)
 Adds the region IDs for which this process has data to the supplied vtkIntArray. Retruns the number of regions.
int GetRegionsCellCountForProcess (int ProcessId, IntPtr count, int len)
 Writes to the supplied integer array the number of cells this process has for each region. Returns the number of cell counts written. The order of the cell counts corresponds to the order of region IDs in the region list returned by GetRegionListForProcess.
int GetTotalNumberOfCells ()
 Get the total number of cells distributed across the data files read by all processes. You must have called BuildLocator before calling this method.
int GetTotalProcessesInRegion (int regionId)
 Returns the total number of processes that have data falling within this spatial region.
int GetTotalRegionsForProcess (int processId)
 Returns the total number of spatial regions that a given process has data for.
int HasData (int processId, int regionId)
 Returns 1 if the process has data for the given region, 0 otherwise.
override int IsA (string type)
 *Undocumented Block
new vtkPKdTree NewInstance ()
 *Undocumented Block
void SetController (vtkMultiProcessController c)
 Set/Get the communicator object.
int ViewOrderAllProcessesFromPosition (IntPtr cameraPosition, vtkIntArray orderedList)
 Return a list of all processes in order from front to back given a camera position. Use this to do visibility sorts in perspective projection mode. `orderedList' will be resized to the number of processes. The return value is the number of processes.
int ViewOrderAllProcessesInDirection (IntPtr directionOfProjection, vtkIntArray orderedList)
 Return a list of all processes in order from front to back given a vector direction of projection. Use this to do visibility sorts in parallel projection mode. `orderedList' will be resized to the number of processes. The return value is the number of processes.
- Public Member Functions inherited from Kitware.VTK.vtkKdTree
 vtkKdTree (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkKdTree ()
 *Undocumented Block
virtual void AddDataSet (vtkDataSet set)
 This class can compute a spatial decomposition based on the cells in a list of one or more input data sets. Add them one at a time with this method.
IntPtr AllGetRegionContainingCell ()
 Get a list (in order by data set by cell id) of the region IDs of the region containing the centroid for each cell. This is faster than calling GetRegionContainingCell for each cell in the DataSet. vtkKdTree uses this list, so don't delete it.
void BuildLocatorFromPoints (vtkPointSet pointset)
 This is a special purpose locator that builds a k-d tree to find duplicate and near-by points. It builds the tree from one or more vtkPoints objects instead of from the cells of a vtkDataSet. This build would normally be followed by BuildMapForDuplicatePoints, FindPoint, or FindClosestPoint. Since this will build a normal k-d tree, all the region intersection queries will still work, as will most other calls except those that have "Cell" in the name.
void BuildLocatorFromPoints (vtkPoints ptArray)
 This is a special purpose locator that builds a k-d tree to find duplicate and near-by points. It builds the tree from one or more vtkPoints objects instead of from the cells of a vtkDataSet. This build would normally be followed by BuildMapForDuplicatePoints, FindPoint, or FindClosestPoint. Since this will build a normal k-d tree, all the region intersection queries will still work, as will most other calls except those that have "Cell" in the name.
vtkIdTypeArray BuildMapForDuplicatePoints (float tolerance)
 This call returns a mapping from the original point IDs supplied to BuildLocatorFromPoints to a subset of those IDs that is unique within the specified tolerance. If points 2, 5, and 12 are the same, then IdMap[2] = IdMap[5] = IdMap[12] = 2 (or 5 or 12).
void CreateCellLists (int dataSetIndex, IntPtr regionReqList, int reqListSize)
 Create a list for each of the requested regions, listing the IDs of all cells whose centroid falls in the region. These lists are obtained with GetCellList(). If no DataSet is specified, the cell list is created for DataSet 0. If no list of requested regions is provided, the cell lists for all regions are created.
void CreateCellLists (vtkDataSet set, IntPtr regionReqList, int reqListSize)
 Create a list for each of the requested regions, listing the IDs of all cells whose centroid falls in the region. These lists are obtained with GetCellList(). If no DataSet is specified, the cell list is created for DataSet 0. If no list of requested regions is provided, the cell lists for all regions are created.
void CreateCellLists (IntPtr regionReqList, int listSize)
 Create a list for each of the requested regions, listing the IDs of all cells whose centroid falls in the region. These lists are obtained with GetCellList(). If no DataSet is specified, the cell list is created for DataSet 0. If no list of requested regions is provided, the cell lists for all regions are created.
void CreateCellLists ()
 Create a list for each of the requested regions, listing the IDs of all cells whose centroid falls in the region. These lists are obtained with GetCellList(). If no DataSet is specified, the cell list is created for DataSet 0. If no list of requested regions is provided, the cell lists for all regions are created.
void DeleteCellLists ()
 Free the memory used by the cell lists.
void FindClosestNPoints (int N, IntPtr x, vtkIdList result)
 Find the closest N points to a position. This returns the closest N points to a position. A faster method could be created that returned N close points to a position, but necessarily the exact N closest. The returned points are sorted from closest to farthest. These methods are thread safe if BuildLocator() is directly or indirectly called from a single thread first.
int FindClosestPoint (IntPtr x, ref double dist2)
 Find the Id of the point that was previously supplied to BuildLocatorFromPoints() which is closest to the given point. Set the square of the distance between the two points.
int FindClosestPoint (double x, double y, double z, ref double dist2)
 Find the Id of the point that was previously supplied to BuildLocatorFromPoints() which is closest to the given point. Set the square of the distance between the two points.
int FindClosestPointInRegion (int regionId, IntPtr x, ref double dist2)
 Find the Id of the point in the given region which is closest to the given point. Return the ID of the point, and set the square of the distance of between the points.
int FindClosestPointInRegion (int regionId, double x, double y, double z, ref double dist2)
 Find the Id of the point in the given region which is closest to the given point. Return the ID of the point, and set the square of the distance of between the points.
int FindClosestPointWithinRadius (double radius, IntPtr x, ref double dist2)
 Given a position x and a radius r, return the id of the point closest to the point in that radius. dist2 returns the squared distance to the point.
int FindPoint (IntPtr x)
 Find the Id of the point that was previously supplied to BuildLocatorFromPoints(). Returns -1 if the point was not in the original array.
int FindPoint (double x, double y, double z)
 Find the Id of the point that was previously supplied to BuildLocatorFromPoints(). Returns -1 if the point was not in the original array.
void FindPointsInArea (IntPtr area, vtkIdTypeArray ids, bool clearArray)
 Fill ids with points found in area. The area is a 6-tuple containing (xmin, xmax, ymin, ymax, zmin, zmax). This method will clear the array by default. To append ids to an array, set clearArray to false.
void FindPointsWithinRadius (double R, IntPtr x, vtkIdList result)
 Find all points within a specified radius R of position x. The result is not sorted in any specific manner. These methods are thread safe if BuildLocator() is directly or indirectly called from a single thread first.
override void FreeSearchStructure ()
 Delete the k-d tree data structure. Also delete any cell lists that were computed with CreateCellLists().
override void GenerateRepresentation (int level, vtkPolyData pd)
 Create a polydata representation of the boundaries of the k-d tree regions. If level equals GetLevel(), the leaf nodes are represented.
void GenerateRepresentation (IntPtr regionList, int len, vtkPolyData pd)
 Generate a polygonal representation of a list of regions. Only leaf nodes have region IDs, so these will be leaf nodes.
virtual void GenerateRepresentationUsingDataBoundsOff ()
 The polydata representation of the k-d tree shows the boundaries of the k-d tree decomposition spatial regions. The data inside the regions may not occupy the entire space. To draw just the bounds of the data in the regions, set this variable ON.
virtual void GenerateRepresentationUsingDataBoundsOn ()
 The polydata representation of the k-d tree shows the boundaries of the k-d tree decomposition spatial regions. The data inside the regions may not occupy the entire space. To draw just the bounds of the data in the regions, set this variable ON.
vtkIdList GetBoundaryCellList (int regionID)
 The cell list obtained with GetCellList is the list of all cells such that their centroid is contained in the spatial region. It may also be desirable to get a list of all cells intersecting a spatial region, but with centroid in some other region. This is that list. This list is computed in CreateCellLists() if and only if IncludeRegionBoundaryCells is ON. This returns a pointer to KdTree's memory, so don't free it.
void GetBounds (IntPtr bounds)
 Get the spatial bounds of the entire k-d tree space. Sets bounds array to xmin, xmax, ymin, ymax, zmin, zmax.
vtkIdList GetCellList (int regionID)
 Get the cell list for a region. This returns a pointer to vtkKdTree's memory, so don't free it.
int GetCellLists (vtkIntArray regions, int set, vtkIdList inRegionCells, vtkIdList onBoundaryCells)
 For a list of regions, get two cell lists. The first lists the IDs all cells whose centroids lie in one of the regions. The second lists the IDs of all cells that intersect the regions, but whose centroid lies in a region not on the list.
int GetCellLists (vtkIntArray regions, vtkDataSet set, vtkIdList inRegionCells, vtkIdList onBoundaryCells)
 For a list of regions, get two cell lists. The first lists the IDs all cells whose centroids lie in one of the regions. The second lists the IDs of all cells that intersect the regions, but whose centroid lies in a region not on the list.
int GetCellLists (vtkIntArray regions, vtkIdList inRegionCells, vtkIdList onBoundaryCells)
 For a list of regions, get two cell lists. The first lists the IDs all cells whose centroids lie in one of the regions. The second lists the IDs of all cells that intersect the regions, but whose centroid lies in a region not on the list.
virtual vtkBSPCuts GetCuts ()
 Get a vtkBSPCuts object, a general object representing an axis- aligned spatial partitioning. Used by vtkBSPIntersections.
vtkDataSet GetDataSet (int n)
 Return the n'th data set.
override vtkDataSet GetDataSet ()
 Return the 0'th data set. For compatability with the superclass' interface.
int GetDataSetIndex (vtkDataSet set)
 Return the index of the given data set. Returns -1 if that data set does not exist.
virtual vtkDataSetCollection GetDataSets ()
 Return a collection of all the data sets.
virtual double GetFudgeFactor ()
 Some algorithms on k-d trees require a value that is a very small distance relative to the diameter of the entire space divided by the k-d tree. This factor is the maximum axis-aligned width of the space multipled by 10e-6.
virtual int GetGenerateRepresentationUsingDataBounds ()
 The polydata representation of the k-d tree shows the boundaries of the k-d tree decomposition spatial regions. The data inside the regions may not occupy the entire space. To draw just the bounds of the data in the regions, set this variable ON.
virtual int GetIncludeRegionBoundaryCells ()
 If IncludeRegionBoundaryCells is ON, CreateCellLists() will also create a list of cells which intersect a given region, but are not assigned to the region. These lists are obtained with GetBoundaryCellList(). Default is OFF.
virtual int GetMinCells ()
 Minimum number of cells per spatial region. Default is 100.
int GetNumberOfDataSets ()
 Get the number of data sets included in spatial paritioning.
virtual int GetNumberOfRegions ()
 The number of leaf nodes of the tree, the spatial regions.
virtual int GetNumberOfRegionsOrLess ()
 Set/Get the number of spatial regions you want to get close to without going over. (The number of spatial regions is normally a power of two.) Call this before BuildLocator(). Default is unset (0).
virtual int GetNumberOfRegionsOrMore ()
 Set/Get the number of spatial regions you want to get close to while having at least this many regions. (The number of spatial regions is normally a power of two.) Default is unset (0).
vtkIdTypeArray GetPointsInRegion (int regionId)
 Get a list of the original IDs of all points in a region. You must have called BuildLocatorFromPoints before calling this.
void GetRegionBounds (int regionID, IntPtr bounds)
 Get the spatial bounds of k-d tree region.
int GetRegionContainingCell (vtkDataSet set, int cellID)
 Get the id of the region containing the cell centroid. If no DataSet is specified, assume DataSet 0. If you need the region ID for every cell, use AllGetRegionContainingCell instead. It is more efficient.
int GetRegionContainingCell (int set, int cellID)
 Get the id of the region containing the cell centroid. If no DataSet is specified, assume DataSet 0. If you need the region ID for every cell, use AllGetRegionContainingCell instead. It is more efficient.
int GetRegionContainingCell (int cellID)
 Get the id of the region containing the cell centroid. If no DataSet is specified, assume DataSet 0. If you need the region ID for every cell, use AllGetRegionContainingCell instead. It is more efficient.
int GetRegionContainingPoint (double x, double y, double z)
 Get the id of the region containing the specified location.
void GetRegionDataBounds (int regionID, IntPtr bounds)
 Get the bounds of the data within the k-d tree region.
virtual int GetTiming ()
 Turn on timing of the k-d tree build.
virtual void IncludeRegionBoundaryCellsOff ()
 If IncludeRegionBoundaryCells is ON, CreateCellLists() will also create a list of cells which intersect a given region, but are not assigned to the region. These lists are obtained with GetBoundaryCellList(). Default is OFF.
virtual void IncludeRegionBoundaryCellsOn ()
 If IncludeRegionBoundaryCells is ON, CreateCellLists() will also create a list of cells which intersect a given region, but are not assigned to the region. These lists are obtained with GetBoundaryCellList(). Default is OFF.
virtual void InvalidateGeometry ()
 Forget about the last geometry used. The next call to NewGeometry will return 1. A new k-d tree will be built the next time BuildLocator is called.
virtual int NewGeometry ()
 Return 1 if the geometry of the input data sets has changed since the last time the k-d tree was built.
void OmitNoPartitioning ()
 Partition along all three axes - this is the default.
void OmitXPartitioning ()
 Omit partitions along the X axis, yielding shafts in the X direction.
void OmitXYPartitioning ()
 Omit partitions along the X and Y axes, yielding slabs along Z.
void OmitYPartitioning ()
 Omit partitions along the Y axis, yielding shafts in the Y direction.
void OmitYZPartitioning ()
 Omit partitions along the Y and Z axes, yielding slabs along X.
void OmitZPartitioning ()
 Omit partitions along the Z axis, yielding shafts in the Z direction.
void OmitZXPartitioning ()
 Omit partitions along the Z and X axes, yielding slabs along Y.
void PrintRegion (int id)
 Print out leaf node data for given id.
void PrintTree ()
 Print out nodes of kd tree.
void PrintVerboseTree ()
 Print out nodes of kd tree.
virtual void RemoveAllDataSets ()
 Remove the given data set.
virtual void RemoveDataSet (int index)
 Remove the given data set.
virtual void RemoveDataSet (vtkDataSet set)
 Remove the given data set.
void SetCuts (vtkBSPCuts cuts)
 Normally the k-d tree is computed from the dataset(s) provided in SetDataSet. Alternatively, you can provide the cuts that will be applied by calling SetCuts.
override void SetDataSet (vtkDataSet set)
 Clear out all data sets and replace with single data set. For backward compatibility with superclass.
virtual void SetFudgeFactor (double _arg)
 Some algorithms on k-d trees require a value that is a very small distance relative to the diameter of the entire space divided by the k-d tree. This factor is the maximum axis-aligned width of the space multipled by 10e-6.
virtual void SetGenerateRepresentationUsingDataBounds (int _arg)
 The polydata representation of the k-d tree shows the boundaries of the k-d tree decomposition spatial regions. The data inside the regions may not occupy the entire space. To draw just the bounds of the data in the regions, set this variable ON.
virtual void SetIncludeRegionBoundaryCells (int _arg)
 If IncludeRegionBoundaryCells is ON, CreateCellLists() will also create a list of cells which intersect a given region, but are not assigned to the region. These lists are obtained with GetBoundaryCellList(). Default is OFF.
virtual void SetMinCells (int _arg)
 Minimum number of cells per spatial region. Default is 100.
void SetNewBounds (IntPtr bounds)
 There are certain applications where you want the bounds of the k-d tree space to be at least as large as a specified box. If the k-d tree has been built, you can expand it's bounds with this method. If the bounds supplied are smaller than those computed, they will be ignored.
virtual void SetNumberOfRegionsOrLess (int _arg)
 Set/Get the number of spatial regions you want to get close to without going over. (The number of spatial regions is normally a power of two.) Call this before BuildLocator(). Default is unset (0).
virtual void SetNumberOfRegionsOrMore (int _arg)
 Set/Get the number of spatial regions you want to get close to while having at least this many regions. (The number of spatial regions is normally a power of two.) Default is unset (0).
virtual void SetTiming (int _arg)
 Turn on timing of the k-d tree build.
virtual void TimingOff ()
 Turn on timing of the k-d tree build.
virtual void TimingOn ()
 Turn on timing of the k-d tree build.
int ViewOrderAllRegionsFromPosition (IntPtr directionOfProjection, vtkIntArray orderedList)
 Given a camera position (typically obtained with vtkCamera::GetPosition()), this method, creates a list of the k-d tree region IDs in order from front to back with respect to that direction. The number of ordered regions is returned. Use this method to view order regions for cameras that use perspective projection.
int ViewOrderAllRegionsInDirection (IntPtr directionOfProjection, vtkIntArray orderedList)
 Given a direction of projection (typically obtained with vtkCamera::GetDirectionOfProjection()), this method, creates a list of the k-d tree region IDs in order from front to back with respect to that direction. The number of ordered regions is returned. Use this method to view order regions for cameras that use parallel projection.
int ViewOrderRegionsFromPosition (vtkIntArray regionIds, IntPtr directionOfProjection, vtkIntArray orderedList)
 Given a camera position and a list of k-d tree region IDs, this method, creates a list of the k-d tree region IDs in order from front to back with respect to that direction. The number of ordered regions is returned. Use this method to view order regions for cameras that use perspective projection.
int ViewOrderRegionsInDirection (vtkIntArray regionIds, IntPtr directionOfProjection, vtkIntArray orderedList)
 Given a direction of projection and a list of k-d tree region IDs, this method, creates a list of the k-d tree region IDs in order from front to back with respect to that direction. The number of ordered regions is returned. Use this method to view order regions for cameras that use parallel projection.
- Public Member Functions inherited from Kitware.VTK.vtkLocator
 vtkLocator (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
override void Register (vtkObjectBase o)
 Handle the PointSet <-> Locator loop.
virtual void AutomaticOff ()
 Boolean controls whether locator depth/resolution of locator is computed automatically from average number of entities in bucket. If not set, there will be an explicit method to control the construction of the locator (found in the subclass).
virtual void AutomaticOn ()
 Boolean controls whether locator depth/resolution of locator is computed automatically from average number of entities in bucket. If not set, there will be an explicit method to control the construction of the locator (found in the subclass).
virtual int GetAutomatic ()
 Boolean controls whether locator depth/resolution of locator is computed automatically from average number of entities in bucket. If not set, there will be an explicit method to control the construction of the locator (found in the subclass).
virtual uint GetBuildTime ()
 Return the time of the last data structure build.
virtual int GetLevel ()
 Get the level of the locator (determined automatically if Automatic is true). The value of this ivar may change each time the locator is built. Initial value is 8.
virtual int GetMaxLevel ()
 Set the maximum allowable level for the tree. If the Automatic ivar is off, this will be the target depth of the locator. Initial value is 8.
virtual int GetMaxLevelMaxValue ()
 Set the maximum allowable level for the tree. If the Automatic ivar is off, this will be the target depth of the locator. Initial value is 8.
virtual int GetMaxLevelMinValue ()
 Set the maximum allowable level for the tree. If the Automatic ivar is off, this will be the target depth of the locator. Initial value is 8.
virtual double GetTolerance ()
 Specify absolute tolerance (in world coordinates) for performing geometric operations.
virtual double GetToleranceMaxValue ()
 Specify absolute tolerance (in world coordinates) for performing geometric operations.
virtual double GetToleranceMinValue ()
 Specify absolute tolerance (in world coordinates) for performing geometric operations.
virtual void Initialize ()
 Initialize locator. Frees memory and resets object as appropriate.
virtual void SetAutomatic (int _arg)
 Boolean controls whether locator depth/resolution of locator is computed automatically from average number of entities in bucket. If not set, there will be an explicit method to control the construction of the locator (found in the subclass).
virtual void SetMaxLevel (int _arg)
 Set the maximum allowable level for the tree. If the Automatic ivar is off, this will be the target depth of the locator. Initial value is 8.
virtual void SetTolerance (double _arg)
 Specify absolute tolerance (in world coordinates) for performing geometric operations.
virtual void Update ()
 Cause the locator to rebuild itself if it or its input dataset has changed.
- Public Member Functions inherited from Kitware.VTK.vtkObject
 vtkObject (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkObject ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
uint AddObserver (uint arg0, vtkCommand arg1, float priority)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
uint AddObserver (string arg0, vtkCommand arg1, float priority)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
virtual void DebugOff ()
 Turn debugging output off.
virtual void DebugOn ()
 Turn debugging output on.
vtkCommand GetCommand (uint tag)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
byte GetDebug ()
 Get the value of the debug flag.
virtual uint GetMTime ()
 Return this object's modified time.
int HasObserver (uint arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int HasObserver (string arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int HasObserver (uint arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int HasObserver (string arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (uint arg0, IntPtr callData)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (string arg0, IntPtr callData)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (uint arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
int InvokeEvent (string arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
virtual void Modified ()
 Update the modification time for this object. Many filters rely on the modification time to determine if they need to recompute their data. The modification time is a unique monotonically increasing unsigned long integer.
void RemoveAllObservers ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObserver (vtkCommand arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObserver (uint tag)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (uint arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (string arg0, vtkCommand arg1)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (uint arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void RemoveObservers (string arg0)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
void SetDebug (byte debugFlag)
 Set the value of the debug flag. A non-zero value turns debugging on.
override string ToString ()
 Returns the result of calling vtkObject::Print as a C# string.
delegate void vtkObjectEventHandler (vtkObject sender, vtkObjectEventArgs e)
 Generic signature for all vtkObject events.
void RemoveAllHandlersForAllEvents ()
 Call RemoveAllHandlers on each non-null vtkObjectEventRelay. TODO: This method needs to get called by the generated Dispose. Make that happen...
- Public Member Functions inherited from Kitware.VTK.vtkObjectBase
 vtkObjectBase (IntPtr rawCppThis, bool callDisposalMethod, bool strong)
 Automatically generated constructor - called from generated code. DO NOT call directly.
 vtkObjectBase ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
virtual void FastDelete ()
 Delete a reference to this object. This version will not invoke garbage collection and can potentially leak the object if it is part of a reference loop. Use this method only when it is known that the object has another reference and would not be collected if a full garbage collection check were done.
string GetClassName ()
 Return the class name as a string. This method is defined in all subclasses of vtkObjectBase with the vtkTypeMacro found in vtkSetGet.h.
int GetReferenceCount ()
 Return the current reference count of this object.
void SetReferenceCount (int arg0)
 Sets the reference count. (This is very dangerous, use with care.)

Static Public Member Functions

static new vtkPKdTree New ()
 *Undocumented Block
static new int IsTypeOf (string type)
 *Undocumented Block
static new vtkPKdTree SafeDownCast (vtkObjectBase o)
 *Undocumented Block
- Static Public Member Functions inherited from Kitware.VTK.vtkKdTree
static vtkKdNode CopyTree (vtkKdNode kd)
 Create a copy of the binary tree representation of the k-d tree spatial partitioning provided.

Public Attributes

new const string MRFullTypeName = "Kitware.VTK.vtkPKdTree"
 Automatically generated type registration mechanics.
- Public Attributes inherited from Kitware.VTK.vtkKdTree
- Public Attributes inherited from Kitware.VTK.vtkLocator
- Public Attributes inherited from Kitware.VTK.vtkObject
- Public Attributes inherited from Kitware.VTK.vtkObjectBase
- Public Attributes inherited from Kitware.VTK.WrappedObject
const string vtkChartsEL_dll = "libKitware.VTK.vtkCharts.Unmanaged.so"
 Export layer functions for 'vtkCharts' are exported from the DLL named by the value of this variable.
const string vtkCommonEL_dll = "libKitware.VTK.vtkCommon.Unmanaged.so"
 Export layer functions for 'vtkCommon' are exported from the DLL named by the value of this variable.
const string vtkFilteringEL_dll = "libKitware.VTK.vtkFiltering.Unmanaged.so"
 Export layer functions for 'vtkFiltering' are exported from the DLL named by the value of this variable.
const string vtkGenericFilteringEL_dll = "libKitware.VTK.vtkGenericFiltering.Unmanaged.so"
 Export layer functions for 'vtkGenericFiltering' are exported from the DLL named by the value of this variable.
const string vtkGeovisEL_dll = "libKitware.VTK.vtkGeovis.Unmanaged.so"
 Export layer functions for 'vtkGeovis' are exported from the DLL named by the value of this variable.
const string vtkGraphicsEL_dll = "libKitware.VTK.vtkGraphics.Unmanaged.so"
 Export layer functions for 'vtkGraphics' are exported from the DLL named by the value of this variable.
const string vtkHybridEL_dll = "libKitware.VTK.vtkHybrid.Unmanaged.so"
 Export layer functions for 'vtkHybrid' are exported from the DLL named by the value of this variable.
const string vtkIOEL_dll = "libKitware.VTK.vtkIO.Unmanaged.so"
 Export layer functions for 'vtkIO' are exported from the DLL named by the value of this variable.
const string vtkImagingEL_dll = "libKitware.VTK.vtkImaging.Unmanaged.so"
 Export layer functions for 'vtkImaging' are exported from the DLL named by the value of this variable.
const string vtkInfovisEL_dll = "libKitware.VTK.vtkInfovis.Unmanaged.so"
 Export layer functions for 'vtkInfovis' are exported from the DLL named by the value of this variable.
const string vtkParallelEL_dll = "libKitware.VTK.vtkParallel.Unmanaged.so"
 Export layer functions for 'vtkParallel' are exported from the DLL named by the value of this variable.
const string vtkRenderingEL_dll = "libKitware.VTK.vtkRendering.Unmanaged.so"
 Export layer functions for 'vtkRendering' are exported from the DLL named by the value of this variable.
const string vtkViewsEL_dll = "libKitware.VTK.vtkViews.Unmanaged.so"
 Export layer functions for 'vtkViews' are exported from the DLL named by the value of this variable.
const string vtkVolumeRenderingEL_dll = "libKitware.VTK.vtkVolumeRendering.Unmanaged.so"
 Export layer functions for 'vtkVolumeRendering' are exported from the DLL named by the value of this variable.
const string vtkWidgetsEL_dll = "libKitware.VTK.vtkWidgets.Unmanaged.so"
 Export layer functions for 'vtkWidgets' are exported from the DLL named by the value of this variable.

Static Public Attributes

static new readonly string MRClassNameKey = "10vtkPKdTree"
 Automatically generated type registration mechanics.
- Static Public Attributes inherited from Kitware.VTK.vtkKdTree
- Static Public Attributes inherited from Kitware.VTK.vtkLocator
- Static Public Attributes inherited from Kitware.VTK.vtkObject
- Static Public Attributes inherited from Kitware.VTK.vtkObjectBase

Protected Member Functions

override void Dispose (bool disposing)
 Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly.

Static Private Member Functions

static vtkPKdTree ()
 Automatically generated type registration mechanics.

Detailed Description

vtkPKdTree - Build a k-d tree decomposition of a list of points.

Description Build, in parallel, a k-d tree decomposition of one or more vtkDataSets distributed across processors. We assume each process has read in one portion of a large distributed data set. When done, each process has access to the k-d tree structure, can obtain information about which process contains data for each spatial region, and can depth sort the spatial regions.

This class can also assign spatial regions to processors, based on one of several region assignment schemes. By default a contiguous, convex region is assigned to each process. Several queries return information about how many and what cells I have that lie in a region assigned to another process.

 vtkKdTree

Constructor & Destructor Documentation

static Kitware.VTK.vtkPKdTree.vtkPKdTree ( )
staticprivate

Automatically generated type registration mechanics.

Kitware.VTK.vtkPKdTree.vtkPKdTree ( IntPtr  rawCppThis,
bool  callDisposalMethod,
bool  strong 
)

Automatically generated constructor - called from generated code. DO NOT call directly.

Kitware.VTK.vtkPKdTree.vtkPKdTree ( )

*Undocumented Block


Member Function Documentation

int Kitware.VTK.vtkPKdTree.AssignRegions ( IntPtr  map,
int  numRegions 
)

Assign spatial regions to processes via a user defined map. The user-supplied map is indexed by region ID, and provides a process ID for each region.

int Kitware.VTK.vtkPKdTree.AssignRegionsContiguous ( )

Let the PKdTree class assign a process to each region by assigning contiguous sets of spatial regions to each process. The set of regions assigned to each process will always have a union that is a convex space (a box). If the k-d tree has not yet been built, the regions will be assigned after BuildLocator executes.

int Kitware.VTK.vtkPKdTree.AssignRegionsRoundRobin ( )

Let the PKdTree class assign a process to each region in a round robin fashion. If the k-d tree has not yet been built, the regions will be assigned after BuildLocator executes.

override void Kitware.VTK.vtkPKdTree.BuildLocator ( )
virtual

Build the spatial decomposition. Call this explicitly after changing any parameters affecting the build of the tree. It must be called by all processes in the parallel application, or it will hang.

Reimplemented from Kitware.VTK.vtkKdTree.

int Kitware.VTK.vtkPKdTree.CreateGlobalDataArrayBounds ( )

A convenience function which compiles the global bounds of the data arrays across processes. These bounds can be accessed with "GetCellArrayGlobalRange" and "GetPointArrayGlobalRange". This method must be called by all processes or it will hang. Returns 1 on error, 0 when no error.

int Kitware.VTK.vtkPKdTree.CreateProcessCellCountData ( )

Create tables of counts of cells per process per region. These tables can be accessed with queries like "HasData", "GetProcessCellCountForRegion", and so on. You must have called BuildLocator() beforehand. This method must be called by all processes or it will hang. Returns 1 on error, 0 when no error.

override void Kitware.VTK.vtkPKdTree.Dispose ( bool  disposing)
protected

Automatically generated protected Dispose method - called from public Dispose or the C# destructor. DO NOT call directly.

Reimplemented from Kitware.VTK.vtkKdTree.

void Kitware.VTK.vtkPKdTree.GetAllProcessesBorderingOnPoint ( float  x,
float  y,
float  z,
vtkIntArray  list 
)

The k-d tree spatial regions have been assigned to processes. Given a point on the boundary of one of the regions, this method creates a list of all processes whose region boundaries include that point. This may be required when looking for processes that have cells adjacent to the cells of a given process.

int Kitware.VTK.vtkPKdTree.GetCellArrayGlobalRange ( string  name,
IntPtr  range 
)

An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.

int Kitware.VTK.vtkPKdTree.GetCellArrayGlobalRange ( int  arrayIndex,
IntPtr  range 
)

An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.

int Kitware.VTK.vtkPKdTree.GetCellListsForProcessRegions ( int  ProcessId,
int  set,
vtkIdList  inRegionCells,
vtkIdList  onBoundaryCells 
)

After regions have been assigned to processes, I may want to know which cells I have that are in the regions assigned to a particular process.

This method takes a process ID and two vtkIdLists. It writes to the first list the IDs of the cells contained in the process' regions. (That is, their cell centroid is contained in the region.) To the second list it write the IDs of the cells which intersect the process' regions but whose cell centroid lies elsewhere.

The total number of cell IDs written to both lists is returned. Either list pointer passed in can be NULL, and it will be ignored. If there are multiple data sets, you must specify which data set you wish cell IDs for.

The caller should delete these two lists when done. This method uses the cell lists created in vtkKdTree::CreateCellLists(). If the cell lists for the process' regions do not exist, this method will first build the cell lists for all regions by calling CreateCellLists(). You must remember to DeleteCellLists() when done with all calls to this method, as cell lists can require a great deal of memory.

int Kitware.VTK.vtkPKdTree.GetCellListsForProcessRegions ( int  ProcessId,
vtkDataSet  set,
vtkIdList  inRegionCells,
vtkIdList  onBoundaryCells 
)

After regions have been assigned to processes, I may want to know which cells I have that are in the regions assigned to a particular process.

This method takes a process ID and two vtkIdLists. It writes to the first list the IDs of the cells contained in the process' regions. (That is, their cell centroid is contained in the region.) To the second list it write the IDs of the cells which intersect the process' regions but whose cell centroid lies elsewhere.

The total number of cell IDs written to both lists is returned. Either list pointer passed in can be NULL, and it will be ignored. If there are multiple data sets, you must specify which data set you wish cell IDs for.

The caller should delete these two lists when done. This method uses the cell lists created in vtkKdTree::CreateCellLists(). If the cell lists for the process' regions do not exist, this method will first build the cell lists for all regions by calling CreateCellLists(). You must remember to DeleteCellLists() when done with all calls to this method, as cell lists can require a great deal of memory.

int Kitware.VTK.vtkPKdTree.GetCellListsForProcessRegions ( int  ProcessId,
vtkIdList  inRegionCells,
vtkIdList  onBoundaryCells 
)

After regions have been assigned to processes, I may want to know which cells I have that are in the regions assigned to a particular process.

This method takes a process ID and two vtkIdLists. It writes to the first list the IDs of the cells contained in the process' regions. (That is, their cell centroid is contained in the region.) To the second list it write the IDs of the cells which intersect the process' regions but whose cell centroid lies elsewhere.

The total number of cell IDs written to both lists is returned. Either list pointer passed in can be NULL, and it will be ignored. If there are multiple data sets, you must specify which data set you wish cell IDs for.

The caller should delete these two lists when done. This method uses the cell lists created in vtkKdTree::CreateCellLists(). If the cell lists for the process' regions do not exist, this method will first build the cell lists for all regions by calling CreateCellLists(). You must remember to DeleteCellLists() when done with all calls to this method, as cell lists can require a great deal of memory.

virtual vtkMultiProcessController Kitware.VTK.vtkPKdTree.GetController ( )
virtual

Set/Get the communicator object.

Here is the call graph for this function:

int Kitware.VTK.vtkPKdTree.GetPointArrayGlobalRange ( string  name,
IntPtr  range 
)

An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.

int Kitware.VTK.vtkPKdTree.GetPointArrayGlobalRange ( int  arrayIndex,
IntPtr  range 
)

An added feature of vtkPKdTree is that it will calculate the the global range of field arrays across all processes. You call CreateGlobalDataArrayBounds() to do this calculation. Then the following methods return the ranges. Returns 1 on error, 0 otherwise.

int Kitware.VTK.vtkPKdTree.GetProcessAssignedToRegion ( int  regionId)

Returns the ID of the process assigned to the region.

int Kitware.VTK.vtkPKdTree.GetProcessCellCountForRegion ( int  processId,
int  regionId 
)

Returns the number of cells the specified process has in the specified region.

int Kitware.VTK.vtkPKdTree.GetProcessesCellCountForRegion ( int  regionId,
IntPtr  count,
int  len 
)

Writes the number of cells each process has for the region to the supplied list of length len. Returns the number of cell counts written. The order of the cell counts corresponds to the order of process IDs in the process list returned by GetProcessListForRegion.

int Kitware.VTK.vtkPKdTree.GetProcessListForRegion ( int  regionId,
vtkIntArray  processes 
)

Adds the list of processes having data for the given region to the supplied list, returns the number of processes added.

virtual int Kitware.VTK.vtkPKdTree.GetRegionAssignment ( )
virtual

The PKdTree class can assign spatial regions to processors after building the k-d tree, using one of several partitioning criteria. These functions Set/Get whether this assignment is computed. The default is "Off", no assignment is computed. If "On", and no assignment scheme is specified, contiguous assignment will be computed. Specifying an assignment scheme (with AssignRegions*()) automatically turns on RegionAssignment.

int Kitware.VTK.vtkPKdTree.GetRegionAssignmentList ( int  procId,
vtkIntArray  list 
)

Writes the list of region IDs assigned to the specified process. Regions IDs start at 0 and increase by 1 from there. Returns the number of regions in the list.

IntPtr Kitware.VTK.vtkPKdTree.GetRegionAssignmentMap ( )

Returns the region assignment map where index is the region and value is the processes id for that region.

virtual int Kitware.VTK.vtkPKdTree.GetRegionAssignmentMapLength ( )
virtual

Returns the number of regions in the region assignment map.

int Kitware.VTK.vtkPKdTree.GetRegionListForProcess ( int  processId,
vtkIntArray  regions 
)

Adds the region IDs for which this process has data to the supplied vtkIntArray. Retruns the number of regions.

int Kitware.VTK.vtkPKdTree.GetRegionsCellCountForProcess ( int  ProcessId,
IntPtr  count,
int  len 
)

Writes to the supplied integer array the number of cells this process has for each region. Returns the number of cell counts written. The order of the cell counts corresponds to the order of region IDs in the region list returned by GetRegionListForProcess.

int Kitware.VTK.vtkPKdTree.GetTotalNumberOfCells ( )

Get the total number of cells distributed across the data files read by all processes. You must have called BuildLocator before calling this method.

int Kitware.VTK.vtkPKdTree.GetTotalProcessesInRegion ( int  regionId)

Returns the total number of processes that have data falling within this spatial region.

int Kitware.VTK.vtkPKdTree.GetTotalRegionsForProcess ( int  processId)

Returns the total number of spatial regions that a given process has data for.

int Kitware.VTK.vtkPKdTree.HasData ( int  processId,
int  regionId 
)

Returns 1 if the process has data for the given region, 0 otherwise.

override int Kitware.VTK.vtkPKdTree.IsA ( string  type)
virtual

*Undocumented Block

Reimplemented from Kitware.VTK.vtkKdTree.

static new int Kitware.VTK.vtkPKdTree.IsTypeOf ( string  type)
static

*Undocumented Block

Reimplemented from Kitware.VTK.vtkKdTree.

static new vtkPKdTree Kitware.VTK.vtkPKdTree.New ( )
static

*Undocumented Block

Reimplemented from Kitware.VTK.vtkKdTree.

new vtkPKdTree Kitware.VTK.vtkPKdTree.NewInstance ( )

*Undocumented Block

Reimplemented from Kitware.VTK.vtkKdTree.

static new vtkPKdTree Kitware.VTK.vtkPKdTree.SafeDownCast ( vtkObjectBase  o)
static

*Undocumented Block

Reimplemented from Kitware.VTK.vtkKdTree.

Here is the call graph for this function:

void Kitware.VTK.vtkPKdTree.SetController ( vtkMultiProcessController  c)

Set/Get the communicator object.

int Kitware.VTK.vtkPKdTree.ViewOrderAllProcessesFromPosition ( IntPtr  cameraPosition,
vtkIntArray  orderedList 
)

Return a list of all processes in order from front to back given a camera position. Use this to do visibility sorts in perspective projection mode. `orderedList' will be resized to the number of processes. The return value is the number of processes.

Precondition:
orderedList_exists: orderedList!=0
int Kitware.VTK.vtkPKdTree.ViewOrderAllProcessesInDirection ( IntPtr  directionOfProjection,
vtkIntArray  orderedList 
)

Return a list of all processes in order from front to back given a vector direction of projection. Use this to do visibility sorts in parallel projection mode. `orderedList' will be resized to the number of processes. The return value is the number of processes.

Precondition:
orderedList_exists: orderedList!=0

Member Data Documentation

new readonly string Kitware.VTK.vtkPKdTree.MRClassNameKey = "10vtkPKdTree"
static

Automatically generated type registration mechanics.

Reimplemented from Kitware.VTK.vtkKdTree.

new const string Kitware.VTK.vtkPKdTree.MRFullTypeName = "Kitware.VTK.vtkPKdTree"

Automatically generated type registration mechanics.

Reimplemented from Kitware.VTK.vtkKdTree.


The documentation for this class was generated from the following file: