INNER CODE UNIT · Python
cv_gl
muskie82/MonoGS · gui/gui_utils.py:13
cv_gl = np.array([[1, 0, 0, 0], [0, -1, 0, 0], [0, 0, -1, 0], [0, 0, 0, 1]])
class Frustum:
def __init__(self, line_set, view_dir=None, view_dir_behind=None, size=None):
self.line_set = line_set
self.view_dir = view_dir
self.view_dir_behind = view_dir_behind
self.size = size
def update_pose(self, pose):
points = np.asarray(self.line_set.points)
points_hmg = np.hstack([points, np.ones((points.shape[0], 1))])
points = (pose @ points_hmg.transpose())[0:3, :].transpose()
base = np.array([[0.0, 0.0, 0.0]]) * self.size
base_hmg = np.hstack([base, np.ones((base.shape[0], 1))])
cameraeye = pose @ base_hmg.transpose()