Gazebo Gui
API Reference
8.3.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 <memory>
22
23
#include <
gz/gui/Plugin.hh
>
24
#include <gz/math/Vector3.hh>
25
#include <gz/math/Color.hh>
26
27
namespace
gz::gui
28
{
29
class
TapeMeasurePrivate;
30
32
class
TapeMeasure
:
public
gz::gui::Plugin
33
{
34
Q_OBJECT
35
37
public
:
TapeMeasure
();
38
40
public
:
~TapeMeasure
()
override
;
41
42
// Documentation inherited
43
public
:
void
LoadConfig
(
const
tinyxml2::XMLElement *_pluginElem)
override
;
44
48
public
:
void
DeleteMarker
(
int
_id);
49
53
public
:
void
Reset
();
54
57
public
:
void
Measure
();
58
64
public
:
void
DrawPoint
(
int
_id,
65
gz::math::Vector3d
&_point,
66
gz::math::Color
&_color);
67
74
public
:
void
DrawLine
(
int
_id,
75
gz::math::Vector3d
&_startPoint,
76
gz::math::Vector3d
&_endPoint,
77
gz::math::Color
&_color);
78
81
public
slots:
void
OnMeasure
();
82
84
public
slots:
void
OnReset
();
85
89
public
slots:
double
Distance
();
90
91
// Documentation inherited
92
protected
:
bool
eventFilter
(
QObject
*_obj,
QEvent
*_event)
override
;
93
95
signals:
void
newDistance
();
96
99
private
:
std::unique_ptr<TapeMeasurePrivate>
dataPtr;
100
};
101
}
// namespace gz::gui
102
103
#endif
// GZ_GUI_TAPEMEASURE_HH_