The BSDF Data Interchange file is ASCII formatted file with a *.BSDF extension.  Below is a table which lists each text and data line of the file along with possible values.

 Line #  Description  Values
 # <comments> <Any line that starts with # is ignored as a comment>
 1 Source Measured
 2 Symmetry PlaneSymmetrical  Asymmetrical  Asymmetrical4D
 3 SpectralContent Monochrome  XYZ
 4 ScatterType BRDF  BTDF
 5 SampleRotation <number of different sample rotations>
 6 <enum> <enumeration of sample rotations>
 7 AngleOfIncidence <number of different angles of incidence>
 8 <enum> <enumeration of angles of incidence>
 9 ScatterAzimuth <number of different azimuth angles>
 10 <enum> <enumeration of azimuth angles>
 11 ScatterRadial <number of different radial angles>
 12 <enum> <enumeration of radial angles>
 13 <empty line>  
 14 <SpectralContent indicator Monochrome  Tristimulus<XYZ>
 15 DataBegin <Begin Data>
 16+ <enum> <enumeration of scatter data for all angles>
 17 DataEnd <End Data>


































Table 1. Description of lines in the BSDF Data Interchange format. Changing some variable settings can affect enumeration formatting. Refer to the Formatting Notes for specific details.


Formatting Notes

Line     Notes
#.        Any line that starts with the # symbol is ignored as a
           comment line.

1.        There is currently only one option for the Source variable:
           Measured

2.        There are three options for the Symmetry variable:
           PlaneSymmetrical, ASymmetrical, ASymmetrical4D

           PlaneSymmetrical
          The measured data is symmetrical about
                                                the illumination axis of the measurement, 
                                                so only 180° degrees of Azimuth data are 
                                                reported. Use this setting for isotropic 
                                                samples with plane symmetry.

           ASymmetrical                There is no symmetry in the measured 
                                                data; no sample rotations. All 360° of 
                                                Azimuth data is reported. Use this for 
                                                isotropic samples (only one sample
                                                rotation).

           Asymmetrical4D            There is no symmetry in the measured 
                                                data; includes sample rotations. All 360° 
                                                of Azimuth data is reported. Use this for 
                                                anisotropic samples (multiple sample 
                                                rotations).

3.        There are two options for the SpectralContent variable:
           Monochrome, XYZ

           Currently, Radiant Imaging’s IS-SA does not measure full spectral 
           content, but only Tristimulus data. Monochrome is the same as
           Tristimulus Y (photopic).

           Monochrome                 There will only be one group of 
                                               enumerated data between DataBegin 
                                               and DataEnd. This group is labeled by 
                                               an added line above the DataBegin line 
                                               (line 14 in Table 1).

           XYZ                               There will be three groups of 
                                                enumerated scatter data, one for each
                                                Tristimulus value. Each group is labeled 
                                                by an added line above the DataBegin line
                                                (line 14 in Table 1).

4.        There are two options for the ScatterType variable:
           BRDF, BTDF

           BRDF
                              Reported data is in BRDF units. The 
                                                 coordinate system is defined so that
                                                 Radial 0° corresponds to the angle of 
                                                 specular reflection.

           BTDF                              Reported data is in BTDF units. The 
                                                 coordinate system is defined so that 
                                                 Radial 0° corresponds to the angle of 
                                                 direct transmission.

5-12.  Value totals (lines 5, 7, 9, 11):
           All value totals are expressed as positive integers (no decimal
           points allowed).
           There is no upper limit to the number of sample rotations or 
           incidence angles.
           The upper limit of Azimuth angles is defined by the Symmetry 
           variable (180° for PlaneSymmetrical, 360° for ASymmetrical,
           ASymmetrical4D).
           The overall upper limit of Radial angles is 180°.

           Enumeration values (lines 6, 8, 10, 12):
           All enumeration values are positive.
           The number of enumeration values must match the Value total 
           from the line above.
           Enumeration values do not have to be evenly spaced. (See the 
           example formats in the next section; the ScatterRadial and 
           ScatterAzimuth enumerations are not evenly spaced.)

16.      DataBegin and DataEnd statements surround each large group 
           of data. Before each block of scatter data for a given Angle Of 
           Incidence is a value for Total Integrated Scatter. That value is on 
           a separate line preceded by “TIS ”. The value is a fraction, such
           that a value of .500 would indicate that 50% of the light is
           scattered, and the remaining is absorbed or transmitted in the
           case of BRDF.

           Following the TIS value, Scatter data is enumerated with columns 
           representing the ScatterRadial values for each ScatterAzimuth 
           row. The rows are organized in groups.  First, the ScatterAzimuth
           values are reported for each AngleOfIncidence. Data for each
           AngleOfIncidence, which contains various ScatterAzimuth rows, is
           then reported by following rows. Data for each SampleRotation,
           which contains various AngleOfIncidence groups, is then reported
           by appending more rows.

           The enumeration formatting of scatter data changes depending
           on the settings chosen for the SpectralContent variable. If the
           SpectralContent variable is set to Monochrome, the formatting 
           appears like Figures 3 and 4 in the next section. If the
           SpectralContent variable is set to XYZ, there are two additional
           DataBegin and DataEnd statement lines, with an extra label line
           above each DataBegin line that labels the data group with its 
           associated Tristimulus value. See Figure 5 in the next section.