gdiplus: Added GdipScaleMatrix.

This commit is contained in:
Evan Stade 2007-07-19 18:22:16 -07:00 committed by Alexandre Julliard
parent 0b381cee30
commit d882fc043d
3 changed files with 25 additions and 1 deletions

View file

@ -477,7 +477,7 @@
@ stub GdipSaveImageToFile
@ stub GdipSaveImageToStream
@ stub GdipScaleLineTransform
@ stub GdipScaleMatrix
@ stdcall GdipScaleMatrix(ptr long long long)
@ stub GdipScalePathGradientTransform
@ stub GdipScalePenTransform
@ stub GdipScaleTextureTransform

View file

@ -93,6 +93,29 @@ GpStatus WINGDIPAPI GdipMultiplyMatrix(GpMatrix *matrix, GpMatrix* matrix2,
return Ok;
}
GpStatus WINGDIPAPI GdipScaleMatrix(GpMatrix *matrix, REAL scaleX, REAL scaleY,
GpMatrixOrder order)
{
REAL scale[6];
if(!matrix)
return InvalidParameter;
scale[0] = scaleX;
scale[1] = 0.0;
scale[2] = 0.0;
scale[3] = scaleY;
scale[4] = 0.0;
scale[5] = 0.0;
if(order == MatrixOrderAppend)
matrix_multiply(matrix->matrix, scale, matrix->matrix);
else
matrix_multiply(scale, matrix->matrix, matrix->matrix);
return Ok;
}
GpStatus WINGDIPAPI GdipTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts,
INT count)
{

View file

@ -88,6 +88,7 @@ GpStatus WINGDIPAPI GdipTransformPath(GpPath*,GpMatrix*);
GpStatus WINGDIPAPI GdipCreateMatrix2(REAL,REAL,REAL,REAL,REAL,REAL,GpMatrix**);
GpStatus WINGDIPAPI GdipDeleteMatrix(GpMatrix*);
GpStatus WINGDIPAPI GdipMultiplyMatrix(GpMatrix*,GpMatrix*,GpMatrixOrder);
GpStatus WINGDIPAPI GdipScaleMatrix(GpMatrix*,REAL,REAL,GpMatrixOrder);
GpStatus WINGDIPAPI GdipTransformMatrixPoints(GpMatrix*,GpPointF*,INT);
GpStatus WINGDIPAPI GdipCreatePathIter(GpPathIterator**,GpPath*);