dl
dl
tool
dl_tool_ctrl_2d.h
浏览该文件的文档.
1
12
#pragma once
13
14
#ifndef DL_DISABLE_RENDER
15
#include "
dl_type.h
"
16
#include "
io/dl_input.h
"
17
#include "
misc/dl_component_use.h
"
18
19
namespace
dl::Tool
20
{
22
class
Controller2d
23
{
24
public
:
25
bool
_bMoveWasd
=
true
;
26
float
_moveSpeed
= 400.0f;
27
float
_moveSpeedShift
= 2.0f;
28
29
bool
_bScaleWheel
=
true
;
30
float
_scaleSpeed
= 5.0f;
31
Position
_scaleRange
= { 0.25f, 2.0f };
32
bool
_bScaleWithMouse
=
true
;
// 随鼠标位置缩放,否则以窗口中心缩放
33
std::vector<float>
_scaleLevel
;
// 不为空时使用
34
size_t
_scaleLevelCur
= 0;
35
MouseCode
_keyDrag
=
MouseCode::MIDDLE
;
36
37
void
Update
(
Coor
* coor);
38
// 传入地图大小,限制地图在窗口内
39
void
UpdateLimit
(
Coor
* coor,
const
Size
& map_size);
40
private
:
41
Cpt::Drag
_drag;
42
};
43
44
}
45
#endif
dl::Coor
2d坐标系
定义
dl_coor.h:27
dl::Cpt::Drag
拖拽组件
定义
dl_component_use.h:108
dl::Tool::Controller2d
2d地图控制器,例如平移、缩放等操作
定义
dl_tool_ctrl_2d.h:23
dl::Tool::Controller2d::_bScaleWheel
bool _bScaleWheel
定义
dl_tool_ctrl_2d.h:29
dl::Tool::Controller2d::_scaleLevel
std::vector< float > _scaleLevel
定义
dl_tool_ctrl_2d.h:33
dl::Tool::Controller2d::_bMoveWasd
bool _bMoveWasd
定义
dl_tool_ctrl_2d.h:25
dl::Tool::Controller2d::_bScaleWithMouse
bool _bScaleWithMouse
定义
dl_tool_ctrl_2d.h:32
dl::Tool::Controller2d::_keyDrag
MouseCode _keyDrag
定义
dl_tool_ctrl_2d.h:35
dl::Tool::Controller2d::_scaleSpeed
float _scaleSpeed
定义
dl_tool_ctrl_2d.h:30
dl::Tool::Controller2d::_moveSpeedShift
float _moveSpeedShift
定义
dl_tool_ctrl_2d.h:27
dl::Tool::Controller2d::_scaleLevelCur
size_t _scaleLevelCur
定义
dl_tool_ctrl_2d.h:34
dl::Tool::Controller2d::Update
void Update(Coor *coor)
dl::Tool::Controller2d::_scaleRange
Position _scaleRange
定义
dl_tool_ctrl_2d.h:31
dl::Tool::Controller2d::_moveSpeed
float _moveSpeed
定义
dl_tool_ctrl_2d.h:26
dl::Tool::Controller2d::UpdateLimit
void UpdateLimit(Coor *coor, const Size &map_size)
dl_component_use.h
组件实例
dl_input.h
键盘与手柄等按键操作
dl_type.h
通用类型
dl::Tool
常用工具
定义
dl_tool_archiver.h:23
dl::Position
Position2 Position
定义
dl_type_def.h:44
dl::MouseCode
MouseCode
定义
dl_input.h:68
dl::MouseCode::MIDDLE
@ MIDDLE
定义
dl_input.h:72
dl::Size
PointU Size
定义
dl_type_def.h:35
制作者
1.13.1