I'm trying to visualize the curvature of a geodesic using vtkArrow and I cannot figure out how to pass the normal vectors to vtkGlyph3D to orient and scale the vectors appropriately. I've included my code below. Any suggestions? Thanks!<br>
<br>...<br>vtkPolyDataNormals *pathNormals = vtkPolyDataNormals::New();<br>pathNormals->SetInputConnection( geodesicPath->GetOutputPort() );<br>pathNormals->SplittingOff();<br>pathNormals->Update();<br> <br>vtkCurvatures *pathCurvature = vtkCurvatures::New();<br>
pathCurvature->SetInputConnection( geodesicPath->GetOutputPort() );<br>pathCurvature->SetCurvatureTypeToGaussian(); <br>pathCurvature->Update();<br> <br>vtkPolyDataMapper *curvatureMap = vtkPolyDataMapper::New();<br>
curvatureMap->SetInputConnection(pathCurvature->GetOutputPort());<br> <br>vtkArrowSource *arrows = vtkArrowSource::New();<br>vtkGlyph3D *glyphs = vtkGlyph3D::New();<br>glyphs->SetInputConnection( 1, pathNormals->GetOutputPort() );<br>
glyphs->SetInputConnection( 0, pathCurvature->GetOutputPort() );<br>glyphs->SetSourceConnection( arrows->GetOutputPort() );<br>glyphs->SetScaleModeToScaleByScalar();<br>glyphs->SetScaleFactor(5.0);<br>glyphs->SetVectorModeToUseNormal();<br>
glyphs->SetColorModeToColorByScalar();<br>glyphs->OrientOn();<br clear="all">...<br><br>-- <br>David Welch<br>Graduate Student<br>Dept. of Biomedical Engineering<br>University of Iowa<br>Lab: (319) 335-5279<br>