#include /* ---------------------------------------------------------------------- * * begin common part * ---------------------------------------------------------------------- */ #define PI 3.14159265358979323846 #define PHI 1.6180339887 #define PHYLLOTAXIS (2 * PI * (PHI - 1) / PHI) #define PHYLLOTAXIS360 (360 * (PHI - 1) / PHI) unsigned int utf8(unsigned char *); void randomSeed(unsigned int seed); void randomizeByTime(void); double randomInRange(double min, double max); double radians(double deg); void strokeWeight(double w); void stroke(unsigned int color); void strokeOpacity(double opacity); void noStroke(void); void fill(unsigned int color); void fillOpacity(double opacity); void noFill(void); void textFont(const char* font, double size); unsigned int hsb1(double h, double s, double v); unsigned int hsb100(double h, double s, double v); unsigned int hsb360(double h, double s, double v); unsigned int hsb255(double h, double s, double v); unsigned int hsl1(double h, double s, double v); unsigned int hsl100(double h, double s, double v); unsigned int hsl360(double h, double s, double v); unsigned int hsl255(double h, double s, double v); unsigned int rgb1(double h, double s, double v); unsigned int rgb100(double h, double s, double v); unsigned int rgb255(double h, double s, double v); unsigned int bw1(double v); unsigned int bw100(double v); unsigned int bw255(double v); unsigned int rotateH360(unsigned int color, double a); unsigned int rotateH(unsigned int color); unsigned int addS100(unsigned int color, double a); unsigned int scaleS(unsigned int color, double a); unsigned int addB100(unsigned int color, double a); unsigned int scaleB(unsigned int color, double a); double cos360(double deg); double sin360(double deg); /* ---------------------------------------------------------------------- * * end common part * ---------------------------------------------------------------------- */ void translate(double x, double y); void rotate360(double deg); void rotate(double theta); void scale(double sx, double sy); void pushMatrix(void); void popMatrix(void); void resetMatrix(void); double centerX(void); double centerY(void); double pageWidth(void); double pageHeight(void); void setPageSize(double, double); void a4Portrait(void); void a4Landscape(void); double getWidth(void); double getHeight(void); void start(void); void startEnc(const char*); void finish(void); void image(const char* url, double x, double y, double w, double h); void use(const char* url, double x, double y, double w, double h); void upperBar(double); void lowerBar(double); void guideBars(double); void rulers(void); void trimMark(void); void line(double x1, double y1, double x2, double y2); void rect(double x, double y, double w, double h); void ellipse(double x, double y, double w, double h); void triangle(double x1, double y1, double x2, double y2, double x3, double y3); void quad(double x1, double y1, double x2, double y2, double x3, double y3, double x4, double y4); void quadrilateral(double x1, double y1, double x2, double y2, double x3, double y3, double x4, double y4); void arc(double x, double y, double w, double h, double start, double stop); void arc360(double x, double y, double w, double h, double start, double stop); void bezier(double ax0, double ay0, double cx0, double cy0, double cx1, double cy1, double ax1, double ay1); void vtext(const char* str, double x, double y, va_list list); void text(const char* str, double x, double y, ...); void beginShape(void); void vertex(double x, double y); void bezierVertex(double cx0, double cy0, double cx1, double cy1, double x1, double y1); void endShape(int close); #define CLOSE 1 #define OPEN 0 void smilieSymbol1(const char* id); void smilieSymbol2(const char* id); void smilieSymbol3(const char* id); void flowerSymbol(const char* id); void heartSymbol(const char* id); #define WIDTH 297 #define HEIGHT 210 /* turtle graphics */ void pushTurtle(void); void popTurtle(void); void penUp(void); void penDown(void); void forward(double len); void backward(double len); void turn(double angle); void direction(double dir); void go(double x, double y); void center(void); double getX(void); double getY(void); double getAngle(void); void say(const char *str, ...);