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
launchpad Missione d3d9 apollo autofcs TransX azimuth blocca Orbiter Rientro lancio Universal manuale Antares AMSO Shuttle lander 2016 Flotta lingua Pegasus Nassp jarvis Poderosa Fleet DGIV
Siti amici
AstronautiNEWS

ForumAstronautico

Orbiter Forum

Tuttovola
Ultimi argomenti
» Dalla Terra alla Luna - Serie TV
Da m.a.s Ieri alle 22:21

» Problema con D3D9Client Beta 25.4
Da Pietrogramma Ieri alle 16:28

» Intervista (finta) a Samantha Cristoforetti
Da Pete Conrad Sab 24 Feb 2018 - 18:25

» Mission to Mars
Da Edward Sab 24 Feb 2018 - 15:20

» oMMU, l'alternativa per la gestione dell'equipaggio!
Da Edward Gio 22 Feb 2018 - 13:13

» Rilasciato XRSound, il nuovo sistema audio
Da Edward Mer 21 Feb 2018 - 16:54

» Traduzione ITA manuale operativo di volo flotta XR
Da Ripley Mer 21 Feb 2018 - 16:16

» Aggiornamento flotta XR
Da Ripley Mer 21 Feb 2018 - 16:15

» Nuova versione IMFD 5.7
Da Ripley Mar 20 Feb 2018 - 20:14

» [Risolto] Problema schermo nero D3D9 Orbiter 2016
Da Ripley Mar 20 Feb 2018 - 18:30

» Come arrivare su Marte con l'IMFD
Da Edward Dom 18 Feb 2018 - 13:55

» Ma ... nessuno che parla del Falcon Heavy?
Da Ripley Mar 13 Feb 2018 - 16:13

» Astronautica US chiude i battenti
Da Ripley Lun 5 Feb 2018 - 12:06

» [WIP] Missione San Marco 1
Da Francy03 Dom 4 Feb 2018 - 12:25

» Cosa Vorreste Cambiare Del Forum?
Da Pete Conrad Mar 30 Gen 2018 - 14:54

» ModuleMessagingExt v2
Da Ripley Dom 28 Gen 2018 - 0:25

» Interior Navigator
Da Francy03 Gio 25 Gen 2018 - 13:41

» [Risolto] Download problematici da Orbit Hangar
Da Jim Lovell 99 Dom 21 Gen 2018 - 12:09

» Eccomi qua
Da Franz Ven 19 Gen 2018 - 8:31

» Serie TV -The Expanse
Da Dany Gio 18 Gen 2018 - 19:17

» Salve a tutti
Da Francy03 Mar 16 Gen 2018 - 9:30

» "Softwarino" per una veloce visualizzazione 3D delle orbite
Da Ripley Mer 10 Gen 2018 - 14:59

» TransX - Problema raffigurazione nodi (ascendente e discendente)
Da schumifun Lun 8 Gen 2018 - 23:08

» [Risolto] Schermo bianco all'apertura degli scenari
Da Ripley Dom 7 Gen 2018 - 19:21

» Sviluppo di una base italiana - Sede ASVI
Da Francy03 Sab 6 Gen 2018 - 19:30

Argomenti simili
Contatore Visite

Condividi | 
 

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

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à : 35
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à : 35
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
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: