--- ray/src/rt/rv3.c 1990/01/08 13:38:09 1.9 +++ ray/src/rt/rv3.c 1990/01/19 00:00:31 1.12 @@ -165,13 +165,9 @@ newimage() /* start a new image */ /* free old image */ freepkids(&ptrunk); /* compute resolution */ - if (viewaspect(&ourview)*dev->xsiz > dev->pixaspect*dev->ysiz) { - vresolu = dev->ysiz; - hresolu = vresolu/viewaspect(&ourview)*dev->pixaspect; - } else { - hresolu = dev->xsiz; - vresolu = hresolu*viewaspect(&ourview)/dev->pixaspect; - } + hresolu = dev->xsiz; + vresolu = dev->ysiz; + normaspect(viewaspect(&ourview), &dev->pixaspect, &hresolu, &vresolu); pframe.l = pframe.d = 0; pframe.r = hresolu; pframe.u = vresolu; pdepth = 0; @@ -350,9 +346,9 @@ register VIEW *vp; if ((err = setview(vp)) != NULL) { sprintf(errmsg, "view not set - %s", err); error(COMMAND, errmsg); - } else if (bcmp(vp, &ourview, sizeof(VIEW))) { - copyview(&oldview, &ourview); - copyview(&ourview, vp); + } else if (bcmp((char *)vp, (char *)&ourview, sizeof(VIEW))) { + copystruct(&oldview, &ourview); + copystruct(&ourview, vp); newimage(); /* newimage() calls with vp=&ourview! */ } }