/* -*-ePiX-*- */ #include "epix.h" using namespace ePiX; const double r1(-0.5); const double r2(0.75); double f(double t) { return 1 + 0.5*t + 0.75*(r1 - t)*(r2 - t); } int main() { picture(P(-0.75, 0), P(1.25, 1.5), "2 x 1.5in"); begin(); P pO(0,0), pX(xmax(), 0), pY(0, ymax()), tail(r1, f(r1)), head(r2, f(r2)); bold(); line(P(xmin(), 0), P(xmax(), 0)); line(P(0, ymin()), P(0, ymax())); line(tail, head); plot(f, r1, r2, 40); // dashed(); // dash_size(6); line(tail&E_1, tail); line(head&E_1, head); label(pO, P( 0,-4), "$O$", b); label(pX, P( 0,-4), "$X$", b); label(pY, P(-2, 0), "$Y$", l); label(P(r1,0), P(0, -4), "$a$", b); label(P(r2,0), P(0, -4), "$b$", b); label(P(r1, f(r1)), P(-2,0), "$A$", l); label(P(r2, f(r2)), P( 2,0), "$B$", r); label(P(r1, 0.5*f(r1)), P(2,0), "$\\phi(a)$", r); label(P(r2, 0.5*f(r2)), P(2,0), "$\\phi(b)$", r); label(P(0.25, f(0.25)), P(0,-4), "$P$", b); tikz_format(); end(); }