triMat | R Documentation |
Lists the indices of the vertices of each Delaunay triangle in
the triangulation of a planar point set. The indices are listed
(in increasing numeric order) as the rows of an n \times 3
matrix where n
is the number of Delaunay triangles in the
triangulation.
triMat(object)
object |
An object of class |
This function was suggested by Robin Hankin of the School of Mathematical and Computing Sciences at Auckland University of Technology.
An n \times 3
matrix where n
is the number
of Delaunay triangles in the triangulation specified by object
.
The i^{th}
row consists of the indices (in the original
list of points being triangulated) of vertices of the i^{th}
Delaunay triangle. The indices are listed in increasing numeric
order in each row.
Earlier versions of this function (prior to release 0.1-14
of deldir) could sometimes give incorrect results.
This happened if the union of three contiguous Delaunay triangles
happened to constitute another triangle. This latter triangle
would appear in the list of triangles produced by triMat()
but is not itself a Delaunay triangle. The updated version
of triMat()
now checks for this possibility and gives
(I think!) correct results.
Many thanks to Jay Call, who pointed out this bug to me.
deldir()
triang.list()
plot.triang.list()
# These are the data used by Jay Call to illustrate the bug
# that appeared in a previous incarnation of triMat.
xy <- data.frame(
x = c(0.048,0.412,0.174,0.472,0.607,0.565,0.005,0.237,0.810,0.023),
y = c(0.512,0.928,0.955,0.739,0.946,0.134,0.468,0.965,0.631,0.782)
)
dxy <- deldir(xy)
M <- triMat(dxy)
plot(dxy,wlines="triang",num=TRUE,axes=FALSE,cmpnt_col=c(1,1,1,1,2,1))
# The triangle with vertices {4,5,8} was listed in the output of
# the previous (buggy) version of triMat(). It is NOT a Delaunay
# triangle and hence should NOT be listed.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.