misc.docu 3.65 KB
Newer Older
Jan Möbius's avatar
Jan Möbius committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
//-----------------------------------------------------------------------------


/** \page naming_conventions Naming Conventions

The following naming conventions are used for the OpenMesh code:

<b>Files:</b>
  \li \c MyClass.cc for C++-Implementation of class \c MyClass
  \li \c MyClass.hh for C++-Header of class \c MyClass

<b>Classes:</b>
  \li Class names start with a capital letter: \c MyClass
  \li Class templates end with \c T: \c MyClassTemplateT

<b>Variables:</b>
  \li One leading underscore for parameters in function-calls: \c _var
  \li One trailing underscore for member-variables: \c var_
  \li Two trailing underscores for static member-variables: \c var__

<b>Functions:</b>
  \li Words are separated by underscores: \c my_function()
		 
<b>Accessing members:</b>
  \li To get the member \c xxx_ use <tt> const& xxx() const </tt>
  \li To set the member \c xxx_ use <tt> void set_xxx(arg)  </tt>
  
**/


//-----------------------------------------------------------------------------


/** \page compiling Compiling OpenMesh

\section compilers Tested compilers

%OpenMesh has been tested sucessfully for the following operating
systems / compilers:

<table>

<tr><td> Linux </td><td>
gcc 4.0.x<br>
gcc 4.1.x<br>
gcc 4.2.x<br>
gcc 4.3.x<br>
</td></tr>

<tr><td> Windows </td><td> 
Microsoft Visual Studio 2008<br>
</td></tr>

<tr><td> MacOS X <br>(Panther and Tiger)</td><td> 
gcc 3.3 <br>
gcc 4.0 <br>
</td></tr>

</table>


\section sec_compiling_unix Unix

64 65 66 67 68 69
Install the following external libraries / frameworks:<br><br>
<table>
<tr><td>OpenGL</td><td><a href="http://www.opengl.org" target="_blank">http://www.opengl.org</a></td></tr>
<tr><td>Qt4</td><td><a href="http://www.qtsoftware.com/downloads" target="_blank">http://www.qtsoftware.com/downloads</a></td></tr>
<tr><td>GLEW</td><td><a href="http://glew.sourceforge.net/" target="_blank">http://glew.sourceforge.net/</a></td></tr>
</table><br><br>
Jan Möbius's avatar
Jan Möbius committed
70 71 72 73
In order to compile and install OpenMesh, enter following commands in OpenMesh's root directory:<br><br>
<tt>
qmake&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;## Generates the appropriate Makefiles<br>
make&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;## Builds the project (use 'make debug' to build debug version)<br>
74
</tt><br>
Jan Möbius's avatar
Jan Möbius committed
75 76 77 78 79 80 81 82 83 84 85
When using the \c qmake command, make sure to use Qt version 4 (some linux distributions<br>
use the link \c qmake-qt4 against the executable).

\section sec_compiling_windows Windows

For Microsoft Visual Studio 2008, you can use
the predefined solution file <tt>Core/OpenMesh_Core.vcproj</tt> and <tt>Tools/OpenMesh_Tools.vcproj</tt> 

\section sec_compiling_macosx MacOSX

Download and install the Qt4 framework from <a href="http://www.qtsoftware.com/downloads" target="_blank">Trolltech</a>.<br>
Mike Kremer's avatar
Mike Kremer committed
86
Because some of the examples depend on the GLEW library, it's recommended to install glew via the darwin portage
87 88 89 90 91 92 93 94
system <a href="http://www.finkproject.org" target="_blank">fink</a>.<br>
If you have not installed fink yet, follow the instructions given on their site in order to install it.<br>
Type
<tt>
sudo fink install glew
</tt>
to install glew headers and libraries. ( Fink usually installs header files to \c /sw/include and libraries to \c /sw/lib. )
<br>
Jan Möbius's avatar
Jan Möbius committed
95 96 97 98 99 100 101 102 103 104 105
In order to compile and install OpenMesh, open a Terminal window and enter following commands in OpenMesh's root directory:<br><br>
<tt>
qmake -macx&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;## Generates the appropriate Makefiles<br>
make release&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;## Builds the project (use 'make debug' to build debug version)<br>
</tt>


**/


//-----------------------------------------------------------------------------