MantisBT - VTK | |||||
| View Issue Details | |||||
| ID | Project | Category | View Status | Date Submitted | Last Update |
| 0009062 | VTK | (No Category) | public | 2009-05-25 14:18 | 2013-04-05 20:25 |
| Reporter | Stefano Trapani | ||||
| Assigned To | David Gobbi | ||||
| Priority | normal | Severity | major | Reproducibility | always |
| Status | closed | Resolution | won't fix | ||
| Platform | OS | OS Version | |||
| Product Version | |||||
| Target Version | Fixed in Version | ||||
| Project | |||||
| Type | |||||
| Summary | 0009062: vtkTransform GetOrientationWXYZ returns wrong values after hand-inverting scaling | ||||
| Description | This bug was found using VTK 5.0.4 with Python 2.5.2 [GCC 4.3.2] vtkTransform GetOrientationWXYZ returns wrong values if the vtkTransform has undergone hand-inverting scaling. Here is a simple python example where one wants to define the isometric transform (x,y,z)->(-x,-y,-z) that inverts the coordinates trhough the origin: > from vtk import * > T = vtkTransform() > T.Scale(-1,-1,-1) While T.GetMatrix(), T.GetScale() and T.GetPosition() return the expected values, T.GetOrientationWXYZ() does not: > print T.GetMatrix() vtkMatrix4x4 (0x16515f0) Debug: Off Modified Time: 9 Reference Count: 3 Registered Events: (none) Elements: -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 > > T.GetScale() (-1.0, -1.0, -1.0) > > T.GetPosition() (0.0, 0.0, 0.0) > > T.GetOrientationWXYZ() (180.0, 0.0, 0.0, 1.0) T.GetOrientationWXYZ should return (0.0, 0.0, 0.0, 1.0), not (180.0, 0.0, 0.0, 1.0). Combining an OrientationWXYZ=(180.0, 0.0, 0.0, 1.0) with the Scale and Position given above would correspond to the isometry (x,y,z)->(x,y,-z) which is a mirror reflection throgh the (xy) plane, not an inversion through the origin. I came across this problem using VTK 5.0.4 with Python 2.5.2 [GCC 4.3.2]. Using the previous VTK 5.0.3 version, T.GetOrientationWXZY() would produce a more serious segmentation fault. This bug has been fixed in VTK 5.0.4 (http://www.kitware.com/news/home/browse/VTK?2008_01_22&VTK+Patch+Release [^]) but apparently the results returned by GetOrientationWXZY() are not correct yet. I have not tested with more recent version of VTK. Nor have I checked the GetOrientation() returned values ... | ||||
| Steps To Reproduce | |||||
| Additional Information | |||||
| Tags | No tags attached. | ||||
| Relationships | |||||
| Attached Files | |||||
| Issue History | |||||
| Date Modified | Username | Field | Change | ||
| 2009-05-25 14:18 | Stefano Trapani | New Issue | |||
| 2011-02-26 10:23 | David Gobbi | Assigned To | => David Gobbi | ||
| 2011-02-26 10:23 | David Gobbi | Status | backlog => tabled | ||
| 2011-04-21 17:56 | David Gobbi | Note Added: 0026240 | |||
| 2011-04-21 18:04 | David Gobbi | Status | tabled => @80@ | ||
| 2011-04-21 18:04 | David Gobbi | Resolution | open => won't fix | ||
| 2011-06-16 13:11 | Zack Galbreath | Category | => (No Category) | ||
| 2013-04-05 20:25 | Berk Geveci | Status | customer review => closed | ||
| Notes | |||||
|
|
|||||
|
|
||||