[vtkusers] multi-component data arrays..
Lisa S. Avila
lisa.avila at kitware.com
Thu Jul 25 22:48:09 EDT 2002
Hello,
You must define the number of components before the number of tuples.
Lisa
At 07:32 PM 7/25/2002, K.R.Subramanian wrote:
>I have consistently had troubles in using multicomponent data arrays.
>
>I wrote a simple program that uses a 3 component unsigned char array to be
>used to color map some scalar data, but the program seems to die almost all
>the time. The same program with just a single component has no problem at all.
>Are there any known bugs?
>
>Thanks.
>
> -- krs
>
>Here is the code segment I am using..
>
>
>vtkStructuredGrid *sg;
> vtkActor *a, *a2[8];
>
> sg = vtkStructuredGrid::New();
> sg->SetDimensions (TRes, NMetrics, 1);
>
> vtkPoints *pts = vtkPoints::New();
> pts->SetNumberOfPoints(TRes*NMetrics);
>
> vtkUnsignedCharArray *uca = vtkUnsignedCharArray::New();
> uca->SetNumberOfTuples (TRes*NMetrics);
> uca->SetNumberOfComponents (3);
>
> sg->GetCellData()->SetScalars (uca);
> sg->SetPoints (pts);
>
> float val;
> float *col = new float[3];
> for (k = n = 0; k < NMetrics; k++)
> {
> for (i = 0; i < TRes; i++)
> {
> switch (k)
> {
> case 0:
> val = 0.;
> col[0] = 255; col[1] = 0; col[2] = 0;
> break;
> case 1:
> val = dch[i];
> col[0] = 0; col[1] = 255; col[2] = 0;
> break;
> case 2:
> val = cpch[i]+dch[i];
> col[0] = 0; col[1] = 0; col[2] = 255;
> break;
> case 3:
> val = dcch[i]+cpchc[i]+dch[i]+cpch[i];
> col[0] = 255; col[1] = 0; col[2] = 255;
> break;
> case 4:
> val = ul[i];
> col[0] = 0; col[1] = 255; col[2] = 255;
> break;
> }
> r = val*ScaleFact;
>
> uca->SetTuple (n, col);
> pts->SetPoint (n++, (float) i, r, 0.);
> }
> }
>
>
>
>--
>K.R.Subramanian Phone: (704) 687-4872
>Department of Computer Science FAX: (704) 687-4893
>UNC Charlotte, CARC 311 Email: krs at cs.uncc.edu
>Charlotte, NC 28223-0001 Web: http://www.cs.uncc.edu/~krs
>
>
>
>_______________________________________________
>This is the private VTK discussion list.
>Please keep messages on-topic. Check the FAQ at:
><http://public.kitware.com/cgi-bin/vtkfaq>
>Follow this link to subscribe/unsubscribe:
>http://public.kitware.com/mailman/listinfo/vtkusers
More information about the vtkusers
mailing list