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