TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

interface IShapeRasterizer in Tinman.Terrain.Shapes

Base interface for classes that rasterize vector shapes.

interface IShapeRasterizer with <in T> as class, ISampleBufferBase
  base of ShapeRasterizer

Attributes

Factory

The factory that has created this shape rasterizer.

property Factory { get }
type IShapeRasterizerFactory<T>
value [not-null] The factory.

Methods

Range

Returns the distance value range that will be used by shape rasterizers.

method Range ()
type RangeD
returns The distance value range.

Returns the distance value range that will be used by shape rasterizers.

method Range (T target)
type RangeD
params target [not-null] The target sample buffer.
returns The distance value range for the given sample buffer.

Rasterize

Rasterizes this shape.

method Rasterize (T target, Box2D bounds = default(Box2D), float64 scale = 1, PixelCoverage coverage = PixelCoverage.PixelIsArea, CubemapFace face = CubemapFace.None)
type bool
params target [not-null] The target sample buffer.
  bounds The bounds of the target distance buffer, in the coordinate system of the shape:
X1 and Y1 refer to the top-left corner of the top-left sample in target, and X2 and Y2 refer to the bottom-right corner of the bottom-right sample. When target has PixelIsPoint coverage (see coverage), the top-left and bottom-right corners coincide.
Passing Bounds to this parameter will render the whole shape. If bounds is empty (see IsEmpty), the shape bounds will be used. Defaults to Empty.
  scale Optional scale factor to apply to distance values. Defaults to 1.
  coverage The coverage semantic of the samples if target. Defaults to PixelIsArea.
  face The cubemap face. This is only relevant for cubemap shapes (see IsCubemap). Defaults to None.
returns true if target has been updated with rasterized samples, false if bounds did not intersect the shape.