# vtkStreamTracer using regular grid?

**URL:** https://discourse.vtk.org/t/vtkstreamtracer-using-regular-grid/1215
**Category:** Support
**Created:** [June 26, 2019, 11:10am UTC](https://discourse.vtk.org/t/vtkstreamtracer-using-regular-grid/1215 "2019-06-26T11:10:48Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Jesper\_Henriksen](https://discourse.vtk.org/user_avatar/discourse.vtk.org/jesper_henriksen/32/563_2.png) [@Jesper\_Henriksen](https://discourse.vtk.org/u/Jesper_Henriksen)
#### Post date: [June 26, 2019, 11:10am UTC](https://discourse.vtk.org/t/vtkstreamtracer-using-regular-grid/1215/1 "2019-06-26T11:10:48Z")

</div>

Hi guys,

I’m having great trouble getting the vtkStreamTracer to show any traces from generated data (the original code used a vtkRTAnalyticSource to generate the data). It is probably some thing trivial but I have been unable to figure out what is needed in order to get this up and running. Any help would be greatly appreciated.

My current code looks like this:

int main(int argc, char\*\* argv)  
{  
// Setup the renderer  
vtkNew renderer;  
renderer-\>SetBackground(0.9, 0.9, 0.9);

```
// Setup the render window
vtkNew<vtkRenderWindow> renWin;
renWin->AddRenderer(renderer.Get());
renWin->SetSize(500, 500);

// Setup the render window interactor
vtkNew<vtkRenderWindowInteractor> interact;
vtkNew<vtkInteractorStyleTrackballCamera> style;
interact->SetRenderWindow(renWin.Get());
interact->SetInteractorStyle(style.Get());

const int XDim = 10;
const int YDim = 10;
const int ZDim = 10;

const int NUM_VALUES = XDim * YDim * ZDim;

vtkSmartPointer < vtkPoints > m_points = vtkSmartPointer < vtkPoints>::New();
m_points->SetNumberOfPoints(NUM_VALUES);

vtkFloatArray* m_vectors = vtkFloatArray::New();

m_vectors->SetNumberOfComponents(3);

vtkFloatArray* m_scalars[3];
for (int i = 0; i < 3; i++)
{
	m_scalars[i] = vtkFloatArray::New();
	m_scalars[i]->SetNumberOfComponents(1);
	m_scalars[i]->SetNumberOfTuples(NUM_VALUES);
}

float pt[3] = { 0 };
float vec[3] = { 0 };
int offset = 0;
for (int z = 0; z < 10; z++)
{
	for (int y = 0; y < 10; y++)
	{
		for (int x = 0; x < 10; x++)
		{
			pt[0] = x - 4.5;
			pt[1] = y - 4.5;
			pt[2] = z - 4.5;
			m_points->InsertPoint(offset, pt);

			vec[0] = 1;
			vec[1] = 1;
			vec[2] = 1;
			m_vectors->InsertTuple(offset, vec);

			for (int i = 0; i < 3; i++)
			{
				m_scalars[i]->InsertValue(offset, 1);
			}
			offset++;
		}
	}
}

vtkSmartPointer < vtkStructuredGrid> m_vectorField = vtkSmartPointer < vtkStructuredGrid >::New();

m_vectorField->SetDimensions(10, 10, 10);

m_vectorField->SetPoints(m_points);
m_vectorField->GetPointData()->SetVectors(m_vectors);
m_vectorField->GetPointData()->SetScalars(m_scalars[0]);

vtkSmartPointer < vtkPointSource > seeds = vtkSmartPointer < vtkPointSource >::New();
seeds->SetRadius(1);
seeds->SetCenter(0, 0, 0);
seeds->SetNumberOfPoints(50);

/// ***Magic stuff needs to happen here!!!!****

vtkSmartPointer < vtkRungeKutta45> rk4 = vtkSmartPointer < vtkRungeKutta45>::New();
vtkSmartPointer < vtkStreamTracer> streamer = vtkSmartPointer < vtkStreamTracer>::New();

streamer->SetInputData( ***WHAT GOES HERE???*** );

streamer->SetSourceConnection(seeds->GetOutputPort());
streamer->SetMaximumPropagation(500);
streamer->SetInitialIntegrationStep(0.01);
streamer->SetMaximumIntegrationStep(0.5);
streamer->SetIntegrationDirectionToForward();
streamer->SetComputeVorticity(1);
streamer->SetIntegrator(rk4);
streamer->SetMaximumError(1.0e-8);
streamer->Update();

vtkSmartPointer < vtkPolyDataMapper> mapStream = vtkSmartPointer < vtkPolyDataMapper>::New();
mapStream->SetInputConnection(streamer->GetOutputPort());
vtkSmartPointer < vtkActor> streamActor = vtkSmartPointer < vtkActor>::New();
streamActor->SetMapper(mapStream);
renderer->AddActor(streamActor);

// Render and show interactive window
renWin->Render();
interact->Initialize();
interact->Start();
return 0;

```

}

---

<div class="post-metadata">

### Author: ![Jesper\_Henriksen](https://discourse.vtk.org/user_avatar/discourse.vtk.org/jesper_henriksen/32/563_2.png) [@Jesper\_Henriksen](https://discourse.vtk.org/u/Jesper_Henriksen)
#### Post date: [July 2, 2019, 11:41am UTC](https://discourse.vtk.org/t/vtkstreamtracer-using-regular-grid/1215/2 "2019-07-02T11:41:26Z")

</div>

Solved, take a look at the post

# [Difference between vtkStructuredPoints and vtkStructuredPointsReader?](https://discourse.vtk.org/t/difference-between-vtkstructuredpoints-and-vtkstructuredpointsreader/1247)
