<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style>
<!--
@font-face
        {font-family:Calibri}
@font-face
        {font-family:Consolas}
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif"}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline}
span.EmailStyle17
        {font-family:"Calibri","sans-serif";
        color:windowtext}
.MsoChpDefault
        {font-family:"Calibri","sans-serif"}
@page WordSection1
        {margin:70.85pt 70.85pt 2.0cm 70.85pt}
-->
</style><style id="owaParaStyle" type="text/css">P {margin-top:0;margin-bottom:0;}</style>
</head>
<body ocsi="0" fpstyle="1" link="blue" vlink="purple" lang="EN-GB">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Hi Fabio,<br>
<br>
You could try / take a look at these two functions that are related to image direction. I have had some confusion about direction matrix orientation and how to index into it, so these aren't guaranteed to be correct. Hope this helps.<br>
<br>
Roy<br>
<br>
def itkImage_print_direction_cosine_matrix(itkImage):<br>
    vnl_matrix = itkImage.GetDirection().GetVnlMatrix()<br>
    for i in range(3):<br>
        for j in range(3):<br>
            print "{:>8.4f}".format(vnl_matrix.get(i,j)),<br>
        print<br>
<br>
def itkImage_set_direction_cosine_matrix(itkImage,direction_cosine_matrix):<br>
    """ <br>
    direction_cosine_matrix is assumed to be<br>
    of the form<br>
    <br>
    R0 C0 S0<br>
    R1 C1 S1<br>
    R2 C2 S2<br>
<br>
    so we switch R and C to accomodate ITK's column<br>
    major order.    <br>
    """<br>
    for i in range(3):<br>
        for j in range(3):<br>
            if j == 0:<br>
                col_idx = 1<br>
            if j == 1:<br>
                col_idx = 0<br>
            if j == 2:<br>
                col_idx = 2              <br>
            itkImage.GetDirection().GetVnlMatrix().set(i,j,direction_cosine_matrix[i,col_idx])<br>
<br>
<br>
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<hr tabindex="-1">
<div style="direction: ltr;" id="divRpF949575"><font color="#000000" size="2" face="Tahoma"><b>From:</b> Insight-users [insight-users-bounces@itk.org] on behalf of D'Isidoro Fabio [fisidoro@ethz.ch]<br>
<b>Sent:</b> Monday, September 12, 2016 12:19 PM<br>
<b>To:</b> insight-users@itk.org<br>
<b>Subject:</b> [ITK-users] ITK with Python Wrap: print itkMatrix proxy object<br>
</font><br>
</div>
<div></div>
<div>
<div class="WordSection1">
<p class="MsoNormal">Hallo,</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">I am using ITK with Python wrap. I would like to print the direction matrix of a 3D image obtained with the command
</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span style="font-size:9.5pt; font-family:Consolas; color:black; background:white">image.GetDirection()</span><span style="font-size:9.5pt; font-family:Consolas; color:black"></span></p>
<p class="MsoNormal"><span style="font-size:9.5pt; font-family:Consolas; color:black"> </span></p>
<p class="MsoNormal">However, what is printed is just </p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><itkMatrixPython.itkMatrixD33; proxy of <Swig object of type ‘itkMatrixD33 *’ at 0x0D3E1470> ></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">I understand it’s related to the wrapping, but how can I solve it?</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Thank you,</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Fabio</p>
</div>
</div>
</div>
</div>
</body>
</html>