Re: DelaunayTriangulation[] output
- To: mathgroup at smc.vnet.net
 - Subject: [mg83232] Re: DelaunayTriangulation[] output
 - From: dh <dh at metrohm.ch>
 - Date: Thu, 15 Nov 2007 05:46:21 -0500 (EST)
 - References: <fhegn1$m6p$1@smc.vnet.net>
 
Hi Dominik,
the adjecency list gives a vertex and its neighbours. If we partition 
the neighbours into all possible pairs and add the vertex, we obtain all 
triangels that contain this vertex. However, this gives the same 
triangle several times. Therefore,we sort the triangle points and use 
Unique to get rid of the multiplicity:
t=Function[x,Prepend[#,x[[1]]]&/@Partition[x[[2]],2,1]] /@ adj;
Sort /@ Flatten[t,1]   //Union
hope this helps, Daniel
Dominick wrote:
> 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.
>