FreeMat

- Main Page
- Related Pages

vtkAbstractCellLocator

Section: Visualization Toolkit Filtering Classes

# Usage

vtkAbstractCellLocator is a spatial search object to quickly locate cells in 3D. vtkAbstractCellLocator supplies a basic interface which concrete subclasses should implement.

.SECTION Warning When deriving a class from vtkAbstractCellLocator, one should include the 'hidden' member functions by the following construct in the derived class

     //BTX
      using vtkAbstractCellLocator::IntersectWithLine;
      using vtkAbstractCellLocator::FindClosestPoint;
      using vtkAbstractCellLocator::FindClosestPointWithinRadius;
     //ETX

To create an instance of class vtkAbstractCellLocator, simply invoke its constructor as follows

      obj = vtkAbstractCellLocator

# Methods

The class vtkAbstractCellLocator has several methods that can be used. They are listed below. Note that the documentation is translated automatically from the VTK sources, and may not be completely intelligible. When in doubt, consult the VTK website. In the methods listed below, `obj` is an instance of the vtkAbstractCellLocator class.

- `string = obj.GetClassName ()`
- `int = obj.IsA (string name)`
- `vtkAbstractCellLocator = obj.NewInstance ()`
- `vtkAbstractCellLocator = obj.SafeDownCast (vtkObject o)`
- `obj.SetNumberOfCellsPerNode (int )` - Specify the preferred/maximum number of cells in each node/bucket. Default 32. Locators generally operate by subdividing space into smaller regions until the number of cells in each region (or node) reaches the desired level.
- `int = obj.GetNumberOfCellsPerNodeMinValue ()` - Specify the preferred/maximum number of cells in each node/bucket. Default 32. Locators generally operate by subdividing space into smaller regions until the number of cells in each region (or node) reaches the desired level.
- `int = obj.GetNumberOfCellsPerNodeMaxValue ()` - Specify the preferred/maximum number of cells in each node/bucket. Default 32. Locators generally operate by subdividing space into smaller regions until the number of cells in each region (or node) reaches the desired level.
- `int = obj.GetNumberOfCellsPerNode ()` - Specify the preferred/maximum number of cells in each node/bucket. Default 32. Locators generally operate by subdividing space into smaller regions until the number of cells in each region (or node) reaches the desired level.
- `obj.SetCacheCellBounds (int )` - Boolean controls whether the bounds of each cell are computed only once and then saved. Should be 10 to 20% faster if repeatedly calling any of the Intersect/Find routines and the extra memory won't cause disk caching (24 extra bytes per cell are required to save the bounds).
- `int = obj.GetCacheCellBounds ()` - Boolean controls whether the bounds of each cell are computed only once and then saved. Should be 10 to 20% faster if repeatedly calling any of the Intersect/Find routines and the extra memory won't cause disk caching (24 extra bytes per cell are required to save the bounds).
- `obj.CacheCellBoundsOn ()` - Boolean controls whether the bounds of each cell are computed only once and then saved. Should be 10 to 20% faster if repeatedly calling any of the Intersect/Find routines and the extra memory won't cause disk caching (24 extra bytes per cell are required to save the bounds).
- `obj.CacheCellBoundsOff ()` - Boolean controls whether the bounds of each cell are computed only once and then saved. Should be 10 to 20% faster if repeatedly calling any of the Intersect/Find routines and the extra memory won't cause disk caching (24 extra bytes per cell are required to save the bounds).
- `obj.SetRetainCellLists (int )` - Boolean controls whether to maintain list of cells in each node. not applicable to all implementations, but if the locator is being used as a geometry simplification technique, there is no need to keep them.
- `int = obj.GetRetainCellLists ()` - Boolean controls whether to maintain list of cells in each node. not applicable to all implementations, but if the locator is being used as a geometry simplification technique, there is no need to keep them.
- `obj.RetainCellListsOn ()` - Boolean controls whether to maintain list of cells in each node. not applicable to all implementations, but if the locator is being used as a geometry simplification technique, there is no need to keep them.
- `obj.RetainCellListsOff ()` - Boolean controls whether to maintain list of cells in each node. not applicable to all implementations, but if the locator is being used as a geometry simplification technique, there is no need to keep them.
- `obj.SetLazyEvaluation (int )` - Most Locators build their search structures during BuildLocator but some may delay construction until it is actually needed. If LazyEvaluation is supported, this turns on/off the feature. if not supported, it is ignored.
- `int = obj.GetLazyEvaluation ()` - Most Locators build their search structures during BuildLocator but some may delay construction until it is actually needed. If LazyEvaluation is supported, this turns on/off the feature. if not supported, it is ignored.
- `obj.LazyEvaluationOn ()` - Most Locators build their search structures during BuildLocator but some may delay construction until it is actually needed. If LazyEvaluation is supported, this turns on/off the feature. if not supported, it is ignored.
- `obj.LazyEvaluationOff ()` - Most Locators build their search structures during BuildLocator but some may delay construction until it is actually needed. If LazyEvaluation is supported, this turns on/off the feature. if not supported, it is ignored.
- `obj.SetUseExistingSearchStructure (int )` - Some locators support querying a new dataset without rebuilding the search structure (typically this may occur when a dataset changes due to a time update, but is actually the same topology) Turning on this flag enables some locators to skip the rebuilding phase
- `int = obj.GetUseExistingSearchStructure ()` - Some locators support querying a new dataset without rebuilding the search structure (typically this may occur when a dataset changes due to a time update, but is actually the same topology) Turning on this flag enables some locators to skip the rebuilding phase
- `obj.UseExistingSearchStructureOn ()` - Some locators support querying a new dataset without rebuilding the search structure (typically this may occur when a dataset changes due to a time update, but is actually the same topology) Turning on this flag enables some locators to skip the rebuilding phase
- `obj.UseExistingSearchStructureOff ()` - Some locators support querying a new dataset without rebuilding the search structure (typically this may occur when a dataset changes due to a time update, but is actually the same topology) Turning on this flag enables some locators to skip the rebuilding phase
- `int = obj.IntersectWithLine (double p1[3], double p2[3], vtkPoints points, vtkIdList cellIds)` - Take the passed line segment and intersect it with the data set. This method assumes that the data set is a vtkPolyData that describes a closed surface, and the intersection points that are returned in 'points' alternate between entrance points and exit points. The return value of the function is 0 if no intersections were found, -1 if point 'a0' lies inside the closed surface, or +1 if point 'a0' lies outside the closed surface. Either 'points' or 'cellIds' can be set to NULL if you don't want to receive that information. This method is currently only implemented in vtkOBBTree
- `obj.FindCellsWithinBounds (double bbox, vtkIdList cells)` - Return a list of unique cell ids inside of a given bounding box. The user must provide the vtkIdList to populate. This method returns data only after the locator has been built.
- `obj.FindCellsAlongLine (double p1[3], double p2[3], double tolerance, vtkIdList cells)` - Given a finite line defined by the two points (p1,p2), return the list of unique cell ids in the buckets containing the line. It is possible that an empty cell list is returned. The user must provide the vtkIdList to populate. This method returns data only after the locator has been built.
- `vtkIdType = obj.FindCell (double x[3])` - Returns the Id of the cell containing the point, returns -1 if no cell found. This interface uses a tolerance of zero
- `vtkIdType = obj.FindCell (double x[3], double tol2, vtkGenericCell GenCell, double pcoords[3], double weights)` - Find the cell containing a given point. returns -1 if no cell found the cell parameters are copied into the supplied variables, a cell must be provided to store the information.
- `bool = obj.InsideCellBounds (double x[3], vtkIdType cell_ID)` - Quickly test if a point is inside the bounds of a particular cell. Some locators cache cell bounds and this function can make use of fast access to the data.