Frapper
1.0a
Main Page
Namespaces
Classes
Files
File List
File Members
plugins
nodes
Utility
Transform
TransformNode.h
Go to the documentation of this file.
1
/*
2
-----------------------------------------------------------------------------
3
This source file is part of FRAPPER
4
research.animationsinstitut.de
5
sourceforge.net/projects/frapper
6
7
Copyright (c) 2008-2009 Filmakademie Baden-Wuerttemberg, Institute of Animation
8
9
This program is free software; you can redistribute it and/or modify it under
10
the terms of the GNU Lesser General Public License as published by the Free Software
11
Foundation; version 2.1 of the License.
12
13
This program is distributed in the hope that it will be useful, but WITHOUT
14
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
16
17
You should have received a copy of the GNU Lesser General Public License along with
18
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
19
Place - Suite 330, Boston, MA 02111-1307, USA, or go to
20
http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
21
-----------------------------------------------------------------------------
22
*/
23
32
33
#ifndef TRANSFORMNODE_H
34
#define TRANSFORMNODE_H
35
36
#include "
ViewNode.h
"
37
#include "
OgreContainer.h
"
38
#include "
InstanceCounterMacros.h
"
39
40
// OGRE
41
#include <Ogre.h>
42
#if (OGRE_PLATFORM == OGRE_PLATFORM_WIN32)
43
#include <windows.h>
44
#endif
45
46
namespace
TransformNode {
47
using namespace
Frapper;
48
52
class
TransformNode
:
public
ViewNode
53
{
54
55
Q_OBJECT
56
ADD_INSTANCE_COUNTER
57
58
protected
:
// static constants
59
63
static
const
QString
InputGeometryParameterName
;
64
68
static
const
QString
InputLightsParameterName
;
69
73
static
const
QString
InputCamerasParameterName
;
74
78
static
const
QString
OutputGeometryParameterName
;
79
83
static
const
QString
OutputLightsParameterName
;
84
88
static
const
QString
OutputCamerasParameterName
;
89
90
public
:
// constructors and destructors
91
98
TransformNode
(
const
QString &name,
ParameterGroup
*parameterRoot );
99
107
virtual
~
TransformNode
();
108
109
public
:
// functions
110
117
virtual
Ogre::SceneNode
* getSceneNode ();
118
124
virtual
double
getBoundingSphereRadius ();
125
131
virtual
void
evaluateConnection (
Connection
*connection );
132
133
public
slots:
//
134
138
void
processOutputGeometry ();
139
143
void
processOutputLights ();
144
148
void
processOutputCameras ();
149
152
//void applyTransform ();
153
157
void
applyTranslation ();
158
162
void
applyRotation ();
163
167
void
applyScale ();
168
172
void
resetTransformation ();
173
174
private
:
// variables
175
179
Ogre::SceneManager *
m_sceneManager
;
180
184
Ogre::SceneNode
*
m_geometrySceneNode
;
185
189
OgreContainer
*
m_geometryContainer
;
190
194
Ogre::SceneNode
*
m_lightsSceneNode
;
195
199
OgreContainer
*
m_lightsContainer
;
200
204
Ogre::SceneNode
*
m_cameraSceneNode
;
205
209
OgreContainer
*
m_cameraContainer
;
210
211
};
212
213
}
// namespace TransformNode
214
215
#endif
Generated on Tue Sep 18 2012 11:43:03 for Frapper by
1.8.2