filled triangles

Bill Hibbard hiding at japan.com
Fri Mar 9 04:41:44 MST 2007


 Hi Ricardo,

To get solid color triangles, all vertices of a triangle must have the
same color. To achieve this, it may be necessary that each
Irregular2Dset in the UnionSet consist of a single triangle (so that
no triangles share any vertices).

Good luck,
Bill

  ----- Original Message -----
  From: "Ricardo Mantilla"
  To: "Bill Hibbard"
  Subject: Re: filled triangles
  Date: Thu, 08 Mar 2007 21:54:41 -0700


  Hi Bill,

  Thanks for your suggestion, however I am getting a some color
  gradients on my graph (attached) rather than flat colors inside the
  triangles. It may be due to how I am setting up the FlatField. In
  the code that follows "regions" is an Irregular2DSet[] array, and
  "colors" is a float[] array with as many positions as points in all
  the Irregular2DSet.

  CODE FOLLOWS +++++++++++++++++++

  RealType xEasting =RealType.getRealType("xEasting"),
  yNorthing=RealType.getRealType("yNorthing"),
  tileColor=RealType.getRealType("tileColor");

  RealTupleType domainXLYL=new RealTupleType(new RealType[]
  {xEasting,yNorthing});

  FunctionType func_xEasting_yNorthing_to_Color=new
  FunctionType(domainXLYL,tileColor);

  UnionSet allRegions=new UnionSet(domainXLYL,regions);

  FlatField theColors=new
  FlatField(func_xEasting_yNorthing_to_Color,allRegions);
  theColors.setSamples(colors);

  DataReference region_ref = new DataReferenceImpl("region");
  region_ref.setData(theColors);

  display_TIN.addReference(region_ref);

  CODE ENDS +++++++++++++++++++

  What am I doing wrong?

  Thanks,
  Ricardo



  Bill Hibbard wrote:
  > Hi Ricardo,
  >
  > I am using VisAD to display a bunch of filled triangles (as shown
  > in attachment). Since each triangle is supposed to be a different
  > color my approach was to create an irregular2DSet for each one
  > (using Delaunay.fill()) and then create a reference for each one
  > with an associated constant map (describing Red, Green, Blue).
  >
  > However, this is awfully slow when I have hundreds of triangles. I
  > was looking for something like creating an unionSet with the
  > irregular2DSets with each irregular2DSet having a property
  > associated to the color but I couldn't find a way to to it.
  >
  >
  > Construct a FlatField with MathType ((x, y) -> (r, g, b)) and use
  the
  > UnionSet as the domain Set of the FlatField. Then you have
  ScalarMaps
  > of the Field range values to Red, Green and Blue, and fill the
  triangle
  > vertex colors into those range values.
  >
  > Good luck,
  > Bill
  >
  >
  > --
  >

  -- -------------------------------------------------------------
  Ricardo Mantilla
  Posdoctoral Research Associate

  Department of Earth and Environmental Science
  New Mexico Institute of Mining and Technology
  801 Leroy Pl. MSEC 254
  Socorro, NM 87801

  Phone: (505) 835-5068
  Office: MSEC 254
  http://cires.colorado.edu/~ricardo/
  -------------------------------------------------------------
  << triangles2.png >>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: not available
Url: http://mailman.unidata.ucar.edu/mailing_lists/archives/visad/attachments/20070309/906a261c/attachment.ksh 


More information about the visad mailing list