Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // Name: Objetos del libro "Guia del Firmamento"
- // License: Public Domain
- // Author: elinformatico
- // Description: Un recorrido por los objetos celestes
- // del libro "Guia del Firmamento" de Jose Luis Comellas<br>
- // Requiere "comellas.inc"<br>
- // Base de datos de objetos por Patricio Leiva
- //
- //
- // ---------------------------------------------------
- var SLEW = 3; // velocidad del slew en segundos
- var FOV = 3; // FOV (Field of view) en grados
- cx = 20;//posicion horizontal del texto informativo
- cy = 20;//posicion vertical del texto informativo
- // ----------------------------------------------------
- include("comellas.inc");
- var cons = new Array("Osa menor + Dragón + Cefeo + Jirafa","Osa mayor + Perros de caza","Dragón + Cefeo","Cassiopeia",
- "Jirafa + Lince","León + Sextante","Virgo + Cabellera de Berenice","Hydra + Brújula + Cuervo + Centauro",
- "Libra + Lupus","Boyero + Corona Borealis","Hercules","Serpiente + Ofiuco","Escorpión + Ofiuco",
- "Sagitario + Scutum + Corona Australis","Águila + Sagitta + Delphinus + Equuleus","Lira + Cisne + Zorrilla",
- "Capricornio + Acuario + Peces","Pez Austral + Escultor + Microscopio","Pegaso + Lagarto",
- "Andrómeda + Triangulo","Aries + Peces","Ballena","Eridanus + Horno","Perseo","Auriga","Tauro",
- "Géminis + Cáncer","Orión + Liebre + Columba","Canis Mayor + Can Menor","Unicornio + Orión","Puppis");
- var cone = new Array("Ursa Minor","Ursa Major","Draco","Cassiopeia","Camelopardalis",
- "Leo","Virgo","Hydra","Libra","Bootes","Hercules","Serpens","Scorpius","Sagittarius",
- "Aquila","Lyra","Capricornus","Piscis Austrinus","Pegasus","Andromeda","Aries","Cetus",
- "Eridanus","Perseus","Auriga","Taurus","Gemini","Orion","Canis Major","Monoceros","Puppis",
- "Cefeo","Perros de caza","Lince","Sextante","Cabellera de Berenice","Brújula",
- "Cuervo","Centauro","Lupus","Corona Borealis","Ofiuco","Escudo","Corona Australis",
- "Sagitta","Delphinus","Equuleus","Cisne","Zorrilla","Acuario","Peces","Escultor",
- "Microscopio","Lagarto","Triangulo","Horno","Cáncer","Liebre","Columba","Can Menor","Copa");
- var conr= new Array("UMi","UMa","Dra","Cas","Cam",
- "Leo","Vir","Hya","Lib","Boo","Her","Ser","Sco","Sgr",
- "Aql","Lyr","Cap","PsA","Peg","And","Ari","Cet","Eri",
- "Per","Aur","Tau","Gem","Ori","CMa","Mon","Pup","Cep",
- "CVn","Lyn","Sex","Com","Pyx","Crv","Cen","Lup","CrB",
- "Oph","Sct","CrA","Sgt","Del","Equ","Cyg","Vul","Aqr",
- "Psc","Scl","Mic","Lac","Tri","For","Can","Lep","Col","CMi","Crt");
- // indice
- var conz = new Array(7,335,863,1311,1703,1967,2383,3095,3503,3655,
- 3935,4159,4535,5031,5615,6103,6863,7271,7367,7735,8079,8287,8759,8951,
- 9367,9711,10119,10647,11479,11879,12311,12679);
- var le = 0;
- core.selectObjectByName(cone[le],true);
- var mnt = core.getMountMode(); // obtener montura utilizada
- Menu();
- function Menu()
- {
- core.setRealTime();
- core.setTimeRate(1);
- StelMovementMgr.zoomTo(60,SLEW);
- core.clear("natural");
- LandscapeMgr.setFlagCardinalsPoints(true);
- StarMgr.setFlagStars(true);
- StarMgr.setFlagLabels(true);
- NebulaMgr.setFlagHints(false);
- ConstellationMgr.setFlagBoundaries(false);
- ConstellationMgr.setFlagIsolateSelected(false);
- ConstellationMgr.setFlagArt(false);
- ConstellationMgr.setFlagLabels(false);
- LabelMgr.deleteAllLabels();
- StelMovementMgr.setFlagTracking(true);
- var sea= new Array("Circumpolares:","Primavera:","Verano:","Otoño:","Invierno:");
- var opt = LabelMgr.labelScreen("Para elegir constelación pulse + o =. Para seleccionarla pulse B",12,28,false,18,"#FF0000");
- LabelMgr.setLabelShow(opt, true);
- var opt = LabelMgr.labelScreen(sea[0],20,50,false,18,"#CC0000");
- LabelMgr.setLabelShow(opt, true);
- var opt = LabelMgr.labelScreen(sea[1],56,160,false,18,"#CC0000");
- LabelMgr.setLabelShow(opt, true);
- var opt = LabelMgr.labelScreen(sea[2],86,270,false,18,"#CC0000");
- LabelMgr.setLabelShow(opt, true);
- var opt = LabelMgr.labelScreen(sea[3],94,402,false,18,"#CC0000");
- LabelMgr.setLabelShow(opt, true);
- var opt = LabelMgr.labelScreen(sea[4],76,556,false,18,"#CC0000");
- LabelMgr.setLabelShow(opt, true);
- var opt = LabelMgr.labelScreen("by elinformatico",900,700,false,14,"#FF0000");
- LabelMgr.setLabelShow(opt, true);
- ConstellationMgr.setFlagLabels(true);
- // lista de constelaciones
- for (x=0;x<=30;x++)
- {
- var opt = LabelMgr.labelScreen(cons[x] + " (" + (conz[x+1]-conz[x])/8+ " objetos)",160,x*22+50,false,18,"#990000");
- LabelMgr.setLabelShow(opt, true);
- }
- // constelación actual
- var opt = LabelMgr.labelScreen(cons[le] + " (" + (conz[le+1]-conz[le])/8+ " objetos)",160,le*22+50,false,18,"#009900");
- LabelMgr.setLabelShow(opt, true);
- // bucle del menú
- d = Math.floor(core.getJDay());
- var r = d;
- t = ConstellationMgr.getFlagBoundaries();
- while (t==false)
- {
- r = Math.floor(core.getJDay());
- if (Math.abs(r-d) > 0)
- {
- var opt = LabelMgr.labelScreen(cons[le] + " (" + (conz[le+1]-conz[le])/8+ " objetos)",160,le*22+50,false,18,"#990000");
- LabelMgr.setLabelShow(opt, true);
- if (le==30)
- {
- le=0;
- }else{
- le = le + 1;
- }
- var opt = LabelMgr.labelScreen(cons[le] + " (" + (conz[le+1]-conz[le])/8+ " objetos)",160,le*22+50,false,18,"#009900");
- LabelMgr.setLabelShow(opt, true);
- core.setDate("-1 days");
- core.setRealTime();
- core.selectObjectByName(cone[le]);
- StelMovementMgr.setFlagTracking(true);
- }
- t = ConstellationMgr.getFlagBoundaries();
- }
- // cielo profundo
- LabelMgr.deleteAllLabels();
- ConstellationMgr.setFlagBoundaries(false);
- core.selectObjectByName(cone[le],true);
- StelMovementMgr.setFlagTracking(true);
- ConstellationMgr.setFlagLabels(false);
- LandscapeMgr.setFlagLandscape(false);
- ConstellationMgr.setFlagLines(true);
- StarMgr.setFlagLabels(true);
- StarMgr.setFlagStars(true);
- NebulaMgr.setFlagHints(true);
- NebulaMgr.setFlagShow(true);
- LandscapeMgr.setFlagAtmosphere(false);
- LandscapeMgr.setFlagFog(false);
- LandscapeMgr.setFlagCardinalsPoints(false);
- i=conz[le];
- // obtener datos
- Co = objetos[i-7];
- Ra = objetos[i-6];
- Dec= objetos[i-5];
- Info1 = objetos[i-4];
- Info2 = objetos[i-3];
- Info3 = objetos[i-2];
- Info4 = objetos[i-1];
- Pag = objetos[i];
- Co2 = objetos[i+1];
- Ra2 = objetos[i+2];
- Dec2 = objetos [i+3];
- Info2_1 = objetos[i+4];
- Info2_2 = objetos [i+5];
- Info2_3 = objetos [i+6];
- Info2_4 = objetos [i+7];
- Pag2 = objetos[i+8];
- // mover y centrar objeto
- core.moveToRaDec(Ra,Dec);
- StelMovementMgr.zoomTo(FOV,SLEW);
- // mostrar datos del objeto
- var label = LabelMgr.labelScreen(Info1 + " " + Info2 + " - " + Info3 + " " + Info4 + " - " + Co + " - Página " + Pag,cx,cy-5,false,18,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Ra: " + Ra,cx,cy + 20,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Dec: " + Dec,cx,cy + 40,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Siguiente: " + Info2_1 + " " + Info2_2 + " - " + Info2_3 + " " + Info2_4 + " - " + Co2 + " - Pagina " + Pag2,cx,cy + 56,false,18,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Ra: " + Ra2,cx,cy + 84,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Dec: " + Dec2,cx,cy + 104,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Para ir al siguiente objeto, pulse + o =",cx,cy+120,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Para ver otra constelacion, pulse B",cx,cy+140,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Para salir del script, pulse N",cx,cy+160,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- i = i + 8;
- la = (((conz[le+1]-conz[le])/8) - ((conz[le+1]-i)/8));
- lb = (conz[le+1]-conz[le])/8;
- var label = LabelMgr.labelScreen("Objeto " + la + " de " + lb,cx,cy+200,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- // bucle cielo profundo
- var le2 = le;
- var flg = 0;
- var d = Math.floor(core.getJDay());
- var r = d;
- while (i <= 12679)
- {
- b = ConstellationMgr.getFlagBoundaries();
- if (b==true)
- {
- ConstellationMgr.setFlagLines(false);
- Menu(le); //enviar indice constelacion actual
- }
- n = NebulaMgr.getFlagHints();
- if (n==false)
- {
- Stop();
- }
- r = Math.floor(core.getJDay());
- if (Math.abs(r-d) > 0)
- {
- core.setDate("-1 days");
- LabelMgr.deleteAllLabels();
- Co = objetos[i-7];
- Ra = objetos[i-6];
- Dec= objetos[i-5];
- Info1 = objetos[i-4];
- Info2 = objetos[i-3];
- Info3 = objetos[i-2];
- Info4 = objetos[i-1];
- Pag = objetos[i];
- if(i < 12671) // no buscar siguiente info si es el último objeto
- {
- Co2 = objetos[i+1];
- Ra2 = objetos[i+2];
- Dec2 = objetos [i+3];
- Info2_1 = objetos[i+4];
- Info2_2 = objetos [i+5];
- Info2_3 = objetos [i+6];
- Info2_4 = objetos [i+7];
- Pag2 = objetos [i+8];
- }
- // ir al objeto
- core.moveToRaDec(Ra,Dec,SLEW);
- // mostrar el cambio de grupo de constelacion
- if (le>le2)
- {
- var labela = LabelMgr.labelScreen("- " + cons[le] + " -",450,280,false,18,"#FF0000");
- LabelMgr.setLabelShow(labela,true);
- le2=le;
- core.wait(3);
- LabelMgr.setLabelShow(labela,false);
- }
- //indicar objeto fuera del grupo
- if (flg==1)
- {
- for (m=0;m<=61;m++)
- {
- if(conr[m]==Co)
- {
- var st=cone[m];
- var labelb = LabelMgr.labelScreen("Entrando en " + st,450,300,false,18,"#FF0000");
- LabelMgr.setLabelShow(labelb,true);
- core.wait(2);
- LabelMgr.setLabelShow(labelb,false);
- }
- }
- flg=0;
- }
- if (Co2 != Co)
- {
- flg=1;
- }
- var inf = LabelMgr.labelScreen(Info1 + " " + Info2 + " - " + Info3 + " " + Info4 +" - "+ Co + " - Página " + Pag,cx,cy-5,false,18,"#990000");
- LabelMgr.setLabelShow(inf, true);
- var label = LabelMgr.labelScreen("Ra: " + Ra,cx,cy+20,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Dec: " + Dec,cx,cy+40,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- if(i < 12671) // no mostrar siguiente info si es el último objeto
- {
- var label = LabelMgr.labelScreen("Siguiente: " + Info2_1 + " " + Info2_2 + " - " + Info2_3 + " " + Info2_4 + " - " + Co2 + " -Pagina " + Pag2,cx,cy + 56,false,18,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Ra: " + Ra2,cx,cy + 80,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Dec: " + Dec2,cx,cy + 100,false,12,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("Para ir al siguiente objeto, pulse + o =",cx,cy+120,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- }
- var label = LabelMgr.labelScreen("(Para ver otra constelacion, pulse B)",cx,cy+140,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- var label = LabelMgr.labelScreen("(Para salir del script, pulse N)",cx,cy+160,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- i = i + 8;
- la = (((conz[le+1]-conz[le])/8) - ((conz[le+1] -i)/8));
- lb = (conz[le+1]-conz[le])/8;
- var label = LabelMgr.labelScreen("Objeto " + la + " de " + lb,cx,cy+200,false,17,"#990000");
- LabelMgr.setLabelShow(label, true);
- if(la == lb && le<30)
- {
- le = le + 1;
- }
- core.setRealTime(); // rectificar la hora
- }
- }
- core.selectObjectByName(cone[le],true);
- Menu();
- }
- function Stop()
- {
- core.setRealTime();
- core.setTimeRate(1);
- core.clear("natural");
- LandscapeMgr.setFlagCardinalsPoints(true);
- core.setMountMode(mnt); // restaurar montura utilizada
- StelMovementMgr.zoomTo(60);
- var label = LabelMgr.labelScreen("SCRIPT FINALIZADO",400,350,false,20,"#990000");
- LabelMgr.setLabelShow(label, true);
- core.wait(3);
- core.exit();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement