62 lines
1.7 KiB
Groff
62 lines
1.7 KiB
Groff
.TH IM_SIMILARITY_AREA 3 "13 January 1992"
|
|
.SH NAME
|
|
im_similarity_area, im_similarity \- apply a similarity transform to an image
|
|
.SH SYNOPSIS
|
|
.B #include <vips/vips.h>
|
|
|
|
int im_similarity_area(in, out, s, a, dx, dy, x, y, w, h)
|
|
.br
|
|
.B IMAGE *in, *out;
|
|
.br
|
|
.B double s, a, dx, dy;
|
|
.br
|
|
.B int x, y;
|
|
.br
|
|
.B int w, h;
|
|
|
|
int im_similarity(in, out, s, a, dx, dy)
|
|
.br
|
|
.B IMAGE *in, *out;
|
|
.br
|
|
.B double s, a, dx, dy;
|
|
|
|
.SH DESCRIPTION
|
|
.B im_similarity_area()
|
|
applies a similarity transformation on the image held by the IMAGE descriptor
|
|
in and puts the result at the location pointed by the IMAGE descriptor out. in
|
|
many have any number of bands, be any size, and have any non-complex type.
|
|
|
|
The transformation is described by s, a, dx, dy. The point (x,y) in the input
|
|
is mapped onto point (X,Y) in the output by
|
|
|
|
X = s * x - a * y + dx
|
|
Y = a * x + s * y + dy
|
|
|
|
s and a do not correspond to scale and angle of the transformation; the actual
|
|
scale and angle are given by the equations:
|
|
|
|
scale = sqrt(s*s + a*a)
|
|
angle = arctan(s/a).
|
|
|
|
The area of the output image given by x, y, w, h is generated. (0,0) is
|
|
the position of the transformed top-left-hand corner of the input image.
|
|
Function im_similarity_area resamples the transformed image using bilinear
|
|
interpolation.
|
|
|
|
im_similarity works exactly as im_similarity_area, but calculates x, y, w, h
|
|
for you such that the rectangle described just encloses all of the transformed
|
|
input pixels.
|
|
.SH RETURN VALUE
|
|
The functions return 0 on success and -1 on error.
|
|
.SH BUGS
|
|
As with most resamplers, im_similarity performs poorly at the edges of
|
|
images.
|
|
.SH SEE\ ALSO
|
|
similarity(1), similarity_area(1)
|
|
.SH AUTHORS
|
|
N. Dessipris -\ 13/01/1992
|
|
.br
|
|
J.Ph. Laurent -\ 12/12/92
|
|
.br
|
|
J. Cupitt -\ 22/02/93
|