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

Comparing ray/src/common/bsdf_t.c (file contents):
Revision 3.25 by greg, Mon Sep 10 18:06:08 2012 UTC vs.
Revision 3.30 by greg, Thu Jul 4 15:14:45 2013 UTC

# Line 603 | Line 603 | make_cdist(const SDTre *sdt, const double *invec, int
603                                          /* record input range */
604          scale = myScaffold.wmin / (double)iwmax;
605          for (i = myScaffold.nic; i--; ) {
606 <                cd->clim[i][0] = floor(pos[i]/scale) * scale;
606 >                cd->clim[i][0] = floor(pos[i+2*rev]/scale) * scale;
607                  cd->clim[i][1] = cd->clim[i][0] + scale;
608          }
609          if (cd->isodist) {              /* avoid issue in SDqueryTreProjSA() */
# Line 728 | Line 728 | SDqueryTreProjSA(double *psa, const FVECT v1, const RR
728          } else {
729                  const SDTreCDst *cd = (const SDTreCDst *)SDgetTreCDist(v1, sdc);
730                  if (cd == NULL)
731 <                        return SDEmemory;
732 <                myPSA[0] = M_PI * (cd->clim[0][1] - cd->clim[0][0]) *
733 <                                (cd->clim[1][1] - cd->clim[1][0]);
734 <                myPSA[1] = cd->max_psa;
731 >                        myPSA[0] = myPSA[1] = 0;
732 >                else {
733 >                        myPSA[0] = M_PI * (cd->clim[0][1] - cd->clim[0][0]) *
734 >                                        (cd->clim[1][1] - cd->clim[1][0]);
735 >                        myPSA[1] = cd->max_psa;
736 >                }
737          }
738          switch (qflags) {               /* record based on flag settings */
739          case SDqueryVal:
# Line 746 | Line 748 | SDqueryTreProjSA(double *psa, const FVECT v1, const RR
748                          psa[1] = myPSA[1];
749                  /* fall through */
750          case SDqueryMin:
751 <                if (myPSA[0] < psa[0])
751 >                if ((myPSA[0] > 0) & (myPSA[0] < psa[0]))
752                          psa[0] = myPSA[0];
753                  break;
754          }
# Line 1163 | Line 1165 | SDloadTre(SDData *sd, ezxml_t wtl)
1165                                          /* separate diffuse components */
1166          extract_diffuse(&sd->rLambFront, sd->rf);
1167          extract_diffuse(&sd->rLambBack, sd->rb);
1168 <        extract_diffuse(&sd->tLamb, (sd->tf != NULL) ? sd->tf : sd->tb);
1168 >        if (sd->tf != NULL)
1169 >                extract_diffuse(&sd->tLamb, sd->tf);
1170 >        if (sd->tb != NULL)
1171 >                extract_diffuse(&sd->tLamb, sd->tb);
1172                                          /* return success */
1173          return SDEnone;
1174   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines