funsCSEdgeRegs {pcds} | R Documentation |
Each function is for the presence of an arc from a point in one of the edge regions to another for Central Similarity Proximity Catch Digraphs (CS-PCDs) - standard equilateral triangle case
Description
Three indicator functions: IarcCSstd.triRAB
, IarcCSstd.triRBC
and IarcCSstd.triRAC
.
The function IarcCSstd.triRAB
returns I(p2
is in N_{CS}(p1,t)
for p1
in RAB
(edge region for edge AB
,
i.e., edge 3) in the standard equilateral triangle T_e=T(A,B,C)=T((0,0),(1,0),(1/2,\sqrt{3}/2))
;
IarcCSstd.triRBC
returns I(p2
is in N_{CS}(p1,t)
for p1
in RBC
(edge region for edge BC
, i.e., edge 1) in T_e
;
and
IarcCSstd.triRAC
returns I(p2
is in N_{CS}(p1,t)
for p1
in RAC
(edge region for edge AC
, i.e., edge 2) in T_e
.
That is, each function returns 1 if p2
is in N_{CS}(p1,t)
, returns 0 otherwise.
CS proximity region is defined with respect to T_e
whose vertices are also labeled as T_e=T(v=1,v=2,v=3)
with expansion parameter t>0
and edge regions are based on the center M=(m_1,m_2)
in Cartesian coordinates
or M=(\alpha,\beta,\gamma)
in barycentric coordinates in the interior of T_e
If p1
and p2
are distinct and p1
is outside the corresponding edge region and p2
is outside T_e
, it returns 0,
but if they are identical, then it returns 1 regardless of their location (i.e., it allows loops).
See also (Ceyhan (2005, 2010)).
Usage
IarcCSstd.triRAB(p1, p2, t, M)
IarcCSstd.triRBC(p1, p2, t, M)
IarcCSstd.triRAC(p1, p2, t, M)
Arguments
p1 |
A 2D point whose CS proximity region is constructed. |
p2 |
A 2D point. The function determines whether |
t |
A positive real number which serves as the expansion parameter in CS proximity region. |
M |
A 2D point in Cartesian coordinates or a 3D point in barycentric coordinates
which serves as a center in the interior of the standard equilateral triangle |
Value
Each function returns I(
p2
is in N_{CS}(p1,t))
for p1
, that is, returns 1 if p2
is in N_{CS}(p1,t)
,
returns 0 otherwise
Author(s)
Elvan Ceyhan
See Also
IarcCSt1.std.triRAB
, IarcCSt1.std.triRBC
and IarcCSt1.std.triRAC
Examples
#Examples for IarcCSstd.triRAB
A<-c(0,0); B<-c(1,0); C<-c(1/2,sqrt(3)/2);
CM<-(A+B+C)/3
T3<-rbind(A,B,CM);
set.seed(1)
Xp<-runif.std.tri(3)$gen.points
M<-as.numeric(runif.std.tri(1)$g) #try also M<-c(.6,.2)
t<-1
IarcCSstd.triRAB(Xp[1,],Xp[2,],t,M)
IarcCSstd.triRAB(c(.2,.5),Xp[2,],t,M)
#Examples for IarcCSstd.triRBC
A<-c(0,0); B<-c(1,0); C<-c(1/2,sqrt(3)/2);
CM<-(A+B+C)/3
T1<-rbind(B,C,CM);
set.seed(1)
Xp<-runif.std.tri(3)$gen.points
M<-as.numeric(runif.std.tri(1)$g) #try also M<-c(.6,.2)
t<-1
IarcCSstd.triRBC(Xp[1,],Xp[2,],t,M)
IarcCSstd.triRBC(c(.2,.5),Xp[2,],t,M)
#Examples for IarcCSstd.triRAC
A<-c(0,0); B<-c(1,0); C<-c(1/2,sqrt(3)/2);
CM<-(A+B+C)/3
T2<-rbind(A,C,CM);
set.seed(1)
Xp<-runif.std.tri(3)$gen.points
M<-as.numeric(runif.std.tri(1)$g) #try also M<-c(.6,.2)
t<-1
IarcCSstd.triRAC(Xp[1,],Xp[2,],t,M)
IarcCSstd.triRAC(c(.2,.5),Xp[2,],t,M)