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 for
p1
in (edge region for edge
,
i.e., edge 3) in the standard equilateral triangle
;
IarcCSstd.triRBC
returns I(p2
is in for
p1
in (edge region for edge
, i.e., edge 1) in
;
and
IarcCSstd.triRAC
returns I(p2
is in for
p1
in (edge region for edge
, i.e., edge 2) in
.
That is, each function returns 1 if
p2
is in , returns 0 otherwise.
CS proximity region is defined with respect to whose vertices are also labeled as
with expansion parameter
and edge regions are based on the center
in Cartesian coordinates
or
in barycentric coordinates in the interior of
If p1
and p2
are distinct and p1
is outside the corresponding edge region and p2
is outside , 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 p2
is in for
p1
, that is, returns 1 if p2
is in ,
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)