home *** CD-ROM | disk | FTP | other *** search
/ Inside Multimedia 1995 December / IMM1295.ISO / share / grafik / povhelp / float.hlp < prev    next >
Text File  |  1994-07-04  |  2KB  |  36 lines

  1.     Many parts of the POV-Ray language require you to specify one or more
  2.  floating point numbers.  A floating point number is a number with a decimal
  3.  point.  Float literals are represented by an optional sign (-), some digits,
  4.  an optional decimal point, and more digits.  If the number is an integer you
  5.  may omit the decimal point and trailing zero.  If it is all fractional you
  6.  may omit the leading zero.  POV-Ray supports scientific notation for very
  7.  large or very small numbers.  The following are all valid float literals:
  8.        1.0    -2.0    -4    34    3.4e6    2e-5    .3    0.6
  9.  
  10.     Float identifiers may be declared and used anywhere a float can be used.
  11.  
  12.     Complex float expressions can be created using + - * / ( ) with float li-
  13.  terals or identifiers.  Assuming the identifiers have been previously decla-
  14.  red as floats, the following are valid float expressions:
  15.        1+2+3          2*5          1/3          Row*3          Col*5
  16.        (Offset-5)/2                This/That+Other*Thing
  17.  
  18.     Expressions are evaluated left to right with innermost parenthesis evalu-
  19.  ated first, then unary + / -, then multiply / divide, then add or subtract.
  20.  
  21.     There are two built-in float identifiers.  The identifier "version" is
  22.  the current setting of the version compatibility switch.  This allows you to
  23.  save and restore the previous version switch.  For example: suppose MYSTUFF
  24.  .INC is in version 1.0 format.  At the top of the file you could put:
  25.        #declare Temp_Vers = version    // Save previous value
  26.        #version 1.0                    // Change to 1.0 mode
  27.        ...                             // Version 1.0 stuff goes here...
  28.        #version Temp_Vers              // Restore previous version
  29.  
  30.     The other float identifier is "clock".  Its value is set by the +K com-
  31.  mand-line switch.  (See +K under command-line switches).  This allows you to
  32.  do limited animation control.  For example you could move an object using:
  33.        translate <0.1*clock, 0, 0>
  34.  and render successive frames with +K1, +K2, +K3 etc.  In each frame the ob-
  35.  ject would move 1/10th of a unit.
  36.