Graphviz  2.41.20170921.2350
Macros | Enumerations | Functions | Variables
gvrender_core_pov.c File Reference
#include "config.h"
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <errno.h>
#include "macros.h"
#include "const.h"
#include "gvplugin_render.h"
#include "gvplugin_device.h"
#include "gvio.h"
#include "gvcint.h"
Include dependency graph for gvrender_core_pov.c:

Go to the source code of this file.

Macros

#define _GNU_SOURCE
 
#define POV_VERSION   "#version 3.6;\n"
 
#define POV_GLOBALS   "global_settings { assumed_gamma 1.0 }\n"
 
#define POV_DEFAULT   "#default { finish { ambient 0.1 diffuse 0.9 } }\n"
 
#define POV_INCLUDE
 
#define POV_LIGHT   "light_source { <1500,3000,-2500> color White }\n"
 
#define POV_CAMERA
 
#define POV_SKY_AND_GND
 
#define POV_BOX   "box { <%.3f, %.3f, %.3f>, <%.3f, %.3f, %.3f>\n"
 
#define POV_SCALE1   "scale %.3f\n"
 
#define POV_SCALE3   "scale "POV_VECTOR3"\n"
 
#define POV_ROTATE   "rotate "POV_VECTOR3"\n"
 
#define POV_TRANSLATE   "translate"POV_VECTOR3"\n"
 
#define END   "}\n"
 
#define POV_TORUS   "torus { %.3f, %.3f\n"
 
#define POV_SPHERE_SWEEP
 
#define POV_SPHERE   "sphere {"POV_VECTOR3", 1.0\n"
 
#define POV_TEXT
 
#define POV_DECLARE   "#declare %s = %s;\n"
 
#define POV_OBJECT   "object { %s }\n"
 
#define POV_VERBATIM   "%s\n"
 
#define POV_DEBUG   "#debug %s\n"
 
#define POV_POLYGON   "polygon { %d,\n"
 
#define POV_VECTOR3   "<%9.3f, %9.3f, %9.3f>"
 
#define POV_PIGMENT_COLOR   "pigment { color %s }\n"
 
#define POV_COLOR_NAME   "%s transmit %.3f"
 
#define POV_COLOR_RGB   "rgb"POV_VECTOR3" transmit %.3f"
 
#define POV_COLORS
 
#define GV_OBJ_EXT(type, obj, name)
 
#define DPI   72.0
 
#define RENDERER_COLOR_TYPE   RGBA_BYTE
 

Enumerations

enum  format_type {
  FORMAT_PNG_XDOT, FORMAT_GIF_XDOT, FORMAT_JPEG_XDOT, FORMAT_SVG_XDOT,
  FORMAT_PS_XDOT, FORMAT_PNG_DOT, FORMAT_GIF_DOT, FORMAT_JPEG_DOT,
  FORMAT_SVG_DOT, FORMAT_PS_DOT, FORMAT_PNG_MAP, FORMAT_GIF_MAP,
  FORMAT_JPEG_MAP, FORMAT_SVG_MAP, FORMAT_PS_MAP, FORMAT_PNG_SVG,
  FORMAT_GIF_SVG, FORMAT_JPEG_SVG, FORMAT_SVG_SVG, FORMAT_PNG_FIG,
  FORMAT_GIF_FIG, FORMAT_JPEG_FIG, FORMAT_PNG_VRML, FORMAT_GIF_VRML,
  FORMAT_JPEG_VRML, FORMAT_PS_PS, FORMAT_PSLIB_PS, FORMAT_PNG_VML,
  FORMAT_GIF_VML, FORMAT_JPEG_VML, FORMAT_GIF_TK, FORMAT_DIA,
  FORMAT_DOT, FORMAT_CANON, FORMAT_PLAIN, FORMAT_PLAIN_EXT,
  FORMAT_XDOT, FORMAT_XDOT12, FORMAT_XDOT14, FORMAT_FIG,
  FORMAT_HPGL, FORMAT_JSON, FORMAT_JSON0, FORMAT_DOT_JSON,
  FORMAT_XDOT_JSON, FORMAT_IMAP, FORMAT_ISMAP, FORMAT_CMAP,
  FORMAT_CMAPX, FORMAT_MIF, FORMAT_MP, FORMAT_PIC,
  FORMAT_POV, FORMAT_PS, FORMAT_PS2, FORMAT_EPS,
  FORMAT_SVG, FORMAT_SVGZ, FORMAT_TK, FORMAT_VML,
  FORMAT_VMLZ, FORMAT_VTX, FORMAT_PNG_GD, FORMAT_GIF_GD,
  FORMAT_JPG_GD, FORMAT_GD_GD, FORMAT_GD2_GD, FORMAT_XPM_GD,
  FORMAT_WBMP_GD, FORMAT_XBM_GD, FORMAT_PNG_PS, FORMAT_GIF_PS,
  FORMAT_JPG_PS, FORMAT_GD_PS, FORMAT_GD2_PS, FORMAT_XPM_PS,
  FORMAT_WBMP_PS, FORMAT_XBM_PS, FORMAT_PNG_CAIRO, FORMAT_GIF_CAIRO,
  FORMAT_JPG_CAIRO, FORMAT_GD_CAIRO, FORMAT_GD2_CAIRO, FORMAT_XPM_CAIRO,
  FORMAT_WBMP_CAIRO, FORMAT_XBM_CAIRO, FORMAT_GIF, FORMAT_JPEG,
  FORMAT_PNG, FORMAT_WBMP, FORMAT_GD, FORMAT_GD2,
  FORMAT_XBM, FORMAT_PS_PS, FORMAT_PS, FORMAT_PS2,
  FORMAT_EPS, FORMAT_PNG_CAIRO, FORMAT_PNG_PS, FORMAT_CAIRO,
  FORMAT_PNG, FORMAT_PS, FORMAT_PDF, FORMAT_SVG
}
 

Functions

char * el (GVJ_t *job, char *template,...)
 

Variables

gvrender_engine_t pov_engine
 
gvrender_features_t render_features_pov
 
gvdevice_features_t device_features_pov
 
gvplugin_installed_t gvrender_pov_types []
 
gvplugin_installed_t gvdevice_pov_types []
 

Macro Definition Documentation

#define _GNU_SOURCE

Definition at line 19 of file gvrender_core_pov.c.

#define DPI   72.0

Definition at line 340 of file gvrender_core_pov.c.

#define END   "}\n"

Definition at line 111 of file gvrender_core_pov.c.

#define GV_OBJ_EXT (   type,
  obj,
  name 
)
Value:
do { \
char debug_str[256]; \
gvprintf(job, POV_DECLARE, type, obj); \
gvprintf(job, POV_OBJECT, type); \
gvprintf(job, POV_DECLARE, "Min", "min_extent("type")"); \
gvprintf(job, POV_DECLARE, "Max", "max_extent("type")"); \
snprintf(debug_str, 256, \
"concat(\"Dim = \" , vstr(3, Max - Min, \", \", 0, 3)," \
" \" "type": %s\", \"\\n\")", name); \
gvprintf(job, POV_DEBUG, debug_str); \
} while (0)
#define POV_DEBUG
#define POV_DECLARE
#define POV_OBJECT
void gvprintf(GVJ_t *job, const char *format,...)
Definition: gvdevice.c:389

Definition at line 283 of file gvrender_core_pov.c.

#define POV_BOX   "box { <%.3f, %.3f, %.3f>, <%.3f, %.3f, %.3f>\n"

Definition at line 96 of file gvrender_core_pov.c.

#define POV_CAMERA
Value:
"camera { location <%.3f , %.3f , %.3f>\n"\
" look_at <%.3f , %.3f , %.3f>\n"\
" right x * image_width / image_height\n"\
" angle %.3f\n"\
"}\n"

Definition at line 53 of file gvrender_core_pov.c.

#define POV_COLOR_NAME   "%s transmit %.3f"

Definition at line 151 of file gvrender_core_pov.c.

#define POV_COLOR_RGB   "rgb"POV_VECTOR3" transmit %.3f"

Definition at line 154 of file gvrender_core_pov.c.

#define POV_COLORS

Definition at line 159 of file gvrender_core_pov.c.

#define POV_DEBUG   "#debug %s\n"

Definition at line 139 of file gvrender_core_pov.c.

#define POV_DECLARE   "#declare %s = %s;\n"

Definition at line 130 of file gvrender_core_pov.c.

#define POV_DEFAULT   "#default { finish { ambient 0.1 diffuse 0.9 } }\n"

Definition at line 42 of file gvrender_core_pov.c.

#define POV_GLOBALS   "global_settings { assumed_gamma 1.0 }\n"

Definition at line 39 of file gvrender_core_pov.c.

#define POV_INCLUDE
Value:
"#include \"colors.inc\"\n"\
"#include \"textures.inc\"\n"\
"#include \"shapes.inc\"\n"

Definition at line 45 of file gvrender_core_pov.c.

#define POV_LIGHT   "light_source { <1500,3000,-2500> color White }\n"

Definition at line 50 of file gvrender_core_pov.c.

#define POV_OBJECT   "object { %s }\n"

Definition at line 133 of file gvrender_core_pov.c.

#define POV_PIGMENT_COLOR   "pigment { color %s }\n"

Definition at line 148 of file gvrender_core_pov.c.

#define POV_POLYGON   "polygon { %d,\n"

Definition at line 142 of file gvrender_core_pov.c.

#define POV_ROTATE   "rotate "POV_VECTOR3"\n"

Definition at line 105 of file gvrender_core_pov.c.

#define POV_SCALE1   "scale %.3f\n"

Definition at line 99 of file gvrender_core_pov.c.

#define POV_SCALE3   "scale "POV_VECTOR3"\n"

Definition at line 102 of file gvrender_core_pov.c.

#define POV_SKY_AND_GND

Definition at line 60 of file gvrender_core_pov.c.

#define POV_SPHERE   "sphere {"POV_VECTOR3", 1.0\n"

Definition at line 122 of file gvrender_core_pov.c.

#define POV_SPHERE_SWEEP
Value:
"sphere_sweep {\n"\
" %s\n"\
" %d,\n"

Definition at line 117 of file gvrender_core_pov.c.

#define POV_TEXT
Value:
"text {\n"\
" ttf \"%s\",\n"\
" \"%s\", %.3f, %.3f\n"

Definition at line 125 of file gvrender_core_pov.c.

#define POV_TORUS   "torus { %.3f, %.3f\n"

Definition at line 114 of file gvrender_core_pov.c.

#define POV_TRANSLATE   "translate"POV_VECTOR3"\n"

Definition at line 108 of file gvrender_core_pov.c.

#define POV_VECTOR3   "<%9.3f, %9.3f, %9.3f>"

Definition at line 145 of file gvrender_core_pov.c.

#define POV_VERBATIM   "%s\n"

Definition at line 136 of file gvrender_core_pov.c.

#define POV_VERSION   "#version 3.6;\n"

Definition at line 36 of file gvrender_core_pov.c.

#define RENDERER_COLOR_TYPE   RGBA_BYTE

Definition at line 341 of file gvrender_core_pov.c.

Enumeration Type Documentation

Enumerator
FORMAT_PNG_XDOT 
FORMAT_GIF_XDOT 
FORMAT_JPEG_XDOT 
FORMAT_SVG_XDOT 
FORMAT_PS_XDOT 
FORMAT_PNG_DOT 
FORMAT_GIF_DOT 
FORMAT_JPEG_DOT 
FORMAT_SVG_DOT 
FORMAT_PS_DOT 
FORMAT_PNG_MAP 
FORMAT_GIF_MAP 
FORMAT_JPEG_MAP 
FORMAT_SVG_MAP 
FORMAT_PS_MAP 
FORMAT_PNG_SVG 
FORMAT_GIF_SVG 
FORMAT_JPEG_SVG 
FORMAT_SVG_SVG 
FORMAT_PNG_FIG 
FORMAT_GIF_FIG 
FORMAT_JPEG_FIG 
FORMAT_PNG_VRML 
FORMAT_GIF_VRML 
FORMAT_JPEG_VRML 
FORMAT_PS_PS 
FORMAT_PSLIB_PS 
FORMAT_PNG_VML 
FORMAT_GIF_VML 
FORMAT_JPEG_VML 
FORMAT_GIF_TK 
FORMAT_DIA 
FORMAT_DOT 
FORMAT_CANON 
FORMAT_PLAIN 
FORMAT_PLAIN_EXT 
FORMAT_XDOT 
FORMAT_XDOT12 
FORMAT_XDOT14 
FORMAT_FIG 
FORMAT_HPGL 
FORMAT_JSON 
FORMAT_JSON0 
FORMAT_DOT_JSON 
FORMAT_XDOT_JSON 
FORMAT_IMAP 
FORMAT_ISMAP 
FORMAT_CMAP 
FORMAT_CMAPX 
FORMAT_MIF 
FORMAT_MP 
FORMAT_PIC 
FORMAT_POV 
FORMAT_PS 
FORMAT_PS2 
FORMAT_EPS 
FORMAT_SVG 
FORMAT_SVGZ 
FORMAT_TK 
FORMAT_VML 
FORMAT_VMLZ 
FORMAT_VTX 
FORMAT_PNG_GD 
FORMAT_GIF_GD 
FORMAT_JPG_GD 
FORMAT_GD_GD 
FORMAT_GD2_GD 
FORMAT_XPM_GD 
FORMAT_WBMP_GD 
FORMAT_XBM_GD 
FORMAT_PNG_PS 
FORMAT_GIF_PS 
FORMAT_JPG_PS 
FORMAT_GD_PS 
FORMAT_GD2_PS 
FORMAT_XPM_PS 
FORMAT_WBMP_PS 
FORMAT_XBM_PS 
FORMAT_PNG_CAIRO 
FORMAT_GIF_CAIRO 
FORMAT_JPG_CAIRO 
FORMAT_GD_CAIRO 
FORMAT_GD2_CAIRO 
FORMAT_XPM_CAIRO 
FORMAT_WBMP_CAIRO 
FORMAT_XBM_CAIRO 
FORMAT_GIF 
FORMAT_JPEG 
FORMAT_PNG 
FORMAT_WBMP 
FORMAT_GD 
FORMAT_GD2 
FORMAT_XBM 
FORMAT_PS_PS 
FORMAT_PS 
FORMAT_PS2 
FORMAT_EPS 
FORMAT_PNG_CAIRO 
FORMAT_PNG_PS 
FORMAT_CAIRO 
FORMAT_PNG 
FORMAT_PS 
FORMAT_PDF 
FORMAT_SVG 

Definition at line 342 of file gvrender_core_pov.c.

Function Documentation

char* el ( GVJ_t job,
char *  template,
  ... 
)

Definition at line 364 of file gvrender_core_pov.c.

References GVJ_s::common, GVCOMMON_s::errorfn, and str.

Referenced by hintersect().

Variable Documentation

gvdevice_features_t device_features_pov
Initial value:
= {
{0.0, 0.0},
{0.0, 0.0},
{DPI, DPI},
}
#define DPI
#define GVDEVICE_DOES_TRUECOLOR
Definition: gvcjob.h:92

Definition at line 912 of file gvrender_core_pov.c.

gvplugin_installed_t gvdevice_pov_types[]
Initial value:
= {
{0, NULL, 0, NULL, NULL}
}
#define NULL
Definition: logic.h:39

Definition at line 926 of file gvrender_core_pov.c.

gvplugin_installed_t gvrender_pov_types[]
Initial value:
= {
{0, NULL, 0, NULL, NULL}
}
#define NULL
Definition: logic.h:39

Definition at line 919 of file gvrender_core_pov.c.

gvrender_engine_t pov_engine

Definition at line 862 of file gvrender_core_pov.c.

gvrender_features_t render_features_pov
Initial value:
= {
4.0,
pov_knowncolors,
sizeof(pov_knowncolors) / sizeof(char *),
}
#define GVRENDER_DOES_MAP_ELLIPSE
Definition: gvcjob.h:104
#define GVRENDER_DOES_MAP_POLYGON
Definition: gvcjob.h:103
#define RENDERER_COLOR_TYPE
#define GVRENDER_DOES_MAP_RECTANGLE
Definition: gvcjob.h:101
#define GVRENDER_DOES_TRANSFORM
Definition: gvcjob.h:97
#define GVRENDER_DOES_Z
Definition: gvcjob.h:108
#define GVRENDER_DOES_MAP_CIRCLE
Definition: gvcjob.h:102
#define GVDEVICE_DOES_LAYERS
Definition: gvcjob.h:90
#define GVRENDER_NO_WHITE_BG
Definition: gvcjob.h:109
#define GVRENDER_DOES_MAP_BSPLINE
Definition: gvcjob.h:105

Definition at line 895 of file gvrender_core_pov.c.