dox/Common/vtkTriangleStrip.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00036
#ifndef __vtkTriangleStrip_h
00037
#define __vtkTriangleStrip_h
00038
00039
#include "vtkCell.h"
00040
00041
class vtkLine;
00042
class vtkTriangle;
00043
00044 class VTK_COMMON_EXPORT vtkTriangleStrip :
public vtkCell
00045 {
00046
public:
00047
static vtkTriangleStrip *
New();
00048 vtkTypeRevisionMacro(vtkTriangleStrip,
vtkCell);
00049
00051
00052 int GetCellType() {
return VTK_TRIANGLE_STRIP;};
00053 int GetCellDimension() {
return 2;};
00054 int GetNumberOfEdges() {
return this->
GetNumberOfPoints();};
00055 int GetNumberOfFaces() {
return 0;};
00056
vtkCell *
GetEdge(
int edgeId);
00057 vtkCell *
GetFace(
int vtkNotUsed(faceId)) {
return 0;};
00058
int CellBoundary(
int subId,
float pcoords[3],
vtkIdList *pts);
00059
void Contour(
float value,
vtkDataArray *cellScalars,
00060
vtkPointLocator *locator,
vtkCellArray *verts,
00061
vtkCellArray *lines,
vtkCellArray *polys,
00062
vtkPointData *inPd,
vtkPointData *outPd,
00063
vtkCellData *inCd,
vtkIdType cellId,
vtkCellData *outCd);
00064
void Clip(
float value,
vtkDataArray *cellScalars,
00065
vtkPointLocator *locator,
vtkCellArray *polys,
00066
vtkPointData *inPd,
vtkPointData *outPd,
00067
vtkCellData *inCd,
vtkIdType cellId,
vtkCellData *outCd,
00068
int insideOut);
00070
00071
int EvaluatePosition(
float x[3],
float* closestPoint,
00072
int& subId,
float pcoords[3],
00073
float& dist2,
float *weights);
00074
void EvaluateLocation(
int& subId,
float pcoords[3],
float x[3],
00075
float *weights);
00076
int IntersectWithLine(
float p1[3],
float p2[3],
float tol,
float& t,
00077
float x[3],
float pcoords[3],
int& subId);
00078
int Triangulate(
int index,
vtkIdList *ptIds,
vtkPoints *pts);
00079
void Derivatives(
int subId,
float pcoords[3],
float *values,
00080
int dim,
float *derivs);
00081
00083
int GetParametricCenter(
float pcoords[3]);
00084
00088
static void DecomposeStrip(
int npts,
vtkIdType *pts,
vtkCellArray *tris);
00089
00090
00091
protected:
00092 vtkTriangleStrip();
00093 ~vtkTriangleStrip();
00094
00095 vtkLine *Line;
00096 vtkTriangle *Triangle;
00097
00098
private:
00099 vtkTriangleStrip(
const vtkTriangleStrip&);
00100
void operator=(
const vtkTriangleStrip&);
00101 };
00102
00103
#endif
00104
00105