ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/doc/ray.1
(Generate patch)

Comparing ray/doc/ray.1 (file contents):
Revision 1.38 by greg, Mon Aug 31 21:54:55 2020 UTC vs.
Revision 1.46 by greg, Wed Dec 13 23:26:16 2023 UTC

# Line 1 | Line 1
1   .\" RCSid "$Id$"
2   .\" Print using the -ms macro package
3 < .DA 8/31/2020
3 > .DA 11/13/2023
4   .LP
5 < .tl """Copyright \(co 2020 Regents, University of California
5 > .tl """Copyright \(co 2023 Regents, University of California
6   .sp 2
7   .TL
8   The
# Line 630 | Line 630 | arguments have additional flexibility to specify the s
630   Also, rather than roughness, specular power is used, which has no
631   physical meaning other than larger numbers are equivalent to a smoother
632   surface.
633 + Unlike other material types, total reflectance is the sum of
634 + diffuse and specular colors, and should be adjusted accordingly.
635   .DS
636   mod ashik2 id
637   4+ ux uy uz funcfile transform
# Line 1192 | Line 1194 | A section of text meant to depict a picture, perhaps u
1194   font such as hexbit4x1.fnt, calls for uniform spacing.
1195   Reasonable magnitudes for proportional spacing are
1196   between 0.1 (for tightly spaced characters) and 0.3 (for wide spacing).
1197 + .LP
1198 + .UL Spectrum
1199 + .PP
1200 + The spectrum primitive is the most basic type for introducing spectral
1201 + color to a material.
1202 + Since materials only provide RGB parameters, spectral patterns
1203 + are the only way to superimpose wavelength-dependent behavior.
1204 + .DS
1205 + mod spectrum id
1206 + 0
1207 + 0
1208 + 5+ nmA nmB s1 s2 .. sN
1209 + .DE
1210 + The first two real arguments indicate the extrema of the
1211 + spectral range in nanometers.
1212 + Subsequent real values correspond to multipliers at each wavelength.
1213 + The nmA wavelength may be greater or less than nmB,
1214 + but they may not be equal, and their ordering matches
1215 + the order of the spectral values.
1216 + A minimum of 3 values must be given, which would act
1217 + more or less the same as a constant RGB multiplier.
1218 + As with RGB values, spectral quantities normally range between 0
1219 + and 1 at each wavelength, or average to 1.0 against a standard
1220 + sensitivity functions such as V(lambda).
1221 + The best results obtain when the spectral range and number
1222 + of samples match rendering options, though resampling will handle
1223 + any differences, zero-filling wavelenths outside the nmA to nmB
1224 + range.
1225 + A warning will be issued if the given wavelength range does not
1226 + adequately cover the visible spectrum.
1227 + .LP
1228 + .UL Specfile
1229 + .PP
1230 + The specfile primitive is equivalent to the spectrum type, but
1231 + the wavelength range and values are contained in a 1-dimensional
1232 + data file.
1233 + This may be a more convenient way to specify a spectral color,
1234 + especially one corresponding to a standard illuminant such as D65
1235 + or a library of measured spectra.
1236 + .DS
1237 + mod specfile id
1238 + 1 datafile
1239 + 0
1240 + 0
1241 + .DE
1242 + As with the spectrum type, rendering wavelengths outside the defined
1243 + range will be zero-filled.
1244 + Unlike the spectrum type, the file may contain non-uniform samples.
1245 + .LP
1246 + .UL Specfunc
1247 + .PP
1248 + The specfunc primitive offers dynamic control over a spectral
1249 + pattern, similar to the colorfunc type.
1250 + .DS
1251 + mod specfunc id
1252 + 2+ sfunc funcfile transform
1253 + 0
1254 + 2+ nmA nmB A3 ..
1255 + .DE
1256 + Like the spectrum primitive, the wavelength range is specified
1257 + in the first two real arguments, and additional real values are
1258 + set in the evaluation context.
1259 + This function is fed a wavelenth sample
1260 + between nmA and nmB as its only argument,
1261 + and it returns the corresponding spectral intensity.
1262 + .LP
1263 + .UL Specdata
1264 + .PP
1265 + Specdata is like brightdata and colordata, but with more
1266 + than 3 specular samples.
1267 + .DS
1268 + mod specdata id
1269 + 3+n+
1270 +        func datafile
1271 +        funcfile x1 x2 .. xn transform
1272 + 0
1273 + m A1 A2 .. Am
1274 + .DE
1275 + The data file must have one more dimension than the coordinate
1276 + variable count, as this final dimension corresponds to the covered
1277 + spectrum.
1278 + The starting and ending wavelengths are specified in "datafile"
1279 + as well as the number of spectral samples.
1280 + The function "func" will be called with two parameters, the
1281 + interpolated spectral value for the current coordinate and the
1282 + associated wavelength.
1283 + If the spectrum is broken into 12 components, then 12 calls
1284 + will be made to "func" for the relevant ray evaluation.
1285 + .LP
1286 + .UL Specpict
1287 + .PP
1288 + Specpict is a special case of specdata, where the pattern is
1289 + a hyperspectral image stored in the common-exponent file format.
1290 + The dimensions of the image data are determined by the picture
1291 + just as with the colorpict primitive.
1292 + .DS
1293 + mod specpict id
1294 + 5+
1295 +        func specfile
1296 +        funcfile u v transform
1297 + 0
1298 + m A1 A2 .. Am
1299 + .DE
1300 + The function "func" is called with the interpolated pixel value
1301 + and the wavelength sample in nanometers, the same as specdata,
1302 + with as many calls made as there are components in "specfile".
1303   .NH 3
1304   Mixtures
1305   .PP
# Line 1593 | Line 1701 | the Ecole Polytechnique Federale de Lausanne (EPFL Uni
1701   in Lausanne, Switzerland.
1702   .NH 1
1703   References
1704 + .LP
1705 + Ward, Gregory J., Bruno Bueno, David Geisler-Moroder,
1706 + Lars O. Grobe, Jacob C. Jonsson, Eleanor
1707 + S. Lee, Taoning Wang, Helen Rose Wilson,
1708 + ``Daylight Simulation Workflows Incorporating
1709 + Measured Bidirectional Scattering Distribution Functions,''
1710 + .I "Energy & Buildings",
1711 + Vol. 259, No. 111890, 2022.
1712   .LP
1713   Wang, Taoning, Gregory Ward, Eleanor Lee,
1714   ``Efficient modeling of optically-complex, non-coplanar

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines