Image cropping added
This commit is contained in:
parent
df7ec9cb99
commit
c15a21e488
7 changed files with 91 additions and 20 deletions
|
|
@ -5,7 +5,9 @@
|
|||
#include "../../../Toolbar.hpp"
|
||||
#include "../../../MainProgram.hpp"
|
||||
#include "../../../ResourceManager.hpp"
|
||||
#include "../EditTool.hpp"
|
||||
#include "DrawingProgramEditToolBase.hpp"
|
||||
#include "Eigen/Geometry"
|
||||
#include <fstream>
|
||||
|
||||
#ifdef __EMSCRIPTEN__
|
||||
|
|
@ -17,9 +19,23 @@ ImageEditTool::ImageEditTool(DrawingProgram& initDrawP):
|
|||
{}
|
||||
|
||||
void ImageEditTool::edit_start(EditTool& editTool, CanvasComponentContainer::ObjInfo* comp, std::any& prevData) {
|
||||
auto& a = static_cast<ImageCanvasComponent&>(comp->obj->get_comp());
|
||||
static Vector2f staticZero = {0.0f, 0.0f};
|
||||
static Vector2f staticOne = {1.0f, 1.0f};
|
||||
|
||||
Affine2f transformMat = Translation2f(a.d.p1) * AlignedScaling2f(a.d.p2 - a.d.p1) * Affine2f::Identity();
|
||||
|
||||
prevData = a.d;
|
||||
editTool.add_point_handle({&a.d.cropP1, &staticZero, &a.d.cropP2, 0.0f, transformMat});
|
||||
editTool.add_point_handle({&a.d.cropP2, &a.d.cropP1, &staticOne, 0.0f, transformMat});
|
||||
a.d.editing = true;
|
||||
comp->obj->commit_update(drawP);
|
||||
}
|
||||
|
||||
void ImageEditTool::commit_edit_updates(CanvasComponentContainer::ObjInfo* comp, std::any& prevData) {
|
||||
auto& a = static_cast<ImageCanvasComponent&>(comp->obj->get_comp());
|
||||
a.d.editing = false;
|
||||
comp->obj->commit_update(drawP);
|
||||
}
|
||||
|
||||
bool ImageEditTool::edit_update(CanvasComponentContainer::ObjInfo* comp) {
|
||||
|
|
|
|||
|
|
@ -278,6 +278,8 @@ void TextBoxEditTool::edit_start(EditTool& editTool, CanvasComponentContainer::O
|
|||
|
||||
editTool.add_point_handle({&a.d.p1, nullptr, &a.d.p2});
|
||||
editTool.add_point_handle({&a.d.p2, &a.d.p1, nullptr});
|
||||
|
||||
comp->obj->commit_update(drawP);
|
||||
}
|
||||
|
||||
bool TextBoxEditTool::edit_update(CanvasComponentContainer::ObjInfo* comp) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue