ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/cv/mgflib/spec.txt
(Generate patch)

Comparing ray/src/cv/mgflib/spec.txt (file contents):
Revision 1.2 by greg, Wed Jun 29 16:15:27 1994 UTC vs.
Revision 1.3 by greg, Fri Jul 1 18:07:02 1994 UTC

# Line 37 | Line 37 | There are three contexts in effect at all times, curre
37   current color and current material.  Initially, these contexts are
38   unnamed, and have specific default values.  The unnamed vertex is the
39   origin.  The unnamed color is neutral gray.  The unnamed material is a
40 < perfect absorber.  The unnamed contexts may be modified, but those
41 < modifications will not be saved.  Thus, reestablishing an unnamed
42 < context always gets its initial default value.  To save a new context
43 < or modify an old one, it must first be named.  Entities associated with
44 < named contexts (i.e. "v", "c" and "m") may be followed by an identifier
45 < and an equals sign ('='), indicating a new context.  If there is no
46 < equals, then the context must already be defined, and the appearance of
47 < the entity merely reestablishes this context.  If the context id is
48 < followed by an equals, then a new context is defined, destroying any
49 < previous instance of that context name.  Redefining or changing values
50 < of a context does not affect earlier uses of the same name, however.
51 < Contexts are always associated with a name id, which is any non-blank
52 < sequence of printing ASCII characters.  An optional template may be
53 < given following the equals, which is a previously defined context to
54 < use as a source of default values for this definition.  If no template
55 < is given, then the unnamed context of that type is used to set initial
56 < values.  Named contexts continue until the next context definition of
57 < the same type.
40 > perfect (two-sided) absorber.  The unnamed contexts may be modified,
41 > but those modifications will not be saved.  Thus, reestablishing an
42 > unnamed context always gets its initial default value.  To save a new
43 > context or modify an old one, it must first be named.  Entities
44 > associated with named contexts (i.e. "v", "c" and "m") may be followed
45 > by an identifier and an equals sign ('='), indicating a new context.
46 > If there is no equals, then the context must already be defined, and
47 > the appearance of the entity merely reestablishes this context.  If the
48 > context id is followed by an equals, then a new context is defined,
49 > destroying any previous instance of that context name.  Redefining or
50 > changing values of a context does not affect earlier uses of the same
51 > name, however.  Contexts are always associated with a name id, which is
52 > any non-blank sequence of printing ASCII characters.  An optional
53 > template may be given following the equals, which is a previously
54 > defined context to use as a source of default values for this
55 > definition.  If no template is given, then the unnamed context of that
56 > type is used to set initial values.  Named contexts continue until the
57 > next context definition of the same type.
58  
59   Hierarchical Contexts
60   =====================
# Line 85 | Line 85 | cxy    x y                     set CIE (x,y) chromaticity for current color
85   cspec   l_min l_max v1 v2 ..    set relative spectrum for current color
86   cmix    w1 c1 w2 c2 ..          mix named colors to make current color
87   m       [id [= [template]]]     get/set material context
88 + sides   {1|2}                   set number of sides for current material
89   rd      rho_d                   set diffuse reflectance for current material
90   td      tau_d                   set diffuse transmittance for current material
91   ed      epsilon_d               set diffuse emittance for current material
# Line 106 | Line 107 | Entities                               Contexts
107   --------                                --------
108   p, n                                    vertex
109   cxy, cspec, cmix                        color
110 + sides                                   material
111   rd, td, ed, rs, ts                      color, material
112   f, sph, cyl, cone, ring, torus, prism   material, object, transformation
113  
# Line 236 | Line 238 | this identifier and all those preceding.  It has no re
238   to group the following surfaces up until an empty object statement
239   under a descriptive name for improved file readability.
240  
241 < Surfaces are one-sided, and appear invisible when viewed from the
242 < back side.  This means that a transmitting object will affect the
243 < light coming in through the front surface and ignore the characteristics
244 < of the back surface.  As long as the characteristics are the same,
245 < the results should be correct.  If the rendering technique does not
246 < allow for one-sided surfaces, an approximately correct result can
247 < be obtained for transmitting surfaces by using the square root of
248 < the given tau_s and half the given alpha_t.
241 > Surfaces are two-sided unless the "sides" entity is used to set the
242 > number of sides for a material to one.  If a surfaces is one-sided,
243 > then it appears invisible when viewed from the back side.  This means
244 > that a transmitting object will affect the light coming in through the
245 > front surface and ignore the characteristics of the back surface.  As
246 > long as the characteristics are the same, the results should be
247 > correct.  If the rendering technique does not allow for one-sided
248 > surfaces, an approximately correct result can be obtained for one-sided
249 > transmitting surfaces by using the square root of the given tau_s and
250 > half the given alpha_t.  If a rendering technique does not permit
251 > two-sided surfaces, then each surface must be made into two for
252 > full compliance if "sides" is set to 2 (the default).
253  
254   The surface normal of a face is oriented by the right-hand rule.
255   Specifically, the surface normal faces towards the viewer when the

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines