["A", "B", "C", "D", "E", "F"] randRange(0,5) (START + randRange(1,2)) % 6 VERTICES[START] VERTICES[END] [VERTICES[(START + 5) % 6], VERTICES[(START + 4) % 6]] [VERTICES[(END + 1) % 6], VERTICES[(END + 2) % 6]] VERTICES[(START + 3) % 6] VERTICES[(END + 3) % 6] [PI / 6, PI / 4, 3 * PI / 4] [15, 15, 15] [13, 13, 13] [ [(LENGTH[0]/2) * cos(TILT[0]), (LENGTH[0]/2) * sin(TILT[0])], [(LENGTH[1]/2) * cos(TILT[1]), (LENGTH[1]/2) * sin(TILT[1])], [(LENGTH[2]/2) * cos(TILT[2]), (LENGTH[2]/2) * sin(TILT[2])], ] [ [-1 * (LENGTH[0]/2) * cos(TILT[0]), -1 * (LENGTH[0]/2) * sin(TILT[0])], [-1 * (LENGTH[1]/2) * cos(TILT[1]), (-1 * LENGTH[1]/2) * sin(TILT[1])], [-1 * (LENGTH[2]/2) * cos(TILT[2]), (-1 * LENGTH[2]/2) * sin(TILT[2])], ] [ [(INNER_LENGTH[0]/2) * cos(TILT[0]), (INNER_LENGTH[0]/2) * sin(TILT[0])], [(INNER_LENGTH[1]/2) * cos(TILT[1]), (INNER_LENGTH[1]/2) * sin(TILT[1])], [(INNER_LENGTH[2]/2) * cos(TILT[2]), (INNER_LENGTH[2]/2) * sin(TILT[2])], ] [ [-1 * (INNER_LENGTH[0]/2) * cos(TILT[0]), -1 * (INNER_LENGTH[0]/2) * sin(TILT[0])], [-1 * (INNER_LENGTH[1]/2) * cos(TILT[1]), (-1 * INNER_LENGTH[1]/2) * sin(TILT[1])], [-1 * (INNER_LENGTH[2]/2) * cos(TILT[2]), (-1 * INNER_LENGTH[2]/2) * sin(TILT[2])], ] { r: 0.2, fill: BLUE, stroke: "none" }
init({ range: [[-10, 10], [-10, 10]], scale: 20 }); line( ENDPOINT1[0], ENDPOINT2[0], { arrows: "->" } ); line( ENDPOINT2[0], ENDPOINT1[0], { arrows: "->"} ); circle( INNER_ENDPOINT1[0], DOT_ATTRS ); circle( INNER_ENDPOINT2[0], DOT_ATTRS ); label( INNER_ENDPOINT1[0], "A", "above"); label( INNER_ENDPOINT2[0], "D", "above"); line( ENDPOINT1[1], ENDPOINT2[1], { arrows: "->" } ); line( ENDPOINT2[1], ENDPOINT1[1], { arrows: "->"} ); circle( INNER_ENDPOINT1[1], DOT_ATTRS ); circle( INNER_ENDPOINT2[1], DOT_ATTRS ); label( INNER_ENDPOINT1[1], "B", "above"); label( INNER_ENDPOINT2[1], "E", "above"); line( ENDPOINT1[2], ENDPOINT2[2], { arrows: "->" } ); line( ENDPOINT2[2], ENDPOINT1[2], { arrows: "->"} ); circle( INNER_ENDPOINT1[2], DOT_ATTRS ); circle( INNER_ENDPOINT2[2], DOT_ATTRS ); label( INNER_ENDPOINT1[2], "C", "above"); label( INNER_ENDPOINT2[2], "F", "above"); circle( [0,0], DOT_ATTRS); label( [0,0], "G", "above");

Name an angle vertical to \angle ANGLE_START G ANGLE_END .

OPP_STARTGOPP_END
OPP_ENDGOPP_START

\angle

Vertical angles form two intersecting straight lines.

Name an angle that will combine with the given angle to form a big X of two straight lines.

\angle OPP_STARTGOPP_END is vertical to \angle ANGLE_STARTGANGLE_END .

Name an angle adjacent to \angle ANGLE_START G ANGLE_END

ANGLE_START GADJ_START[0]
ANGLE_START GADJ_START[1]
ANGLE_END GADJ_END[0]
ANGLE_END GADJ_END[1]
ADJ_START[0] GANGLE_START
ADJ_START[1] GANGLE_START
ADJ_END[0] GANGLE_END
ADJ_END[1] GANGLE_END

\angle

Adjacent angles share a ray and have a common vertex, but do not overlap.

Name an angle that is next to \angle ANGLE_START G ANGLE_END .

\angle ANGLE_STARTGADJ_START[0] and \angle ANGLE_ENDGADJ_END[1] are two adjacent angles. There are two others, as well.

Name an angle that forms a linear pair with \angle ANGLE_START G ANGLE_END

ANGLE_START GOPP_END
ANGLE_END GOPP_START
OPP_END GANGLE_START
OPP_START GANGLE_END

\angle

A linear pair is two adjacent angles that form a straight angle.

Name an angle that shares a ray with \angle ANGLE_START G ANGLE_END and will add to 180{}^{\circ}

Two such angles are \angle ANGLE_STARTGOPP_END and \angle ANGLE_ENDGOPP_START .