Source code for sym.ops.polynomial_camera_cal.lie_group_ops
# -----------------------------------------------------------------------------# This file was autogenerated by symforce from template:# ops/CLASS/lie_group_ops.py.jinja# Do NOT modify by hand.# -----------------------------------------------------------------------------# ruff: noqa: PLR0915, F401, PLW0211, PLR0914from__future__importannotationsimportmathimporttypingasTimportnumpyimportsym
[docs]classLieGroupOps(object):""" Python LieGroupOps implementation for :py:class:`symforce.cam.polynomial_camera_cal.PolynomialCameraCal`. """
[docs]@staticmethoddeffrom_tangent(vec:numpy.ndarray,epsilon:float)->sym.PolynomialCameraCal:# Total ops: 0# Input arraysifvec.shape==(8,):vec=vec.reshape((8,1))elifvec.shape!=(8,1):raiseIndexError("vec is expected to have shape (8, 1) or (8,); instead had shape {}".format(vec.shape))# Intermediate terms (0)# Output terms_res=[0.0]*8_res[0]=vec[0,0]_res[1]=vec[1,0]_res[2]=vec[2,0]_res[3]=vec[3,0]_res[4]=vec[4,0]_res[5]=vec[5,0]_res[6]=vec[6,0]_res[7]=vec[7,0]returnsym.PolynomialCameraCal.from_storage(_res)
[docs]@staticmethoddefretract(a:sym.PolynomialCameraCal,vec:numpy.ndarray,epsilon:float)->sym.PolynomialCameraCal:# Total ops: 8# Input arrays_a=a.dataifvec.shape==(8,):vec=vec.reshape((8,1))elifvec.shape!=(8,1):raiseIndexError("vec is expected to have shape (8, 1) or (8,); instead had shape {}".format(vec.shape))# Intermediate terms (0)# Output terms_res=[0.0]*8_res[0]=_a[0]+vec[0,0]_res[1]=_a[1]+vec[1,0]_res[2]=_a[2]+vec[2,0]_res[3]=_a[3]+vec[3,0]_res[4]=_a[4]+vec[4,0]_res[5]=_a[5]+vec[5,0]_res[6]=_a[6]+vec[6,0]_res[7]=_a[7]+vec[7,0]returnsym.PolynomialCameraCal.from_storage(_res)