kaleidoscope 1.4.0
 
Loading...
Searching...
No Matches
kaleidoscope.h
Go to the documentation of this file.
1#ifndef _KALEIDOSCOPE_H_
2#define _KALEIDOSCOPE_H_
3
8{
9 int x;
10 int y;
11};
12typedef struct Point2D_t Point2D;
13
18{
24 unsigned long long srcOffset;
26 unsigned long long dstOffset;
27};
29
34{
36 int width;
38 int height;
40 unsigned char nComponents;
42 long long nPoints;
45};
47
54void getKaleidoscopeVersion(int *major, int *minor, int *patch);
55
61
67
75void interpolate(TransformationInfo *dataOut, TransformationInfo *dataIn, int width, int height);
76
85void rotatePoints(TransformationInfo *outData, TransformationInfo *orgData, int width, int height, double angle);
86
96int sliceTriangle(TransformationInfo *transformPtr, int width, int height, int n, double scaleDown);
97
108int initKaleidoscope(KaleidoscopeHandle *handler, int n, int width, int height, int nComponents, double scaleDown);
109
117void processKaleidoscope(KaleidoscopeHandle *handler, double k, unsigned char *imgIn, unsigned char *imgOut);
118
124
125#endif // _KALEIDOSCOPE_H_
void getKaleidoscopeVersion(int *major, int *minor, int *patch)
Get the Kaleidoscope Library version as integer.
char * getKaleidoscopeLibraryInfo()
Get the Kaleidoscope Library info as string.
int initKaleidoscope(KaleidoscopeHandle *handler, int n, int width, int height, int nComponents, double scaleDown)
Initializes kaleidoscope handler.
char * getKaleidoscopeVersionString()
Get the Kaleidoscope Library version as string.
void interpolate(TransformationInfo *dataOut, TransformationInfo *dataIn, int width, int height)
A simple interpolation function. Internal use only.
void rotatePoints(TransformationInfo *outData, TransformationInfo *orgData, int width, int height, double angle)
Rotates the coordinates of sliced triangle. Internal use only.
void processKaleidoscope(KaleidoscopeHandle *handler, double k, unsigned char *imgIn, unsigned char *imgOut)
Applies kaleidoscope effect to image.
int sliceTriangle(TransformationInfo *transformPtr, int width, int height, int n, double scaleDown)
Slices a suitable triangle from image.
void deInitKaleidoscope(KaleidoscopeHandle *handler)
Deinitializes kaleidoscope handler.
Struct for kaleidoscope effect generator.
int height
Image height.
int width
Image width.
long long nPoints
Total number of points of transfer function.
struct TransformationInfo_t * pTransferFunc
Transformation info.
unsigned char nComponents
Number of components (eg 3 for RGB)
Data struct for pixel locations.
Definition kaleidoscope.h:8
Data struct for transformation information.
unsigned long long srcOffset
Offset from source image.
unsigned long long dstOffset
Offset from destination image.
Point2D srcLocation
Location from source image.
Point2D dstLocation
Location to destination image.