Duckcpp 2.1.0
Duckcpp is a high-performance c++ graphics engine.
Loading...
Searching...
No Matches
IBillboardSceneNode.hpp
1// Copyright (C) 2002-2012 Nikolaus Gebhardt
2// This file is part of the "Irrlicht Engine".
3// For conditions of distribution and use, see copyright notice in duckcpp/duckcpp.hpp
4
5#ifndef DCPP_I_BILLBOARD_SCENE_NODE_HPP_INCLUDED
6#define DCPP_I_BILLBOARD_SCENE_NODE_HPP_INCLUDED
7
8#include <duckcpp/core/engine/ISceneNode.hpp>
9
10namespace dcpp
11{
12namespace scene
13{
14 class ICameraSceneNode;
15 class IMeshBuffer;
16
18
23{
24public:
25
28 const dcpp::nub::vector3df& position = dcpp::nub::vector3df(0,0,0))
29 : ISceneNode(parent, mgr, id, position) {}
30
32 virtual void setSize(const dcpp::nub::dimension2df& size) = 0;
33
35
39 virtual void setSize(dcpp::float32_kt height, dcpp::float32_kt bottomEdgeWidth, dcpp::float32_kt topEdgeWidth) = 0;
40
42
46 virtual const dcpp::nub::dimension2df& getSize() const = 0;
47
49
53 virtual void getSize(dcpp::float32_kt& height, dcpp::float32_kt& bottomEdgeWidth, dcpp::float32_kt& topEdgeWidth) const =0;
54
56
57 virtual void setColor(const dcpp::video::SColor& overallColor) = 0;
58
60
62 virtual void setColor(const dcpp::video::SColor& topColor,
63 const dcpp::video::SColor& bottomColor) = 0;
64
66
68 virtual void getColor(dcpp::video::SColor& topColor,
69 dcpp::video::SColor& bottomColor) const = 0;
70
72
78
80
82
84
89};
90
91} // end namespace scene
92} // end namespace dcpp
93
94#endif
Axis aligned bounding box in 3d dimensional space.
Definition aabbox3d.hpp:22
Specifies a 2 dimensional size.
Definition dimension2d.hpp:21
3d vector template class with lots of operators and methods.
Definition vector3d.hpp:32
A billboard scene node.
Definition IBillboardSceneNode.hpp:23
virtual dcpp::uint32_kt getMeshBufferCount() const =0
Get the amount of mesh buffers.
virtual void setColor(const dcpp::video::SColor &topColor, const dcpp::video::SColor &bottomColor)=0
Set the color of the top and bottom vertices of the billboard.
virtual void setColor(const dcpp::video::SColor &overallColor)=0
Set the color of all vertices of the billboard.
virtual void setSize(const dcpp::nub::dimension2df &size)=0
Sets the size of the billboard, making it rectangular.
virtual void setSize(dcpp::float32_kt height, dcpp::float32_kt bottomEdgeWidth, dcpp::float32_kt topEdgeWidth)=0
Sets the size of the billboard with independent widths of the bottom and top edges.
virtual const dcpp::nub::dimension2df & getSize() const =0
Returns the size of the billboard.
virtual void getSize(dcpp::float32_kt &height, dcpp::float32_kt &bottomEdgeWidth, dcpp::float32_kt &topEdgeWidth) const =0
Gets the size of the the billboard and handles independent top and bottom edge widths correctly.
virtual const dcpp::nub::aabbox3df & getTransformedBillboardBoundingBox(const dcpp::scene::ICameraSceneNode *camera)=0
Get the real boundingbox used by the billboard, which can depend on the active camera.
IBillboardSceneNode(ISceneNode *parent, ISceneManager *mgr, dcpp::int32_kt id, const dcpp::nub::vector3df &position=dcpp::nub::vector3df(0, 0, 0))
Constructor.
Definition IBillboardSceneNode.hpp:27
virtual void getColor(dcpp::video::SColor &topColor, dcpp::video::SColor &bottomColor) const =0
Gets the color of the top and bottom vertices of the billboard.
virtual IMeshBuffer * getMeshBuffer(dcpp::uint32_kt nr) const =0
Get pointer to a mesh buffer.
Scene Node which is a (controllable) camera.
Definition ICameraSceneNode.hpp:24
Class for holding a mesh with a single material.
Definition IMeshBuffer.hpp:41
The Scene Manager manages scene nodes, mesh resources, cameras and all the other stuff.
Definition ISceneManager.hpp:160
Scene node interface.
Definition ISceneNode.hpp:43
Class representing a 32 bit ARGB color.
Definition SColor.hpp:317
As of Duckcpp 1.6, position2d is a synonym for vector2d.
Definition shared_device.hpp:34
unsigned int uint32_kt
32 bit unsigned variable.
Definition irrTypes.hpp:64
float float32_kt
32 bit floating point variable.
Definition irrTypes.hpp:108
signed int int32_kt
32 bit signed variable.
Definition irrTypes.hpp:72

Duckcpp    @cppfx.xyz