Skip to content

Commit 7e23cbe

Browse files
authored
Merge pull request #1583 from jessdtate/cg_transofrm
Cg transofrm
2 parents e20e750 + 50a022f commit 7e23cbe

File tree

3 files changed

+81
-16
lines changed

3 files changed

+81
-16
lines changed

src/Interface/Modules/Math/CreateGeometricTransform.ui

Lines changed: 55 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
<item>
3030
<widget class="QTabWidget" name="transformTabWidget_">
3131
<property name="currentIndex">
32-
<number>0</number>
32+
<number>2</number>
3333
</property>
3434
<widget class="QWidget" name="translateTab_">
3535
<attribute name="title">
@@ -55,7 +55,10 @@
5555
<number>6</number>
5656
</property>
5757
<property name="minimum">
58-
<double>-99.989999999999995</double>
58+
<double>-1000.000000000000000</double>
59+
</property>
60+
<property name="maximum">
61+
<double>1000.000000000000000</double>
5962
</property>
6063
</widget>
6164
</item>
@@ -72,7 +75,10 @@
7275
<number>6</number>
7376
</property>
7477
<property name="minimum">
75-
<double>-99.989999999999995</double>
78+
<double>-1000.000000000000000</double>
79+
</property>
80+
<property name="maximum">
81+
<double>1000.000000000000000</double>
7682
</property>
7783
</widget>
7884
</item>
@@ -89,7 +95,10 @@
8995
<number>6</number>
9096
</property>
9197
<property name="minimum">
92-
<double>-99.989999999999995</double>
98+
<double>-1000.000000000000000</double>
99+
</property>
100+
<property name="maximum">
101+
<double>1000.000000000000000</double>
93102
</property>
94103
</widget>
95104
</item>
@@ -134,6 +143,12 @@
134143
<property name="decimals">
135144
<number>6</number>
136145
</property>
146+
<property name="minimum">
147+
<double>-1000.000000000000000</double>
148+
</property>
149+
<property name="maximum">
150+
<double>1000.000000000000000</double>
151+
</property>
137152
</widget>
138153
</item>
139154
<item row="1" column="0">
@@ -148,6 +163,12 @@
148163
<property name="decimals">
149164
<number>6</number>
150165
</property>
166+
<property name="minimum">
167+
<double>-1000.000000000000000</double>
168+
</property>
169+
<property name="maximum">
170+
<double>1000.000000000000000</double>
171+
</property>
151172
</widget>
152173
</item>
153174
<item row="2" column="0">
@@ -162,6 +183,12 @@
162183
<property name="decimals">
163184
<number>6</number>
164185
</property>
186+
<property name="minimum">
187+
<double>-1000.000000000000000</double>
188+
</property>
189+
<property name="maximum">
190+
<double>1000.000000000000000</double>
191+
</property>
165192
</widget>
166193
</item>
167194
</layout>
@@ -380,7 +407,10 @@
380407
<number>6</number>
381408
</property>
382409
<property name="minimum">
383-
<double>-99.989999999999995</double>
410+
<double>-1000.000000000000000</double>
411+
</property>
412+
<property name="maximum">
413+
<double>1000.000000000000000</double>
384414
</property>
385415
</widget>
386416
</item>
@@ -397,7 +427,10 @@
397427
<number>6</number>
398428
</property>
399429
<property name="minimum">
400-
<double>-99.989999999999995</double>
430+
<double>-1000.000000000000000</double>
431+
</property>
432+
<property name="maximum">
433+
<double>1000.000000000000000</double>
401434
</property>
402435
</widget>
403436
</item>
@@ -414,7 +447,10 @@
414447
<number>6</number>
415448
</property>
416449
<property name="minimum">
417-
<double>-99.989999999999995</double>
450+
<double>-1000.000000000000000</double>
451+
</property>
452+
<property name="maximum">
453+
<double>1000.000000000000000</double>
418454
</property>
419455
</widget>
420456
</item>
@@ -558,7 +594,10 @@
558594
<number>6</number>
559595
</property>
560596
<property name="minimum">
561-
<double>-99.989999999999995</double>
597+
<double>-1000.000000000000000</double>
598+
</property>
599+
<property name="maximum">
600+
<double>1000.000000000000000</double>
562601
</property>
563602
</widget>
564603
</item>
@@ -575,7 +614,10 @@
575614
<number>6</number>
576615
</property>
577616
<property name="minimum">
578-
<double>-99.989999999999995</double>
617+
<double>-1000.000000000000000</double>
618+
</property>
619+
<property name="maximum">
620+
<double>1000.000000000000000</double>
579621
</property>
580622
</widget>
581623
</item>
@@ -592,7 +634,10 @@
592634
<number>6</number>
593635
</property>
594636
<property name="minimum">
595-
<double>-99.989999999999995</double>
637+
<double>-1000.000000000000000</double>
638+
</property>
639+
<property name="maximum">
640+
<double>1000.000000000000000</double>
596641
</property>
597642
</widget>
598643
</item>

src/Interface/Modules/Visualization/ShowField.ui

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,14 @@
104104
</widget>
105105
</item>
106106
<item>
107-
<widget class="QDoubleSpinBox" name="nodeTransparencyDoubleSpinBox_"/>
107+
<widget class="QDoubleSpinBox" name="nodeTransparencyDoubleSpinBox_">
108+
<property name="maximum">
109+
<double>1.000000000000000</double>
110+
</property>
111+
<property name="singleStep">
112+
<double>0.100000000000000</double>
113+
</property>
114+
</widget>
108115
</item>
109116
</layout>
110117
</item>

src/Modules/Math/CreateGeometricTransform.cc

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ void CreateGeometricTransform::execute()
184184

185185
Transform local_transform;
186186

187-
// get the "fixed point"
187+
// get the "fixed point" This only gets the translation vector. From the translation tab.
188188
Vector t(state->getValue(Parameters::TranslateVectorX).toDouble(),
189189
state->getValue(Parameters::TranslateVectorY).toDouble(),
190190
state->getValue(Parameters::TranslateVectorZ).toDouble());
@@ -197,6 +197,10 @@ void CreateGeometricTransform::execute()
197197
}
198198
else if (which_transform == 1) //scale
199199
{
200+
Vector scale_point(state->getValue(Parameters::ScalePointX).toDouble(),
201+
state->getValue(Parameters::ScalePointY).toDouble(),
202+
state->getValue(Parameters::ScalePointZ).toDouble());
203+
200204
double new_scale = state->getValue(Parameters::UniformScale).toDouble();
201205
double s = pow(10., new_scale);
202206
double new_scalex = state->getValue(Parameters::ScalePointX).toDouble();
@@ -206,20 +210,29 @@ void CreateGeometricTransform::execute()
206210
double new_scalez = state->getValue(Parameters::ScalePointZ).toDouble();
207211
double sz = pow(10., new_scalez)*s;
208212
Vector sc(sx, sy, sz);
209-
local_transform.post_translate(t);
213+
local_transform.post_translate(scale_point);
210214
local_transform.post_scale(sc);
211-
local_transform.post_translate(-t);
215+
local_transform.post_translate(-scale_point);
212216
}
213217
else if (which_transform == 2) //rotate
214218
{
219+
Vector rotate_point(state->getValue(Parameters::RotatePointX).toDouble(),
220+
state->getValue(Parameters::RotatePointY).toDouble(),
221+
state->getValue(Parameters::RotatePointZ).toDouble());
222+
//std::cout<<"orig transform = "<<local_transform<<std::endl;
223+
//std::cout<<"orig transform = "<<std::endl;
224+
215225
Vector axis(state->getValue(Parameters::RotateAxisX).toDouble(),
216226
state->getValue(Parameters::RotateAxisY).toDouble(),
217227
state->getValue(Parameters::RotateAxisZ).toDouble());
218228
if (!axis.length2()) axis.x(1);
219229
axis.normalize();
220-
local_transform.post_translate(t);
230+
local_transform.post_translate(rotate_point);
231+
//std::cout<<"1st transform = "<<local_transform<<std::endl;
221232
local_transform.post_rotate(state->getValue(Parameters::RotateTheta).toDouble()*M_PI / 180., axis);
222-
local_transform.post_translate(-t);
233+
//std::cout<<"2nd transform = "<<local_transform<<std::endl;
234+
local_transform.post_translate(-rotate_point);
235+
//std::cout<<"3rd transform = "<<local_transform<<std::endl;
223236
}
224237
else if (which_transform == 3) //shear
225238
{

0 commit comments

Comments
 (0)