Open3d: Question about origin parameter in o3d.geometry.TriangleMesh.create_coordinate_frame function

Created on 7 Sep 2020  路  2Comments  路  Source: intel-isl/Open3D

IMPORTANT: Please use the following template to report the bug.


Describe the bug
When I set the different origins of the create_coordinate_frame, I find that the origin is not in the world coordinate. I wonder if the function offers a wrong feature. The example code is like this

import open3d as o3d
import numpy as np
points = [
        [0, 0, 0],
        [10, 0, 0],
        [0, 10, 0],
        [0, 0, 10]
]
lines = [
        [0, 1],
        [0, 2],
        [0, 3]
]
line_set = o3d.geometry.LineSet(
    points=o3d.utility.Vector3dVector(points),
    lines=o3d.utility.Vector2iVector(lines),
)
line_set.colors = o3d.utility.Vector3dVector(points[1:])

camera = o3d.geometry.TriangleMesh.create_coordinate_frame(origin=[0, 0, 1], size=0.5)

bbx = o3d.geometry.AxisAlignedBoundingBox([0,0,0], [1,1,1])
o3d.visualization.draw_geometries([line_set, bbx, camera])

We can see that when origin of the coordinate frame is set to 0, 0, 1. Its actual origin in the world coordinate is 0, 0, -1. I find the x, y, and z are all inverse. I wonder what's the possible reason for this feature? Is this a bug? RGB: XYZ
image

bug (but not a build issue)

Most helpful comment

If you're using the PyPI version of Open3D (0.10.0), or installed it via pip/conda, you might want to compile this repository from source and install Open3D v0.10.1

The bug was fixed after the latest release (0.10.0). Here's a link to a previous issue for the same bug: https://github.com/intel-isl/Open3D/issues/2010

All 2 comments

If you're using the PyPI version of Open3D (0.10.0), or installed it via pip/conda, you might want to compile this repository from source and install Open3D v0.10.1

The bug was fixed after the latest release (0.10.0). Here's a link to a previous issue for the same bug: https://github.com/intel-isl/Open3D/issues/2010

Thanks a lot!

Was this page helpful?
0 / 5 - 0 ratings