ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/virtuals.c
(Generate patch)

Comparing ray/src/rt/virtuals.c (file contents):
Revision 2.8 by greg, Tue Feb 25 02:47:23 2003 UTC vs.
Revision 2.11 by schorsch, Mon Jul 21 22:30:19 2003 UTC

# Line 35 | Line 35 | markvirtuals()                 /* find and mark virtual sources */
35          if (directrelay <= 0)
36                  return;
37                                          /* find virtual source objects */
38 <        for (i = 0; i < nobjects; i++) {
38 >        for (i = 0; i < nsceneobjs; i++) {
39                  o = objptr(i);
40                  if (!issurface(o->otype) || o->omod == OVOID)
41                          continue;
# Line 49 | Line 49 | markvirtuals()                 /* find and mark virtual sources */
49                  if (nvobjects == 0)
50                          vobject = (OBJECT *)malloc(sizeof(OBJECT));
51                  else
52 <                        vobject = (OBJECT *)realloc((char *)vobject,
52 >                        vobject = (OBJECT *)realloc((void *)vobject,
53                                  (unsigned)(nvobjects+1)*sizeof(OBJECT));
54                  if (vobject == NULL)
55                          error(SYSTEM, "out of memory in addvirtuals");
# Line 194 | Line 194 | MAT4  pm;
194                  else
195                          nsflags &= ~SSPOT;
196                  if (source[sn].sflags & SSPOT) {
197 <                        copystruct(&theirspot, source[sn].sl.s);
197 >                        theirspot = *(source[sn].sl.s);
198                          multv3(theirspot.aim, source[sn].sl.s->aim, pm);
199                          normalize(theirspot.aim);
200                          if (nsflags & SSPOT) {
# Line 204 | Line 204 | MAT4  pm;
204                                          return(-1);     /* no overlap */
205                          } else {
206                                  nsflags |= SSPOT;
207 <                                copystruct(&ourspot, &theirspot);
207 >                                ourspot = theirspot;
208                                  d = 2.*ourspot.siz;
209                          }
210                          if (ourspot.siz < d-FTINY) {    /* it shrunk */
# Line 244 | Line 244 | MAT4  pm;
244          if (nsflags & SSPOT) {
245                  if ((source[i].sl.s = (SPOT *)malloc(sizeof(SPOT))) == NULL)
246                          goto memerr;
247 <                copystruct(source[i].sl.s, &ourspot);
247 >                *(source[i].sl.s) = ourspot;
248          }
249          if (nsflags & SPROX)
250                  source[i].sl.prox = source[sn].sl.prox;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines