openmbvcppinterface 3.1.0 OpenMBV C++ Interface

grid.h
1 /*
2 OpenMBV - Open Multi Body Viewer.
3 Copyright (C) 2009 Markus Friedrich
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with this library; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 */
19
20 #ifndef _OPENMBV_GRID_H_
21 #define _OPENMBV_GRID_H_
22
23 #include <openmbvcppinterface/rigidbody.h>
24
25 namespace OpenMBV {
26
28 class Grid : public RigidBody {
29 friend class ObjectFactory;
30 protected:
31 double xSize{1};
32 double ySize{1};
33 unsigned int nx{10};
34 unsigned int ny{10};
35 Grid();
36 ~Grid() override = default;
37 public:
39 void setXSize(double length_) {
40 xSize=length_;
41 }
42
43 double getXSize() { return xSize; }
44
46 void setYSize(double length_) {
47 ySize=length_;
48 }
49
50 double getYSize() { return ySize; }
51
53 void setXNumber(unsigned int n_) {
54 nx=n_;
55 }
56
57 unsigned int getXNumber() { return nx; }
58
60 void setYNumber(unsigned int n_) {
61 ny=n_;
62 }
63 unsigned int getYNumber() { return ny; }
64
65
67 void initializeUsingXML(xercesc::DOMElement *element) override;
68
69 xercesc::DOMElement* writeXMLFile(xercesc::DOMNode *parent) override;
70 };
71
72 }
73
74 #endif
OpenMBV::Grid::setYSize
void setYSize(double length_)
Definition: grid.h:46
OpenMBV::RigidBody
Abstract base class for all rigid bodies.
Definition: rigidbody.h:68
OpenMBV::ObjectFactory
Definition: objectfactory.h:38
OpenMBV::Grid::initializeUsingXML
void initializeUsingXML(xercesc::DOMElement *element) override
Definition: grid.cc:45
OpenMBV::Grid::setYNumber
void setYNumber(unsigned int n_)
Definition: grid.h:60
OpenMBV::Grid::setXSize
void setXSize(double length_)
Definition: grid.h:39
OpenMBV::Grid::setXNumber
void setXNumber(unsigned int n_)
Definition: grid.h:53
OpenMBV::Grid
Definition: grid.h:28