Problematic parsing of matrix placeholder in edit transform algorithm

Dear ImFusion Team,

I would like to use an iws to apply a certain translation to a mesh. To do this I replace the “matrix” parameter with a placeholder as you can see below.

Before I replaced it with a placeholder, the exported iws with my transformation looked like this

Therefore I assume that the placeholder is a 4x4 matrix which is in this case read row by row.

To run this automatically, I have a python script that calls the ImFusionSuite together with the workspace file and a string composed of replacements for placeholders. Part of this string where the placeholder “Trafo” is replaces is
Screenshot from 2023-03-29 17-54-43

However, when this trafo is applied to the mesh, I get unexpected results
Screenshot from 2023-03-29 17-56-00

I assume it’s the order in which I pass the values that does not match…
How could I fix this?

Thank you,
Miruna

Hi Miruna,

I am not sure I understand the way you pass the Trafo value.
The target value should be something like 1 0 0 0.05 0 1 0 0 0 0 1 0 0 0 0 1 (and not ['1 0 0 0.05 0 1 0 0 0 0 1 0 0 0 0 1'])
It should be written in the Log Window:
[Workspace] Placeholder (Trafo) will be replaced by: 1 0 0 0.05 0 1 0 0 0 0 1 0 0 0 0 1

Hi Raphael,

thank you for your answer!

I tried passing only a string like this:
Screenshot from 2023-03-30 15-45-36

Screenshot from 2023-03-30 15-44-00

But then I run into the issue that only the first value is used to replace the placeholder:

Screenshot from 2023-03-30 15-44-49

I’m not sure how to achieve this: [Workspace] Placeholder (Trafo) will be replaced by: 1 0 0 0.05 0 1 0 0 0 0 1 0 0 0 0 1

I found the issue: in the string that I was passing to ImFusion suite I need to also add " before and after the matrix string. This fixed the problem!

Thank you,
Miruna

1 Like