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.4 by greg, Mon Jul 11 14:47:09 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 142 | Line 144 | Rotations are given in degrees counter-clockwise about
144   That is, with the thumb of the right hand pointing in the direction
145   of the axis, rotation follows the curl of the fingers.
146  
147 < The transform command itself is also cumulative, and a transform
148 < command with no arguments is used to return to the previous
149 < condition.  It is necessary that transforms and their end statements
150 < ("xf" by itself) be balanced in a file, so that later or enclosing
151 < files are not affected.
147 > The transform command itself is also cumulative, but in the reverse
148 > order.  That is, later transformations (i.e. enclosed transformations)
149 > are prepended to existing (i.e. enclosing) ones.  A transform command
150 > with no arguments is used to return to the previous condition.  It is
151 > necessary that transforms and their end statements ("xf" by itself) be
152 > balanced in a file, so that later or enclosing files are not affected.
153  
154   Transformations apply only to geometric types, e.g. polygons, spheres, etc.
155   Vertices and the components that go into geometry are not directly affected.
# Line 236 | Line 239 | this identifier and all those preceding.  It has no re
239   to group the following surfaces up until an empty object statement
240   under a descriptive name for improved file readability.
241  
242 < Surfaces are one-sided, and appear invisible when viewed from the
243 < back side.  This means that a transmitting object will affect the
244 < light coming in through the front surface and ignore the characteristics
245 < of the back surface.  As long as the characteristics are the same,
246 < the results should be correct.  If the rendering technique does not
247 < allow for one-sided surfaces, an approximately correct result can
248 < be obtained for transmitting surfaces by using the square root of
249 < the given tau_s and half the given alpha_t.
242 > Surfaces are two-sided unless the "sides" entity is used to set the
243 > number of sides for a material to one.  If a surfaces is one-sided,
244 > then it appears invisible when viewed from the back side.  This means
245 > that a transmitting object will affect the light coming in through the
246 > front surface and ignore the characteristics of the back surface.  As
247 > long as the characteristics are the same, the results should be
248 > correct.  If the rendering technique does not allow for one-sided
249 > surfaces, an approximately correct result can be obtained for one-sided
250 > transmitting surfaces by using the square root of the given tau_s and
251 > half the given alpha_t.  If a rendering technique does not permit
252 > two-sided surfaces, then each surface must be made into two for
253 > full compliance if "sides" is set to 2 (the default).
254  
255   The surface normal of a face is oriented by the right-hand rule.
256   Specifically, the surface normal faces towards the viewer when the

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines