38 widget = std::make_unique<Ui::HomogeneousMatrixCalculatorWidget>();
41 std::vector<QLineEdit*> edits{
42 widget->lineEdit00, widget->lineEdit01, widget->lineEdit02,
43 widget->lineEdit03, widget->lineEdit10, widget->lineEdit11,
44 widget->lineEdit12, widget->lineEdit13, widget->lineEdit20,
45 widget->lineEdit21, widget->lineEdit22, widget->lineEdit23,
46 widget->lineEdit30, widget->lineEdit31, widget->lineEdit32,
49 widget->lineEditI00, widget->lineEditI01, widget->lineEditI02,
50 widget->lineEditI03, widget->lineEditI10, widget->lineEditI11,
51 widget->lineEditI12, widget->lineEditI13, widget->lineEditI20,
52 widget->lineEditI21, widget->lineEditI22, widget->lineEditI23,
53 widget->lineEditI30, widget->lineEditI31, widget->lineEditI32,
56 widget->lineEditICheck00, widget->lineEditICheck01, widget->lineEditICheck02,
57 widget->lineEditICheck03, widget->lineEditICheck10, widget->lineEditICheck11,
58 widget->lineEditICheck12, widget->lineEditICheck13, widget->lineEditICheck20,
59 widget->lineEditICheck21, widget->lineEditICheck22, widget->lineEditICheck23,
60 widget->lineEditICheck30, widget->lineEditICheck31, widget->lineEditICheck32,
61 widget->lineEditICheck33,
63 widget->lineEditX, widget->lineEditY, widget->lineEditZ,
64 widget->lineEditRX, widget->lineEditRY, widget->lineEditRZ,
66 widget->lineEditM00, widget->lineEditM01, widget->lineEditM02,
67 widget->lineEditM03, widget->lineEditM10, widget->lineEditM11,
68 widget->lineEditM12, widget->lineEditM13, widget->lineEditM20,
69 widget->lineEditM21, widget->lineEditM22, widget->lineEditM23,
70 widget->lineEditM30, widget->lineEditM31, widget->lineEditM32,
73 widget->lineEditR00, widget->lineEditR01, widget->lineEditR02,
74 widget->lineEditR03, widget->lineEditR10, widget->lineEditR11,
75 widget->lineEditR12, widget->lineEditR13, widget->lineEditR20,
76 widget->lineEditR21, widget->lineEditR22, widget->lineEditR23,
77 widget->lineEditR30, widget->lineEditR31, widget->lineEditR32,
81 for (
auto edit : edits)
83 edit->setValidator(
new QDoubleValidator(
this));
84 edit->setFixedWidth(100);
85 edit->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
87 connect(widget->lineEdit00, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
88 connect(widget->lineEdit01, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
89 connect(widget->lineEdit02, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
90 connect(widget->lineEdit10, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
91 connect(widget->lineEdit11, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
92 connect(widget->lineEdit12, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
93 connect(widget->lineEdit20, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
94 connect(widget->lineEdit21, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
95 connect(widget->lineEdit22, SIGNAL(textEdited(QString)),
this, SLOT(changed4f()));
97 connect(widget->lineEditRX, SIGNAL(textEdited(QString)),
this, SLOT(changedrpy()));
98 connect(widget->lineEditRY, SIGNAL(textEdited(QString)),
this, SLOT(changedrpy()));
99 connect(widget->lineEditRZ, SIGNAL(textEdited(QString)),
this, SLOT(changedrpy()));
101 connect(widget->lineEditM00, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
102 connect(widget->lineEditM01, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
103 connect(widget->lineEditM02, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
104 connect(widget->lineEditM03, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
105 connect(widget->lineEditM10, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
106 connect(widget->lineEditM11, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
107 connect(widget->lineEditM12, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
108 connect(widget->lineEditM13, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
109 connect(widget->lineEditM20, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
110 connect(widget->lineEditM21, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
111 connect(widget->lineEditM22, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
112 connect(widget->lineEditM23, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
113 connect(widget->lineEditM30, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
114 connect(widget->lineEditM31, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
115 connect(widget->lineEditM32, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
116 connect(widget->lineEditM33, SIGNAL(textEdited(QString)),
this, SLOT(recalcProd()));
118 connect(widget->lineEdit03, SIGNAL(textChanged(QString)),
this, SLOT(recalcInvAndProd()));
119 connect(widget->lineEdit13, SIGNAL(textChanged(QString)),
this, SLOT(recalcInvAndProd()));
120 connect(widget->lineEdit23, SIGNAL(textChanged(QString)),
this, SLOT(recalcInvAndProd()));