PeriDyno
1.0.0
Loading...
Searching...
No Matches
D:
Peridyno
peridyno
src
Rendering
GUI
QtGUI
PropertyItem
QVectorTransform3FieldWidget.h
Go to the documentation of this file.
1
19
#pragma once
20
#include "
QFieldWidget.h
"
21
#include "
QtGUI/PPropertyWidget.h
"
22
#include "
Field.h
"
23
#include <QHBoxLayout>
24
#include <QVBoxLayout>
25
#include "
QPiecewiseDoubleSpinBox.h
"
26
#include "qgroupbox.h"
27
28
namespace
dyno
29
{
30
class
mVectorTransformItemLayout
:
public
QHBoxLayout
31
{
32
Q_OBJECT
33
public
:
34
mVectorTransformItemLayout
(
int
id
);
35
36
~mVectorTransformItemLayout
();
37
38
Transform3f
value
();
39
40
void
setValue
(
Transform3f
v);
41
42
void
setId
(
int
id
) {
mId
= id;
index
->setText(std::to_string(
id
).c_str()); };
43
44
signals:
45
49
void
removeById
(
int
);
50
54
void
valueChange
(
double
);
55
56
public
slots:
57
void
emitSignal
() { emit
removeById
(
mId
); }
58
59
void
emitChange
(
double
v) { emit
valueChange
(v); }
60
61
62
private
:
63
64
private
:
65
int
mId
= -1;
66
67
QGroupBox*
mGroup
= NULL;
68
69
QPiecewiseDoubleSpinBox
*
mT0
= NULL;
70
QPiecewiseDoubleSpinBox
*
mT1
= NULL;
71
QPiecewiseDoubleSpinBox
*
mT2
= NULL;
72
73
QPiecewiseDoubleSpinBox
*
mR0
= NULL;
74
QPiecewiseDoubleSpinBox
*
mR1
= NULL;
75
QPiecewiseDoubleSpinBox
*
mR2
= NULL;
76
77
QPiecewiseDoubleSpinBox
*
mS0
= NULL;
78
QPiecewiseDoubleSpinBox
*
mS1
= NULL;
79
QPiecewiseDoubleSpinBox
*
mS2
= NULL;
80
81
QLabel*
mTLabel
= NULL;
82
QLabel*
mRLabel
= NULL;
83
QLabel*
mSLabel
= NULL;
84
85
QPushButton*
removeButton
=
nullptr
;
86
QLabel*
index
=
nullptr
;
87
};
88
89
class
QVectorTransform3FieldWidget
:
public
QFieldWidget
90
{
91
Q_OBJECT
92
public
:
93
DECLARE_FIELD_WIDGET
94
95
QVectorTransform3FieldWidget
(
FBase
*
field
);
96
97
~QVectorTransform3FieldWidget
()
override
{};
98
99
signals:
100
void
vectorChange
();
101
102
public
slots:
106
void
updateField
();
110
void
updateWidget
();
111
112
void
updateVector
(
int
) {
updateVector
(); }
116
void
updateVector
();
120
void
addItemWidget
();
124
void
removeItemWidgetById
(
int
id
);
125
126
private
:
130
void
createItemWidget
(
Transform3f
v);
131
132
133
private
:
134
135
std::vector<Transform3f>
mVec
;
136
137
QVBoxLayout*
mMainLayout
= NULL;
138
139
std::vector<mVectorTransformItemLayout*>
mItems
;
140
141
};
142
143
144
145
146
}
Field.h
PPropertyWidget.h
DECLARE_FIELD_WIDGET
#define DECLARE_FIELD_WIDGET
Definition
PPropertyWidget.h:110
QFieldWidget.h
QPiecewiseDoubleSpinBox.h
dyno::FBase
Definition
FBase.h:44
dyno::QFieldWidget::field
FBase * field()
Definition
QFieldWidget.h:74
dyno::QFieldWidget::QFieldWidget
QFieldWidget(FBase *field)
Definition
QFieldWidget.cpp:15
dyno::QPiecewiseDoubleSpinBox
Definition
QPiecewiseDoubleSpinBox.h:53
dyno::QVectorTransform3FieldWidget::createItemWidget
void createItemWidget(Transform3f v)
Creating Vector Elements(std::vector<mVectorTransformItemLayout*>) from fields.
Definition
QVectorTransform3FieldWidget.cpp:106
dyno::QVectorTransform3FieldWidget::updateWidget
void updateWidget()
Called when the field is updated.
Definition
QVectorTransform3FieldWidget.cpp:51
dyno::QVectorTransform3FieldWidget::updateField
void updateField()
Called when the widget is updated.
Definition
QVectorTransform3FieldWidget.cpp:60
dyno::QVectorTransform3FieldWidget::QVectorTransform3FieldWidget
DECLARE_FIELD_WIDGET QVectorTransform3FieldWidget(FBase *field)
Definition
QVectorTransform3FieldWidget.cpp:15
dyno::QVectorTransform3FieldWidget::mVec
std::vector< Transform3f > mVec
Definition
QVectorTransform3FieldWidget.h:135
dyno::QVectorTransform3FieldWidget::removeItemWidgetById
void removeItemWidgetById(int id)
Called when the "mVectorTransformItemLayout::QPushButton* removeButton" is clicked.
Definition
QVectorTransform3FieldWidget.cpp:91
dyno::QVectorTransform3FieldWidget::updateVector
void updateVector()
Update "std::vector<Transform3f> mVec".
Definition
QVectorTransform3FieldWidget.cpp:69
dyno::QVectorTransform3FieldWidget::vectorChange
void vectorChange()
dyno::QVectorTransform3FieldWidget::addItemWidget
void addItemWidget()
Called when the QPushButton* addItembutton is clicked.
Definition
QVectorTransform3FieldWidget.cpp:79
dyno::QVectorTransform3FieldWidget::mMainLayout
QVBoxLayout * mMainLayout
Definition
QVectorTransform3FieldWidget.h:137
dyno::QVectorTransform3FieldWidget::~QVectorTransform3FieldWidget
~QVectorTransform3FieldWidget() override
Definition
QVectorTransform3FieldWidget.h:97
dyno::QVectorTransform3FieldWidget::mItems
std::vector< mVectorTransformItemLayout * > mItems
Definition
QVectorTransform3FieldWidget.h:139
dyno::QVectorTransform3FieldWidget::updateVector
void updateVector(int)
Definition
QVectorTransform3FieldWidget.h:112
dyno::mVectorTransformItemLayout::index
QLabel * index
Definition
QVectorTransform3FieldWidget.h:86
dyno::mVectorTransformItemLayout::mS0
QPiecewiseDoubleSpinBox * mS0
Definition
QVectorTransform3FieldWidget.h:77
dyno::mVectorTransformItemLayout::mR1
QPiecewiseDoubleSpinBox * mR1
Definition
QVectorTransform3FieldWidget.h:74
dyno::mVectorTransformItemLayout::mS2
QPiecewiseDoubleSpinBox * mS2
Definition
QVectorTransform3FieldWidget.h:79
dyno::mVectorTransformItemLayout::mVectorTransformItemLayout
mVectorTransformItemLayout(int id)
Definition
QVectorTransform3FieldWidget.cpp:119
dyno::mVectorTransformItemLayout::valueChange
void valueChange(double)
Called when the Widget changed.
dyno::mVectorTransformItemLayout::mT0
QPiecewiseDoubleSpinBox * mT0
Definition
QVectorTransform3FieldWidget.h:69
dyno::mVectorTransformItemLayout::removeButton
QPushButton * removeButton
Definition
QVectorTransform3FieldWidget.h:85
dyno::mVectorTransformItemLayout::mTLabel
QLabel * mTLabel
Definition
QVectorTransform3FieldWidget.h:81
dyno::mVectorTransformItemLayout::setId
void setId(int id)
Definition
QVectorTransform3FieldWidget.h:42
dyno::mVectorTransformItemLayout::emitSignal
void emitSignal()
Definition
QVectorTransform3FieldWidget.h:57
dyno::mVectorTransformItemLayout::mRLabel
QLabel * mRLabel
Definition
QVectorTransform3FieldWidget.h:82
dyno::mVectorTransformItemLayout::mId
int mId
Definition
QVectorTransform3FieldWidget.h:65
dyno::mVectorTransformItemLayout::removeById
void removeById(int)
Called When the RemoveButton is clicked.
dyno::mVectorTransformItemLayout::mT2
QPiecewiseDoubleSpinBox * mT2
Definition
QVectorTransform3FieldWidget.h:71
dyno::mVectorTransformItemLayout::emitChange
void emitChange(double v)
Definition
QVectorTransform3FieldWidget.h:59
dyno::mVectorTransformItemLayout::mR0
QPiecewiseDoubleSpinBox * mR0
Definition
QVectorTransform3FieldWidget.h:73
dyno::mVectorTransformItemLayout::mT1
QPiecewiseDoubleSpinBox * mT1
Definition
QVectorTransform3FieldWidget.h:70
dyno::mVectorTransformItemLayout::~mVectorTransformItemLayout
~mVectorTransformItemLayout()
Definition
QVectorTransform3FieldWidget.cpp:221
dyno::mVectorTransformItemLayout::mGroup
QGroupBox * mGroup
Definition
QVectorTransform3FieldWidget.h:67
dyno::mVectorTransformItemLayout::mSLabel
QLabel * mSLabel
Definition
QVectorTransform3FieldWidget.h:83
dyno::mVectorTransformItemLayout::mR2
QPiecewiseDoubleSpinBox * mR2
Definition
QVectorTransform3FieldWidget.h:75
dyno::mVectorTransformItemLayout::value
Transform3f value()
Definition
QVectorTransform3FieldWidget.cpp:244
dyno::mVectorTransformItemLayout::setValue
void setValue(Transform3f v)
Definition
QVectorTransform3FieldWidget.cpp:263
dyno::mVectorTransformItemLayout::mS1
QPiecewiseDoubleSpinBox * mS1
Definition
QVectorTransform3FieldWidget.h:78
dyno
This is an implementation of AdditiveCCD based on peridyno.
Definition
Array.h:25
dyno::Transform3f
Transform< float, 3 > Transform3f
Definition
Transform3x3.h:46
Generated by
1.13.2