projective_trans_point_3d T_projective_trans_point_3d ProjectiveTransPoint3d ProjectiveTransPoint3d projective_trans_point_3d (Operator)
Name
projective_trans_point_3d T_projective_trans_point_3d ProjectiveTransPoint3d ProjectiveTransPoint3d projective_trans_point_3d — Projiziert einen 3D-Punkt mittels einer projektiven
Transformationsmatrix.
Signatur
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_3d projective_trans_point_3d ProjectiveTransPoint3d ProjectiveTransPoint3d ProjectiveTransPoint3d projective_trans_point_3d wendet die homogene projektive
Transformationsmatrix HomMat3D HomMat3D HomMat3D HomMat3D homMat3D hom_mat_3d auf alle Eingabepunkte
(Px Px Px Px px px ,Py Py Py Py py py ,Pz Pz Pz Pz pz pz ) an und liefert ein Tupel von
Ergebnispunkten (Qx Qx Qx Qx qx qx ,Qy Qy Qy Qy qy qy ,Qz Qz Qz Qz qz qz ) zurück. Die
Transformation wird durch eine homogene Transformationsmatrix
beschrieben, die in HomMat3D HomMat3D HomMat3D HomMat3D homMat3D hom_mat_3d übergeben wird. Dies
entspricht den folgenden Gleichungen (Ein- und Ausgabepunkte als
homogene Vektoren dargestellt):
projective_trans_point_3d projective_trans_point_3d ProjectiveTransPoint3d ProjectiveTransPoint3d ProjectiveTransPoint3d projective_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_3d projective_trans_hom_point_3d ProjectiveTransHomPoint3d ProjectiveTransHomPoint3d ProjectiveTransHomPoint3d projective_trans_hom_point_3d verwendet werden.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Automatisch parallelisiert auf interner Datenebene.
Parameter
HomMat3D HomMat3D HomMat3D HomMat3D homMat3D hom_mat_3d (input_control) hom_mat3d → HHomMat3D , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Homogene projektive Transformationsmatrix.
Px Px Px Px px px (input_control) number(-array) → HTuple MaybeSequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Eingabepunkt (x-Koordinate).
Py Py Py Py py py (input_control) number(-array) → HTuple MaybeSequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Eingabepunkt (y-Koordinate).
Pz Pz Pz Pz pz pz (input_control) number(-array) → HTuple MaybeSequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Eingabepunkt (z-Koordinate).
Qx Qx Qx Qx qx qx (output_control) number(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Ausgabepunkt (x-Koordinate).
Qy Qy Qy Qy qy qy (output_control) number(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Ausgabepunkt (y-Koordinate).
Qz Qz Qz Qz qz qz (output_control) number(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Ausgabepunkt (z-Koordinate).
Vorgänger
vector_to_hom_mat3d vector_to_hom_mat3d VectorToHomMat3d VectorToHomMat3d VectorToHomMat3d vector_to_hom_mat3d
Alternativen
projective_trans_hom_point_3d projective_trans_hom_point_3d ProjectiveTransHomPoint3d ProjectiveTransHomPoint3d ProjectiveTransHomPoint3d projective_trans_hom_point_3d
Modul
Foundation