projective_trans_point_3dT_projective_trans_point_3dProjectiveTransPoint3dProjectiveTransPoint3dprojective_trans_point_3d (Operator)

Name

projective_trans_point_3dT_projective_trans_point_3dProjectiveTransPoint3dProjectiveTransPoint3dprojective_trans_point_3d — Projiziert einen 3D-Punkt mittels einer projektiven Transformationsmatrix.

Signatur

projective_trans_point_3d( : : HomMat3D, Px, Py, Pz : Qx, Qy, Qz)

Herror T_projective_trans_point_3d(const Htuple HomMat3D, const Htuple Px, const Htuple Py, const Htuple Pz, Htuple* Qx, Htuple* Qy, Htuple* Qz)

void ProjectiveTransPoint3d(const HTuple& HomMat3D, const HTuple& Px, const HTuple& Py, const HTuple& Pz, HTuple* Qx, HTuple* Qy, HTuple* Qz)

HTuple HHomMat3D::ProjectiveTransPoint3d(const HTuple& Px, const HTuple& Py, const HTuple& Pz, HTuple* Qy, HTuple* Qz) const

double HHomMat3D::ProjectiveTransPoint3d(double Px, double Py, double Pz, double* Qy, double* Qz) const

static void HOperatorSet.ProjectiveTransPoint3d(HTuple homMat3D, HTuple px, HTuple py, HTuple pz, out HTuple qx, out HTuple qy, out HTuple qz)

HTuple HHomMat3D.ProjectiveTransPoint3d(HTuple px, HTuple py, HTuple pz, out HTuple qy, out HTuple qz)

double HHomMat3D.ProjectiveTransPoint3d(double px, double py, double pz, out double qy, out double qz)

def projective_trans_point_3d(hom_mat_3d: Sequence[float], px: MaybeSequence[Union[float, int]], py: MaybeSequence[Union[float, int]], pz: MaybeSequence[Union[float, int]]) -> Tuple[Sequence[float], Sequence[float], Sequence[float]]

def projective_trans_point_3d_s(hom_mat_3d: Sequence[float], px: MaybeSequence[Union[float, int]], py: MaybeSequence[Union[float, int]], pz: MaybeSequence[Union[float, int]]) -> Tuple[float, float, float]

Beschreibung

projective_trans_point_3dprojective_trans_point_3dProjectiveTransPoint3dProjectiveTransPoint3dProjectiveTransPoint3dprojective_trans_point_3d wendet die homogene projektive Transformationsmatrix HomMat3DHomMat3DHomMat3DHomMat3DhomMat3Dhom_mat_3d auf alle Eingabepunkte (PxPxPxPxpxpx,PyPyPyPypypy,PzPzPzPzpzpz) an und liefert ein Tupel von Ergebnispunkten (QxQxQxQxqxqx,QyQyQyQyqyqy,QzQzQzQzqzqz) zurück. Die Transformation wird durch eine homogene Transformationsmatrix beschrieben, die in HomMat3DHomMat3DHomMat3DHomMat3DhomMat3Dhom_mat_3d übergeben wird. Dies entspricht den folgenden Gleichungen (Ein- und Ausgabepunkte als homogene Vektoren dargestellt):

projective_trans_point_3dprojective_trans_point_3dProjectiveTransPoint3dProjectiveTransPoint3dProjectiveTransPoint3dprojective_trans_point_3d transformiert hierauf die homogenen Koordinaten in euklidische Koordinaten, indem durch Tw geteilt wird: Falls bei dieser Transformation ein Punkt in der unendlich fernen Ebene erzeugt wird (Tw = 0), wird eine Fehlermeldung zurückgeliefert. Falls dies nicht erwünscht ist, kann projective_trans_hom_point_3dprojective_trans_hom_point_3dProjectiveTransHomPoint3dProjectiveTransHomPoint3dProjectiveTransHomPoint3dprojective_trans_hom_point_3d verwendet werden.

Ausführungsinformationen

Parameter

HomMat3DHomMat3DHomMat3DHomMat3DhomMat3Dhom_mat_3d (input_control)  hom_mat3d HHomMat3D, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Homogene projektive Transformationsmatrix.

PxPxPxPxpxpx (input_control)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Eingabepunkt (x-Koordinate).

PyPyPyPypypy (input_control)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Eingabepunkt (y-Koordinate).

PzPzPzPzpzpz (input_control)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Eingabepunkt (z-Koordinate).

QxQxQxQxqxqx (output_control)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Ausgabepunkt (x-Koordinate).

QyQyQyQyqyqy (output_control)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Ausgabepunkt (y-Koordinate).

QzQzQzQzqzqz (output_control)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Ausgabepunkt (z-Koordinate).

Vorgänger

vector_to_hom_mat3dvector_to_hom_mat3dVectorToHomMat3dVectorToHomMat3dVectorToHomMat3dvector_to_hom_mat3d

Alternativen

projective_trans_hom_point_3dprojective_trans_hom_point_3dProjectiveTransHomPoint3dProjectiveTransHomPoint3dProjectiveTransHomPoint3dprojective_trans_hom_point_3d

Modul

Foundation