dl
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"
18
19namespace dl::Tool
20{
23{
24public:
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;
36
37 void Update(Coor* coor);
38 // 传入地图大小,限制地图在窗口内
39 void UpdateLimit(Coor* coor, const Size& map_size);
40private:
41 Cpt::Drag _drag;
42};
43
44}
45#endif
2d坐标系
2d地图控制器,例如平移、缩放等操作
std::vector< float > _scaleLevel
void Update(Coor *coor)
void UpdateLimit(Coor *coor, const Size &map_size)
组件实例
键盘与手柄等按键操作
通用类型
Position2 Position
PointU Size