Slicer
5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
|
Filter that generates curves between points of an input polydata. More...
#include <Modules/Loadable/Markups/MRML/vtkCurveGenerator.h>
Public Types | |
enum | { CURVE_TYPE_LINEAR_SPLINE = 0, CURVE_TYPE_CARDINAL_SPLINE, CURVE_TYPE_KOCHANEK_SPLINE, CURVE_TYPE_POLYNOMIAL, CURVE_TYPE_SHORTEST_DISTANCE_ON_SURFACE, CURVE_TYPE_LAST } |
Type of curve to generate. More... | |
enum | { SORTING_METHOD_INDEX = 0, SORTING_METHOD_MINIMUM_SPANNING_TREE_POSITION, SORTING_METHOD_LAST } |
Set the sorting method for points in a polynomial. More... | |
enum | { POLYNOMIAL_FIT_METHOD_GLOBAL_LEAST_SQUARES = 0, POLYNOMIAL_FIT_METHOD_MOVING_LEAST_SQUARES, POLYNOMIAL_FIT_METHOD_LAST } |
enum | { POLYNOMIAL_WEIGHT_FUNCTION_RECTANGULAR = 0, POLYNOMIAL_WEIGHT_FUNCTION_TRIANGULAR, POLYNOMIAL_WEIGHT_FUNCTION_COSINE, POLYNOMIAL_WEIGHT_FUNCTION_GAUSSIAN, POLYNOMIAL_WEIGHT_FUNCTION_LAST } |
typedef vtkPolyDataAlgorithm | Superclass |
Public Member Functions | |
virtual void | CurveIsClosedOff () |
virtual void | CurveIsClosedOn () |
virtual const char * | GetClassName () |
vtkIdType | GetControlPointIdFromInterpolatedPointId (vtkIdType interpolatedPointId) |
virtual bool | GetCurveIsClosed () |
virtual int | GetCurveType () |
virtual double | GetKochanekBias () |
Bias of derivative toward previous point (negative value) or next point. Range -1 to 1. Default 0. More... | |
virtual double | GetKochanekContinuity () |
Make the curve sharper( negative value) or smoother (positive value). Range -1 to 1. Default 0. More... | |
virtual bool | GetKochanekEndsCopyNearestDerivatives () |
Make the ends of the curve 'straighter' by copying derivative of the nearest point. Default false. More... | |
virtual double | GetKochanekTension () |
How quickly the curve turns, higher values like tightening an elastic. Range -1 to 1. Default 0. More... | |
virtual int | GetNumberOfPointsPerInterpolatingSegment () |
double | GetOutputCurveLength () |
Get the length of the curve. More... | |
vtkPoints * | GetOutputPoints () |
Get the output sampled points. More... | |
vtkParametricFunction * | GetParametricFunction () |
The internal instance of the current parametric function use of the curve for other computations. More... | |
virtual double | GetPolynomialFitMethod () |
virtual int | GetPolynomialOrder () |
Set the order of the polynomials for fitting. Range 1 to 9 (equation becomes unstable from 9 upward). Default 1. More... | |
virtual int | GetPolynomialPointSortingMethod () |
virtual double | GetPolynomialSampleWidth () |
Set the sampling distance (in parameter space) for moving least squares sampling. More... | |
virtual double | GetPolynomialWeightFunction () |
int | GetSurfaceCostFunctionType () |
If the surface scalars should be used to weight the distances in the pathfinding algorithm. More... | |
vtkIdList * | GetSurfacePointIds () |
Get the list of curve point ids on the surface mesh. More... | |
virtual int | IsA (const char *type) |
virtual bool | IsInterpolatingCurve () |
void | PrintSelf (ostream &os, vtkIndent indent) override |
virtual void | SetCurveIsClosed (bool) |
virtual void | SetCurveType (int) |
void | SetCurveTypeToCardinalSpline () |
void | SetCurveTypeToKochanekSpline () |
void | SetCurveTypeToLinearSpline () |
void | SetCurveTypeToPolynomial () |
void | SetCurveTypeToShortestDistanceOnSurface () |
void | SetInputPoints (vtkPoints *points) |
Set the input control points. More... | |
virtual void | SetKochanekBias (double) |
virtual void | SetKochanekContinuity (double) |
virtual void | SetKochanekEndsCopyNearestDerivatives (bool) |
virtual void | SetKochanekTension (double) |
virtual void | SetNumberOfPointsPerInterpolatingSegment (int) |
Sample an interpolating curve this many times per segment (pair of points in sequence). Range 1 and up. Default 5. More... | |
virtual void | SetPolynomialFitMethod (double) |
void | SetPolynomialFitMethodToGlobalLeastSquares () |
void | SetPolynomialFitMethodToMovingLeastSquares () |
virtual void | SetPolynomialOrder (int) |
virtual void | SetPolynomialPointSortingMethod (int) |
void | SetPolynomialPointSortingMethodToIndex () |
void | SetPolynomialPointSortingMethodToMinimumSpanningTreePosition () |
virtual void | SetPolynomialSampleWidth (double) |
virtual void | SetPolynomialWeightFunction (double) |
void | SetPolynomialWeightFunctionToCosine () |
void | SetPolynomialWeightFunctionToGaussian () |
void | SetPolynomialWeightFunctionToRectangular () |
void | SetPolynomialWeightFunctionToTriangular () |
void | SetSurfaceCostFunctionType (int surfaceCostFunctionType) |
void | SetCurveIsLoop (bool loop) |
void | CurveIsLoopOn () |
void | CurveIsLoopOff () |
bool | GetCurveIsLoop () |
Static Public Member Functions | |
static const char * | GetCurveTypeAsString (int id) |
static int | GetCurveTypeFromString (const char *name) |
static const char * | GetPolynomialFitMethodAsString (int id) |
static int | GetPolynomialFitMethodFromString (const char *name) |
static const char * | GetPolynomialPointSortingMethodAsString (int id) |
static int | GetPolynomialPointSortingMethodFromString (const char *name) |
static const char * | GetPolynomialWeightFunctionAsString (int id) |
static int | GetPolynomialWeightFunctionFromString (const char *name) |
static int | IsTypeOf (const char *type) |
static vtkCurveGenerator * | New () |
static vtkCurveGenerator * | SafeDownCast (vtkObject *o) |
static void | SortByIndex (vtkPoints *inputPoints, vtkDoubleArray *outputParameters) |
static void | SortByMinimumSpanningTreePosition (vtkPoints *inputPoints, vtkDoubleArray *outputParameters) |
Protected Member Functions | |
int | FillInputPortInformation (int port, vtkInformation *info) override |
int | GenerateLines (vtkPolyData *polyData) |
int | GeneratePoints (vtkPoints *inputPoints, vtkPolyData *inputSurface, vtkPolyData *outputPolyData) |
int | GeneratePointsFromFunction (vtkPoints *inputPoints, vtkPoints *outputPoints, vtkDoubleArray *outputPedigreeIdArray) |
int | GeneratePointsFromSurface (vtkPoints *inputPoints, vtkPolyData *inputSurface, vtkPoints *outputPoints, vtkDoubleArray *outputPedigreeIdArray) |
void | operator= (const vtkCurveGenerator &)=delete |
int | RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override |
void | SetParametricFunctionToCardinalSpline (vtkPoints *inputPoints) |
void | SetParametricFunctionToKochanekSpline (vtkPoints *inputPoints) |
void | SetParametricFunctionToLinearSpline (vtkPoints *inputPoints) |
void | SetParametricFunctionToPolynomial (vtkPoints *inputPoints) |
void | SetParametricFunctionToSpline (vtkPoints *inputPoints, vtkSpline *xSpline, vtkSpline *ySpline, vtkSpline *zSpline) |
vtkCurveGenerator () | |
vtkCurveGenerator (const vtkCurveGenerator &)=delete | |
~vtkCurveGenerator () override | |
Protected Attributes | |
bool | CurveIsClosed |
int | CurveType |
vtkSmartPointer< vtkDoubleArray > | InputParameters |
std::vector< vtkIdType > | InterpolatedPointIdsForControlPoints |
double | KochanekBias |
double | KochanekContinuity |
bool | KochanekEndsCopyNearestDerivatives |
double | KochanekTension |
int | NumberOfPointsPerInterpolatingSegment |
double | OutputCurveLength |
vtkSmartPointer< vtkParametricFunction > | ParametricFunction |
int | PolynomialFitMethod |
int | PolynomialOrder |
int | PolynomialPointSortingMethod |
double | PolynomialSampleWidth |
int | PolynomialWeightFunction |
vtkSmartPointer< vtkSlicerDijkstraGraphGeodesicPath > | SurfacePathFilter |
vtkSmartPointer< vtkPointLocator > | SurfacePointLocator |
Filter that generates curves between points of an input polydata.
Definition at line 40 of file vtkCurveGenerator.h.
typedef vtkPolyDataAlgorithm vtkCurveGenerator::Superclass |
Definition at line 43 of file vtkCurveGenerator.h.
anonymous enum |
Type of curve to generate.
Enumerator | |
---|---|
CURVE_TYPE_LINEAR_SPLINE | |
CURVE_TYPE_CARDINAL_SPLINE | |
CURVE_TYPE_KOCHANEK_SPLINE | |
CURVE_TYPE_POLYNOMIAL | |
CURVE_TYPE_SHORTEST_DISTANCE_ON_SURFACE | |
CURVE_TYPE_LAST |
Definition at line 64 of file vtkCurveGenerator.h.
anonymous enum |
Set the sorting method for points in a polynomial.
Enumerator | |
---|---|
SORTING_METHOD_INDEX | |
SORTING_METHOD_MINIMUM_SPANNING_TREE_POSITION | |
SORTING_METHOD_LAST |
Definition at line 120 of file vtkCurveGenerator.h.
anonymous enum |
Set the type of fit for polynomials see corresponding entries in vtkParametricPolynomialApproximation.h for more information
Enumerator | |
---|---|
POLYNOMIAL_FIT_METHOD_GLOBAL_LEAST_SQUARES | |
POLYNOMIAL_FIT_METHOD_MOVING_LEAST_SQUARES | |
POLYNOMIAL_FIT_METHOD_LAST |
Definition at line 138 of file vtkCurveGenerator.h.
anonymous enum |
Set the weight function for moving least squares polynomial fits see corresponding entries in vtkParametricPolynomialApproximation.h for more information
Enumerator | |
---|---|
POLYNOMIAL_WEIGHT_FUNCTION_RECTANGULAR | |
POLYNOMIAL_WEIGHT_FUNCTION_TRIANGULAR | |
POLYNOMIAL_WEIGHT_FUNCTION_COSINE | |
POLYNOMIAL_WEIGHT_FUNCTION_GAUSSIAN | |
POLYNOMIAL_WEIGHT_FUNCTION_LAST |
Definition at line 157 of file vtkCurveGenerator.h.
|
protected |
|
overrideprotected |
|
protecteddelete |
|
virtual |
|
virtual |
|
inline |
Definition at line 59 of file vtkCurveGenerator.h.
|
inline |
Definition at line 58 of file vtkCurveGenerator.h.
|
overrideprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
virtual |
vtkIdType vtkCurveGenerator::GetControlPointIdFromInterpolatedPointId | ( | vtkIdType | interpolatedPointId | ) |
Get the control point id from the interpolated point id Currently only works for shortest surface distance
|
virtual |
|
inline |
Definition at line 60 of file vtkCurveGenerator.h.
|
virtual |
|
static |
|
static |
|
virtual |
Bias of derivative toward previous point (negative value) or next point. Range -1 to 1. Default 0.
|
virtual |
Make the curve sharper( negative value) or smoother (positive value). Range -1 to 1. Default 0.
|
virtual |
Make the ends of the curve 'straighter' by copying derivative of the nearest point. Default false.
|
virtual |
How quickly the curve turns, higher values like tightening an elastic. Range -1 to 1. Default 0.
|
virtual |
double vtkCurveGenerator::GetOutputCurveLength | ( | ) |
Get the length of the curve.
vtkPoints* vtkCurveGenerator::GetOutputPoints | ( | ) |
Get the output sampled points.
|
inline |
The internal instance of the current parametric function use of the curve for other computations.
Definition at line 189 of file vtkCurveGenerator.h.
|
virtual |
|
static |
|
static |
|
virtual |
Set the order of the polynomials for fitting. Range 1 to 9 (equation becomes unstable from 9 upward). Default 1.
|
virtual |
|
static |
|
static |
|
virtual |
Set the sampling distance (in parameter space) for moving least squares sampling.
|
virtual |
|
static |
|
static |
int vtkCurveGenerator::GetSurfaceCostFunctionType | ( | ) |
If the surface scalars should be used to weight the distances in the pathfinding algorithm.
vtkIdList* vtkCurveGenerator::GetSurfacePointIds | ( | ) |
Get the list of curve point ids on the surface mesh.
|
virtual |
|
virtual |
|
static |
|
static |
|
protecteddelete |
|
override |
|
overrideprotected |
|
static |
|
virtual |
This indicates whether the curve should loop back in on itself, connecting the last point back to the first point (disabled by default).
|
inline |
These methods are deprecated and will be removed in the future. Use SetCurveIsClosed, GetCurveIsClosed, CurveIsCloseOn, CurveIsCloseOff methods instead.
Definition at line 57 of file vtkCurveGenerator.h.
|
virtual |
|
inline |
Definition at line 78 of file vtkCurveGenerator.h.
|
inline |
Definition at line 79 of file vtkCurveGenerator.h.
|
inline |
Definition at line 77 of file vtkCurveGenerator.h.
|
inline |
Definition at line 80 of file vtkCurveGenerator.h.
|
inline |
Definition at line 81 of file vtkCurveGenerator.h.
void vtkCurveGenerator::SetInputPoints | ( | vtkPoints * | points | ) |
Set the input control points.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Sample an interpolating curve this many times per segment (pair of points in sequence). Range 1 and up. Default 5.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
virtual |
|
inline |
Definition at line 148 of file vtkCurveGenerator.h.
|
inline |
Definition at line 149 of file vtkCurveGenerator.h.
|
virtual |
|
virtual |
|
inline |
Definition at line 130 of file vtkCurveGenerator.h.
|
inline |
Definition at line 131 of file vtkCurveGenerator.h.
|
virtual |
|
virtual |
|
inline |
Definition at line 171 of file vtkCurveGenerator.h.
|
inline |
Definition at line 172 of file vtkCurveGenerator.h.
|
inline |
Definition at line 169 of file vtkCurveGenerator.h.
|
inline |
Definition at line 170 of file vtkCurveGenerator.h.
void vtkCurveGenerator::SetSurfaceCostFunctionType | ( | int | surfaceCostFunctionType | ) |
|
static |
Calculates point parameters for use in vtkParametricPolynomialApproximation The parameter values are based on the point index and range from 0.0 at the start to 1.0 at the end of the line.
inputPoints | Input list of points. The points form a continuous line from the first to last point. |
outputParameters | Parameters used by vtkParametricPolynomialApproximation to approximate a polynomial from the input points. |
|
static |
Calculates point parameters for use in vtkParametricPolynomialApproximation The parameter values are calculated using the following algorithm:
inputPoints | Input point cloud that should be sorted to form a continuous line. |
outputParameters | Parameters used by vtkParametricPolynomialApproximation to approximate a polynomial from the input points. |
|
protected |
Definition at line 220 of file vtkCurveGenerator.h.
|
protected |
Definition at line 219 of file vtkCurveGenerator.h.
|
protected |
Definition at line 235 of file vtkCurveGenerator.h.
|
protected |
Definition at line 230 of file vtkCurveGenerator.h.
|
protected |
Definition at line 221 of file vtkCurveGenerator.h.
|
protected |
Definition at line 222 of file vtkCurveGenerator.h.
|
protected |
Definition at line 224 of file vtkCurveGenerator.h.
|
protected |
Definition at line 223 of file vtkCurveGenerator.h.
|
protected |
Definition at line 218 of file vtkCurveGenerator.h.
|
protected |
Definition at line 239 of file vtkCurveGenerator.h.
|
protected |
Definition at line 236 of file vtkCurveGenerator.h.
|
protected |
Definition at line 227 of file vtkCurveGenerator.h.
|
protected |
Definition at line 225 of file vtkCurveGenerator.h.
|
protected |
Definition at line 226 of file vtkCurveGenerator.h.
|
protected |
Definition at line 228 of file vtkCurveGenerator.h.
|
protected |
Definition at line 229 of file vtkCurveGenerator.h.
|
protected |
Definition at line 234 of file vtkCurveGenerator.h.
|
protected |
Definition at line 233 of file vtkCurveGenerator.h.