CLICCA QUI PER SCARICARE ORBITER 2016
 
IndiceIndice  FAQFAQ  LinkLink  CercaCerca  RegistratiRegistrati  Accedi  
Accedi
Nome utente:
Password:
Connessione automatica: 
:: Ho dimenticato la password
FOI è sui social
Parole chiave
Missione Shuttle DGIV luna Nassp autofcs Rientro TransX mission anim8or Fleet lander manuale multiplayer Flotta Delphinus jarvis 2016 Universal d3d9 Multistage2015 texture Pegasus terra Orbiter Antares
Siti amici
Astronautica Ultima Speranza

AstronautiNEWS

Orbiter Forum

Tuttovola
Ultimi argomenti
» Ciao a tutti
Da Franz Oggi alle 10:21

» Hello Italians!
Da Francy03 Mer 22 Nov 2017 - 19:22

» [WIP] Missione San Marco 1
Da Francy03 Mer 22 Nov 2017 - 19:14

» Sviluppo di una base italiana - Sede ASVI
Da Dany Lun 13 Nov 2017 - 10:20

» Orbiter Sound 4.0 MFD non funziona
Da Ripley Dom 12 Nov 2017 - 22:26

» [Risolto] Jarvis non scaricabile
Da Ripley Mer 1 Nov 2017 - 0:12

» Cosa Vorreste Cambiare Del Forum?
Da Francy03 Gio 26 Ott 2017 - 17:24

» Ripley Administrator!
Da marcogavazzeni Sab 21 Ott 2017 - 7:43

» Nuova versione BETA di Orbiter
Da wolf Dom 15 Ott 2017 - 14:57

» Rendezvous ISS "by the numbers"
Da wolf Ven 13 Ott 2017 - 12:31

» Ciao a tutti da Francy
Da Pete Conrad Ven 13 Ott 2017 - 7:18

» Salve a tutti
Da DDD Gio 5 Ott 2017 - 13:53

» MOONSCAPE versione completa - documentario di Paolo Attivissimo
Da Ripley Gio 28 Set 2017 - 0:01

» Astronautica US chiude i battenti
Da Ripley Mer 27 Set 2017 - 23:52

» Rilasciato Anim8or versione 1.0
Da Pete Conrad Ven 22 Set 2017 - 14:39

» D3D9Client - il client grafico di Jarmonik
Da Ripley Mar 19 Set 2017 - 17:26

» Segnali di vita da Dansteph!
Da Ripley Gio 31 Ago 2017 - 0:06

» Multistage2015
Da fred18 Lun 28 Ago 2017 - 14:10

» Terza missione di Paolo Nespoli nello spazio.
Da marcozambi Dom 27 Ago 2017 - 9:34

» Texfilms - Un nuovo canale streaming live
Da Ripley Dom 20 Ago 2017 - 20:14

» Nuove textures HRSC per Marte
Da wolf Ven 18 Ago 2017 - 12:02

» Domanda ridicola sui piani orbitali Terra-Luna
Da Ripley Mar 8 Ago 2017 - 7:29

» Space Shuttle Ultra - il vero Shuttle a casa vostra
Da wolf Gio 3 Ago 2017 - 21:17

» sound e carburante limitato
Da DDD Mer 2 Ago 2017 - 11:11

» Cambio indirizzo mail
Da Ripley Mar 1 Ago 2017 - 16:28

Argomenti simili
Contatore Visite

Condividere | 
 

 [C++] Load & Save State - problemi di gestione

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso 
AutoreMessaggio
Matt44
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1218
Età : 39
Località : Bergamo
Data d'iscrizione : 13.04.11

MessaggioTitolo: [C++] Load & Save State - problemi di gestione   Gio 14 Feb 2013 - 20:17

Nuovo problemino, ho recuperato il codice che gestisce il salvataggio e il recupero dei dati del mezzo, e scopiazzando dal Delta Glider ho fatto una piccola prova per vedere se funzionava. Ovviamente non ha funzionato sennò non sarei qui Smile sotto metto il codice...

Codice:

void Locatelli::clbkLoadStateEx(FILEHANDLE scn, void *vs)
{
   char *line;
   
   while (oapiReadScenario_nextline (scn, line)) {
      if(!_strnicmp(line, "ANT_ACT", 4)) {
         sscanf(line+4, "%lf", &Ant_proc);
      }
      else ParseScenarioLineEx(line, vs);
   }
}

void Locatelli::clbkSaveState(FILEHANDLE scn)
{
   VESSEL3::clbkSaveState(scn);
   char cbuf[256];

   sprintf (cbuf, "%lf", Ant_proc);
   oapiWriteScenario_string(scn, "ANT_ACT", cbuf);
   //oapiWriteScenario_float(scn, "ANT_ACT", Ant_proc);
}

Io devo salvare nello scenario il valore di "Ant_Proc" che contiene la posizione dell'animazione delle antenne. Il valore viene salvato nello scenario, ma non viene più recuperato.

Ant_Proc e questa: double Ant_proc.

Ipotizzo sia una scemata che mi sono perso, ma non riesco a farmi un'idea di dove possa essere il problema.
Tornare in alto Andare in basso
Vedi il profilo dell'utente http://asvo.jimdo.com/
fred18
Add-on Developer
Add-on Developer


Numero di messaggi : 939
Età : 34
Località : La Spezia
Data d'iscrizione : 04.01.12

MessaggioTitolo: Re: [C++] Load & Save State - problemi di gestione   Gio 14 Feb 2013 - 23:58

cosi al volo la riga

sscanf(line+4, "%lf", &Ant_proc);

dovrebbe essere +8 non +4, o sbaglio?

ciaoooo
Tornare in alto Andare in basso
Vedi il profilo dell'utente
Matt44
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1218
Età : 39
Località : Bergamo
Data d'iscrizione : 13.04.11

MessaggioTitolo: Re: [C++] Load & Save State - problemi di gestione   Ven 15 Feb 2013 - 10:07

Non hai tutti i torti, ma non cambia niente.
Tornare in alto Andare in basso
Vedi il profilo dell'utente http://asvo.jimdo.com/
Matt44
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1218
Età : 39
Località : Bergamo
Data d'iscrizione : 13.04.11

MessaggioTitolo: Re: [C++] Load & Save State - problemi di gestione   Ven 15 Feb 2013 - 10:49

La risposta arriva indirettamente da MarcoGavazzeni su OF Very Happy Anche lui aveva avuto il mio stesso problema, la spiegazione è la seguente (Sarà utile anche per i nuovi sviluppatori):

Nel codice seguente i numeri in rosso indicano al programma dove iniziare a leggere il valore numerico saltando fisicamente la parola "ANT_ACT". In parole semplici c'è scritto salta 7 caratteri e comincia a leggere quello che c'è scritto per 8.
Codice:

void Locatelli::clbkLoadStateEx(FILEHANDLE scn, void *vs)
{
  char *line;
 
  while (oapiReadScenario_nextline (scn, line)) {
      if(!_strnicmp(line, "ANT_ACT", 8)) {
        sscanf([b][color=red]line+7[/color][/b], "%lf", &Ant_proc);
      }
      else ParseScenarioLineEx(line, vs);
  }
}

Ora il codice funziona e le antennine restano parte al riavvio della simulazione.
Tornare in alto Andare in basso
Vedi il profilo dell'utente http://asvo.jimdo.com/
fred18
Add-on Developer
Add-on Developer


Numero di messaggi : 939
Età : 34
Località : La Spezia
Data d'iscrizione : 04.01.12

MessaggioTitolo: Re: [C++] Load & Save State - problemi di gestione   Ven 15 Feb 2013 - 11:02

corretto! ieri sera ho scritto di corsa e con poca attenzione, comunque il nocciolo è contare i caratteri (era +7 e non +8 perché avevo letto con poca attenzione e credevo che il nome della variabile e l'item nel file scenario fossero entrambi ANT_PROC).

sorry per la scarsa precisione sweat drop
Tornare in alto Andare in basso
Vedi il profilo dell'utente
Matt44
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1218
Età : 39
Località : Bergamo
Data d'iscrizione : 13.04.11

MessaggioTitolo: Re: [C++] Load & Save State - problemi di gestione   Ven 15 Feb 2013 - 11:08

Non c'è problema, questo ti rende umano roll laugh
Tornare in alto Andare in basso
Vedi il profilo dell'utente http://asvo.jimdo.com/
Contenuto sponsorizzato




MessaggioTitolo: Re: [C++] Load & Save State - problemi di gestione   

Tornare in alto Andare in basso
 
[C++] Load & Save State - problemi di gestione
Vedere l'argomento precedente Vedere l'argomento seguente Tornare in alto 
Pagina 1 di 1
 Argomenti simili
-
» alunno straniero con problemi comportamentali che viene allontanato spesso dalla propria classe
» Impresa pulizie che effettua raccolta rifiuti e sua gestione conto terzi
» GESTIONE SEMPLIFICATA RAEE: autoradio
» problemi legali
» Giocare con le operazioni e risolvere problemi con i numeri online

Permessi di questa sezione del forum:Non puoi rispondere agli argomenti in questo forum
Forum Orbiter Italia :: Orbiter Space Flight Simulator :: Sviluppo Add-on :: Orbiter SDK-
Andare verso: