Reference Talk:Potential Pattern

From POV-Wiki
Jump to navigation Jump to search

New in version 3.7.1 a potential pattern has been added to define a pattern based on the potential field of a blob or isosurface object.

Using pigment in the following example, the syntax for the new pattern is as follows:

pigment {
  potential { BLOB | ISOSURFACE }
  [threshold BOOL]
  [PIGMENT_MODIFIERS...]
  }

With threshold on the pattern will take the blob or isosurface object's potential minus the threshold; otherwise it will take the raw potential which is the default behavior.

The isosurface's container has no effect on the potential pattern.

The pattern value is not bound to the [0..1] range, unless you explicitly specify a wave_type.

Applying the inverse keyword to the object will cause the pattern to be reversed as well; so, when using threshold on for blobs, positive pattern values always indicate inside, while negative values indicate outside.

Note: By default this is the opposite for isosurfaces, so for easier use, the new pattern is therefore accompanied by an extension to the isosurface syntax as shown below:

isosurface {
  ...
  polarity FLOAT
  ...
  }

Setting polarity to a positive value causes above-threshold values to be interpreted as inside, and below-threshold values as outside, rather than the other way round

See also: Blob and Isosurface