as.basic.tri: The labels of the vertices of a triangle in the basic...

View source: R/AuxDelaunay.R

as.basic.triR Documentation

The labels of the vertices of a triangle in the basic triangle form

Description

Labels the vertices of triangle, tri, as ABC so that AB is the longest edge, BC is the second longest and AC is the shortest edge (the order is as in the basic triangle).

The standard basic triangle form is T_b=T((0,0),(1,0),(c_1,c_2)) where c_1 is in [0,1/2], c_2>0 and (1-c_1)^2+c_2^2 \le 1. Any given triangle can be mapped to the standard basic triangle by a combination of rigid body motions (i.e., translation, rotation and reflection) and scaling, preserving uniformity of the points in the original triangle. Hence, standard basic triangle is useful for simulation studies under the uniformity hypothesis.

The option scaled a logical argument for scaling the resulting triangle or not. If scaled=TRUE, then the resulting triangle is scaled to be a regular basic triangle, i.e., longest edge having unit length, else (i.e., if scaled=FALSE which is the default), the new triangle T(A,B,C) is nonscaled, i.e., the longest edge AB may not be of unit length. The vertices of the resulting triangle (whether scaled or not) is presented in the order of vertices of the corresponding basic triangle, however when scaled the triangle is equivalent to the basic triangle T_b up to translation and rotation. That is, this function converts any triangle to a basic triangle (up to translation and rotation), so that the output triangle is $T(A',B',C')$ so that edges in decreasing length are $A'B'$, $B'C'$, and $A'C'$. Most of the times, the resulting triangle will still need to be translated and/or rotated to be in the standard basic triangle form.

Usage

as.basic.tri(tri, scaled = FALSE)

Arguments

tri

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

scaled

A logical argument for scaling the resulting basic triangle. If scaled=TRUE, then the resulting triangle is scaled to be a regular basic triangle, i.e., longest edge having unit length, else the new triangle T(A,B,C) is nonscaled. The default is scaled=FALSE.

Value

A list with three elements

tri

The vertices of the basic triangle stacked row-wise and labeled row-wise as A, B, C.

desc

Description of the edges based on the vertices, i.e., "Edges (in decreasing length are) AB, BC, and AC".

orig.order

Row order of the input triangle, tri, when converted to the scaled version of the basic triangle

Author(s)

Elvan Ceyhan

Examples

## Not run: 
c1<-.4; c2<-.6
A<-c(0,0); B<-c(1,0); C<-c(c1,c2);

as.basic.tri(rbind(A,B,C))
as.basic.tri(rbind(B,C,A))

A<-c(1,1); B<-c(2,0); C<-c(1.5,2);
as.basic.tri(rbind(A,B,C))
as.basic.tri(rbind(A,C,B))
as.basic.tri(rbind(B,A,C))

## End(Not run)


elvanceyhan/pcds documentation built on June 29, 2023, 8:12 a.m.