source: GTP/trunk/Lib/Illum/IBRBillboardCloudTrees/OGRE/src/BBCBillboardClusterData.cpp @ 751

Revision 751, 3.7 KB checked in by igarcia, 18 years ago (diff)
Line 
1
2#include "BBCBillboardClusterData.h"
3
4namespace BBC {
5
6BillboardClusterData::BillboardClusterData(): references(0) // initialize references to 0
7{
8
9}
10
11BillboardClusterData::~BillboardClusterData()
12{
13        mGroupedBillboardUVMapMaxList.clear();
14        mGroupedBillboardUVMapMinList.clear();
15}
16
17void BillboardClusterData::setNormal(Ogre::Vector3 value)
18{
19        mNormal = value;
20}
21
22Ogre::Vector3 BillboardClusterData::getNormal()
23{
24        return mNormal;
25}
26
27void BillboardClusterData::setD(float value)
28{
29        mD = value;
30}
31
32float BillboardClusterData::getD()
33{
34        return mD;
35}
36
37void BillboardClusterData::writeBillboardClusterData(TiXmlNode *parentNode, int iBillboardGroup)
38{
39        Ogre::LogManager::getSingleton().logMessage("writeBillboardClusterData method not implemented.");
40}
41
42void BillboardClusterData::readBillboardClusterData(TiXmlNode *parentNode, int iBillboardGroup)
43{
44        Ogre::LogManager::getSingleton().logMessage("readBillboardClusterData method not implemented.");
45}
46
47void BillboardClusterData::generateBillboardBoundingQuad()
48{
49        Ogre::LogManager::getSingleton().logMessage("generateBillboardBoundingQuad method not implemented.");
50}
51
52void BillboardClusterData::setEntityCluster(EntityClusterPtr value)
53{
54  mEntityCluster = value;
55}
56
57EntityClusterPtr BillboardClusterData::getEntityCluster()
58{
59  return mEntityCluster;
60}
61
62Ogre::Vector3 BillboardClusterData::getQuadTopLeftCorner()
63{
64        return mBillboardCorners[QUAD_TOP_LEFT];
65}
66
67Ogre::Vector3 BillboardClusterData::getQuadTopRightCorner()
68{
69        return mBillboardCorners[QUAD_TOP_RIGHT];
70}
71
72Ogre::Vector3 BillboardClusterData::getQuadBottomLeftCorner()
73{
74        return mBillboardCorners[QUAD_BOTTOM_LEFT];
75}
76
77Ogre::Vector3 BillboardClusterData::getQuadBottomRightCorner()
78{
79        return mBillboardCorners[QUAD_BOTTOM_RIGHT];
80}
81
82void BillboardClusterData::setQuadTopLeftCorner(Ogre::Vector3 topLeft)
83{
84        mBillboardCorners[QUAD_TOP_LEFT] = topLeft;
85}
86
87void BillboardClusterData::setQuadTopRightCorner(Ogre::Vector3 topRight)
88{
89        mBillboardCorners[QUAD_TOP_RIGHT] = topRight;
90}
91
92void BillboardClusterData::setQuadBottomLeftCorner(Ogre::Vector3 bottomLeft)
93{
94        mBillboardCorners[QUAD_BOTTOM_LEFT] = bottomLeft;
95}
96
97void BillboardClusterData::setQuadBottomRightCorner(Ogre::Vector3 bottomRight)
98{
99        mBillboardCorners[QUAD_BOTTOM_RIGHT] = bottomRight;
100}
101
102Ogre::Vector3 BillboardClusterData::getAxisX()
103{
104        return mAxisX;
105}
106
107Ogre::Vector3 BillboardClusterData::getAxisY()
108{
109        return mAxisY;
110}
111
112Ogre::Vector3 BillboardClusterData::getAxisZ()
113{
114        return mAxisZ;
115}
116
117void BillboardClusterData::setAxisX(Ogre::Vector3 axisX)
118{
119        mAxisX = axisX;
120}
121
122void BillboardClusterData::setAxisY(Ogre::Vector3 axisY)
123{
124        mAxisY = axisY;
125}
126
127void BillboardClusterData::setAxisZ(Ogre::Vector3  axisZ)
128{
129        mAxisZ = axisZ;
130}
131
132Ogre::Vector2 BillboardClusterData::getBillboardUVMapMin(unsigned int iBillboardGroup)
133{
134        return mGroupedBillboardUVMapMinList[iBillboardGroup];
135}
136
137void BillboardClusterData::addBillboardUVMapMin(Ogre::Vector2 minVec)
138{
139        mGroupedBillboardUVMapMinList.push_back(minVec);
140}
141
142void BillboardClusterData::removeBillboardUVMapMin(unsigned int iBillboardGroup)
143{
144        mGroupedBillboardUVMapMinList.erase(mGroupedBillboardUVMapMinList.begin() + iBillboardGroup);
145}
146
147Ogre::Vector2 BillboardClusterData::getBillboardUVMapMax(unsigned int iBillboardGroup)
148{
149        return mGroupedBillboardUVMapMaxList[iBillboardGroup];
150}
151
152void BillboardClusterData::addBillboardUVMapMax(Ogre::Vector2 maxVec)
153{
154        mGroupedBillboardUVMapMaxList.push_back(maxVec);
155}
156
157void BillboardClusterData::removeBillboardUVMapMax(unsigned int iBillboardGroup)
158{
159        mGroupedBillboardUVMapMaxList.erase(mGroupedBillboardUVMapMaxList.begin() + iBillboardGroup);
160}
161
162unsigned int BillboardClusterData::getNumUVMapGroups()
163{
164        if (mGroupedBillboardUVMapMaxList.size() == mGroupedBillboardUVMapMinList.size())
165        {
166                return mGroupedBillboardUVMapMaxList.size();
167        }
168        else
169        {
170                return 0;
171        }
172}
173
174}
Note: See TracBrowser for help on using the repository browser.