Skip to content

Commit fc9c97a

Browse files
committed
Pass transform through new type. Closes #1387
1 parent 60d6b52 commit fc9c97a

File tree

3 files changed

+18
-0
lines changed

3 files changed

+18
-0
lines changed

src/Core/Datatypes/Color.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
#include <iosfwd>
3535
#include <Core/Datatypes/Datatype.h>
3636
#include <Core/Datatypes/Geometry.h>
37+
#include <Core/GeometryPrimitives/Transform.h>
3738
#include <Core/Algorithms/Base/Variable.h>
3839
#include <Core/Datatypes/share.h>
3940

@@ -80,6 +81,7 @@ namespace Datatypes {
8081
struct SCISHARE ViewSceneFeedback : ModuleFeedback
8182
{
8283
Algorithms::Variable info;
84+
Core::Geometry::Transform transform;
8385
};
8486

8587
}}}

src/Interface/Modules/Render/ViewScene.cc

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ DEALINGS IN THE SOFTWARE.
3838
#include <Interface/Modules/Render/Screenshot.h>
3939
#include <Graphics/Glyphs/GlyphGeom.h>
4040
#include <Graphics/Datatypes/GeometryImpl.h>
41+
#include <Core/GeometryPrimitives/Transform.h>
4142

4243
using namespace SCIRun::Gui;
4344
using namespace SCIRun::Dataflow::Networks;
@@ -1613,6 +1614,18 @@ void ViewSceneDialog::saveNewGeometryChanged(int state)
16131614
saveScreenshotOnNewGeometry_ = state != 0;
16141615
}
16151616

1617+
namespace //TODO: move to appropriate location
1618+
{
1619+
Transform toSciTransform(const glm::mat4& mat)
1620+
{
1621+
Transform t;
1622+
for (int i = 0; i < 4; ++i)
1623+
for (int j = 0; j < 4; ++j)
1624+
t.set_mat_val(i, j, mat[i][j]);
1625+
return t;
1626+
}
1627+
}
1628+
16161629
void ViewSceneDialog::sendGeometryFeedbackToState(int x, int y)
16171630
{
16181631
//qDebug() << "sendGeometryFeedbackToState" << x << y;
@@ -1652,6 +1665,7 @@ void ViewSceneDialog::sendGeometryFeedbackToState(int x, int y)
16521665

16531666
ViewSceneFeedback vsf;
16541667
vsf.info = var;
1668+
vsf.transform = toSciTransform(trans);
16551669
state_->setTransientValue(Parameters::GeometryFeedbackInfo, vsf);
16561670
}
16571671

src/Modules/Fields/EditMeshBoundingBox.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,8 @@ void EditMeshBoundingBox::processWidgetFeedback(const Core::Datatypes::ModuleFee
172172
std::cout << "EditMeshBoundingBox::processWidgetFeedback, name received from ViewSceneDialog is:\n\t" << xyTr.name() << std::endl;
173173
for (const auto& subVar : xyTr.toVector())
174174
std::cout << "EditMeshBoundingBox::processWidgetFeedback, value received from ViewSceneDialog is:\n\t" << subVar << std::endl;
175+
std::cout << "EditMeshBoundingBox::processWidgetFeedback transfrom from ViewSceneDialog:" << std::endl;
176+
vsf.transform.print();
175177
}
176178

177179
void EditMeshBoundingBox::createBoxWidget()

0 commit comments

Comments
 (0)