Gazebo Gui
API Reference
9.0.0
insert_drive_file
Tutorials
library_books
Classes
toc
Namespaces
insert_drive_file
Files
launch
Gazebo Website
Index
List
Hierarchy
Members: All
Members: Functions
Members: Variables
Members: Typedefs
Members: Enumerations
Members: Enumerator
List
Members
Functions
Typedefs
Variables
Enumerations
Enumerator
src
gz-gui
src
plugins
tape_measure
TapeMeasure.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2020 Open Source Robotics Foundation
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
18
#ifndef GZ_GUI_TAPEMEASURE_HH_
19
#define GZ_GUI_TAPEMEASURE_HH_
20
21
#include <gz/utils/ImplPtr.hh>
22
#include <memory>
23
24
#include <
gz/gui/Plugin.hh
>
25
#include <
gz/math/Vector3.hh
>
26
#include <
gz/math/Color.hh
>
27
28
namespace
gz::gui::plugins
29
{
31
class
TapeMeasure
:
public
gz::gui::Plugin
32
{
33
Q_OBJECT
34
36
public
:
TapeMeasure
();
37
39
public
:
~TapeMeasure
()
override
;
40
41
// Documentation inherited
42
public
:
void
LoadConfig
(
const
tinyxml2::XMLElement *_pluginElem)
override
;
43
47
public
:
void
DeleteMarker
(
int
_id);
48
52
public
:
void
Reset
();
53
56
public
:
void
Measure
();
57
63
public
:
void
DrawPoint
(
int
_id,
64
gz::math::Vector3d
&_point,
65
gz::math::Color
&_color);
66
73
public
:
void
DrawLine
(
int
_id,
74
gz::math::Vector3d
&_startPoint,
75
gz::math::Vector3d
&_endPoint,
76
gz::math::Color
&_color);
77
80
public
slots:
void
OnMeasure
();
81
83
public
slots:
void
OnReset
();
84
88
public
slots:
double
Distance
();
89
90
// Documentation inherited
91
protected
:
bool
eventFilter
(
QObject
*_obj,
QEvent
*_event)
override
;
92
94
signals:
void
newDistance
();
95
98
private
: GZ_UTILS_UNIQUE_IMPL_PTR(dataPtr)
99
};
100
}
// namespace gz::gui::plugins
101
#endif
// GZ_GUI_PLUGINS_TAPEMEASURE_HH_