; ; BARANYI IV ; ========== ; ; ; Name: BARANYIS PROJEKTION IV ; Quelle: Marton, M.: Die kartographische Darstellung der Ozeane in der geänderten ; Projektion IV von Baranyi. Kartographische Nachrichten 3/2006, Bonn Bad Godesberg 2006. ; Richtung: Direkte Transformation ; ; Das Programm übernimmt die Koordinaten eines Punktes (x/y) und transformiert ; diese in einen Punkt (x'/y'). ; ; x/y sind ebene Zielpunktkoordinaten, x'/y' geben die geogr. Breite und Länge ; der Position auf der Quell-Erdkugel, auf der der Zielpunkt gelesen werden ; kann. ; ; Maßstab und Berührungspunkt werden abgefragt. ; Die Zielbildgeometrie wird dem Sekundäroperanden oder einem Fixbild entnommen. ; Der Berührungspunkt wird bildmittig gesetzt. ; ; Literatur: s. o. ; (C) Rolf Böhm 2006 ; Declarations ; ============ ; ; Variables names by Marton ; ; ; Current coords ; _name Baranyi~IV _var phi ; Geographische Breite _var lambda ; Geographische Länge _var slambda ; Sign(Lambda) _var dlambda ; Delta Lambda _var r9 ; Register Nine ; ; Constants ; _var lambda0 ; Geogr. Länge des Bildmittelpunktes _var scale ; Kartenmaßstabszahl (also 1000000, nicht 1/1000000) ; ; x, y, x', y', Cx', Cy', °(, (°, pi, pi/2 etc. sind vordefinierte globale Konstanten ; ; Init ; ==== ; tstne initial 077$ ; Dialog pause Hinweis:~Dieses~Programm~rechnet~eine~Vorwärtstransformation.\\Es~muss~mit~einer~direkt~arbeitenden~Projection~engine~abgearbeitet~werden. input scale Maßstabszahl input lambda0 Mittelpunktslänge~in~Grad~(Original-Baranyi:~10) ; Clip the input values clip scale 1 1E12 clip lambda0 -180 180 ; Is init mov initial 1 077$: ; ; SIMD-Area ; ========= ; ; Direct transformation ; --------------------- ; mov lambda x ; Geographische Länge mov phi y ; Geographische Breite sub lambda lambda0 cmod lambda -180 180 ; x, y are ; 1st) the by RTA pre-defined input coords -- Phi and Lambda, ; 2nd) the plane result coords X and X, before exit written to RTA pre-defined x' and y' ; ; Into arc ; -------- ; mul phi °( mul lambda °( ; Compute the projection ; ---------------------- ; ; y ; mov r1 phi mov r3 phi power r3 3 mov r5 phi power r5 5 mov r7 phi power r7 7 mov r9 phi power r9 9 ; mul r1 1 mul r3 0.073880 mul r5 -0.0538964 mul r7 0.01560242 mul r9 -0.001639406 mov y r1 add y r3 add y r5 add y r7 add y r9 ; ; x (1st) ; mov slambda lambda sgn slambda mov r0 phi abs r0 cmpgt r0 1.3625785 707$ 705$: mov r2 y power r2 2 mov x 2.115393 sub x r2 root x 2 add x 1.22172 jump 709$ 707$: mov r3 y abs r3 add r3 4.58448 power r3 2 mov x 38.4308 sub x r3 root x 2 709$: ; ; x (2nd) ; mov r4 lambda abs r4 mul r4 0.11679 add r4 1 log r4 div r4 0.31255 mul r4 slambda mul x r4 ; ; Scale, Earth radius and map centre ; ---------------------------------- ; mul x Rx' ; Erdradius div x scale ; Kartenmaßstab add x Cx' mul y Ry' div y scale add y Cy' ; ; The end ; ------- ; 111$: mov x' x mov y' y exit _end