1/* -*-ePiX-*- */
2#include "epix.h"
3using namespace ePiX;
4
5int main()
6{
7  picture(P(-2,-2),P(2,2), "3 x 3in");
8
9  begin();
10  set_crop();
11
12  P V(2,-0.25),   W(3,1);
13  P P1(-1.5,-1),  P2(P1 + V),       P3(P1 + 1.5*V);    // points
14  P Q1(-1,1),     Q2(Q1 + 0.5*W),   Q3(Q1 + W);
15
16  Segment L12(P1, Q2),   L13(P1, Q3);
17  Segment L21(P2, Q1),   L23(P2, Q3);
18  Segment L31(P3, Q1),   L32(P3, Q2);
19
20  // points of intersection
21  P R1(L12*L21), R2(L13*L31), R3(L32*L23);
22
23  dot(P1, P(0,-2), "$P_1$", b);
24  dot(P2, P(0,-2), "$P_2$", b);
25  dot(P3, P(0,-2), "$P_3$", b);
26
27  dot(Q1, P(0,2), "$Q_1$", t);
28  dot(Q2, P(0,2), "$Q_2$", t);
29  dot(Q3, P(0,2), "$Q_3$", t);
30
31  red();
32  L12.draw();
33  L21.draw();
34  L13.draw();
35
36  L31.draw();
37  L32.draw();
38  L23.draw();
39
40  green();
41  Line(P1,P3);
42  Line(Q1,Q3);
43
44  blue();
45  dot(R1, P(4,2), "$p_1$", r);
46  dot(R2, P(4,2), "$p_2$", r);
47  dot(R3, P(4,2), "$p_3$", r);
48
49  dashed();
50  Line(R1,R3);
51
52  end();
53}
54