Files
Arquivotheca.Solaris-2.5/ucbcmd/plot/libplot/aed/space.c
seta75D 7c4988eac0 Init
2021-10-11 19:38:01 -03:00

50 lines
1.4 KiB
C
Executable File

/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
/* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T */
/* The copyright notice above does not evidence any */
/* actual or intended publication of such source code. */
#ident "@(#)space.c 1.1 90/08/19 SMI" /* SVr4.0 1.1 */
/*
* Copyright (c) 1983, 1984 1985, 1986, 1987, 1988, Sun Microsystems, Inc.
* All Rights Reserved.
*/
/*
* Copyright (c) 1980 Regents of the University of California.
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*/
#include "aed.h"
/*---------------------------------------------------------
* Space sets up the world-to-screen transformation so
* that the rectangular area described by (x0, y0) and
* (x1, y1) will all be on-screen.
*
* Results: None.
*
* Side Effects:
* Our own variables scale, xbot, and ybot are changed.
*---------------------------------------------------------
*/
space(x0, y0, x1, y1)
int x0, y0, x1, y1;
{
int xscale, yscale, xsize, ysize;
xscale = (GRXMAX<<12)/(x1-x0);
yscale = (GRYMAX<<12)/(y1-y0);
if (xscale > yscale) scale = yscale;
else scale = xscale;
scale = (scale*9)/10 - 1;
if (scale<1) scale = 1;
xsize = (2048*GRXMAX)/scale + 1;
xbot = (x1+x0)/2 - xsize;
ysize = (2048*GRYMAX)/scale + 1;
ybot = (y1+y0)/2 - ysize;
}