VTK
|
performs line-based thresholding for vtkTable data. More...
#include <vtkBivariateLinearTableThreshold.h>
Public Types | |
enum | OutputPorts { OUTPUT_ROW_IDS =0, OUTPUT_ROW_DATA } |
enum | LinearThresholdType { BLT_ABOVE =0, BLT_BELOW, BLT_NEAR, BLT_BETWEEN } |
typedef vtkTableAlgorithm | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkBivariateLinearTableThreshold * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | AddColumnToThreshold (vtkIdType column, vtkIdType component) |
int | GetNumberOfColumnsToThreshold () |
void | GetColumnToThreshold (vtkIdType idx, vtkIdType &column, vtkIdType &component) |
void | ClearColumnsToThreshold () |
vtkIdTypeArray * | GetSelectedRowIds (int selection=0) |
void | Initialize () |
void | AddLineEquation (double *p1, double *p2) |
void | AddLineEquation (double *p, double slope) |
void | AddLineEquation (double a, double b, double c) |
void | ClearLineEquations () |
virtual void | SetInclusive (int) |
virtual int | GetInclusive () |
virtual int | GetLinearThresholdType () |
virtual void | SetLinearThresholdType (int) |
void | SetLinearThresholdTypeToAbove () |
void | SetLinearThresholdTypeToBelow () |
void | SetLinearThresholdTypeToNear () |
void | SetLinearThresholdTypeToBetween () |
virtual void | SetColumnRanges (double, double) |
void | SetColumnRanges (double[2]) |
virtual double * | GetColumnRanges () |
virtual void | GetColumnRanges (double &, double &) |
virtual void | GetColumnRanges (double[2]) |
virtual void | SetDistanceThreshold (double) |
virtual double | GetDistanceThreshold () |
virtual void | SetUseNormalizedDistance (int) |
virtual int | GetUseNormalizedDistance () |
virtual void | UseNormalizedDistanceOn () |
virtual void | UseNormalizedDistanceOff () |
Static Public Member Functions | |
static vtkBivariateLinearTableThreshold * | New () |
static int | IsTypeOf (const char *type) |
static vtkBivariateLinearTableThreshold * | SafeDownCast (vtkObjectBase *o) |
static void | ComputeImplicitLineFunction (double *p1, double *p2, double *abc) |
static void | ComputeImplicitLineFunction (double *p, double slope, double *abc) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkBivariateLinearTableThreshold () | |
virtual | ~vtkBivariateLinearTableThreshold () |
virtual int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | FillInputPortInformation (int port, vtkInformation *info) |
virtual int | FillOutputPortInformation (int port, vtkInformation *info) |
virtual int | ApplyThreshold (vtkTable *tableToThreshold, vtkIdTypeArray *acceptedIds) |
int | ThresholdAbove (double x, double y) |
int | ThresholdBelow (double x, double y) |
int | ThresholdNear (double x, double y) |
Protected Attributes | |
double | ColumnRanges [2] |
double | DistanceThreshold |
int | Inclusive |
int | LinearThresholdType |
int | NumberOfLineEquations |
int | UseNormalizedDistance |
vtkSmartPointer< vtkDoubleArray > | LineEquations |
Internals * | Implementation |
int | ThresholdBetween (double x, double y) |
performs line-based thresholding for vtkTable data.
Class for filtering the rows of a two numeric columns of a vtkTable. The columns are treated as the two variables of a line. This filter will then iterate through the rows of the table determining if X,Y values pairs are above/below/between/near one or more lines.
The "between" mode checks to see if a row is contained within the convex hull of all of the specified lines. The "near" mode checks if a row is within a distance threshold two one of the specified lines. This class is used in conjunction with various plotting classes, so it is useful to rescale the X,Y axes to a particular range of values. Distance comparisons can be performed in the scaled space by setting the CustomRanges ivar and enabling UseNormalizedDistance.
Definition at line 51 of file vtkBivariateLinearTableThreshold.h.
typedef vtkTableAlgorithm vtkBivariateLinearTableThreshold::Superclass |
Definition at line 55 of file vtkBivariateLinearTableThreshold.h.
Enumerator | |
---|---|
OUTPUT_ROW_IDS | |
OUTPUT_ROW_DATA |
Definition at line 83 of file vtkBivariateLinearTableThreshold.h.
Enumerator | |
---|---|
BLT_ABOVE | |
BLT_BELOW | |
BLT_NEAR | |
BLT_BETWEEN |
Definition at line 88 of file vtkBivariateLinearTableThreshold.h.
|
protected |
|
protectedvirtual |
|
static |
|
static |
|
virtual |
Reimplemented in vtkPBivariateLinearTableThreshold.
|
static |
|
protectedvirtual |
Reimplemented in vtkPBivariateLinearTableThreshold.
vtkBivariateLinearTableThreshold* vtkBivariateLinearTableThreshold::NewInstance | ( | ) | const |
void vtkBivariateLinearTableThreshold::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
virtual |
Include the line in the threshold. Essentially whether the threshold operation uses > versus >=.
|
virtual |
Include the line in the threshold. Essentially whether the threshold operation uses > versus >=.
void vtkBivariateLinearTableThreshold::AddColumnToThreshold | ( | vtkIdType | column, |
vtkIdType | component | ||
) |
Add a numeric column to the pair of columns to be thresholded. Call twice.
int vtkBivariateLinearTableThreshold::GetNumberOfColumnsToThreshold | ( | ) |
Return how many columns have been added. Hopefully 2.
void vtkBivariateLinearTableThreshold::GetColumnToThreshold | ( | vtkIdType | idx, |
vtkIdType & | column, | ||
vtkIdType & | component | ||
) |
Return the column number from the input table for the idx'th added column.
void vtkBivariateLinearTableThreshold::ClearColumnsToThreshold | ( | ) |
Reset the columns to be thresholded.
vtkIdTypeArray* vtkBivariateLinearTableThreshold::GetSelectedRowIds | ( | int | selection = 0 | ) |
Get the output as a table of row ids.
void vtkBivariateLinearTableThreshold::Initialize | ( | ) |
Reset the columns to threshold, column ranges, etc.
void vtkBivariateLinearTableThreshold::AddLineEquation | ( | double * | p1, |
double * | p2 | ||
) |
Add a line for thresholding from two x,y points.
void vtkBivariateLinearTableThreshold::AddLineEquation | ( | double * | p, |
double | slope | ||
) |
Add a line for thresholding in point-slope form.
void vtkBivariateLinearTableThreshold::AddLineEquation | ( | double | a, |
double | b, | ||
double | c | ||
) |
Add a line for thresholding in implicit form (ax + by + c = 0)
void vtkBivariateLinearTableThreshold::ClearLineEquations | ( | ) |
Reset the list of line equations.
|
virtual |
Set the threshold type. Above: find all rows that are above the specified lines. Below: find all rows that are below the specified lines. Near: find all rows that are near the specified lines. Between: find all rows that are between the specified lines.
|
virtual |
Set the threshold type. Above: find all rows that are above the specified lines. Below: find all rows that are below the specified lines. Near: find all rows that are near the specified lines. Between: find all rows that are between the specified lines.
|
inline |
Set the threshold type. Above: find all rows that are above the specified lines. Below: find all rows that are below the specified lines. Near: find all rows that are near the specified lines. Between: find all rows that are between the specified lines.
Definition at line 119 of file vtkBivariateLinearTableThreshold.h.
|
inline |
Set the threshold type. Above: find all rows that are above the specified lines. Below: find all rows that are below the specified lines. Near: find all rows that are near the specified lines. Between: find all rows that are between the specified lines.
Definition at line 120 of file vtkBivariateLinearTableThreshold.h.
|
inline |
Set the threshold type. Above: find all rows that are above the specified lines. Below: find all rows that are below the specified lines. Near: find all rows that are near the specified lines. Between: find all rows that are between the specified lines.
Definition at line 121 of file vtkBivariateLinearTableThreshold.h.
|
inline |
Set the threshold type. Above: find all rows that are above the specified lines. Below: find all rows that are below the specified lines. Near: find all rows that are near the specified lines. Between: find all rows that are between the specified lines.
Definition at line 122 of file vtkBivariateLinearTableThreshold.h.
|
virtual |
Manually access the maximum/minimum x,y values. This is used in conjunction with UseNormalizedDistance when determining if a row passes the threshold.
void vtkBivariateLinearTableThreshold::SetColumnRanges | ( | double | [2] | ) |
Manually access the maximum/minimum x,y values. This is used in conjunction with UseNormalizedDistance when determining if a row passes the threshold.
|
virtual |
Manually access the maximum/minimum x,y values. This is used in conjunction with UseNormalizedDistance when determining if a row passes the threshold.
|
virtual |
Manually access the maximum/minimum x,y values. This is used in conjunction with UseNormalizedDistance when determining if a row passes the threshold.
|
virtual |
Manually access the maximum/minimum x,y values. This is used in conjunction with UseNormalizedDistance when determining if a row passes the threshold.
|
virtual |
The Cartesian distance within which a point will pass the near threshold.
|
virtual |
The Cartesian distance within which a point will pass the near threshold.
|
virtual |
Renormalize the space of the data such that the X and Y axes are "square" over the specified ColumnRanges. This essentially scales the data space so that ColumnRanges[1]-ColumnRanges[0] = 1.0 and ColumnRanges[3]-ColumnRanges[2] = 1.0. Used for scatter plot distance calculations. Be sure to set DistanceThreshold accordingly, when used.
|
virtual |
Renormalize the space of the data such that the X and Y axes are "square" over the specified ColumnRanges. This essentially scales the data space so that ColumnRanges[1]-ColumnRanges[0] = 1.0 and ColumnRanges[3]-ColumnRanges[2] = 1.0. Used for scatter plot distance calculations. Be sure to set DistanceThreshold accordingly, when used.
|
virtual |
Renormalize the space of the data such that the X and Y axes are "square" over the specified ColumnRanges. This essentially scales the data space so that ColumnRanges[1]-ColumnRanges[0] = 1.0 and ColumnRanges[3]-ColumnRanges[2] = 1.0. Used for scatter plot distance calculations. Be sure to set DistanceThreshold accordingly, when used.
|
virtual |
Renormalize the space of the data such that the X and Y axes are "square" over the specified ColumnRanges. This essentially scales the data space so that ColumnRanges[1]-ColumnRanges[0] = 1.0 and ColumnRanges[3]-ColumnRanges[2] = 1.0. Used for scatter plot distance calculations. Be sure to set DistanceThreshold accordingly, when used.
|
static |
Convert the two-point line formula to implicit form.
|
static |
Convert the point-slope line formula to implicit form.
|
protectedvirtual |
Reimplemented in vtkPBivariateLinearTableThreshold.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Apply the current threshold to a vtkTable. Fills acceptedIds on success.
|
protected |
Determine if x,y is above all specified lines.
|
protected |
Determine if x,y is below all specified lines.
|
protected |
Determine if x,y is near ONE specified line (not all).
|
protected |
Determine if x,y is between ANY TWO of the specified lines.
|
protected |
Definition at line 162 of file vtkBivariateLinearTableThreshold.h.
|
protected |
Definition at line 163 of file vtkBivariateLinearTableThreshold.h.
|
protected |
Definition at line 164 of file vtkBivariateLinearTableThreshold.h.
|
protected |
Definition at line 165 of file vtkBivariateLinearTableThreshold.h.
|
protected |
Definition at line 166 of file vtkBivariateLinearTableThreshold.h.
|
protected |
Definition at line 167 of file vtkBivariateLinearTableThreshold.h.
|
protected |
Definition at line 170 of file vtkBivariateLinearTableThreshold.h.
|
protected |
Definition at line 171 of file vtkBivariateLinearTableThreshold.h.