MantisBT - VTK
View Issue Details
0012154VTK(No Category)public2011-05-04 17:102016-08-12 09:55
Raine 
Dave DeMarle 
normalmajoralways
closedmoved 
Ubuntu11.04
 
 
0012154: vtkStreamer::Integrate() does not return for some points
I was trying to generate dense streamline for the "combq.bin" and "combxyz.bin" from VTK Data, and the program get stuck at vtkStreamer::Integrate() and never returns.


//Run this program to reproduce the bug.
//This program is a modified version from VTK example for streamline.
//A copy of this plus the necessary cmake file is attached.

#include <vtkSmartPointer.h>
#include <vtkActor.h>
#include <vtkPLOT3DReader.h>
#include <vtkPlaneSource.h>
#include <vtkPolyDataMapper.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkRenderer.h>
#include <vtkStreamLine.h>
#include <vtkTestUtilities.h>
#include <vtkInteractorStyleTrackballCamera.h>
#include <vtkStructuredGridOutlineFilter.h>
#include <vtkProperty.h>
 
#include <vtkTesting.h>
 
// The environment variable VTK_DATA_ROOT will be used.
// Make sure it is set accordingly!
 
int main(int argc, char *argv[])
{
  // Locate VTK_DATA_ROOT
  vtkSmartPointer<vtkTesting> testHelper =
    vtkSmartPointer<vtkTesting>::New();
  std::string dataRoot = testHelper->GetDataRoot();
 
  // Start by loading some data.
  std::string xyzFile = dataRoot + "/Data/" + "combxyz.bin";
  std::string qFile = dataRoot + "/Data/" + "combq.bin";
  vtkSmartPointer<vtkPLOT3DReader> pl3d =
    vtkSmartPointer<vtkPLOT3DReader>::New();
  pl3d->SetXYZFileName(xyzFile.c_str());
  pl3d->SetQFileName(qFile.c_str());
  pl3d->SetScalarFunctionNumber(100);
  pl3d->SetVectorFunctionNumber(202);
  pl3d->Update();
 
  // Streamline itself
  vtkSmartPointer<vtkStreamLine> streamLine =
    vtkSmartPointer<vtkStreamLine>::New();
  streamLine->SetInputConnection(pl3d->GetOutputPort());
  
  streamLine->SetStartPosition(6.21832, -3.01398, 29.3924);
  
  streamLine->SetMaximumPropagationTime(10);
  streamLine->SetIntegrationStepLength(.2);
  streamLine->SetStepLength(.001);
  streamLine->SetNumberOfThreads(1);
  streamLine->SetIntegrationDirectionToIntegrateBothDirections();
  streamLine->VorticityOn();
  
  vtkSmartPointer<vtkPolyDataMapper> streamLineMapper =
    vtkSmartPointer<vtkPolyDataMapper>::New();
  streamLineMapper->SetInputConnection(streamLine->GetOutputPort());
  
 
  vtkSmartPointer<vtkActor> streamLineActor = vtkSmartPointer<vtkActor>::New();
  streamLineActor->SetMapper(streamLineMapper);
  streamLineActor->VisibilityOn();
  
  // Outline-Filter for the grid
  vtkSmartPointer<vtkStructuredGridOutlineFilter> outline =
    vtkSmartPointer<vtkStructuredGridOutlineFilter>::New();
  outline->SetInputConnection(pl3d->GetOutputPort());
 
  vtkSmartPointer<vtkPolyDataMapper> outlineMapper =
    vtkSmartPointer<vtkPolyDataMapper>::New();
  outlineMapper->SetInputConnection(outline->GetOutputPort());
 
  vtkSmartPointer<vtkActor> outlineActor =
    vtkSmartPointer<vtkActor>::New();
  outlineActor->SetMapper(outlineMapper);
  outlineActor->GetProperty()->SetColor(1, 1, 1);
 
  // Create the RenderWindow, Renderer and Actors
  vtkSmartPointer<vtkRenderer> renderer =
    vtkSmartPointer<vtkRenderer>::New();
    
  vtkSmartPointer<vtkRenderWindow> renderWindow =
    vtkSmartPointer<vtkRenderWindow>::New();
  renderWindow->AddRenderer(renderer);
  
 vtkSmartPointer<vtkRenderWindowInteractor> interactor =
    vtkSmartPointer<vtkRenderWindowInteractor>::New();
  interactor->SetRenderWindow(renderWindow);
 
  vtkSmartPointer<vtkInteractorStyleTrackballCamera> style =
    vtkSmartPointer<vtkInteractorStyleTrackballCamera>::New();
  interactor->SetInteractorStyle(style);
 
  renderer->AddActor(streamLineActor);
  renderer->AddActor(outlineActor);
  
  // Add the actors to the renderer, set the background and size
  renderer->SetBackground(0.1, 0.2, 0.4);
  renderWindow->SetSize(600, 600);
  interactor->Initialize();
  renderWindow->Render();
 
  interactor->Start();
 
  return EXIT_SUCCESS;
}
This only happens for a certain points, and when MaximumPropagationTime is long enough.
No tags attached.
zip VTK streamline bug.zip (1,779) 2011-05-04 17:10
https://www.vtk.org/Bug/file/8851/VTK%20streamline%20bug.zip
Issue History
2011-05-04 17:10RaineNew Issue
2011-05-04 17:10RaineFile Added: VTK streamline bug.zip
2011-06-16 13:12Zack GalbreathCategoryDevelopment => (No Category)
2013-07-22 18:20Dave DeMarleNote Added: 0031196
2013-07-22 18:20Dave DeMarleStatusbacklog => expired
2013-07-22 18:20Dave DeMarleAssigned To => Dave DeMarle
2016-08-12 09:55Kitware RobotNote Added: 0037233
2016-08-12 09:55Kitware RobotStatusexpired => closed
2016-08-12 09:55Kitware RobotResolutionopen => moved

Notes
(0031196)
Dave DeMarle   
2013-07-22 18:20   
If the bug is still present in 6.0.0, please reopen this report.
(0037233)
Kitware Robot   
2016-08-12 09:55   
Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current VTK Issues page linked in the banner at the top of this page.