COPASI API
4.16.103
Main Page
Namespaces
Classes
Files
File List
File Members
copasi
layoutUI
utility_classes.h
Go to the documentation of this file.
1
// Copyright (C) 2015 by Pedro Mendes, Virginia Tech Intellectual
2
// Properties, Inc., University of Heidelberg, and The University
3
// of Manchester.
4
// All rights reserved.
5
6
#ifndef UTILITY_CLASSES_H__
7
#define UTILITY_CLASSES_H__
8
9
// opengl includes
10
#ifdef WIN32
11
# define WIN32_LEAN_AND_MEAN 1
12
# include <windows.h>
13
#endif // WIN32
14
15
#ifdef __APPLE__
16
#include "OpenGL/gl.h"
17
#else
18
#include "GL/gl.h"
19
#endif // __APPLE__
20
21
// stl includes
22
#include <string>
23
#include <vector>
24
25
// render extension includes
26
#include "
copasi/layout/CLGraphicalPrimitive2D.h
"
27
#include "
copasi/layout/CLRelAbsVector.h
"
28
#include "
copasi/layout/CLText.h
"
29
30
class
CLGraphicalObject
;
31
32
/**
33
* structure to store the texture for a TextGlyph
34
*/
35
struct
CLTextureSpec
36
{
37
double
mTextureWidth
;
38
double
mTextureHeight
;
39
double
mTextWidth
;
40
double
mTextHeight
;
41
unsigned
int
mNumComponents
;
42
GLuint
mTextureName
;
43
};
44
45
/**
46
* structure to store the texture for a TextGlyph
47
*/
48
struct
CLTextTextureSpec
:
CLTextureSpec
49
{
50
double
mScale
;
51
double
mMaxScale
;
52
double
mAscent
;
53
};
54
55
struct
CLFontSpec
56
{
57
std::string
mFamily
;
58
double
mSize
;
59
CLText::FONT_WEIGHT
mWeight
;
60
CLText::FONT_STYLE
mStyle
;
61
62
CLFontSpec
();
63
64
bool
operator<
(
const
CLFontSpec
& right)
const
;
65
};
66
67
struct
simple_point
68
{
69
GLdouble
mX
;
70
GLdouble
mY
;
71
GLdouble
mZ
;
72
// texture coordinate
73
GLdouble
mS
;
74
};
75
76
struct
CLLineStippleTexture
77
{
78
unsigned
int
mPatternLength
;
79
unsigned
int
mTextureLength
;
80
GLuint
mTextureName
;
81
82
CLLineStippleTexture
(
const
std::vector<unsigned int>& dasharray);
83
84
~CLLineStippleTexture
();
85
};
86
87
class
compareGraphicalObjectsBySize
88
{
89
public
:
90
bool
operator()
(
const
CLGraphicalObject
* pObject1,
const
CLGraphicalObject
* pObject2)
const
;
91
};
92
93
struct
CLGroupAttributes
94
{
95
public
:
96
std::string
mStroke
;
97
double
mStrokeWidth
;
98
std::vector<unsigned int>
mStrokeDasharray
;
99
// contains 12 double values
100
double
*
mpTransform
;
101
std::string
mFill
;
102
CLGraphicalPrimitive2D::FILL_RULE
mFillRule
;
103
std::string
mFontFamily
;
104
CLRelAbsVector
mFontSize
;
105
CLText::FONT_WEIGHT
mFontWeight
;
106
CLText::FONT_STYLE
mFontStyle
;
107
CLText::TEXT_ANCHOR
mTextAnchor
;
108
CLText::TEXT_ANCHOR
mVTextAnchor
;
109
std::string
mStartHead
;
110
std::string
mEndHead
;
111
double
mX
;
112
double
mY
;
113
double
mZ
;
114
double
mWidth
;
115
double
mHeight
;
116
117
/**
118
* Constructor that fills all values with default attributes.
119
*/
120
CLGroupAttributes
();
121
122
/**
123
* Destructor that deletes the memory used for the transformation
124
* array.
125
*/
126
~CLGroupAttributes
();
127
128
/**
129
* Copy constructor.
130
*/
131
CLGroupAttributes
(
const
CLGroupAttributes
& src);
132
133
/**
134
* Assignment operator.
135
*/
136
CLGroupAttributes
&
operator=
(
const
CLGroupAttributes
& src);
137
};
138
139
#endif // UTILITY_CLASSES_H__
CLTextTextureSpec::mAscent
double mAscent
Definition:
utility_classes.h:52
simple_point::mY
GLdouble mY
Definition:
utility_classes.h:70
CLTextTextureSpec
Definition:
utility_classes.h:48
CLGroupAttributes::mStrokeWidth
double mStrokeWidth
Definition:
utility_classes.h:97
CLFontSpec::mSize
double mSize
Definition:
utility_classes.h:58
simple_point::mZ
GLdouble mZ
Definition:
utility_classes.h:71
CLGroupAttributes::mTextAnchor
CLText::TEXT_ANCHOR mTextAnchor
Definition:
utility_classes.h:107
CLGroupAttributes::mFill
std::string mFill
Definition:
utility_classes.h:101
CLGroupAttributes::mEndHead
std::string mEndHead
Definition:
utility_classes.h:110
CLLineStippleTexture::mPatternLength
unsigned int mPatternLength
Definition:
utility_classes.h:78
CLGroupAttributes::mX
double mX
Definition:
utility_classes.h:111
CLGraphicalPrimitive2D.h
CLGroupAttributes::mZ
double mZ
Definition:
utility_classes.h:113
simple_point
Definition:
utility_classes.h:67
CLGroupAttributes::mFontStyle
CLText::FONT_STYLE mFontStyle
Definition:
utility_classes.h:106
compareGraphicalObjectsBySize::operator()
bool operator()(const CLGraphicalObject *pObject1, const CLGraphicalObject *pObject2) const
Definition:
utility_classes.cpp:109
CLLineStippleTexture::~CLLineStippleTexture
~CLLineStippleTexture()
Definition:
utility_classes.cpp:101
CLGroupAttributes::mFontFamily
std::string mFontFamily
Definition:
utility_classes.h:103
CLTextureSpec
Definition:
utility_classes.h:35
simple_point::mX
GLdouble mX
Definition:
utility_classes.h:69
CLGroupAttributes::CLGroupAttributes
CLGroupAttributes()
Definition:
utility_classes.cpp:128
CLText::FONT_STYLE
FONT_STYLE
Definition:
CLText.h:41
CLGroupAttributes::mFontSize
CLRelAbsVector mFontSize
Definition:
utility_classes.h:104
compareGraphicalObjectsBySize
Definition:
utility_classes.h:87
CLGraphicalPrimitive2D::FILL_RULE
FILL_RULE
Definition:
CLGraphicalPrimitive2D.h:27
CLTextureSpec::mTextureWidth
double mTextureWidth
Definition:
utility_classes.h:37
CLTextTextureSpec::mMaxScale
double mMaxScale
Definition:
utility_classes.h:51
CLGroupAttributes::mStrokeDasharray
std::vector< unsigned int > mStrokeDasharray
Definition:
utility_classes.h:98
CLText.h
CLGroupAttributes::mFillRule
CLGraphicalPrimitive2D::FILL_RULE mFillRule
Definition:
utility_classes.h:102
CLLineStippleTexture::mTextureName
GLuint mTextureName
Definition:
utility_classes.h:80
CLLineStippleTexture::CLLineStippleTexture
CLLineStippleTexture(const std::vector< unsigned int > &dasharray)
Definition:
utility_classes.cpp:17
CLTextureSpec::mTextWidth
double mTextWidth
Definition:
utility_classes.h:39
CLGroupAttributes::~CLGroupAttributes
~CLGroupAttributes()
Definition:
utility_classes.cpp:156
CLTextTextureSpec::mScale
double mScale
Definition:
utility_classes.h:50
CLText::TEXT_ANCHOR
TEXT_ANCHOR
Definition:
CLText.h:48
CLLineStippleTexture
Definition:
utility_classes.h:76
CLGroupAttributes::operator=
CLGroupAttributes & operator=(const CLGroupAttributes &src)
Definition:
utility_classes.cpp:195
CLLineStippleTexture::mTextureLength
unsigned int mTextureLength
Definition:
utility_classes.h:79
CLTextureSpec::mTextureHeight
double mTextureHeight
Definition:
utility_classes.h:38
CLGroupAttributes::mWidth
double mWidth
Definition:
utility_classes.h:114
CLGraphicalObject
Definition:
CLGraphicalObject.h:33
CLFontSpec::mWeight
CLText::FONT_WEIGHT mWeight
Definition:
utility_classes.h:59
CLGroupAttributes::mVTextAnchor
CLText::TEXT_ANCHOR mVTextAnchor
Definition:
utility_classes.h:108
CLGroupAttributes::mFontWeight
CLText::FONT_WEIGHT mFontWeight
Definition:
utility_classes.h:105
CLFontSpec::operator<
bool operator<(const CLFontSpec &right) const
Definition:
utility_classes.cpp:238
CLFontSpec::CLFontSpec
CLFontSpec()
Definition:
utility_classes.cpp:230
CLTextureSpec::mTextHeight
double mTextHeight
Definition:
utility_classes.h:40
CLGroupAttributes::mStartHead
std::string mStartHead
Definition:
utility_classes.h:109
CLGroupAttributes
Definition:
utility_classes.h:93
CLGroupAttributes::mpTransform
double * mpTransform
Definition:
utility_classes.h:100
CLRelAbsVector.h
CLTextureSpec::mNumComponents
unsigned int mNumComponents
Definition:
utility_classes.h:41
CLGroupAttributes::mY
double mY
Definition:
utility_classes.h:112
CLGroupAttributes::mHeight
double mHeight
Definition:
utility_classes.h:115
CLText::FONT_WEIGHT
FONT_WEIGHT
Definition:
CLText.h:34
CLFontSpec::mFamily
std::string mFamily
Definition:
utility_classes.h:57
CLFontSpec::mStyle
CLText::FONT_STYLE mStyle
Definition:
utility_classes.h:60
simple_point::mS
GLdouble mS
Definition:
utility_classes.h:73
CLTextureSpec::mTextureName
GLuint mTextureName
Definition:
utility_classes.h:42
CLFontSpec
Definition:
utility_classes.h:55
CLRelAbsVector
Definition:
CLRelAbsVector.h:22
CLGroupAttributes::mStroke
std::string mStroke
Definition:
utility_classes.h:96
Generated on Thu Jul 2 2015 14:51:11 for COPASI API by
1.8.6