1 // Copyright (C) 2009-2012 Christian Stehno
\r
2 // This file is part of the "Irrlicht Engine".
\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
\r
5 #ifndef __S_VERTEX_MANIPULATOR_H_INCLUDED__
\r
6 #define __S_VERTEX_MANIPULATOR_H_INCLUDED__
\r
9 #include "S3DVertex.h"
\r
21 //! Interface for vertex manipulators.
\r
22 /** You should derive your manipulator from this class if it shall be called for every vertex, getting as parameter just the vertex.
\r
24 struct IVertexManipulator
\r
28 //! Vertex manipulator which scales the position of the vertex
\r
29 class SVertexPositionScaleManipulator : public IVertexManipulator
\r
32 SVertexPositionScaleManipulator(const core::vector3df& factor) : Factor(factor) {}
\r
33 template <typename VType>
\r
34 void operator()(VType& vertex) const
\r
36 vertex.Pos *= Factor;
\r
39 core::vector3df Factor;
\r
42 } // end namespace scene
\r
43 } // end namespace irr
\r