rel.edge.tri {pcds}R Documentation

The index of the edge region in a triangle that contains the point

Description

Returns the index of the edge whose region contains point, p, in the triangle tri=T(A,B,C) with edge regions based on center M=(m_1,m_2) in Cartesian coordinates or M=(\alpha,\beta,\gamma) in barycentric coordinates in the interior of the triangle tri.

Edges are labeled as 3 for edge AB, 1 for edge BC, and 2 for edge AC. If the point, p, is not inside tri, then the function yields NA as output. Edge region 1 is the triangle T(B,C,M), edge region 2 is T(A,C,M), and edge region 3 is T(A,B,M).

See also (Ceyhan (2005, 2010); Ceyhan et al. (2007)).

Usage

rel.edge.tri(p, tri, M)

Arguments

p

A 2D point for which M-edge region it resides in is to be determined in the triangle tri.

tri

A 3 \times 2 matrix with each row representing a vertex of the triangle.

M

A 2D point in Cartesian coordinates or a 3D point in barycentric coordinates which serves as a center in the interior of the triangle tri.

Value

A list with three elements

re

Index of the M-edge region that contains point, p in the triangle tri.

tri

The vertices of the triangle, where row labels are A, B, and C with edges are labeled as 3 for edge AB, 1 for edge BC, and 2 for edge AC.

desc

Description of the edge labels

Author(s)

Elvan Ceyhan

References

Ceyhan E (2005). An Investigation of Proximity Catch Digraphs in Delaunay Tessellations, also available as technical monograph titled Proximity Catch Digraphs: Auxiliary Tools, Properties, and Applications. Ph.D. thesis, The Johns Hopkins University, Baltimore, MD, 21218.

Ceyhan E (2010). “Extension of One-Dimensional Proximity Regions to Higher Dimensions.” Computational Geometry: Theory and Applications, 43(9), 721-748.

Ceyhan E (2012). “An investigation of new graph invariants related to the domination number of random proximity catch digraphs.” Methodology and Computing in Applied Probability, 14(2), 299-334.

Ceyhan E, Priebe CE, Marchette DJ (2007). “A new family of random graphs for testing spatial segregation.” Canadian Journal of Statistics, 35(1), 27-50.

See Also

rel.edge.triCM, rel.edge.basic.triCM, rel.edge.basic.tri, rel.edge.std.triCM, and edge.reg.triCM

Examples


A<-c(1,1); B<-c(2,0); C<-c(1.5,2);
Tr<-rbind(A,B,C);

P<-c(1.4,1.2)
M<-as.numeric(runif.tri(1,Tr)$g)  #try also M<-c(1.6,1.2)

rel.edge.tri(P,Tr,M)

n<-20  #try also n<-40
Xp<-runif.tri(n,Tr)$g

re<-vector()
for (i in 1:n)
  re<-c(re,rel.edge.tri(Xp[i,],Tr,M)$re)
re

Xlim<-range(Tr[,1],Xp[,1])
Ylim<-range(Tr[,2],Xp[,2])
xd<-Xlim[2]-Xlim[1]
yd<-Ylim[2]-Ylim[1]

if (dimension(M)==3) {M<-bary2cart(M,Tr)}

plot(Tr,xlab="",ylab="",axes=TRUE,pch=".",xlim=Xlim+xd*c(-.05,.05),ylim=Ylim+yd*c(-.05,.05))
polygon(Tr)
points(Xp,pch=".")
L<-Tr; R<-rbind(M,M,M)
segments(L[,1], L[,2], R[,1], R[,2], lty = 2)
text(Xp,labels=factor(re))

txt<-rbind(Tr,M)
xc<-txt[,1]
yc<-txt[,2]
txt.str<-c("A","B","C","M")
text(xc,yc,txt.str)

p1<-(A+B+M)/3
p2<-(B+C+M)/3
p3<-(A+C+M)/3

plot(Tr,xlab="",ylab="", main="Illustration of M-edge regions in a triangle",
axes=TRUE,pch=".",xlim=Xlim+xd*c(-.05,.05),ylim=Ylim+yd*c(-.05,.05))
polygon(Tr)
L<-Tr; R<-rbind(M,M,M)
segments(L[,1], L[,2], R[,1], R[,2], lty = 2)

txt<-rbind(Tr,M,p1,p2,p3)
xc<-txt[,1]+c(-.02,.02,.02,.02,.02,.02,.02)
yc<-txt[,2]+c(.02,.02,.04,.05,.02,.02,.02)
txt.str<-c("A","B","C","M","re=3","re=1","re=2")
text(xc,yc,txt.str)



[Package pcds version 0.1.8 Index]