// Pzdr.J.P. , wer.24.07.2005 // !!!!!!!!!!!!!!!!!!!!!!!!!!! Obliczaj() !!!!!!!!!!!!!!!!!!!!!!!!!!! function CzytajAntene() { document.Ogniskowa.Centymetry.value=formatuj(document.antena.Nazwa.value,6); } function Obliczaj() { var OgnisCm, SiteLat, SiteLon, SatLon, Elewacja, E1, A1, E2, A2, E3, A3, E4, A4, E5, A5 OgnisCm=document.Ogniskowa.Centymetry.value; // ogniskowa paraboli SiteLat=1*document.geo.LAT.value; // szer.geo. miejsca SiteLon=1*document.geo.LON.value; // dlug.geo. miejsca SatLon=28.2; // *** 1. Licz dla Astra 2 **** Elewacja=Elewacja_L(SatLon,SiteLat,SiteLon); if (Elewacja<=0) alert("Satelita Astra 2, poniżej horyzontu"); E1=Elewacja; A1=Azymut_L(SatLon,SiteLat,SiteLon)-180; // *** Koniec: Astra 2 **** SatLon=19.2; // *** 2. Licz dla Astra 1 **** Elewacja=Elewacja_L(SatLon,SiteLat,SiteLon); if (Elewacja<=0) alert("Satelita Astra 1, poniżej horyzontu"); E2=Elewacja; document.wyn.Elew2.value=formatuj(E2, 4); A2=Azymut_L(SatLon,SiteLat,SiteLon)-180; document.wyn.Azym2.value=formatuj(A2, 4); // *** Koniec: Astra 1 **** SatLon=13.0; // *** 3. Licz dla HB **** Elewacja=Elewacja_L(SatLon,SiteLat,SiteLon); if (Elewacja<=0) alert("Satelita HB, poniżej horyzontu"); E3=Elewacja; document.wyn.Elew3.value=formatuj(E3, 4); A3=Azymut_L(SatLon,SiteLat,SiteLon)-180; document.wyn.Azym3.value=formatuj(A3, 4); // *** Koniec: HB **** SatLon=5.0; // *** 4. Licz dla Sirius **** Elewacja=Elewacja_L(SatLon,SiteLat,SiteLon); if (Elewacja<=0) alert("Satelita Sirius, poniżej horyzontu"); E4=Elewacja; A4=Azymut_L(SatLon,SiteLat,SiteLon)-180; // *** Koniec: Sirius **** SatLon=-1.0; // *** 5. Licz dla Thor **** Elewacja=Elewacja_L(SatLon,SiteLat,SiteLon); if (Elewacja<=0) alert("Satelita Thor, poniżej horyzontu"); E5=Elewacja; A5=Azymut_L(SatLon,SiteLat,SiteLon)-180; // *** Koniec: Thor **** // **** Stopnie czy Centymetry **** if (OgnisCm<=0) { } else { } if (OgnisCm<=0) { document.del.stcm1.value=" stopniach" ; // *** Licz dla roznice ASTRA 1 - A2 **** document.del.A1_A2.value=formatuj(A2-A1, 4); document.del.A3_A2.value=formatuj(A3-A2, 4); document.del.A4_A2.value=formatuj(A4-A2, 4); document.del.A5_A2.value=formatuj(A5-A2, 4); document.del.E1_E2.value=formatuj(E2-E1, 4); document.del.E3_E2.value=formatuj(E2-E3, 4); document.del.E4_E2.value=formatuj(E2-E4, 4); document.del.E5_E2.value=formatuj(E2-E5, 4); // *** Licz dla roznice HB - A3 **** document.del.A1_A3.value=formatuj(A3-A1, 4); document.del.A2_A3.value=formatuj(A3-A2, 4); document.del.A4_A3.value=formatuj(A4-A3, 4); document.del.A5_A3.value=formatuj(A5-A3, 4); document.del.E1_E3.value=formatuj(E3-E1, 4); document.del.E2_E3.value=formatuj(E3-E2, 4); document.del.E4_E3.value=formatuj(E3-E4, 4); document.del.E5_E3.value=formatuj(E3-E5, 4); // *** Licz dla roznice Sirius - A4 **** document.del.A1_A4.value=formatuj(A4-A1, 4); document.del.A2_A4.value=formatuj(A4-A2, 4); document.del.A3_A4.value=formatuj(A4-A3, 4); document.del.A5_A4.value=formatuj(A5-A4, 4); document.del.E1_E4.value=formatuj(E4-E1, 4); document.del.E2_E4.value=formatuj(E4-E2, 4); document.del.E3_E4.value=formatuj(E4-E3, 4); document.del.E5_E4.value=formatuj(E4-E5, 4); // *** Licz dla roznice Thora - A5 **** document.del.A1_A5.value=formatuj(A5-A1, 4); document.del.A2_A5.value=formatuj(A5-A2, 4); document.del.A3_A5.value=formatuj(A5-A3, 4); document.del.A4_A5.value=formatuj(A5-A4, 4); document.del.E1_E5.value=formatuj(E5-E1, 4); document.del.E2_E5.value=formatuj(E5-E2, 4); document.del.E3_E5.value=formatuj(E5-E3, 4); document.del.E4_E5.value=formatuj(E5-E4, 4); } else { document.del.stcm1.value="centymetrach"; // *** Licz dla roznice ASTRA 1 - A2 **** document.del.A1_A2.value=formatuj(Odl_C(A2,A1), 4); document.del.A3_A2.value=formatuj(Odl_C(A3,A2), 4); document.del.A4_A2.value=formatuj(Odl_C(A4,A2), 4); document.del.A5_A2.value=formatuj(Odl_C(A5,A2), 4); document.del.E1_E2.value=formatuj(Odl_C(E2,E1), 4); document.del.E3_E2.value=formatuj(Odl_C(E2,E3), 4); document.del.E4_E2.value=formatuj(Odl_C(E2,E4), 4); document.del.E5_E2.value=formatuj(Odl_C(E2,E5), 4); // *** Licz dla roznice HB - A3 **** document.del.A1_A3.value=formatuj(Odl_C(A3,A1), 4); document.del.A2_A3.value=formatuj(Odl_C(A3,A2), 4); document.del.A4_A3.value=formatuj(Odl_C(A4,A3), 4); document.del.A5_A3.value=formatuj(Odl_C(A5,A3), 4); document.del.E1_E3.value=formatuj(Odl_C(E3,E1), 4); document.del.E2_E3.value=formatuj(Odl_C(E3,E2), 4); document.del.E4_E3.value=formatuj(Odl_C(E3,E4), 4); document.del.E5_E3.value=formatuj(Odl_C(E3,E5), 4); // *** Licz dla roznice Sirius - A4 **** document.del.A1_A4.value=formatuj(Odl_C(A4,A1), 4); document.del.A2_A4.value=formatuj(Odl_C(A4,A2), 4); document.del.A3_A4.value=formatuj(Odl_C(A4,A3), 4); document.del.A5_A4.value=formatuj(Odl_C(A5,A4), 4); document.del.E1_E4.value=formatuj(Odl_C(E4,E1), 4); document.del.E2_E4.value=formatuj(Odl_C(E4,E2), 4); document.del.E3_E4.value=formatuj(Odl_C(E4,E3), 4); document.del.E5_E4.value=formatuj(Odl_C(E4,E5), 4); // *** Licz dla roznice Thor - A5 **** document.del.A1_A5.value=formatuj(Odl_C(A5,A1), 4); document.del.A2_A5.value=formatuj(Odl_C(A5,A2), 4); document.del.A3_A5.value=formatuj(Odl_C(A5,A3), 4); document.del.A4_A5.value=formatuj(Odl_C(A5,A4), 4); document.del.E1_E5.value=formatuj(Odl_C(E5,E1), 4); document.del.E2_E5.value=formatuj(Odl_C(E5,E2), 4); document.del.E3_E5.value=formatuj(Odl_C(E5,E3), 4); document.del.E4_E5.value=formatuj(Odl_C(E5,E4), 4); } // **** END: Stopnie czy Centymetry **** // Obliczanie odleglosci LNB function Odl_C(A, B) { x=2*OgnisCm*Math.sin(Rad((A-B)/2)); return x; } } // !!!!!!!!!!!!!!!! Czytaj Miasto i Szer., Dlug. Geo. !!!!!!!!!!!!!!!!!!! function CzytajMiasto() { var Lat,Lon,MyVal var ValArray=new Array(); MyVal=document.Miasto.Lokalizacja.value; if (MyVal == null) alert("!!! Nie wczytuje Miast. Zmień przeglądarkę na nowszą !!!"); if (MyVal !== null) { // Wyciagnij dlug. i szer. geogr. ValArray=MyVal.split(","); Lat=ValArray[0]; // *** Pierwszy subarray zawiera Lat *** Lon=ValArray[1]; // *** Drugi subarray zawiera Lon *** document.geo.LAT.value=Lat; // czytaj szer.geo. miejsca document.geo.LON.value=Lon; // czytaj dlug.geo. miejsca } } // !!!!!!!!!!!!!!!! Licz: Azymut_L; Elewacja_L !!!!!!!!!!!!!!!!!! function Azymut_L(SatLon,SiteLat,SiteLon) { Lon_Dif=Rad(SiteLon-SatLon); Az_Site=180+Deg( Math.atan(Math.tan(Lon_Dif)/Math.sin(Rad(SiteLat))) ); if (SiteLat<0) Az_Site=Az_Site-180; if (Az_Site<0) Az_Site=Az_Site+360.0; return Az_Site; } function Elewacja_L(SatLon,SiteLat,SiteLon) { Lon_Dif=Rad(SiteLon-SatLon); Lat_Site=Rad(SiteLat); r1=1+35786/6378.16; v1=r1*Math.cos(Lat_Site)*Math.cos(Lon_Dif)-1; v2=r1*Math.sqrt(1-Math.cos(Lat_Site)*Math.cos(Lat_Site)*Math.cos(Lon_Dif)*Math.cos(Lon_Dif)); Site_Elev=Deg(Math.atan(v1/v2)); if (Site_Elev<30) Site_Elev_Ref=(Site_Elev+Math.sqrt(Site_Elev*Site_Elev+4.132))/2 else Site_Elev_Ref=Site_Elev; // if (Site_Elev_Ref<1) Site_Elev_Ref="< 1"; if (Site_Elev_Ref<1) Site_Elev_Ref=0; return Site_Elev_Ref; } // !!!!!!!!!!!!!!!!!!!!!!!!!! Drobiazgi !!!!!!!!!!!!!!!!!!!!!!!!!!!! function Rad(x) { // *** Licz radiany **** var ra ra=x*Math.PI/180; return(ra) } function Deg(x) { // *** Licz stopnie **** var de de=x*180/Math.PI; return(de) } function formatuj(co, p_ile) // *** Zaokraglaj do "p_ile" pozycji *** { var invalid = "**************************"; var nines = "999999999999999999999999"; var strin = "" + co; var fltin = parseFloat(strin); if (strin.length <= p_ile) return strin; if (strin.indexOf("e") != -1 || fltin > parseFloat(nines.substring(0, p_ile)+".4")) return invalid.substring(0, pile); var rounded = "" + (fltin + (fltin - parseFloat(strin.substring(0, p_ile)))); return rounded.substring(0, p_ile); } // Pzdr.J.P. , wer.22.07.2005