The Gradient object
Sub ClearStops()
'clear all stops and start over.
Function keycount() As Long
Sub SetLinear(smoothing As Boolean)
Sub AddStop(ByVal t As Single, C As VBColor)
Sub RemoveStop(ByVal t As Single)
Function MoveStop(OldTime As Single, Newtime As Single) As Boolean
Function GetStopColor(ByVal t As Single) As VBColor
'do we need to check if this stop exists?
Function CreateLut(MaxTime As Long)
Function EvalRGBA(ByVal t As Single) As Long
'only eval after doing CreateCurve
Sub EvalRGBA2(ByVal t As Single, r As Single, g As Single, b As Single, a As Single)
'only eval after doing CreateCurve
Function Eval(ByVal t As Single) As VBColor
'only eval after doing CreateCurve
Sub RenderLinear(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single)
Sub RenderLinearTo(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single, ByVal tw As Long, ByVal th As Long, rbuf() As Byte, gbuf() As Byte, bbuf() As Byte)
'this automatically calculates the lookup table from the keyframe class, so no need to do it manually.
Sub RenderCircular(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single)
Sub RenderCircularTo(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single, ByVal tw As Long, ByVal th As Long, rbuf() As Byte, gbuf() As Byte, bbuf() As Byte)
'this automatically calculates the lookup table from the keyframe class, so no need to do it manually.
Sub RenderSweep(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single)
Sub RenderSweepTo(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single, _
ByVal tw As Long, ByVal th As Long, rbuf() As Byte, gbuf() As Byte, bbuf() As Byte)
'this automatically calculates the lookup table from the keyframe class, so no need to do it manually.
Sub RenderTwirl(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single)
Sub RenderTwirlTo(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single, _
ay(0, 0, UndoCurrent), UndoBArray(0, 0, UndoCurrent)
Sub RenderDiamondGradient(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single)
Sub RenderStarGradient(ByVal x1 As Single, ByVal y1 As Single, ByVal x2 As Single, ByVal y2 As Single)
'this one dosn't render to r,g,b buffers. it rendered directly to Howler's buffer