convert_point_3d_spher_to_cart convert_point_3d_spher_to_cart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart convert_point_3d_spher_to_cart (Operator)
Name
convert_point_3d_spher_to_cart convert_point_3d_spher_to_cart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart convert_point_3d_spher_to_cart — Konvertieren sphärischer Koordinaten eines 3D-Punktes in kartesische
Koordinaten.
Signatur
Herror convert_point_3d_spher_to_cart (double Longitude , double Latitude , double Radius , const char* EquatPlaneNormal , const char* ZeroMeridian , double* X , double* Y , double* Z )
Herror T_convert_point_3d_spher_to_cart (const Htuple Longitude , const Htuple Latitude , const Htuple Radius , const Htuple EquatPlaneNormal , const Htuple ZeroMeridian , Htuple* X , Htuple* Y , Htuple* Z )
void ConvertPoint3dSpherToCart (const HTuple& Longitude , const HTuple& Latitude , const HTuple& Radius , const HTuple& EquatPlaneNormal , const HTuple& ZeroMeridian , HTuple* X , HTuple* Y , HTuple* Z )
static void HMisc ::ConvertPoint3dSpherToCart (const HTuple& Longitude , const HTuple& Latitude , const HTuple& Radius , const HString& EquatPlaneNormal , const HString& ZeroMeridian , HTuple* X , HTuple* Y , HTuple* Z )
static void HMisc ::ConvertPoint3dSpherToCart (double Longitude , double Latitude , double Radius , const HString& EquatPlaneNormal , const HString& ZeroMeridian , double* X , double* Y , double* Z )
static void HMisc ::ConvertPoint3dSpherToCart (double Longitude , double Latitude , double Radius , const char* EquatPlaneNormal , const char* ZeroMeridian , double* X , double* Y , double* Z )
static void HMisc ::ConvertPoint3dSpherToCart (double Longitude , double Latitude , double Radius , const wchar_t* EquatPlaneNormal , const wchar_t* ZeroMeridian , double* X , double* Y , double* Z )
(Nur Windows)
static void HOperatorSet .ConvertPoint3dSpherToCart (HTuple longitude , HTuple latitude , HTuple radius , HTuple equatPlaneNormal , HTuple zeroMeridian , out HTuple x , out HTuple y , out HTuple z )
static void HMisc .ConvertPoint3dSpherToCart (HTuple longitude , HTuple latitude , HTuple radius , string equatPlaneNormal , string zeroMeridian , out HTuple x , out HTuple y , out HTuple z )
static void HMisc .ConvertPoint3dSpherToCart (double longitude , double latitude , double radius , string equatPlaneNormal , string zeroMeridian , out double x , out double y , out double z )
def convert_point_3d_spher_to_cart (longitude : MaybeSequence[float], latitude : MaybeSequence[float], radius : MaybeSequence[float], equat_plane_normal : str, zero_meridian : str) -> Tuple[Sequence[float], Sequence[float], Sequence[float]]
def convert_point_3d_spher_to_cart_s (longitude : MaybeSequence[float], latitude : MaybeSequence[float], radius : MaybeSequence[float], equat_plane_normal : str, zero_meridian : str) -> Tuple[float, float, float]
Beschreibung
Der Operator convert_point_3d_spher_to_cart convert_point_3d_spher_to_cart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart convert_point_3d_spher_to_cart konvertiert die
sphärischen Koordinaten eines 3D-Punktes, die in Longitude Longitude Longitude Longitude longitude longitude
(geographische Länge), Latitude Latitude Latitude Latitude latitude latitude (geographische Breite) und
Radius Radius Radius Radius radius radius gegeben sind, in kartesische Koordinaten X X X X x x ,
Y Y Y Y y y und Z Z Z Z z z . Die sphärischen Koordinaten
Longitude Longitude Longitude Longitude longitude longitude und Latitude Latitude Latitude Latitude latitude latitude müssen im Bogenmaß
übergeben werden. Der Parameter Latitude Latitude Latitude Latitude latitude latitude muss dabei im
Bereich
liegen, wobei der
Nordpol die Breite
und der Südpol entsprechend die
Breite
hat.
Die Lage des sphärischen Koordinatensystems bezüglich des
kartesischen Koordinatensystems kann mit den Parametern
EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal equatPlaneNormal equat_plane_normal und ZeroMeridian ZeroMeridian ZeroMeridian ZeroMeridian zeroMeridian zero_meridian festgelegt
werden.
EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal equatPlaneNormal equat_plane_normal bestimmt dabei die Normale der
Äquatorebene (Länge == 0) in Richtung Nordpol (positive Breite) und
kann die folgenden Werte annehmen:
'x' "x" "x" "x" "x" "x" :
Die Äquatorebene ist die yz-Ebene. Die positive x-Achse zeigt zum Nordpol.
'-x' "-x" "-x" "-x" "-x" "-x" :
Die Äquatorebene ist die yz-Ebene. Die positive x-Achse zeigt zum Südpol.
'y' "y" "y" "y" "y" "y" :
Die Äquatorebene ist die xz-Ebene. Die positive y-Achse zeigt zum Nordpol.
'-y' "-y" "-y" "-y" "-y" "-y" :
Die Äquatorebene ist die xz-Ebene. Die positive y-Achse zeigt zum Südpol.
'z' "z" "z" "z" "z" "z" :
Die Äquatorebene ist die xy-Ebene. Die positive z-Achse zeigt zum Nordpol.
'-z' "-z" "-z" "-z" "-z" "-z" :
Die Äquatorebene ist die xy-Ebene. Die positive z-Achse zeigt zum Südpol.
Die Lage des Nullmeridians kann mit dem Parameter
ZeroMeridian ZeroMeridian ZeroMeridian ZeroMeridian zeroMeridian zero_meridian festgelegt werden. Dazu muss die (in der
Äquatorebene liegende) Koordinatenachse angegeben werden, die zum
Nullmeridian zeigen soll. Folgende Werte für ZeroMeridian ZeroMeridian ZeroMeridian ZeroMeridian zeroMeridian zero_meridian
sind zulässig:
'x' "x" "x" "x" "x" "x" :
Die positive x-Achse zeigt in Richtung des Nullmeridians.
'-x' "-x" "-x" "-x" "-x" "-x" :
Die negative x-Achse zeigt in Richtung des Nullmeridians.
'y' "y" "y" "y" "y" "y" :
Die positive y-Achse zeigt in Richtung des Nullmeridians.
'-y' "-y" "-y" "-y" "-y" "-y" :
Die negative y-Achse zeigt in Richtung des Nullmeridians.
'z' "z" "z" "z" "z" "z" :
Die positive z-Achse zeigt in Richtung des Nullmeridians.
'-z' "-z" "-z" "-z" "-z" "-z" :
Die negative z-Achse zeigt in Richtung des Nullmeridians.
Es sind nur sinnvolle Kombinationen von EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal equatPlaneNormal equat_plane_normal
und ZeroMeridian ZeroMeridian ZeroMeridian ZeroMeridian zeroMeridian zero_meridian zulässig, d.h. die Normale der
Äquatorebene darf nicht parallel zur Richtung des Nullmeridians
sein. Demnach ist beispielsweise die Kombination
EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal equatPlaneNormal equat_plane_normal ='y' "y" "y" "y" "y" "y" und
ZeroMeridian ZeroMeridian ZeroMeridian ZeroMeridian zeroMeridian zero_meridian ='-y' "-y" "-y" "-y" "-y" "-y" ungültig.
Beachte: Um eine konsistente Rückkonvertierung von kartesischen in
sphärische Koordinaten mit convert_point_3d_cart_to_spher convert_point_3d_cart_to_spher ConvertPoint3dCartToSpher ConvertPoint3dCartToSpher ConvertPoint3dCartToSpher convert_point_3d_cart_to_spher zu
gewährleisten, müssen für EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal equatPlaneNormal equat_plane_normal und
ZeroMeridian ZeroMeridian ZeroMeridian ZeroMeridian zeroMeridian zero_meridian die selben Werte angegeben werden wie bei
convert_point_3d_spher_to_cart convert_point_3d_spher_to_cart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart convert_point_3d_spher_to_cart .
Der Operator convert_point_3d_spher_to_cart convert_point_3d_spher_to_cart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart convert_point_3d_spher_to_cart kann z.B. dazu
genutzt werden, eine in sphärischen Koordinaten gegebene
Kameraposition in kartesische Koordinaten umzurechnen. Das Ergebnis
kann dann mit create_cam_pose_look_at_point create_cam_pose_look_at_point CreateCamPoseLookAtPoint CreateCamPoseLookAtPoint CreateCamPoseLookAtPoint create_cam_pose_look_at_point in eine vollständige
Kamera-Pose umgerechnet werden.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Wird ohne Parallelisierung verarbeitet.
Parameter
Longitude Longitude Longitude Longitude longitude longitude (input_control) angle.rad(-array) → HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
Geographische Länge des 3D-Punktes.
Latitude Latitude Latitude Latitude latitude latitude (input_control) angle.rad(-array) → HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
Geographische Breite des 3D-Punktes.
Restriktion: - pi / 2 <= Latitude && Latitude <= pi / 2
Radius Radius Radius Radius radius radius (input_control) real(-array) → HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
Radius des 3D-Punktes.
EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal EquatPlaneNormal equatPlaneNormal equat_plane_normal (input_control) string → HTuple str HTuple Htuple (string) (string ) (HString ) (char* )
Normalenvektor der Äquatorebene (zeigt zum Nordpol).
Defaultwert:
'-y'
"-y"
"-y"
"-y"
"-y"
"-y"
Werteliste: '-x' "-x" "-x" "-x" "-x" "-x" , '-y' "-y" "-y" "-y" "-y" "-y" , '-z' "-z" "-z" "-z" "-z" "-z" , 'x' "x" "x" "x" "x" "x" , 'y' "y" "y" "y" "y" "y" , 'z' "z" "z" "z" "z" "z"
ZeroMeridian ZeroMeridian ZeroMeridian ZeroMeridian zeroMeridian zero_meridian (input_control) string → HTuple str HTuple Htuple (string) (string ) (HString ) (char* )
Koordinatenachse in der Äquatorebene, die zum
Nullmeridian zeigt.
Defaultwert:
'-z'
"-z"
"-z"
"-z"
"-z"
"-z"
Werteliste: '-x' "-x" "-x" "-x" "-x" "-x" , '-y' "-y" "-y" "-y" "-y" "-y" , '-z' "-z" "-z" "-z" "-z" "-z" , 'x' "x" "x" "x" "x" "x" , 'y' "y" "y" "y" "y" "y" , 'z' "z" "z" "z" "z" "z"
X X X X x x (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
X-Koordinate des 3D-Punktes.
Y Y Y Y y y (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Y-Koordinate des 3D-Punktes.
Z Z Z Z z z (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Z-Koordinate des 3D-Punktes.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
convert_point_3d_spher_to_cart convert_point_3d_spher_to_cart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart convert_point_3d_spher_to_cart den Wert 2 (H_MSG_TRUE ).
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
get_shape_model_3d_params get_shape_model_3d_params GetShapeModel3dParams GetShapeModel3dParams GetShapeModel3dParams get_shape_model_3d_params
Siehe auch
convert_point_3d_cart_to_spher convert_point_3d_cart_to_spher ConvertPoint3dCartToSpher ConvertPoint3dCartToSpher ConvertPoint3dCartToSpher convert_point_3d_cart_to_spher
Modul
3D Metrology