Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
gmsh
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Larry Price
gmsh
Commits
ef11b5cc
Commit
ef11b5cc
authored
21 years ago
by
Christophe Geuzaine
Browse files
Options
Downloads
Patches
Plain Diff
upgrade gl2ps to 1.2.0
parent
347c87ea
No related branches found
No related tags found
No related merge requests found
Changes
3
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
Graphics/CreateFile.cpp
+2
-2
2 additions, 2 deletions
Graphics/CreateFile.cpp
Graphics/gl2ps.cpp
+1769
-759
1769 additions, 759 deletions
Graphics/gl2ps.cpp
Graphics/gl2ps.h
+48
-162
48 additions, 162 deletions
Graphics/gl2ps.h
with
1819 additions
and
923 deletions
Graphics/CreateFile.cpp
+
2
−
2
View file @
ef11b5cc
// $Id: CreateFile.cpp,v 1.5
8
2004-05-0
8 00:19:47
geuzaine Exp $
// $Id: CreateFile.cpp,v 1.5
9
2004-05-0
9 19:00:11
geuzaine Exp $
//
// Copyright (C) 1997-2004 C. Geuzaine, J.-F. Remacle
//
...
...
@@ -254,7 +254,7 @@ void CreateOutputFile(char *name, int format)
pssort
=
(
CTX
.
print
.
eps_quality
==
1
)
?
GL2PS_SIMPLE_SORT
:
GL2PS_BSP_SORT
;
psoptions
=
GL2PS_SIMPLE_LINE_OFFSET
|
GL2PS_SILENT
|
GL2PS_SIMPLE_LINE_OFFSET
|
GL2PS_SILENT
|
GL2PS_NO_BLENDING
|
(
CTX
.
print
.
eps_occlusion_culling
?
GL2PS_OCCLUSION_CULL
:
0
)
|
(
CTX
.
print
.
eps_best_root
?
GL2PS_BEST_ROOT
:
0
)
|
(
CTX
.
print
.
eps_background
?
GL2PS_DRAW_BACKGROUND
:
0
)
|
...
...
This diff is collapsed.
Click to expand it.
Graphics/gl2ps.cpp
+
1769
−
759
View file @
ef11b5cc
This diff is collapsed.
Click to expand it.
Graphics/gl2ps.h
+
48
−
162
View file @
ef11b5cc
/* $Id: gl2ps.h,v 1.5
2
200
3-11-16 16:49:37
geuzaine Exp $ */
/* $Id: gl2ps.h,v 1.5
3
200
4-05-09 19:00:11
geuzaine Exp $ */
/*
* GL2PS, an OpenGL to PostScript Printing Library
* Copyright (C) 1999-200
3
Christophe Geuzaine <geuz@geuz.org>
* Copyright (C) 1999-200
4
Christophe Geuzaine <geuz@geuz.org>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of either:
...
...
@@ -39,12 +39,17 @@
#include
<stdlib.h>
#include
<math.h>
/* To generate a Windows dll, define GL2PSDLL at compile time */
/* To generate a Windows dll, you should define GL2PSDLL at compile
time */
#ifdef WIN32
#if defined (WIN32) || defined(_WIN32)
/* Shut up warning due to bad windows header file */
# if defined(_MSC_VER)
# pragma warning(disable:4115)
# endif
# include <windows.h>
# ifdef
GL2PSDLL
# ifdef
GL2PSDLL_EXPORTS
# if
def
ined(
GL2PSDLL
)
# if
def
ined(
GL2PSDLL_EXPORTS
)
# define GL2PSDLL_API __declspec(dllexport)
# else
# define GL2PSDLL_API __declspec(dllimport)
...
...
@@ -56,17 +61,17 @@
# define GL2PSDLL_API
#endif
#ifdef
__APPLE__
#if
def
ined(
__APPLE__
)
# include <OpenGL/gl.h>
#else
# include <GL/gl.h>
#endif
/* Support for compressed PDF */
/* Support for compressed
PostScript/
PDF */
#if defined(HAVE_ZLIB) || defined(HAVE_LIBZ) || defined(GL2PS_HAVE_ZLIB)
# include <zlib.h>
# if
n
def
GL2PS_HAVE_ZLIB
# if
!
def
ined(
GL2PS_HAVE_ZLIB
)
# define GL2PS_HAVE_ZLIB
# endif
#endif
...
...
@@ -74,8 +79,8 @@
/* Version number */
#define GL2PS_MAJOR_VERSION 1
#define GL2PS_MINOR_VERSION
1
#define GL2PS_PATCH_VERSION
2
#define GL2PS_MINOR_VERSION
2
#define GL2PS_PATCH_VERSION
0
#define GL2PS_VERSION (GL2PS_MAJOR_VERSION + \
0.01 * GL2PS_MINOR_VERSION + \
...
...
@@ -94,6 +99,16 @@
#define GL2PS_SIMPLE_SORT 2
#define GL2PS_BSP_SORT 3
/* Message levels and error codes */
#define GL2PS_SUCCESS 0
#define GL2PS_INFO 1
#define GL2PS_WARNING 2
#define GL2PS_ERROR 3
#define GL2PS_NO_FEEDBACK 4
#define GL2PS_OVERFLOW 5
#define GL2PS_UNINITIALIZED 6
/* Options for gl2psBeginPage */
#define GL2PS_NONE 0
...
...
@@ -108,41 +123,14 @@
#define GL2PS_NO_PIXMAP (1<<8)
#define GL2PS_USE_CURRENT_VIEWPORT (1<<9)
#define GL2PS_COMPRESS (1<<10)
#define GL2PS_NO_BLENDING (1<<11)
/* Arguments for gl2psEnable/gl2psDisable */
#define GL2PS_POLYGON_OFFSET_FILL 1
#define GL2PS_POLYGON_BOUNDARY 2
#define GL2PS_LINE_STIPPLE 3
/* Magic numbers */
#define GL2PS_EPSILON 5.0e-3F
#define GL2PS_DEPTH_FACT 1000.0F
#define GL2PS_SIMPLE_OFFSET 0.05F
#define GL2PS_SIMPLE_OFFSET_LARGE 1.0F
#define GL2PS_ZERO(arg) (fabs(arg)<1.e-20)
#define GL2PS_FIXED_XREF_ENTRIES 7
/* Message levels and error codes */
#define GL2PS_SUCCESS 0
#define GL2PS_INFO 1
#define GL2PS_WARNING 2
#define GL2PS_ERROR 3
#define GL2PS_NO_FEEDBACK 4
#define GL2PS_OVERFLOW 5
#define GL2PS_UNINITIALIZED 6
/* Primitive types */
#define GL2PS_NOTYPE -1
#define GL2PS_TEXT 1
#define GL2PS_POINT 2
#define GL2PS_LINE 3
#define GL2PS_QUADRANGLE 4
#define GL2PS_TRIANGLE 5
#define GL2PS_PIXMAP 6
#define GL2PS_BLEND 4
/* Text alignment */
...
...
@@ -156,19 +144,6 @@
#define GL2PS_TEXT_TL 8
#define GL2PS_TEXT_TR 9
/* BSP tree primitive comparison */
#define GL2PS_COINCIDENT 1
#define GL2PS_IN_FRONT_OF 2
#define GL2PS_IN_BACK_OF 3
#define GL2PS_SPANNING 4
/* 2D BSP tree primitive comparison */
#define GL2PS_POINT_COINCIDENT 0
#define GL2PS_POINT_INFRONT 1
#define GL2PS_POINT_BACK 2
/* Pass through options */
#define GL2PS_BEGIN_POLYGON_OFFSET_FILL 1
...
...
@@ -179,105 +154,14 @@
#define GL2PS_END_LINE_STIPPLE 6
#define GL2PS_SET_POINT_SIZE 7
#define GL2PS_SET_LINE_WIDTH 8
#define GL2PS_BEGIN_BLEND 9
#define GL2PS_END_BLEND 10
#define GL2PS_SRC_BLEND 11
#define GL2PS_DST_BLEND 12
typedef
GLfloat
GL2PSrgba
[
4
];
typedef
GLfloat
GL2PSxyz
[
3
];
typedef
GLfloat
GL2PSplane
[
4
];
typedef
struct
_GL2PSbsptree2d
GL2PSbsptree2d
;
struct
_GL2PSbsptree2d
{
GL2PSplane
plane
;
GL2PSbsptree2d
*
front
,
*
back
;
};
typedef
struct
{
GLint
nmax
,
size
,
incr
,
n
;
char
*
array
;
}
GL2PSlist
;
typedef
struct
_GL2PSbsptree
GL2PSbsptree
;
struct
_GL2PSbsptree
{
GL2PSplane
plane
;
GL2PSlist
*
primitives
;
GL2PSbsptree
*
front
,
*
back
;
};
typedef
struct
{
GL2PSxyz
xyz
;
GL2PSrgba
rgba
;
}
GL2PSvertex
;
typedef
GL2PSvertex
GL2PStriangle
[
3
];
typedef
struct
{
GLshort
fontsize
;
char
*
str
,
*
fontname
;
GLint
alignment
;
}
GL2PSstring
;
typedef
struct
{
GLsizei
width
,
height
;
GLenum
format
,
type
;
GLfloat
*
pixels
;
}
GL2PSimage
;
typedef
struct
{
GLshort
type
,
numverts
;
char
boundary
,
dash
,
culled
;
GLfloat
width
,
depth
;
GL2PSvertex
*
verts
;
union
{
GL2PSstring
*
text
;
GL2PSimage
*
image
;
}
data
;
}
GL2PSprimitive
;
typedef
struct
{
#ifdef GL2PS_HAVE_ZLIB
Bytef
*
dest
,
*
src
,
*
start
;
uLongf
destLen
,
srcLen
;
#else
int
dummy
;
#endif
}
GL2PScompress
;
typedef
struct
{
/* general */
GLint
format
,
sort
,
options
,
colorsize
,
colormode
,
buffersize
;
const
char
*
title
,
*
producer
,
*
filename
;
GLboolean
boundary
;
GLfloat
*
feedback
,
offset
[
2
],
lastlinewidth
;
GLint
viewport
[
4
];
GL2PSrgba
*
colormap
,
lastrgba
,
threshold
;
GL2PSlist
*
primitives
;
FILE
*
stream
;
GL2PScompress
*
compress
;
/* BSP-specific */
GLint
maxbestroot
;
/* occlusion culling-specific */
GLboolean
zerosurfacearea
;
GL2PSbsptree2d
*
imagetree
;
GL2PSprimitive
*
primitivetoadd
;
/* PDF-specific */
int
cref
[
GL2PS_FIXED_XREF_ENTRIES
];
int
streamlength
;
GL2PSlist
*
tlist
,
*
tidxlist
,
*
ilist
,
*
slist
;
int
lasttype
,
consec_cnt
,
consec_inner_cnt
;
int
line_width_diff
,
line_rgb_diff
,
last_line_finished
,
last_triangle_finished
;
}
GL2PScontext
;
/* private prototypes */
GLint
gl2psPrintPrimitives
(
void
);
/* public functions */
#ifdef
__cplusplus
#if
def
ined(
__cplusplus
)
extern
"C"
{
#endif
...
...
@@ -290,7 +174,8 @@ GL2PSDLL_API GLint gl2psBeginPage(const char *title, const char *producer,
GL2PSDLL_API
GLint
gl2psEndPage
(
void
);
GL2PSDLL_API
GLint
gl2psBeginViewport
(
GLint
viewport
[
4
]);
GL2PSDLL_API
GLint
gl2psEndViewport
(
void
);
GL2PSDLL_API
GLint
gl2psText
(
const
char
*
str
,
const
char
*
fontname
,
GLshort
fontsize
);
GL2PSDLL_API
GLint
gl2psText
(
const
char
*
str
,
const
char
*
fontname
,
GLshort
fontsize
);
GL2PSDLL_API
GLint
gl2psDrawPixels
(
GLsizei
width
,
GLsizei
height
,
GLint
xorig
,
GLint
yorig
,
GLenum
format
,
GLenum
type
,
const
void
*
pixels
);
...
...
@@ -298,12 +183,13 @@ GL2PSDLL_API GLint gl2psEnable(GLint mode);
GL2PSDLL_API
GLint
gl2psDisable
(
GLint
mode
);
GL2PSDLL_API
GLint
gl2psPointSize
(
GLfloat
value
);
GL2PSDLL_API
GLint
gl2psLineWidth
(
GLfloat
value
);
GL2PSDLL_API
GLint
gl2psBlendFunc
(
GLenum
sfactor
,
GLenum
dfactor
);
/* Undocumented */
GL2PSDLL_API
GLint
gl2psTextOpt
(
const
char
*
str
,
const
char
*
fontname
,
GLshort
fontsize
,
GLint
align
,
GL2PSrgba
color
);
GL2PSDLL_API
GLint
gl2psTextOpt
(
const
char
*
str
,
const
char
*
fontname
,
GLshort
fontsize
,
GLint
align
,
GL2PSrgba
color
);
#ifdef
__cplusplus
#if
def
ined(
__cplusplus
)
};
#endif
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment