
Assign a row from a 2D wave to a "beam" in a 3D wave

remolorio
Hello
How does one assign a row from a 2D wave to a "beam" in a 3D wave (given the same numer of colums in the 2D wave as layers in the 3D wave)?
I have tried
(1)
wave3d[0][0][]=wave2d[0][q]
However, this only puts the value of wave2d[0][0] in every layer of wave3d
(2)
imagetransform /G=0 getrow wave2d imagetransform /Beam={0,0} /D=W_ExtractedRow setbeam wave3d
...this seems to work as a simple example, however I cannot use this for a procedure with a loop since I cannot set the flags /Beam and /G as variables.
Thanks in advance
Remo

Forum

Support

Gallery
Igor Pro 9
Learn More
Igor XOP Toolkit
Learn More
Igor NIDAQ Tools MX
Learn More
Hi,
Your assignment is creating a row (1d assignments), just in a way that is not easily seen in the table view. If you move between layers you see the single row of values in the third dimension. This is a beam. If you want to have a single row or column on each layer try this. It actually creates a 2d assignment but with only a column row on each layer. It is still 2d set of values.
Does this do what you want?
wave3d[0][][]=wave2d[q][r]
Two set of assignments.
Andy
December 16, 2019 at 06:20 am - Permalink
This should work:
wave3d[0][0][]=wave2d[0][r]
On the right-hand side of a wave assignment, p, q, r, s represent the currently-being-assigned row, column, layer and chunk on the left-hand side. So your RHS is iterating through layers of a beam, and to use that number you need r.
December 16, 2019 at 01:52 pm - Permalink
Quick comment:
ImageTransform is an antediluvian operation. You should be able to set the various flags for ImageTransform in a function if you wrap them with parenthesis. Here is an example:
December 16, 2019 at 06:01 pm - Permalink
Thanks for all the promt replies.
wave3d[0][0][]=wave2d[0][r]
...works for me. I think I missunderstood the role of p,q,r, and s on the right hand side.
December 16, 2019 at 11:55 pm - Permalink
DisplayHelpTopic "Waveform Arithmetic and Assignment" will tell you more than you ever wanted to know about wave assignment!
December 17, 2019 at 09:38 am - Permalink