/* -*-ePiX-*- */ #include "epix.h" using namespace ePiX; P midpt(const P& tail, const P& head) { return 0.5*(tail + head); } int main() { picture(P(0, -1), P(1.5, 1.5), "1.5 x 2.5in"); begin(); arrow_inset(0.5); arrow_ratio(2); arrow_width(2); double ma(1), mb(0.4); bold(); P pO(0,0), pA(ma,0), pX(xmax(),0), pY(0, ymax()), pB(0,mb), pP(ma, mb), pB1(0,ma), pP1(ma, ma), pB2(0,-ma), pP2(ma, -ma); arrow(P(-0.33, 0), pX); arrow(pB2, pY); rect(pB2, pP1); line(pB, pP); label(pO, P(-2,-4), "$O$", bl); label(pA, P( 2,-4), "$A$", br); label(pX, P(0,-4), "$X$", br); label(pY, P(4,-4), "$Y$", r); label(midpt(pO, pA), P(0,-4), "$a$", b); label(midpt(pO, pB), P(-2,0), "$b$", l); label(pB, P(-2,0), "$B$", l); label(pP, P( 2,0), "$P$", r); label(pB1, P(-2,0), "$B'$", l); label(pP1, P( 2,0), "$P'$", r); label(pB2, P(-2,0), "$B''$", l); label(pP2, P( 2,0), "$P''$", r); tikz_format(); end(); }