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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
#import <Foundation/Foundation.h>
#import <AppKit/AppKit.h>
#define DEFAULT_RES 200
typedef enum {
ZSQUARED=0,
ZCUBED,
ZSQSQPLUSZ,
ZLAMBDA,
ZMAGNET,
FTYPE_COUNT
} FTYPE;
#define DEFAULT_TYPE ZSQUARED
typedef enum {
MONOCHROME=0,
GRAY16,
RGB8,
RGB27,
CSCHEME_COUNT
} CSCHEME;
#define DEFAULT_SCHEME GRAY16
typedef enum {
ZOOM_IN = 0,
ZOOM_OUT,
ZOOM_RESTORE
} ZOOMOP;
@interface FractalView : NSView
{
NSImage *image;
FTYPE ftype;
int res;
CSCHEME cscheme;
double minre, maxre;
double minim, maxim;
NSBitmapImageRep *rep;
}
+ (id)getColorsForScheme:(CSCHEME)cs;
- (id)initWithType:(FTYPE)ft;
- (id)initWithType:(FTYPE)ft
resolution:(int)rval
cscheme:(CSCHEME)cs
region:(double *)reg;
- (id)setResolution:(int)rval;
- (int)resolution;
- (id)setColorScheme:(CSCHEME)cs;
- (CSCHEME)colorScheme;
- (id)zoomOp:(ZOOMOP)op;
- (void)update;
- (void)drawRect:(NSRect)aRect;
- (void)mouseDown:(NSEvent *)theEvent;
- (BOOL)writeTIFF:(NSString *)name;
- (void)dealloc;
@end
|