[Paraview] MapDataArrayToVertexAttribute question
Florian Hoffmann
florian.hoffmann at inutech.de
Thu Nov 13 07:19:27 EST 2014
Dear all,
I am trying to reuse some code from the point sprites plugin.
I would like to pass some size information onto some shader code for
nine different points like this:
voidvtkPointSpriteProperty::Render(vtkActor*act,vtkRenderer*ren)
{
vtkPainterPolyDataMapper*mapper=
vtkPainterPolyDataMapper::SafeDownCast(act->GetMapper());
vtkSmartPointer<vtkDoubleArray>darr=vtkSmartPointer<vtkDoubleArray>::New();
darr->SetNumberOfTuples(9);
darr->SetName("testArray");
double size_tuple[1] = {0.2};
darr->SetNumberOfComponents(1);
darr->SetTupleValue(0, size_tuple);
darr->SetTupleValue(1, size_tuple);
darr->SetTupleValue(2, size_tuple);
darr->SetTupleValue(3, size_tuple);
darr->SetTupleValue(4, size_tuple);
darr->SetTupleValue(5, size_tuple);
darr->SetTupleValue(6, size_tuple);
darr->SetTupleValue(7, size_tuple);
darr->SetTupleValue(8, size_tuple);
mapper->RemoveVertexAttributeMapping("SizeParam1");
mapper->MapDataArrayToVertexAttribute("SizeParam1",darr->GetName(),
vtkDataObject::FIELD_ASSOCIATION_POINTS, 0);
glPushAttrib(GL_ALL_ATTRIB_BITS);
glEnable(vtkgl::VERTEX_PROGRAM_POINT_SIZE_ARB);
this->Superclass::Render(act,ren);
}
shader code :
attribute float SizeParam1;
attribute float SizeParam2;
attribute float SizeParam3;
vec3 GetSizeParams()
{
vec3 sizeparams=vec3(0.0,0.5,0.8);
sizeparams.x = SizeParam1;
// sizeparams.y = SizeParam2;
// sizeparams.z = SizeParam3;
return sizeparams;
}
Question: How is the 0.2 stored in the tuple modified while passed to
the shader code ?
Because the value arriving in the
shader code seems to be different from the value 0.2 which is stored in
the tuples.
I noticed, because if I hardwire 0.2 in the shader code like this
vec3 GetSizeParams()
{
vec3 sizeparams=vec3(0.2,0.5,0.8);
return sizeparams;
}
I see a different rendering.
Could anyone please cast a light into this issue and tell me what I am
doing wrong or rather which settings influencing the mapping I should
draw my attention to ?
Thanks.
Best regards,
Florian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20141113/2af20bea/attachment-0001.html>
More information about the ParaView
mailing list