My Project
Main Page
Related Pages
Classes
Files
File List
File Members
All
Classes
Files
Functions
Variables
Enumerations
Pages
triangle_mesh_cloud.h
Go to the documentation of this file.
1
/**************************************************************************/
2
/* Copyright 2009 Tim Day */
3
/* */
4
/* This file is part of Fracplanet */
5
/* */
6
/* Fracplanet is free software: you can redistribute it and/or modify */
7
/* it under the terms of the GNU General Public License as published by */
8
/* the Free Software Foundation, either version 3 of the License, or */
9
/* (at your option) any later version. */
10
/* */
11
/* Fracplanet is distributed in the hope that it will be useful, */
12
/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
13
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
14
/* GNU General Public License for more details. */
15
/* */
16
/* You should have received a copy of the GNU General Public License */
17
/* along with Fracplanet. If not, see <http://www.gnu.org/licenses/>. */
18
/**************************************************************************/
19
24
#ifndef _triangle_mesh_cloud_h_
25
#define _triangle_mesh_cloud_h_
26
27
#include "
image.h
"
28
#include "
parameters_cloud.h
"
29
#include "
triangle_mesh.h
"
30
32
36
class
TriangleMeshCloud
:
virtual
public
TriangleMesh
37
{
38
public
:
39
41
TriangleMeshCloud
(
Progress
* progress);
42
44
~TriangleMeshCloud
();
45
47
void
write_povray
(std::ofstream& out,
const
ParametersSave
&,
const
ParametersCloud
&)
const
;
48
50
void
write_blender
(std::ofstream& out,
const
ParametersSave
&,
const
ParametersCloud
&,
const
std::string& mesh_name)
const
;
51
53
55
void
render_texture
(
Raster<uchar>
&)
const
;
56
57
protected
:
58
59
void
do_cloud
(
const
ParametersCloud
& parameters);
60
};
61
63
class
TriangleMeshCloudPlanet
:
public
TriangleMeshSubdividedIcosahedron
,
virtual
public
TriangleMeshCloud
64
{
65
public
:
67
TriangleMeshCloudPlanet
(
const
ParametersCloud
& param,
Progress
* progress);
68
70
~TriangleMeshCloudPlanet
()
71
{}
72
};
73
75
class
TriangleMeshCloudFlat
:
public
TriangleMeshFlat
,
virtual
public
TriangleMeshCloud
76
{
77
public
:
79
TriangleMeshCloudFlat
(
const
ParametersCloud
& parameters,
Progress
* progress);
80
82
~TriangleMeshCloudFlat
()
83
{}
84
};
85
86
#endif
Generated on Sat Oct 5 2013 13:36:44 for My Project by
1.8.3.1