Attached Files | vtkQuadraticLinearQuad.diff [^] (1,535 bytes) 2007-08-10 10:10 [Show Content] [Hide Content]Index: vtkQuadraticLinearQuad.cxx
===================================================================
RCS file: /cvsroot/VTK/VTK/Filtering/vtkQuadraticLinearQuad.cxx,v
retrieving revision 1.6
diff -u -r1.6 vtkQuadraticLinearQuad.cxx
--- vtkQuadraticLinearQuad.cxx 31 Jul 2006 22:18:16 -0000 1.6
+++ vtkQuadraticLinearQuad.cxx 10 Aug 2007 14:04:29 -0000
@@ -30,14 +30,14 @@
vtkStandardNewMacro (vtkQuadraticLinearQuad);
//----------------------------------------------------------------------------
-// Construct the quad with six points.
+// Construct the quadratic linear quad with six points.
vtkQuadraticLinearQuad::vtkQuadraticLinearQuad ()
{
this->Edge = vtkQuadraticEdge::New();
this->LinEdge = vtkLine::New ();
this->Quad = vtkQuad::New ();
this->Scalars = vtkDoubleArray::New ();
- this->Scalars->SetNumberOfTuples (4); //Number of vertices of a linear quad
+ this->Scalars->SetNumberOfTuples (4); // vertices of a linear quad
this->Points->SetNumberOfPoints (6);
this->PointIds->SetNumberOfIds (6);
for (int i = 0; i < 6; i++)
@@ -148,7 +148,16 @@
pcoords[0] = 0.5 + (pcoords[0]/2.0);
}
pcoords[2] = 0.0;
- this->EvaluateLocation (subId, pcoords, closestPoint, weights);
+ if(closestPoint!=0)
+ {
+ // Compute both closestPoint and weights
+ this->EvaluateLocation(subId,pcoords,closestPoint,weights);
+ }
+ else
+ {
+ // Compute weigths only
+ this->InterpolationFunctions(pcoords,weights);
+ }
}
return returnStatus;
|