Robotics Library
0.7.0
rl
sg
Shape.h
Go to the documentation of this file.
1
//
2
// Copyright (c) 2009, Markus Rickert
3
// All rights reserved.
4
//
5
// Redistribution and use in source and binary forms, with or without
6
// modification, are permitted provided that the following conditions are met:
7
//
8
// * Redistributions of source code must retain the above copyright notice,
9
// this list of conditions and the following disclaimer.
10
// * Redistributions in binary form must reproduce the above copyright notice,
11
// this list of conditions and the following disclaimer in the documentation
12
// and/or other materials provided with the distribution.
13
//
14
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
15
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
18
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
19
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
20
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
22
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
23
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
24
// POSSIBILITY OF SUCH DAMAGE.
25
//
26
27
#ifndef RL_SG_SHAPE_H
28
#define RL_SG_SHAPE_H
29
30
#include <string>
31
#include <Inventor/VRMLnodes/SoVRMLShape.h>
32
#include <
rl/math/Transform.h
>
33
34
namespace
rl
35
{
36
namespace
sg
37
{
38
class
Body;
39
40
class
Shape
41
{
42
public
:
43
Shape
(::SoVRMLShape* shape,
Body
*
body
);
44
45
virtual
~Shape
();
46
47
Body
*
getBody
()
const
;
48
49
virtual ::std::string
getName
()
const
;
50
51
virtual
void
getTransform
(::
rl::math::Transform
& transform) = 0;
52
53
virtual
void
setName
(const ::std::string&
name
);
54
55
virtual
void
setTransform
(
const ::rl::math::Transform
& transform) = 0;
56
57
protected
:
58
Body
*
body
;
59
60
private
:
61
::std::string
name
;
62
};
63
}
64
}
65
66
#endif // RL_SG_SHAPE_H
rl::sg::Shape::setTransform
virtual void setTransform(const ::rl::math::Transform &transform)=0
rl::math::Transform
::Eigen::Transform< Real, 3, ::Eigen::Affine > Transform
Rigid transformation in 3D.
Definition:
Transform.h:46
rl::sg::Shape::getBody
Body * getBody() const
Definition:
Shape.cpp:45
rl::sg::Shape::getTransform
virtual void getTransform(::rl::math::Transform &transform)=0
rl::sg::Body
Definition:
Body.h:45
rl::sg::Shape::Shape
Shape(::SoVRMLShape *shape, Body *body)
Definition:
Shape.cpp:34
rl::sg::Shape::body
Body * body
Definition:
Shape.h:58
rl::sg::Shape::name
::std::string name
Definition:
Shape.h:61
rl::sg::Shape::~Shape
virtual ~Shape()
Definition:
Shape.cpp:40
rl::sg::Shape::setName
virtual void setName(const ::std::string &name)
Definition:
Shape.cpp:57
Transform.h
rl::sg::Shape
Definition:
Shape.h:41
rl::sg::Shape::getName
virtual ::std::string getName() const
Definition:
Shape.cpp:51
rl
Robotics Library.
Definition:
AnalogInput.cpp:30
Generated by
1.8.20