--- ray/src/cv/arch2rad.c 1991/02/11 18:18:53 1.4 +++ ray/src/cv/arch2rad.c 2003/02/22 02:07:23 2.2 @@ -1,9 +1,6 @@ -/* Copyright (c) 1990 Regents of the University of California */ - #ifndef lint -static char SCCSid[] = "$SunId$ LBL"; +static const char RCSid[] = "$Id: arch2rad.c,v 2.2 2003/02/22 02:07:23 greg Exp $"; #endif - /* * Convert Architrion file to Radiance * @@ -12,6 +9,8 @@ static char SCCSid[] = "$SunId$ LBL"; #include +#include + #include "trans.h" #define DEFMAPFILE "/usr/local/lib/ray/lib/arch.map" @@ -348,7 +347,7 @@ register BLOCK *bp; if (bp->nopenings > 0) { for (i = 0; i < bp->nopenings; i++) doneid(&bp->opening[i].frame); - free((char *)bp->opening); + free((void *)bp->opening); } doneid(&bp->refid); } @@ -426,18 +425,19 @@ FILE *fp; /* check for repeats */ rept = 0; nrepts = 0; for (i = 0; i < nm; i++) { - if (ml[i] == sm) { + if (ml[i] == sm || !strcmp(ml[i], VOIDID)) { rept |= 1<h[i]; } /* spread reference and opposite */ - if (p->x[1] > p->x[0]) { + if (p->x[2] > p->x[0]) { newp.x[0] -= 2; - newp.x[1] += 2; + newp.x[1] -= 2; newp.x[2] += 2; - newp.x[3] -= 2; - } else if (p->x[0] > p->x[1]) { + newp.x[3] += 2; + } else if (p->x[0] > p->x[2]) { newp.x[0] += 2; - newp.x[1] -= 2; + newp.x[1] += 2; newp.x[2] -= 2; - newp.x[3] += 2; + newp.x[3] -= 2; } - if (p->y[1] > p->y[0]) { + if (p->y[2] > p->y[0]) { newp.y[0] -= 2; - newp.y[1] += 2; + newp.y[1] -= 2; newp.y[2] += 2; - newp.y[3] -= 2; - } else if (p->y[0] > p->y[1]) { + newp.y[3] += 2; + } else if (p->y[0] > p->y[2]) { newp.y[0] += 2; - newp.y[1] -= 2; + newp.y[1] += 2; newp.y[2] -= 2; - newp.y[3] += 2; + newp.y[3] -= 2; } /* put out faces */ sprintf(buf, "op%d", ++nopens); - putface(openmod, buf, "ref", &newp, 3, 7, 4, 0, fp); - putface(openmod, buf, "opp", &newp, 5, 6, 2, 1, fp); - putface(openmod, buf, "end1", &newp, 2, 6, 7, 3, fp); - putface(openmod, buf, "end2", &newp, 4, 5, 1, 0, fp); + putface(openmod, buf, "ref", &newp, 4, 5, 1, 0, fp); + putface(openmod, buf, "opp", &newp, 2, 6, 7, 3, fp); + putface(openmod, buf, "end1", &newp, 5, 6, 2, 1, fp); + putface(openmod, buf, "end2", &newp, 3, 7, 4, 0, fp); putface(openmod, buf, "bot", &newp, 1, 2, 3, 0, fp); putface(openmod, buf, "top", &newp, 7, 6, 5, 4, fp); } @@ -542,12 +542,12 @@ FILE *fp; return; bn = blkname(bp); if (ff & 1<p, 3, 7, 4, 0, fp); + putface(m, bn, "ref", &bp->p, 4, 5, 1, 0, fp); if (ff & 1<p, 5, 6, 2, 1, fp); + putface(m, bn, "opp", &bp->p, 2, 6, 7, 3, fp); if (ff & 1<p, 2, 6, 7, 3, fp); - putface(m, bn, "end2", &bp->p, 4, 5, 1, 0, fp); + putface(m, bn, "end1", &bp->p, 5, 6, 2, 1, fp); + putface(m, bn, "end2", &bp->p, 3, 7, 4, 0, fp); } if (ff & 1<p, 1, 2, 3, 0, fp); @@ -705,6 +705,7 @@ FILE *fp; } +void eputs(s) char *s; { @@ -712,6 +713,7 @@ char *s; } +void quit(code) int code; {