Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 #ifndef __GL2PS_H__
00037 #define __GL2PS_H__
00038
00039 #include <stdio.h>
00040 #include <stdlib.h>
00041
00042
00043
00044 #if defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)
00045 # if defined(_MSC_VER)
00046 # pragma warning(disable:4115)
00047 # pragma warning(disable:4996)
00048 # endif
00049 # include <windows.h>
00050 # if defined(GL2PSDLL)
00051 # if defined(GL2PSDLL_EXPORTS)
00052 # define GL2PSDLL_API __declspec(dllexport)
00053 # else
00054 # define GL2PSDLL_API __declspec(dllimport)
00055 # endif
00056 # else
00057 # define GL2PSDLL_API
00058 # endif
00059 #else
00060 # define GL2PSDLL_API
00061 #endif
00062
00063 #if defined(__APPLE__) || defined(HAVE_OPENGL_GL_H)
00064 # include <OpenGL/gl.h>
00065 #else
00066 # include <GL/gl.h>
00067 #endif
00068
00069
00070
00071
00072 #if defined(HAVE_ZLIB) || defined(HAVE_LIBZ)
00073 # define GL2PS_HAVE_ZLIB
00074 # if defined(HAVE_LIBPNG) || defined(HAVE_PNG)
00075 # define GL2PS_HAVE_LIBPNG
00076 # endif
00077 #endif
00078
00079
00080
00081 #define GL2PS_MAJOR_VERSION 1
00082 #define GL2PS_MINOR_VERSION 3
00083 #define GL2PS_PATCH_VERSION 5
00084 #define GL2PS_EXTRA_VERSION ""
00085
00086 #define GL2PS_VERSION (GL2PS_MAJOR_VERSION + \
00087 0.01 * GL2PS_MINOR_VERSION + \
00088 0.0001 * GL2PS_PATCH_VERSION)
00089
00090 #define GL2PS_COPYRIGHT "(C) 1999-2009 C. Geuzaine"
00091
00092
00093
00094 #define GL2PS_PS 0
00095 #define GL2PS_EPS 1
00096 #define GL2PS_TEX 2
00097 #define GL2PS_PDF 3
00098 #define GL2PS_SVG 4
00099 #define GL2PS_PGF 5
00100
00101
00102
00103 #define GL2PS_NO_SORT 1
00104 #define GL2PS_SIMPLE_SORT 2
00105 #define GL2PS_BSP_SORT 3
00106
00107
00108
00109 #define GL2PS_SUCCESS 0
00110 #define GL2PS_INFO 1
00111 #define GL2PS_WARNING 2
00112 #define GL2PS_ERROR 3
00113 #define GL2PS_NO_FEEDBACK 4
00114 #define GL2PS_OVERFLOW 5
00115 #define GL2PS_UNINITIALIZED 6
00116
00117
00118
00119 #define GL2PS_NONE 0
00120 #define GL2PS_DRAW_BACKGROUND (1<<0)
00121 #define GL2PS_SIMPLE_LINE_OFFSET (1<<1)
00122 #define GL2PS_SILENT (1<<2)
00123 #define GL2PS_BEST_ROOT (1<<3)
00124 #define GL2PS_OCCLUSION_CULL (1<<4)
00125 #define GL2PS_NO_TEXT (1<<5)
00126 #define GL2PS_LANDSCAPE (1<<6)
00127 #define GL2PS_NO_PS3_SHADING (1<<7)
00128 #define GL2PS_NO_PIXMAP (1<<8)
00129 #define GL2PS_USE_CURRENT_VIEWPORT (1<<9)
00130 #define GL2PS_COMPRESS (1<<10)
00131 #define GL2PS_NO_BLENDING (1<<11)
00132 #define GL2PS_TIGHT_BOUNDING_BOX (1<<12)
00133
00134
00135
00136 #define GL2PS_POLYGON_OFFSET_FILL 1
00137 #define GL2PS_POLYGON_BOUNDARY 2
00138 #define GL2PS_LINE_STIPPLE 3
00139 #define GL2PS_BLEND 4
00140
00141
00142
00143
00144
00145
00146
00147 #define GL2PS_TEXT_C 1
00148 #define GL2PS_TEXT_CL 2
00149 #define GL2PS_TEXT_CR 3
00150 #define GL2PS_TEXT_B 4
00151 #define GL2PS_TEXT_BL 5
00152 #define GL2PS_TEXT_BR 6
00153 #define GL2PS_TEXT_T 7
00154 #define GL2PS_TEXT_TL 8
00155 #define GL2PS_TEXT_TR 9
00156
00157 typedef GLfloat GL2PSrgba[4];
00158
00159 #if defined(__cplusplus)
00160 extern "C" {
00161 #endif
00162
00163 GL2PSDLL_API GLint gl2psBeginPage(const char *title, const char *producer,
00164 GLint viewport[4], GLint format, GLint sort,
00165 GLint options, GLint colormode,
00166 GLint colorsize, GL2PSrgba *colormap,
00167 GLint nr, GLint ng, GLint nb, GLint buffersize,
00168 FILE *stream, const char *filename);
00169 GL2PSDLL_API GLint gl2psEndPage(void);
00170 GL2PSDLL_API GLint gl2psSetOptions(GLint options);
00171 GL2PSDLL_API GLint gl2psGetOptions(GLint *options);
00172 GL2PSDLL_API GLint gl2psBeginViewport(GLint viewport[4]);
00173 GL2PSDLL_API GLint gl2psEndViewport(void);
00174 GL2PSDLL_API GLint gl2psText(const char *str, const char *fontname,
00175 GLshort fontsize);
00176 GL2PSDLL_API GLint gl2psTextOpt(const char *str, const char *fontname,
00177 GLshort fontsize, GLint align, GLfloat angle);
00178 GL2PSDLL_API GLint gl2psSpecial(GLint format, const char *str);
00179 GL2PSDLL_API GLint gl2psDrawPixels(GLsizei width, GLsizei height,
00180 GLint xorig, GLint yorig,
00181 GLenum format, GLenum type, const void *pixels);
00182 GL2PSDLL_API GLint gl2psEnable(GLint mode);
00183 GL2PSDLL_API GLint gl2psDisable(GLint mode);
00184 GL2PSDLL_API GLint gl2psPointSize(GLfloat value);
00185 GL2PSDLL_API GLint gl2psLineWidth(GLfloat value);
00186 GL2PSDLL_API GLint gl2psBlendFunc(GLenum sfactor, GLenum dfactor);
00187
00188
00189 GL2PSDLL_API GLint gl2psDrawImageMap(GLsizei width, GLsizei height,
00190 const GLfloat position[3],
00191 const unsigned char *imagemap);
00192 GL2PSDLL_API const char *gl2psGetFileExtension(GLint format);
00193 GL2PSDLL_API const char *gl2psGetFormatDescription(GLint format);
00194
00195 #if defined(__cplusplus)
00196 }
00197 #endif
00198
00199 #endif