type Matrix … func Identity() Matrix { … } func Translate(x, y float64) Matrix { … } func Scale(x, y float64) Matrix { … } func Rotate(angle float64) Matrix { … } func Shear(x, y float64) Matrix { … } func (a Matrix) Multiply(b Matrix) Matrix { … } func (a Matrix) TransformVector(x, y float64) (tx, ty float64) { … } func (a Matrix) TransformPoint(x, y float64) (tx, ty float64) { … } func (a Matrix) Translate(x, y float64) Matrix { … } func (a Matrix) Scale(x, y float64) Matrix { … } func (a Matrix) Rotate(angle float64) Matrix { … } func (a Matrix) Shear(x, y float64) Matrix { … }