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

Comparing ray/src/hd/rhcopy.c (file contents):
Revision 3.39 by greg, Wed Feb 5 22:33:51 2025 UTC vs.
Revision 3.41 by greg, Thu Jun 5 19:10:31 2025 UTC

# Line 33 | Line 33 | int    iofmt = 'a';            /* input/output format for rays */
33   #define H_VDST          010             /* VDISTANCE= True */
34   #define H_SWAP          020             /* byte order is different */
35  
36 char    *progname;              /* global argv[0] */
37
36   struct phead {
37          VIEW    vw;
38          double  expos;
# Line 73 | Line 71 | main(
71   {
72          int     i;
73  
74 <        progname = argv[0];
74 >        fixargv0(argv[0]);
75          for (i = 2; i < argc && argv[i][0] == '-'; i++)
76                  switch (argv[i][1]) {
77                  case 'u':
# Line 536 | Line 534 | writerays(FILE *fp)
534                          for (k = bp->nrm; k--; rv++) {
535                                  RREAL   hitd = hddepth(hp, rv->d);
536                                  ryp.d = hdray(ryp.ro, ryp.rd, hp, gc, rv->r);
537 <                                if (*(int *)hp->priv & H_OBSF)
540 <                                        VSUM(ryp.ro, ryp.ro, ryp.rd, ryp.d);
541 <                                else if (*(int *)hp->priv & H_OBST)
537 >                                if (*(int *)hp->priv & H_OBST) {
538                                          ryp.d = 0;
539 <                                else if (hitd < ryp.d) {
540 <                                        ryp.d = 0.97*hitd;
539 >                                } else {
540 >                                        if (ryp.d > 0.97*hitd)
541 >                                                ryp.d = 0.97*hitd;
542                                          VSUM(ryp.ro, ryp.ro, ryp.rd, ryp.d);
543 <                                } else
547 <                                        ryp.d = 0;
543 >                                }
544                                  ryp.d = hitd - ryp.d;
545                                  copycolr(ryp.cv, rv->v);
546                                  if (!write_ray(&ryp, fp)) {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines