コード例 #1
0
ファイル: matrix.go プロジェクト: mantyr/go-cairo
func (self *Matrix) TransformDistance(dx, dy float64) (float64, float64) {
	C.cairo_matrix_transform_distance(self.cairo_matrix_t(),
		(*C.double)(unsafe.Pointer(&dx)), (*C.double)(unsafe.Pointer(&dy)))
	return dx, dy
}
コード例 #2
0
ファイル: matrix.go プロジェクト: jimmyfrasche/cairo
//TransformDistance transforms the distance vector p by m.
//This is similar to Transform except that the translation component of m
//are ignored.
//
//Originally cairo_matrix_transform_distance.
func (p Point) TransformDistance(m Matrix) Point {
	x := C.double(p.X)
	y := C.double(p.Y)
	C.cairo_matrix_transform_distance(&m.m, &x, &y)
	return Point{float64(x), float64(y)}
}