GridShader

ColourShader
public sealed class GridShader : ColourShader
Implements a shader for a graphpaper like grid.

Constructors

GridShader

#
public GridShader(Transform2D transform, ColourShader background, Color lines, Color xAxis, Color yAxis, int frequency)
Create a new grid shader.
transform (Transform2D)Transform of unit grid.
background (ColourShader)Background colour.
lines (Color)Line colour.
xAxis (Color)X axis colour.
yAxis (Color)Y axis colour.
frequency (int)Thick line frequency.

GridShader

#
public GridShader(Transform2D transform, ColourShader background, Color lines, int frequency)
Create a new grid shader.
transform (Transform2D)Transform of unit grid.
background (ColourShader)Background colour.
lines (Color)Line colour.
frequency (int)Thick line frequency.

Methods

ColourAt

#
public override Color ColourAt(Ray ray, IObjectStack stack)
Evaluate this shader at a specific ray location.
ray (Ray)Coincident ray.
stack (IObjectStack)Object stack context.

Dilate

public ColourShader Dilate(double sx, double sy)
Apply a dilation (or scaling) transformation to this shader.
inherited fromColourShader
sx (double)Horizontal dilation.
sy (double)Vertical dilation.
Dilated shader.

Fade

public ColourShader Fade(ValueShader transparency, bool combine)
Add a transparency layer to this shader.
inherited fromColourShader
transparency (ValueShader)Transparency layer.
combine (bool)If true, overlay transparency is combined with existing transparency. If false, overlay transparency overrules the existing transparency.
Modified shader.

Fade

public ColourShader Fade(ValueShader transparency)
Add a transparency layer to this shader.
inherited fromColourShader
transparency (ValueShader)Transparency layer.
Modified shader.

ResolveColour

protected Color ResolveColour(Color colour, Ray ray, IObjectStack stack)
Utility function for resolving a colour with the background.
inherited fromColourShader
colour (Color)Colour to resolve.
ray (Ray)Ray associated with colour location.
stack (IObjectStack)Object stack context.
Resolved colour.

Rotate

public ColourShader Rotate(Angle angle)
Apply a rotation transformation to this shader.
inherited fromColourShader
angle (Angle)Rotation angle (counter-clockwise).
Rotated shader.

Transform

public ColourShader Transform(Transform2D transform)
Apply a custom transformation to this shader.
inherited fromColourShader
transform (Transform2D)Transformation.
Transformed shader.

Translate

public ColourShader Translate(double dx, double dy)
Apply a translation transformation to this shader.
inherited fromColourShader
dx (double)Horizontal translation.
dy (double)Vertical translation.
Translated shader.