/* -*-ePiX-*- */ #include "epix.h" using namespace ePiX; P proj(const P& arg) { return P(2*arg.x1()/(1 - arg.x2()), -1); } int main() { picture(P(-3, -1), P(3, 1), "4.5 x 1.5in"); begin(); bold(); P pP(0,1), pQ(0,-1), pP2(2.5,1), pQ2(-2.25,-1); Circle C(P(0,0), 1); Segment L1(pP2, pQ2), L2(L1*C); P pM(L2.end2()), pN(L2.end1()), pX(proj(pM)), pY(proj(pN)); line(P(xmin(),-1), P(xmax(),-1)); line(P(xmin(), 1), P(xmax(), 1)); C.draw(); L1.draw(); line(pP, pQ); line(pN, pQ); line(pP, pX); line(pP, pY); label(pQ2, P(0,-4), "$Q'$", b); label(pQ, P(0,-4), "$Q$", b); label(pX, P(0,-4), "$X$", b); label(pY, P(0,-4), "$Y$", b); label(pP, P(0, 2), "$P$", t); label(pP2, P(0, -2), "$P'$", br); label(pN, P(-2, -10), "$N$", b); label(pM, P(-4, -6), "$M$", b); tikz_format(); end(); }