Line 1... |
Line 1... |
1 |
\documentclass[a4paper,landscape,twocolumn]{article}
|
1 |
\documentclass[a4paper]{article}
|
2 |
\usepackage{listings}
|
2 |
\usepackage{listings}
|
3 |
\usepackage[isolatin]{inputenc}
|
3 |
\usepackage[isolatin]{inputenc}
|
4 |
\usepackage{makeidx,times}
|
4 |
\usepackage{makeidx,times}
|
5 |
\usepackage{fancyhdr}
|
5 |
\usepackage{fancyhdr}
|
6 |
\usepackage{graphicx}
|
6 |
\usepackage{graphicx}
|
Line 12... |
Line 12... |
12 |
colorlinks=true,
|
12 |
colorlinks=true,
|
13 |
linkcolor=blue
|
13 |
linkcolor=blue
|
14 |
]{hyperref}
|
14 |
]{hyperref}
|
15 |
\makeindex
|
15 |
\makeindex
|
16 |
\lstset{tabsize=1,language=C++,basicstyle=\small}
|
16 |
\lstset{tabsize=1,language=C++,basicstyle=\small}
|
17 |
\author{J. Andreas Bærentzen}
|
17 |
\author{J. Andreas B{\ae}rentzen}
|
18 |
\title{CGLA usage}
|
18 |
\title{CGLA usage}
|
19 |
\setcounter{tocdepth}{2}
|
19 |
\setcounter{tocdepth}{2}
|
20 |
\begin{document}
|
20 |
\begin{document}
|
21 |
\maketitle
|
21 |
\maketitle
|
22 |
\tableofcontents
|
- |
|
23 |
\section{Introduction}
|
22 |
\section{Introduction}
|
24 |
|
23 |
|
25 |
CGLA is a set of numerical C++ vector and matrix classes and class
|
24 |
CGLA is a set of numerical C++ vector and matrix classes and class
|
26 |
templates designed with computer graphics in mind. CGLA stands for
|
25 |
templates designed with computer graphics in mind. CGLA stands for
|
27 |
``Computer Graphics Linear Algebra''.
|
26 |
``Computer Graphics Linear Algebra''. It is a part of the larger
|
- |
|
27 |
package called GEL but deserves its own document since it is an important part.
|
28 |
|
28 |
|
29 |
Let us get right down to the obvious question: Why create another
|
29 |
Let us get right down to the obvious question: Why create another
|
30 |
linear algebra package?
|
30 |
linear algebra package?
|
31 |
Well, CGLA evolved from a few matrix and vector classes because I
|
31 |
Well, CGLA evolved from a few matrix and vector classes because I
|
32 |
didn't have anything better. Also, I created CGLA to experiment with
|
32 |
didn't have anything better. Also, I created CGLA to experiment with
|
Line 106... |
Line 106... |
106 |
commonly used operations are shown.
|
106 |
commonly used operations are shown.
|
107 |
|
107 |
|
108 |
\subsection{How to get CGLA}
|
108 |
\subsection{How to get CGLA}
|
109 |
|
109 |
|
110 |
If you have this document but not the code, look at\\
|
110 |
If you have this document but not the code, look at\\
|
111 |
\href{http://www.imm.dtu.dk/~jab/software.html#cgla}
|
111 |
\href{http://www2.imm.dtu.dk/projects/GEL/}{http://www2.imm.dtu.dk/projects/GEL/}
|
112 |
{http://www.imm.dtu.dk/~jab/software.html\#cgla}
|
- |
|
113 |
|
112 |
|
114 |
\subsection{How to use this document}
|
113 |
\subsection{Bugs etc.}
|
115 |
|
114 |
|
116 |
This document is mostly autogenerated from Doxygen tags in the source
|
- |
|
117 |
code. While this is the only way of creating documentation that
|
- |
|
118 |
stands a reasonable chance of being updated every time the code is,
|
- |
|
119 |
the method does have some drawbacks.
|
- |
|
120 |
|
- |
|
121 |
If you want to know whether a given class contains a given function,
|
- |
|
122 |
first look at the class. If you don't find the function, look at its
|
- |
|
123 |
ancestors. For instance, the class Vec3f certainly has a += operator
|
- |
|
124 |
function but it is defined in the template class ArithVec.
|
- |
|
125 |
|
- |
|
126 |
Another problem is that since templates are used extensively in CGLA,
|
- |
|
127 |
template syntax clutters this document. Unfortunately, that cannot be
|
- |
|
128 |
helped.
|
- |
|
129 |
|
- |
|
130 |
\subsection{Help, bugs, contributions}
|
- |
|
131 |
|
- |
|
132 |
CGLA was written (mostly) by Andreas Bærentzen (jab{@}imm.dtu.dk), and
|
115 |
CGLA was written (mostly) by Andreas B{\ae}entzen (jab{@}imm.dtu.dk), and
|
133 |
any bug fixes, contributions, or questions should be addressed to me.
|
116 |
any bug fixes, contributions, or questions should be addressed to me.
|
134 |
|
117 |
|
135 |
\section{CGLA: Examples of Usage}
|
118 |
\section{CGLA: Examples of Usage}
|
136 |
|
119 |
|
137 |
While this is mostly a reference manual some examples are probably
|
- |
|
138 |
helpful. The examples below are by no means complete. Many things are
|
120 |
The examples below are by no means complete. Many things are
|
139 |
possible but not covered below. However, most of the common usage is
|
121 |
possible but not covered below. However, most of the common usage is
|
140 |
shown, so this should be enough to get you started. Note that in the
|
122 |
shown, so this should be enough to get you started. Note that in the
|
141 |
following we assume that you are \texttt{using namespace CGLA} and
|
123 |
following we assume that you are \texttt{using namespace CGLA} and
|
142 |
hence don't prefix with \texttt{CGLA::}.
|
124 |
hence don't prefix with \texttt{CGLA::}.
|
143 |
|
125 |
|