/* Sets up physical limits of plotting device and the mapping between */
/* normalized device coordinates and physical coordinates */

#include "plplot.h"

void setphy(xmin,xmax,ymin,ymax)
PLINT xmin,xmax,ymin,ymax;
{
    PLFLT xpmm, ypmm, mpxscl, mpyscl;

    sphy(xmin,xmax,ymin,ymax);
    sdp((PLFLT)(xmax-xmin),(PLFLT)(xmin),(PLFLT)(ymax-ymin),
         (PLFLT)(ymin));

    gpixmm(&xpmm,&ypmm);
    mpxscl = xpmm;
    if (xmax <= xmin) mpxscl = -xpmm;
    mpyscl = ypmm;
    if (ymax <= ymin) mpyscl = -ypmm;
    smp(mpxscl,(PLFLT)(xmin), mpyscl,(PLFLT)(ymin));
}

