summaryrefslogtreecommitdiff
path: root/dmagick/c/distort.d
blob: 5bdd2e22ba0ae105a348f4a139cb2926a552cfb6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
module dmagick.c.distort;

import dmagick.c.exception;
import dmagick.c.image;
import dmagick.c.magickType;

extern(C)
{
	enum DistortImageMethod
	{
		UndefinedDistortion,
		AffineDistortion,
		AffineProjectionDistortion,
		ScaleRotateTranslateDistortion,
		PerspectiveDistortion,
		PerspectiveProjectionDistortion,
		BilinearForwardDistortion,
		BilinearDistortion = BilinearForwardDistortion,
		BilinearReverseDistortion,
		PolynomialDistortion,
		ArcDistortion,
		PolarDistortion,
		DePolarDistortion,
		Cylinder2PlaneDistortion,
		Plane2CylinderDistortion,
		BarrelDistortion,
		BarrelInverseDistortion,
		ShepardsDistortion,
		ResizeDistortion,
		SentinelDistortion
	}

	enum SparseColorMethod
	{
		UndefinedColorInterpolate =   DistortImageMethod.UndefinedDistortion,
		BarycentricColorInterpolate = DistortImageMethod.AffineDistortion,
		BilinearColorInterpolate =    DistortImageMethod.BilinearReverseDistortion,
		PolynomialColorInterpolate =  DistortImageMethod.PolynomialDistortion,
		ShepardsColorInterpolate =    DistortImageMethod.ShepardsDistortion,

		VoronoiColorInterpolate =     DistortImageMethod.SentinelDistortion,
		InverseColorInterpolate
	}

	Image* DistortImage(const(Image)*, const DistortImageMethod, const size_t, const(double)*, MagickBooleanType, ExceptionInfo* exception);
	Image* DistortResizeImage(const(Image)*, const size_t, const size_t, ExceptionInfo*);
	Image* SparseColorImage(const(Image)*, const ChannelType, const SparseColorMethod, const size_t, const(double)*, ExceptionInfo*);
}