mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-02-10 18:05:41 +08:00
Add default parametrs and new gradient types
This commit is contained in:
@ -10,9 +10,11 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi
|
||||
{
|
||||
ui->setupUi(this);
|
||||
ui->lable_test->setStyleSheet("QLabel { background-color : white;}");
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
ui->stackedWidget->setCurrentIndex(0);
|
||||
ui->stackedWidget_2->setCurrentIndex(0);
|
||||
ui->statusbar->showMessage("Linear");
|
||||
ui->Rainbow_Colorspace_Radio_Button->setChecked(true);
|
||||
info.colorspace = Rainbow;
|
||||
}
|
||||
|
||||
MainWindow::~MainWindow()
|
||||
@ -86,35 +88,84 @@ QImage GenerateImg(std::vector<Point> &points, Info &info, const int& w, const i
|
||||
return img;
|
||||
}
|
||||
|
||||
bool parametric = false;
|
||||
|
||||
void MainWindow::on_actionLinear_Gradient_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(0);
|
||||
ui->stackedWidget_2->setCurrentIndex(0);
|
||||
ui->statusbar->showMessage("Linear");
|
||||
info.gradient = Linear;
|
||||
info.gradient_type = c_BrushTypePathNewLinearGradient;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_actionRadial_Gradient_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(1);
|
||||
ui->stackedWidget_2->setCurrentIndex(1);
|
||||
ui->statusbar->showMessage("Radial");
|
||||
info.gradient = Radial;
|
||||
info.gradient_type = c_BrushTypePathRadialGradient;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_actionTriangle_Gradient_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(2);
|
||||
ui->stackedWidget_2->setCurrentIndex(2);
|
||||
ui->statusbar->showMessage("Triangle");
|
||||
info.gradient = Triangle;
|
||||
info.gradient_type = c_BrushTypeTriagnleMeshGradient;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_actionTriangle_Parametric_Gradient_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(3);
|
||||
ui->stackedWidget->setCurrentIndex(2);
|
||||
ui->stackedWidget_2->setCurrentIndex(3);
|
||||
ui->statusbar->showMessage("Triangle Parametric");
|
||||
info.gradient = TriangleParametric;
|
||||
info.gradient_type = c_BrushTypeTriagnleMeshGradient;
|
||||
parametric = true;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_actionCoons_Patch_Gradient_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(3);
|
||||
ui->stackedWidget_2->setCurrentIndex(4);
|
||||
ui->statusbar->showMessage("Coons Patch");
|
||||
info.gradient = CoonsPatch;
|
||||
info.gradient_type = c_BrushTypePathNewLinearGradient;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_actionCoons_Patch_Parametric_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(3);
|
||||
ui->stackedWidget_2->setCurrentIndex(5);
|
||||
ui->statusbar->showMessage("Coons Patch Parametric");
|
||||
info.gradient = CoonsPatchParametric;
|
||||
info.gradient_type = c_BrushTypeCurveGradient;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_actionTensor_Coons_Patch_Gradient_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(4);
|
||||
ui->stackedWidget_2->setCurrentIndex(6);
|
||||
ui->statusbar->showMessage("Tensor Coons Patch");
|
||||
info.gradient = TensorCoonsPatch;
|
||||
info.gradient_type = c_BrushTypePathNewLinearGradient;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_actionTensor_Coons_Patch_Parametric_triggered()
|
||||
{
|
||||
ui->stackedWidget->setCurrentIndex(4);
|
||||
ui->stackedWidget_2->setCurrentIndex(7);
|
||||
ui->statusbar->showMessage("Tensor Coons Patch Parametric");
|
||||
info.gradient = TensorCoonsPatchParametric;
|
||||
info.gradient_type = c_BrushTypeTensorCurveGradient;
|
||||
points = {{0, 0}, {500, 0}, {500, 500}, {0, 500}};
|
||||
}
|
||||
|
||||
void MainWindow::on_BAW_Colorspace_Radio_Button_clicked()
|
||||
@ -138,7 +189,7 @@ void MainWindow::on_Rainbow_Colorspace_Radio_Button_clicked()
|
||||
|
||||
void MainWindow::on_pushButton_clicked()
|
||||
{
|
||||
if (info.gradient_type == c_BrushTypePathNewLinearGradient)
|
||||
if (info.gradient == Linear)
|
||||
{
|
||||
if (ui->First_X_Coordinate_Input->text() == "")
|
||||
{
|
||||
@ -166,7 +217,7 @@ void MainWindow::on_pushButton_clicked()
|
||||
info.p1.y = ui->Second_Y_Coordinate_Input->text().toInt();
|
||||
info.ginfo = NSStructures::GInfoConstructor::get_linear(info.p0, info.p1, 0, 1, info.cont_b, info.cont_f);
|
||||
}
|
||||
else if (info.gradient_type == c_BrushTypePathRadialGradient)
|
||||
else if (info.gradient == Radial)
|
||||
{
|
||||
if (ui->First_Center_X_Coordinate_Input->text() == "")
|
||||
{
|
||||
@ -206,7 +257,7 @@ void MainWindow::on_pushButton_clicked()
|
||||
info.r1 = ui->Second_Radius_Input->text().toInt();
|
||||
info.ginfo = NSStructures::GInfoConstructor::get_radial(info.c0, info.c1, info.r0, info.r1, 0, 1, info.cont_b, info.cont_f);
|
||||
}
|
||||
else if (info.gradient_type == c_BrushTypeTriagnleMeshGradient && !parametric)
|
||||
else if (info.gradient == Triangle || info.gradient == TriangleParametric)
|
||||
{
|
||||
if (ui->First_Vertex_X_Coordinate_Input->text() == "")
|
||||
{
|
||||
@ -244,58 +295,370 @@ void MainWindow::on_pushButton_clicked()
|
||||
return;
|
||||
}
|
||||
info.triangle[2].y = ui->Third_Vertex_Y_Coordinate_Input->text().toInt();
|
||||
info.ginfo = NSStructures::GInfoConstructor::get_triangle(info.triangle, {{255, 0, 0}, {0, 255, 0}, {0, 0, 255}}, {}, false);
|
||||
info.ginfo = NSStructures::GInfoConstructor::get_triangle(info.triangle,
|
||||
{{255, 0, 0}, {0, 255, 0}, {0, 0, 255}},
|
||||
{},
|
||||
info.gradient == TriangleParametric);
|
||||
points = {};
|
||||
for (auto p : info.triangle)
|
||||
{
|
||||
points.push_back({p.x, p.y});
|
||||
}
|
||||
}
|
||||
else if (info.gradient_type = c_BrushTypeTriagnleMeshGradient && parametric)
|
||||
else if (info.gradient == CoonsPatch || info.gradient == CoonsPatchParametric)
|
||||
{
|
||||
if (ui->First_Vertex_X_Coordinate_Input_2->text() == "")
|
||||
if (ui->First_Vertex_X_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Vertex X coordinate = NULL");
|
||||
ui->statusbar->showMessage("First Vertex X Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.triangle[0].x = ui->First_Vertex_X_Coordinate_Input_2->text().toInt();
|
||||
if (ui->First_Vertex_Y_Coordinate_Input_2->text() == "")
|
||||
info.curve[0].x = 5 * ui->First_Vertex_X_Coordinate_Input_3->text().toInt();
|
||||
if (ui->First_Vertex_Y_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Vertex Y coordinate = NULL");
|
||||
ui->statusbar->showMessage("First Vertex Y Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.triangle[0].y = ui->First_Vertex_Y_Coordinate_Input_2->text().toInt();
|
||||
if (ui->Second_Vertex_X_Coordinate_Input_2->text() == "")
|
||||
info.curve[0].y = 5 * ui->First_Vertex_Y_Coordinate_Input_3->text().toInt();
|
||||
if (ui->First_X_Coordinate_First_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Vertex X coordinate = NULL");
|
||||
ui->statusbar->showMessage("First X Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.triangle[1].x = ui->Second_Vertex_X_Coordinate_Input_2->text().toInt();
|
||||
if (ui->Second_Vertex_Y_Coordinate_Input_2->text() == "")
|
||||
info.curve[1].x = 5 * ui->First_X_Coordinate_First_Edge->text().toInt();
|
||||
if (ui->First_Y_Coordinate_First_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Vertex Y coordinate = NULL");
|
||||
ui->statusbar->showMessage("First Y Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.triangle[1].y = ui->Second_Vertex_Y_Coordinate_Input_2->text().toInt();
|
||||
if (ui->Third_Vertex_X_Coordinate_Input_2->text() == "")
|
||||
info.curve[1].y = 5 * ui->First_Y_Coordinate_First_Edge->text().toInt();
|
||||
if (ui->Second_X_Coordinate_First_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third Vertex X coordinate = NULL");
|
||||
ui->statusbar->showMessage("Second X Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.triangle[2].x = ui->Third_Vertex_X_Coordinate_Input_2->text().toInt();
|
||||
if (ui->Third_Vertex_Y_Coordinate_Input_2->text() == "")
|
||||
info.curve[2].x = 5 * ui->Second_X_Coordinate_First_Edge->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_First_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third Vertex Y coordinate = NULL");
|
||||
ui->statusbar->showMessage("Second Y Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.triangle[2].y = ui->Third_Vertex_Y_Coordinate_Input_2->text().toInt();
|
||||
info.ginfo = NSStructures::GInfoConstructor::get_triangle(info.triangle, {{255, 0, 0}, {0, 255, 0}, {0, 0, 255}},
|
||||
{0.f, 0.4f, 1.f}, true);
|
||||
points = {};
|
||||
for (auto p : info.triangle)
|
||||
info.curve[2].y = 5 * ui->Second_Y_Coordinate_First_Edge->text().toInt();
|
||||
if (ui->Second_Vertex_X_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
points.push_back({p.x, p.y});
|
||||
ui->statusbar->showMessage("Second Vertex X Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[3].x = 5 * ui->Second_Vertex_X_Coordinate_Input_3->text().toInt();
|
||||
if (ui->Second_Vertex_Y_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Vertex Y Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[3].y = 5 * ui->Second_Vertex_Y_Coordinate_Input_3->text().toInt();
|
||||
if (ui->First_X_Coordinate_Second_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First X Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[4].x = 5 * ui->First_X_Coordinate_Second_Edge->text().toInt();
|
||||
if (ui->First_Y_Coordinate_Second_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Y Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[4].y = 5 * ui->First_Y_Coordinate_Second_Edge->text().toInt();
|
||||
if (ui->Second_X_Coordinate_Second_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second X Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[5].x = 5 * ui->Second_X_Coordinate_Second_Edge->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_Second_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Y Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[5].y = 5 * ui->Second_Y_Coordinate_Second_Edge->text().toInt();
|
||||
if (ui->Third_Vertex_X_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third Vertex X Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[6].x = 5 * ui->Third_Vertex_X_Coordinate_Input_3->text().toInt();
|
||||
if (ui->Third_Vertex_Y_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third Vertex Y Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[6].y = 5 * ui->Third_Vertex_Y_Coordinate_Input_3->text().toInt();
|
||||
if (ui->First_X_Coordinate_Third_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First X Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[7].x = 5 * ui->First_X_Coordinate_Third_Edge->text().toInt();
|
||||
if (ui->First_Y_Coordinate_Third_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Y Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[7].y = 5 * ui->First_Y_Coordinate_Third_Edge->text().toInt();
|
||||
if (ui->Second_X_Coordinate_Third_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second X Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[8].x = 5 * ui->Second_X_Coordinate_Third_Edge->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_Third_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Y Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[8].y = 5 * ui->Second_Y_Coordinate_Third_Edge->text().toInt();
|
||||
if (ui->Fourth_Vertex_X_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth Vertex X Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[9].x = 5 * ui->Fourth_Vertex_X_Coordinate_Input_3->text().toInt();
|
||||
if (ui->Fourth_Vertex_Y_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth Vertex Y Coordinate = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[9].y = 5 * ui->Fourth_Vertex_Y_Coordinate_Input_3->text().toInt();
|
||||
if (ui->First_X_Coordinate_Fourth_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First X Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[10].x = 5 * ui->First_X_Coordinate_Fourth_Edge->text().toInt();
|
||||
if (ui->First_Y_Coordinate_Fourth_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Y Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[10].y = 5 * ui->First_Y_Coordinate_Fourth_Edge->text().toInt();
|
||||
if (ui->Second_X_Coordinate_Fourth_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second X Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[11].x = 5 * ui->Second_X_Coordinate_Fourth_Edge->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_Fourth_Edge->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Y Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.curve[11].y = 5 * ui->Second_Y_Coordinate_Fourth_Edge->text().toInt();
|
||||
info.ginfo = NSStructures::GInfoConstructor::get_curve(
|
||||
info.curve,
|
||||
{0, 0.5, 1, 0.5},
|
||||
{{0, 0, 255}, {255, 0, 255},
|
||||
{255, 0, 0}, {0, 255, 0}},
|
||||
info.gradient == CoonsPatchParametric
|
||||
);
|
||||
}
|
||||
else if (info.gradient == TensorCoonsPatch || info.gradient == TensorCoonsPatchParametric)
|
||||
{
|
||||
if (ui->First_X_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First X Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][0].x = 5 * ui->First_X_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->First_Y_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Y Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][0].y = 5 * ui->First_Y_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->Second_X_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second X Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][1].x = 5 * ui->Second_X_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Y Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][1].y = 5 * ui->Second_Y_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->Third_X_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third X Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][2].x = 5 * ui->Third_X_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->Third_Y_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third Y Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][2].y = 5 * ui->Third_Y_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->Fourth_X_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth X Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][3].x = 5 * ui->Fourth_X_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->Fourth_Y_Coordinate_First_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth Y Coordinate First Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[0][3].y = 5 * ui->Fourth_Y_Coordinate_First_Edge_3->text().toInt();
|
||||
if (ui->First_X_Coordinate_Second_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First X Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][0].x = 5 * ui->First_X_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->First_Vertex_Y_Coordinate_Input_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Y Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][0].y = 5 * ui->First_Y_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->Second_X_Coordinate_Second_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second X Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][1].x = 5 * ui->Second_X_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_Second_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Y Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][1].y = 5 * ui->Second_Y_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->Third_X_Coordinate_Second_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third X Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][2].x = 5 * ui->Third_X_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->Third_Y_Coordinate_Second_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third Y Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][2].y = 5 * ui->Third_Y_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->Fourth_X_Coordinate_Second_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth X Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][3].x = 5 * ui->Fourth_X_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->Fourth_Y_Coordinate_Second_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth Y Coordinate Second Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[1][3].y = 5 * ui->Fourth_Y_Coordinate_Second_Edge_3->text().toInt();
|
||||
if (ui->First_X_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First X Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][0].x = 5 * ui->First_X_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->First_Y_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Y Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][0].y = 5 * ui->First_Y_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->Second_X_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second X Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][1].x = 5 * ui->Second_Y_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Y Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][1].y = 5 * ui->Second_Y_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->Third_X_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third X Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][2].x = 5 * ui->Third_X_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->Third_Y_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third Y Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][2].y = 5 * ui->Third_Y_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->Fourth_X_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth X Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][3].x = 5 * ui->Fourth_X_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->Fourth_Y_Coordinate_Third_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth Y Coordinate Third Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[2][3].y = 5 * ui->Fourth_Y_Coordinate_Third_Edge_3->text().toInt();
|
||||
if (ui->First_X_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First X Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][0].x = 5 * ui->First_X_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
if (ui->First_Y_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("First Y Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][0].y = 5 * ui->First_Y_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
if (ui->Second_X_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second X Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][1].x = 5 * ui->Second_X_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
if (ui->Second_Y_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Second Y Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][1].y = 5 * ui->Second_Y_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
if (ui->Third_X_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third X Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][2].x = 5 * ui->Third_X_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
if (ui->Third_Y_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Third X Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][2].y = 5 * ui->Third_Y_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
if (ui->Fourth_X_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth X Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][3].x = 5 * ui->Fourth_X_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
if (ui->Fourth_Y_Coordinate_Fourth_Edge_3->text() == "")
|
||||
{
|
||||
ui->statusbar->showMessage("Fourth Y Coordinate Fourth Edge = NULL");
|
||||
return;
|
||||
}
|
||||
info.tensorcurve[3][3].y = 5 * ui->Fourth_Y_Coordinate_Fourth_Edge_3->text().toInt();
|
||||
info.ginfo = NSStructures::GInfoConstructor::get_tensor_curve(
|
||||
info.tensorcurve,
|
||||
{{0, 0.5}, {1, 0.5}},
|
||||
{{{0, 0, 255}, {255, 0, 255}}, {{255, 0, 0}, {0, 255, 0}}},
|
||||
info.gradient == TensorCoonsPatchParametric
|
||||
);
|
||||
}
|
||||
|
||||
if (info.colorspace == NoColorspaceType)
|
||||
@ -451,38 +814,338 @@ void MainWindow::on_Third_Vertex_Y_Coordinate_Input_editingFinished()
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Vertex_X_Coordinate_Input_2_editingFinished()
|
||||
void MainWindow::on_First_Vertex_X_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Vertex_X_Coordinate_Input_2);
|
||||
ClampCoords(ui->First_Vertex_X_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Vertex_Y_Coordinate_Input_2_editingFinished()
|
||||
void MainWindow::on_First_Vertex_Y_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Vertex_Y_Coordinate_Input_2);
|
||||
ClampCoords(ui->First_Vertex_Y_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Vertex_X_Coordinate_Input_2_editingFinished()
|
||||
void MainWindow::on_Second_Vertex_X_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Vertex_X_Coordinate_Input_2);
|
||||
ClampCoords(ui->Second_Vertex_X_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Vertex_Y_Coordinate_Input_2_editingFinished()
|
||||
void MainWindow::on_Second_Vertex_Y_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Vertex_Y_Coordinate_Input_2);
|
||||
ClampCoords(ui->Second_Vertex_Y_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_Vertex_X_Coordinate_Input_2_editingFinished()
|
||||
void MainWindow::on_Third_Vertex_X_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_Vertex_X_Coordinate_Input_2);
|
||||
ClampCoords(ui->Third_Vertex_X_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_Vertex_Y_Coordinate_Input_2_editingFinished()
|
||||
void MainWindow::on_Third_Vertex_Y_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_Vertex_Y_Coordinate_Input_2);
|
||||
ClampCoords(ui->Third_Vertex_Y_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_Vertex_X_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_Vertex_X_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_Vertex_Y_Coordinate_Input_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_Vertex_Y_Coordinate_Input_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_First_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_First_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_First_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_First_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_First_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_First_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_First_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_First_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_Second_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_Second_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_Second_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_Second_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_Second_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_Second_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_Second_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_Second_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_Third_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_Third_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_Third_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_Third_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_Third_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_Third_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_Third_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_Third_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_Fourth_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_Fourth_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_Fourth_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_Fourth_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_Fourth_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_Fourth_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_Fourth_Edge_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_Fourth_Edge);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_X_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_X_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_Y_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_Y_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_X_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_X_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_Y_Coordinate_First_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_Y_Coordinate_First_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_X_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_X_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_Y_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_Y_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_X_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_X_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_Y_Coordinate_Second_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_Y_Coordinate_Second_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_X_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_X_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_Y_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_Y_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_X_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_X_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_Y_Coordinate_Third_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_Y_Coordinate_Third_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_X_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_X_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_First_Y_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->First_Y_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_X_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_X_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Second_Y_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Second_Y_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_X_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_X_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Third_Y_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Third_Y_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_X_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_X_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::on_Fourth_Y_Coordinate_Fourth_Edge_3_editingFinished()
|
||||
{
|
||||
ClampCoords(ui->Fourth_Y_Coordinate_Fourth_Edge_3);
|
||||
}
|
||||
|
||||
|
||||
@ -13,6 +13,19 @@ namespace Ui
|
||||
}
|
||||
QT_END_NAMESPACE
|
||||
|
||||
typedef enum
|
||||
{
|
||||
Linear,
|
||||
Radial,
|
||||
Triangle,
|
||||
TriangleParametric,
|
||||
CoonsPatch,
|
||||
CoonsPatchParametric,
|
||||
TensorCoonsPatch,
|
||||
TensorCoonsPatchParametric,
|
||||
Functional
|
||||
} GradientType;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
NoColorspaceType,
|
||||
@ -51,12 +64,20 @@ struct Color
|
||||
struct Info
|
||||
{
|
||||
ColorspaceType colorspace = NoColorspaceType;
|
||||
GradientType gradient = Linear;
|
||||
|
||||
float r0, r1;
|
||||
NSStructures::Point c0, c1;
|
||||
NSStructures::Point p0, p1;
|
||||
bool cont_b, cont_f;
|
||||
std::vector<NSStructures::Point> triangle = {{100, 100}, {300, 200}, {200, 350}};
|
||||
std::vector<NSStructures::Point> curve = {{100, 300}, {50, 250}, {150, 150}, {100, 100},
|
||||
{150, 50}, {250, 150}, {300, 100}, {250, 150},
|
||||
{350, 250}, {300, 300}, {250, 350}, {150,250}};
|
||||
std::vector<std::vector<NSStructures::Point>> tensorcurve = {{{100, 300}, {150, 250}, {50, 150}, {100,100}},
|
||||
{{150, 250}, {170, 230}, {170, 170}, {50, 150}},
|
||||
{{350, 250}, {230, 230}, {230, 170}, {150, 250}},
|
||||
{{300, 300}, {250, 250}, {350, 150}, {300, 100}}};
|
||||
|
||||
NSStructures::GradientInfo ginfo;
|
||||
int gradient_type;
|
||||
@ -155,17 +176,125 @@ private slots:
|
||||
|
||||
void on_actionTriangle_Parametric_Gradient_triggered();
|
||||
|
||||
void on_First_Vertex_X_Coordinate_Input_2_editingFinished();
|
||||
void on_actionCoons_Patch_Gradient_triggered();
|
||||
|
||||
void on_First_Vertex_Y_Coordinate_Input_2_editingFinished();
|
||||
void on_actionCoons_Patch_Parametric_triggered();
|
||||
|
||||
void on_Second_Vertex_X_Coordinate_Input_2_editingFinished();
|
||||
void on_actionTensor_Coons_Patch_Gradient_triggered();
|
||||
|
||||
void on_Second_Vertex_Y_Coordinate_Input_2_editingFinished();
|
||||
void on_actionTensor_Coons_Patch_Parametric_triggered();
|
||||
|
||||
void on_Third_Vertex_X_Coordinate_Input_2_editingFinished();
|
||||
void on_First_Vertex_X_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_Third_Vertex_Y_Coordinate_Input_2_editingFinished();
|
||||
void on_First_Vertex_Y_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_Second_Vertex_X_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_Second_Vertex_Y_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_Third_Vertex_X_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_Third_Vertex_Y_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_Fourth_Vertex_X_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_Fourth_Vertex_Y_Coordinate_Input_3_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_First_Edge_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_First_Edge_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_First_Edge_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_First_Edge_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_Second_Edge_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_Second_Edge_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_Second_Edge_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_Second_Edge_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_Third_Edge_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_Third_Edge_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_Third_Edge_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_Third_Edge_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_Fourth_Edge_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_Fourth_Edge_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_Fourth_Edge_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_Fourth_Edge_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_X_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_Y_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_X_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_Y_Coordinate_First_Edge_3_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_X_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_Y_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_X_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_Y_Coordinate_Second_Edge_3_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_X_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_Y_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_X_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_Y_Coordinate_Third_Edge_3_editingFinished();
|
||||
|
||||
void on_First_X_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
void on_First_Y_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_X_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
void on_Second_Y_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_X_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
void on_Third_Y_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_X_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
void on_Fourth_Y_Coordinate_Fourth_Edge_3_editingFinished();
|
||||
|
||||
private:
|
||||
Ui::MainWindow *ui;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user