Re: DelaunayTriangulation[] output

• To: mathgroup at smc.vnet.net
• Subject: [mg83231] Re: DelaunayTriangulation[] output
• From: "Steve Luttrell" <steve at _removemefirst_luttrell.org.uk>
• Date: Thu, 15 Nov 2007 05:45:50 -0500 (EST)
• References: <fhegn1\$m6p\$1@smc.vnet.net>

```Here is one way of doing approximately what you want based on the
documentation for the Computational Geometry Package.

Set up the package and an example set of data.

<< ComputationalGeometry`
data2D={{4.4,14},{6.7,15.25},{6.9,12.8},{2.1,11.1},{9.5,14.9},{13.2,11.9},{10.3,12.3},{6.8,9.5},{3.3,7.7},{0.6,5.1},{5.3,2.4},{8.45,4.7},{11.5,9.6},{13.8,7.3},{12.9,3.1},{11,1.1}};
delval=DelaunayTriangulation[data2D];

Here is my quick and dirty extraction of triangles. I take each adjacency
list and partition it into overlapping pairs, then prepend the reference
node to form a triple, then sort the resulting triple (in preparation for
the Union later), then flatten all these triples into a flat list of
triples, then do a Union to eliminate common triples, leaving you with a
list of triples that are the triangles that you wanted.

Compare the graphics in the following two outputs:

PlanarGraphPlot[data2D]
Graphics[GraphicsComplex[data2D,Line[triangles]]]

You see that the results are nearly the same except at the boundary. I hope
this gets you near to what you wanted.

Steve Luttrell
West Malvern

"Dominick" <pd20012000 at yahoo.com> wrote in message
news:fhegn1\$m6p\$1 at smc.vnet.net...
> Hi guys I was wondering if you could                      help me with a
> couple of problems im having.                    I'm writing a program
> that when given two images it creates a morph in between them.The
> algorithm im implementing uses control points i choose on the image and
> them triangulates the the images using those control points.I then use the
> subsquent triangles to create a 1 to 1 correspondance between the 2
> images. Im using the DelaunayTriangulation[] command  to do the
> triangulation for me.Well my problem is the output of
> DelaunayTriangulation. I need a triangle list ie;
>
>
>                           i  j k
>                           1  5 2
>                           2  3 7
>                           . . .
>
>
>       where i,j,k are the vertices of the triangle
>  but DelaunayTriangulation outputs an adjacency list ie
>
>
>
>      { {i,{points that are connected to i},..}
>
>
> I was wondering if anyone knew how to convert this list to the triangle
> based list i need.If i get this figured out then 90%+ of the program is
> done.I appreciate any help.
>

```

• Prev by Date: Re: packages/notation/errors
• Next by Date: Help needed with new Export (v. 6)
• Previous by thread: Re: DelaunayTriangulation[] output
• Next by thread: Re: DelaunayTriangulation[] output