Blaze.CurveLinePoint Class Reference

Detailed Description

A node which immediately follows a bezier curve.

Inheritance diagram for Blaze.CurveLinePoint:
Blaze.QuadLinePoint Blaze.VectorLine Blaze.VectorPoint

Public Member Functions

 CurveLinePoint (float x, float y)
 Creates a new curve node for the given point. More...
 
override void Transform (VectorTransform transform)
 
override void MultiplyNormals (float by)
 
override void RecalculateBounds (VectorPath path)
 Recalculates the minimum values and width/height of this path, taking curves into account. More...
 
override void SampleAt (float t, out float x, out float y)
 Samples this line at the given t value. More...
 
override void Extrude (float by)
 Extrudes this point along its normal by the given distance. More...
 
override void RecalculateCurveNormals ()
 Computes the control point normals for any curves. More...
 
override void NormalAt (float t, out float x, out float y)
 
override void StartNormal (out float x, out float y)
 Gets the normal at the start of the line from this to previous. More...
 
override void EndNormal (out float x, out float y)
 Gets the normal at the end of the line from this to previous. More...
 
override void ComputeLinePoints (Scanner scanner, float extrudeBy)
 Steps along the line between this point and previous point at a fixed step, adding the points to the scanner as it goes. More...
 
override VectorPoint Copy ()
 
override string ToString ()
 
override void Multiply (float by)
 
override void Squash (float by)
 
override void Sheer (float by)
 
- Public Member Functions inherited from Blaze.QuadLinePoint
 QuadLinePoint (float x, float y)
 Creates a new curve node for the given point. More...
 
override void Transform (VectorTransform transform)
 
override void MultiplyNormals (float by)
 
override void RecalculateCurveNormals ()
 Computes the control point normals for any curves. More...
 
override void StartNormal (out float x, out float y)
 Gets the normal at the start of the line from this to previous. More...
 
override void EndNormal (out float x, out float y)
 Gets the normal at the end of the line from this to previous. More...
 
void StraightLineNormal (float dx, float dy, out float x, out float y)
 
override void ComputeLinePoints (Scanner scanner, float extrudeBy)
 Steps along the line between this point and previous point at a fixed step, adding the points to the scanner as it goes. More...
 
override void RecalculateBounds (VectorPath path)
 Recalculates the minimum values and width/height of this path, taking curves into account. More...
 
override void SampleAt (float t, out float x, out float y)
 Samples this line at the given t value. More...
 
override void Extrude (float by)
 Extrudes this point along its normal by the given distance. More...
 
override VectorPoint Copy ()
 
override string ToString ()
 
override void Multiply (float by)
 
override void Squash (float by)
 
override void Sheer (float by)
 
- Public Member Functions inherited from Blaze.VectorLine
 VectorLine (float x, float y)
 
- Public Member Functions inherited from Blaze.VectorPoint
 VectorPoint ()
 Creates an empty path node. More...
 
 VectorPoint (float x, float y)
 Creates a node at the given point. More...
 
VectorPoint GetShapeEnd ()
 
override string ToString ()
 
virtual void RenderLine (CanvasContext context)
 Used internally. Renders the line between this point and the next one, if there is one. More...
 

Public Attributes

float Control2X
 The x coordinate of the 2nd control point. More...
 
float Control2Y
 The y coordinate of the 2nd control point. More...
 
float NormalC2X
 The x axis of the normal at the 2nd control point. More...
 
float NormalC2Y
 The y axis of the normal at the 2nd control point. More...
 
- Public Attributes inherited from Blaze.QuadLinePoint
float Control1X
 The x coordinate of the 1st control point. More...
 
float Control1Y
 The y coordinate of the 1st control point. More...
 
float NormalC1X
 The x axis of the normal at the 1st control point. More...
 
float NormalC1Y
 The y axis of the normal at the 1st control point. More...
 
- Public Attributes inherited from Blaze.VectorLine
bool Close
 True if this was generated from a close path call. More...
 
float Length
 The length of this line. Updated by RecalculateBounds. More...
 
- Public Attributes inherited from Blaze.VectorPoint
float X
 The X coordinate of this path node. More...
 
float Y
 The Y coordinate of this path node. More...
 
float NormalX
 The x axis of the normal at this point. More...
 
float NormalY
 The y axis of the normal at this point. More...
 
VectorPoint Next
 Path nodes are stored as a linked list. The one after this node. More...
 
VectorPoint Previous
 Path nodes are stored as a linked list. The one before this node. More...
 

Additional Inherited Members

- Properties inherited from Blaze.QuadLinePoint
override bool IsCurve [get]
 Is this a curve line? More...
 

Constructor & Destructor Documentation

Blaze.CurveLinePoint.CurveLinePoint ( float  x,
float  y 
)
inline

Creates a new curve node for the given point.

Member Function Documentation

override void Blaze.CurveLinePoint.ComputeLinePoints ( Scanner  scanner,
float  extrudeBy 
)
inlinevirtual

Steps along the line between this point and previous point at a fixed step, adding the points to the scanner as it goes.

Reimplemented from Blaze.VectorPoint.

override VectorPoint Blaze.CurveLinePoint.Copy ( )
inlinevirtual

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.EndNormal ( out float  x,
out float  y 
)
inlinevirtual

Gets the normal at the end of the line from this to previous.

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.Extrude ( float  by)
inlinevirtual

Extrudes this point along its normal by the given distance.

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.Multiply ( float  by)
inlinevirtual

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.MultiplyNormals ( float  by)
inlinevirtual

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.NormalAt ( float  t,
out float  x,
out float  y 
)
inlinevirtual

Reimplemented from Blaze.QuadLinePoint.

override void Blaze.CurveLinePoint.RecalculateBounds ( VectorPath  path)
inlinevirtual

Recalculates the minimum values and width/height of this path, taking curves into account.

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.RecalculateCurveNormals ( )
inlinevirtual

Computes the control point normals for any curves.

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.SampleAt ( float  t,
out float  x,
out float  y 
)
inlinevirtual

Samples this line at the given t value.

Reimplemented from Blaze.VectorLine.

override void Blaze.CurveLinePoint.Sheer ( float  by)
inlinevirtual

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.Squash ( float  by)
inlinevirtual

Reimplemented from Blaze.VectorPoint.

override void Blaze.CurveLinePoint.StartNormal ( out float  x,
out float  y 
)
inlinevirtual

Gets the normal at the start of the line from this to previous.

Reimplemented from Blaze.VectorPoint.

override string Blaze.CurveLinePoint.ToString ( )
inline
override void Blaze.CurveLinePoint.Transform ( VectorTransform  transform)
inlinevirtual

Reimplemented from Blaze.VectorPoint.

Member Data Documentation

float Blaze.CurveLinePoint.Control2X

The x coordinate of the 2nd control point.

float Blaze.CurveLinePoint.Control2Y

The y coordinate of the 2nd control point.

float Blaze.CurveLinePoint.NormalC2X

The x axis of the normal at the 2nd control point.

float Blaze.CurveLinePoint.NormalC2Y

The y axis of the normal at the 2nd control point.