Use info from events, and textbox place tool works with events
This commit is contained in:
parent
3dc2455f13
commit
803eb2c08a
10 changed files with 72 additions and 58 deletions
|
|
@ -71,7 +71,7 @@ void LassoSelectTool::input_mouse_button_on_canvas_callback(const InputManager::
|
|||
polygon.emplace_back(controls.lassoPoints);
|
||||
auto& poly = polygon[0];
|
||||
for(auto& v : poly)
|
||||
v = drawP.world.drawData.cam.c.to_space(controls.coords.from_space(v));
|
||||
v = controls.coords.from_this_to_cam_space(drawP.world, v);
|
||||
|
||||
std::vector<unsigned> indices = mapbox::earcut(polygon);
|
||||
|
||||
|
|
@ -104,7 +104,7 @@ void LassoSelectTool::input_mouse_button_on_canvas_callback(const InputManager::
|
|||
|
||||
void LassoSelectTool::input_mouse_motion_callback(const InputManager::MouseMotionCallbackArgs& motion) {
|
||||
if(controls.isSelecting) {
|
||||
Vector2f newLassoPoint = controls.coords.to_space(drawP.world.drawData.cam.c.from_space(motion.pos));
|
||||
Vector2f newLassoPoint = controls.coords.from_cam_space_to_this(drawP.world, motion.pos);
|
||||
float lassoPointDist = vec_distance(controls.lassoPoints.back(), newLassoPoint);
|
||||
if(lassoPointDist > 4.0f)
|
||||
controls.lassoPoints.emplace_back(newLassoPoint);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue