opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
liboscar
ui
widgets
gui_ruler.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
liboscar/graphics/scene/scene_collision.h
>
4
#include <
liboscar/maths/vector.h
>
5
6
#include <optional>
7
8
namespace
osc
{
class
Camera; }
9
namespace
osc
{
class
Rect; }
10
11
namespace
osc
12
{
13
class
GuiRuler
final {
14
public
:
15
void
on_draw
(
16
const
Camera
&,
17
const
Rect
& render_rect,
18
std::optional<SceneCollision>
19
);
20
void
start_measuring
();
21
void
stop_measuring
();
22
void
toggle_measuring
();
23
bool
is_measuring
()
const
;
24
25
private
:
26
enum class
State { Inactive, WaitingForFirstPoint, WaitingForSecondPoint };
27
28
State state_ = State::Inactive;
29
Vector3
start_world_pos_ = {};
30
};
31
}
osc::Camera
Definition
camera.h:21
osc::GuiRuler
Definition
gui_ruler.h:13
osc::GuiRuler::start_measuring
void start_measuring()
osc::GuiRuler::stop_measuring
void stop_measuring()
osc::GuiRuler::is_measuring
bool is_measuring() const
osc::GuiRuler::toggle_measuring
void toggle_measuring()
osc::GuiRuler::on_draw
void on_draw(const Camera &, const Rect &render_rect, std::optional< SceneCollision >)
osc::Rect
Definition
rect.h:17
osc::Vector< float, 3 >
osc
Definition
custom_decoration_generator.h:5
scene_collision.h
vector.h
Generated by
1.9.8