func (g *GeoM) Apply(x, y float64) (float64, float64) {
	x2, y2 := g.apply32(float32(x), float32(y))
	return float64(x2), float64(y2)
}
func (g *GeoM) Apply(x, y float64) (float64, float64) {
	x2, y2 := g.apply32(float32(x), float32(y))
	return float64(x2), float64(y2)
}
func ( g * GeoM ) Apply ( x , y float64 ) ( float64 , float64 ) { x2 , y2 := g . apply32 ( float32 ( x ) , float32 ( y ) ) return float64 ( x2 ) , float64 ( y2 ) }
// Apply pre-multiplies a vector (x, y, 1) by the matrix.
// In other words, Apply calculates GeoM * (x, y, 1)^T.
// The return value is x and y values of the result vector.
Apply pre - multiplies a vector ( x y 1 ) by the matrix . In other words Apply calculates GeoM * ( x y 1 ) ^T . The return value is x and y values of the result vector .