<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>Hi 
all,</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=496490111-29032004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>&nbsp; I am trying 
to render a cloud of vertices with shading. In the code I have included below, I 
generate a pointset representing two orthogonal planes. Since there only are two 
planes, I constructed a vtkCellArray with two cells, each cell containing the 
vertices of one plane, and then set one normal per cell (during the polydata 
construction). However, this generates two flat colored planes, one having the 
red color I assigned to the actor while the other one is rendered black (see 
screenshot). Does anyone have an idea how to solve this? </SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=496490111-29032004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>Many 
thanks,</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=496490111-29032004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=496490111-29032004>Jan.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=496490111-29032004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>My 
Code:</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=496490111-29032004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>&nbsp;int 
npixels=100;<BR>&nbsp;vtkPoints* points = 
vtkPoints::New();<BR>&nbsp;points-&gt;Allocate(2*npixels*npixels);<BR>&nbsp;vtkCellArray* 
verts = vtkCellArray::New();<BR>&nbsp;vtkFloatArray* normals = 
vtkFloatArray::New();<BR>&nbsp;normals-&gt;SetNumberOfComponents(3);<BR>&nbsp;normals-&gt;SetNumberOfTuples(2);<BR>&nbsp;normals-&gt;InsertNextTuple3(0,0,1);<BR>&nbsp;normals-&gt;InsertNextTuple3(1,0,0);</SPAN></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>&nbsp;float 
x,y,z;<BR>&nbsp;<BR>&nbsp;z = 
0.0;<BR>&nbsp;verts-&gt;InsertNextCell(npixels*npixels);<BR>&nbsp;for(int i=0; 
i&lt;npixels;i++)<BR>&nbsp;{<BR>&nbsp;&nbsp;x = -1.0 + 
i*2.0/npixels;<BR>&nbsp;&nbsp;for(int j=0; j&lt;npixels; 
j++)<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;y = 
-1.0+j*2.0/npixels;<BR>&nbsp;&nbsp;&nbsp;int id = 
points-&gt;InsertNextPoint(x,y,z);<BR>&nbsp;&nbsp;&nbsp;verts-&gt;InsertCellPoint(id);<BR>&nbsp;&nbsp;}<BR>&nbsp;}</SPAN></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>&nbsp;x = 
0.0;<BR>&nbsp;verts-&gt;InsertNextCell(npixels*npixels);<BR>&nbsp;for(i=0; 
i&lt;npixels;i++)<BR>&nbsp;{<BR>&nbsp;&nbsp;y = -1.0 + 
i*2.0/npixels;<BR>&nbsp;&nbsp;for(int j=0; j&lt;npixels; 
j++)<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;z = 
-1.0+j*2.0/npixels;<BR>&nbsp;&nbsp;&nbsp;int id = 
points-&gt;InsertNextPoint(x,y,z);<BR>&nbsp;&nbsp;&nbsp;verts-&gt;InsertCellPoint(id);<BR>&nbsp;&nbsp;}<BR>&nbsp;}</SPAN></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=496490111-29032004>&nbsp;vtkPolyData* 
pd = 
vtkPolyData::New();<BR>&nbsp;pd-&gt;SetPoints(points);<BR>&nbsp;pd-&gt;SetVerts(verts);<BR>&nbsp;pd-&gt;GetCellData()-&gt;SetNormals(normals);</SPAN></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=496490111-29032004>&nbsp;vtkPolyDataMapper* pdm = 
vtkPolyDataMapper::New();<BR>&nbsp;pdm-&gt;SetInput(pd);<BR>&nbsp;<BR>&nbsp;vtkActor* 
a = 
vtkActor::New();<BR>&nbsp;a-&gt;SetMapper(pdm);<BR>&nbsp;a-&gt;GetProperty()-&gt;SetPointSize(4.0);<BR>&nbsp;a-&gt;GetProperty()-&gt;SetColor(1.0,0.0,0.0);</SPAN></FONT></DIV></BODY></HTML>