func Triangle(x float64) float64 {
	return float64(TringleA*x) - 1.0
}
Triangle takes an input value from -Pi to Pi
and returns a value between -1 and 1
package generator
import "math"
type WaveType uint16
const (
	WaveSine     WaveType = iota  
	WaveTriangle                  
	WaveSaw                       
	WaveSqr                       
)
const (
	TwoPi = float64(2 * math.Pi)
)
const (
	SineB = 4.0 / math.Pi
	SineC = -4.0 / (math.Pi * math.Pi)
	Q     = 0.775
	SineP = 0.225
)
func Sine(x32 float64) float64 {
	x := float64(x32)
	y := SineB*x + SineC*x*(math.Abs(x))
	y = SineP*(y*(math.Abs(y))-y) + y
	return float64(y)
}
const TringleA = 2.0 / math.Pi