#1 [↑][↓]  06-02-2012 13:28:49

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

[FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Salut tout le monde,

J'essaie de solutionner un petit probleme qui se pose sur mes avions de lignes peu complexes. Dans mon vol par defaut, mon switch AVIONICS (les instruments, quoi) est sur OFF. Du coup, dans un avion comme le 737 qui n'a pas de bouton pour les instruments, et bien je suis oblige d'utiliser CTRL+E a la fin de ma procedure de demarrage manuel pour que les radios s'allument hmm

Pour resoudre ce soucis, j'ai essaye de creer une gauge en XML qui alume automatiquement les instruments (avionic switch) des que le generateur de l'APU ou l'un des generateurs des moteurs est active. En gros, j'essaie de reproduire la logique suivante:

SI  (l'APU est allume ET le GEN de l'APU est actif) OU
     (le moteur 1 est allume ET le GEN1 est actif) OU
     (le moteur 2 est allume ET le GEN2 est actif)
ALORS
    Activer l'Avionic switch.

J'ai jamais fait de gauge de ma vie, et mes connaissances en langage post-fix datent de la fac, mais apres avoir observe le code de plusieurs gauges dans mon FSX, je suis parvenu jusque la:

Code:

<Gauge Name="Automatic avionics">
  <Element>
    <Select>
      <Value>
      (A:APU PCT RPM,percent) 10 &gt;
      (A:APU GENERATOR SWITCH,bool) &amp;&amp;
      (A:ENG1 N2 RPM,rpm) 10 &gt;
      (A:General eng1 generator switch,bool) &amp;&amp; ||
      (A:ENG2 N2 RPM,rpm) 10 &gt;
      (A:General eng2 generator switch,bool) &amp;&amp; || if{ 1 (>L:Avionics master switch,bool)}</Value>
    </Select>
  </Element>
</Gauge>

Seulement, ca marche pas.
J'ai aussi essaye avec (>K:TOGGLE_AVIONICS_MASTER) mais apparemment ce ne suffit pas.
J'ai aussi essaye de virer le 1 dans le IF, et toujours pas de resultat.
J'aimerais que les instruments s'activents des que le pilote active l'un des generateurs (avec le moteur correspondant en train de tourner, evidemment).
Y'a-t-il des programmeurs de gauges dans la salle ? Je suis ouvert a tous les conseils :)


Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#2 [↑][↓]  06-02-2012 19:22:16

ARCC
Copilote
Lieu: Loc Maria Plouzane (29)
Date d'inscription: 13-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Bonsoir

Je ne vais pas t'apporter de solution miracle, mais tu devrais dans un premier temps et si tu ne l'as pas deja fait, commencer avec seulement une seule condition.

Par exemple seulement avec l'APU

<Gauge Name="Automatic avionics">
  <Element>
    <Select>
      <Value>
      (A:APU PCT RPM,percent) 10 &gt;
      (A:APU GENERATOR SWITCH,bool) &amp;&amp;
if{ 1 (>L:Avionics master switch,bool)}</Value>   ATTENTION il te manque un espace entre ) et }

Voir ce que ca donne

Tiens nous au courant

A+
Christian


Un ancien sous-marinier qui à pris de la hauteur.

Hors ligne

 

#3 [↑][↓]  06-02-2012 23:22:18

RBLeDoC
Copilote
Lieu: Marseille
Date d'inscription: 16-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

bonsoir Daube

je n'ai pas vérifié la logique de ta procédure mais en partant du choix de tes variables j'écrirais le truc de la façon suivante:

<Gauge Name="Automatic avionics">
  <Element>
    <Select>
      <Value>
      (A:APU PCT RPM,percent) 10 >
      (A:APU GENERATOR SWITCH,bool) and if{ 1 (>L:Flag1,bool) } els{ 0 (>L:Flag1,bool) }
      (A:ENG1 N2 RPM,rpm) 10 >
      (A:General eng generator switch:1,bool) and if{ 1 (>L:Flag2,bool) } els{ 0 (>L:Flag2,bool) }
      (A:ENG2 N2 RPM,rpm) 10 >
      (A:General eng generator switch:2,bool) and if{ 1 (>L:Flag3,bool) } els{ 0 (>L:Flag3,bool) }
      (L:Flag1,bool) (L:Flag2,bool) (L:Flag3,bool) or or  if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</Value>
    </Select>
  </Element>
</Gauge>

remarque:

(>L:Avionics master switch,bool)--- cette variable ne peut pas exécuter directement une action, donc pas d'avionic activée!

je pense que cela doit fonctionner pour ton plaisir!

A+solv_gifsolv_gifsolv_gif

Dernière modification par RBLeDoC (07-02-2012 13:08:05)

Hors ligne

 

#4 [↑][↓]  07-02-2012 16:43:17

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Merci a vous deux, je devrais attendre la semaine prochaine pour tester ca.
RBLeDoC, je t'avoue que j'ai du mal a voir pourquoi ce serait plus avantageux de passer par des flags intermediaires. Je trouve justement que ca complique le code encore plus hmm

Je commencerai par tester une seule condition a la fois comme suggere par Christian, c'est effectivement le plus logique.
Une fois que je serai parvenu a une avionique 'reactive', alors j'enrichierai le test de systemes.


Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#5 [↑][↓]  07-02-2012 17:11:00

pepe-pompero
Commandant de bord
Lieu: Toulouse.
Date d'inscription: 28-12-2009
Renommée :   25 

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Bonjour
Grace a cette petite gauge,e comence un peu plus à comprendre les codes en polonaise inversé.
Par contre,je me pose la question de savoir où mettre cette gauges,car elle n'est pas attachée a un objet ? ou me trompe je ??
Ou placer cette gauge ??

Merci d'avance, même si je ne suis pas prêt à utiliser une telle gauge.

une petite intérrogation:
if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET)

N'est ce pas la même réponse ??Dans les deux cas l'avionic s'allume ou est ce une bascule ?

pépé

Dernière modification par pepe-pompero (07-02-2012 17:13:20)


Windows 10 ,Intel (R) Core(TM) i7-6700K CPU 4.00GHz, RAM installée 16.0 GO
NVIDIA geForce GTX 1060/3GB

Hors ligne

 

#6 [↑][↓]  07-02-2012 18:32:36

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Pour etre active, la gauge a simplement besoin d'etre declaree dans ton panel.cfg de ton avion.
Par exemple, je ne sais pas si tu as teste les fameuses gauges freeware RealEngine, mais elle fonctionnent elles-aussi de facon silencieuses, elles ne sont pas assignee a un instrument particulier du cockpit.

Donc une simple ligne dans le panel.cfg, par exemple dans la section [VCockpit.0] ou un truc du genre, avec des coordonnees du type
gauge.xx=ma_gauge 0,0,0,0
...et voila, la gauge sera executee par le simu.

Pour ta derniere question, et bien en fait je sais pas, j'essaie justement de trouver quel est le bon evenement a utiliser, sachant que l'instruction " X (>K:blabla) " donne la valeur 'X' a la variable 'blabla'. Si l'avionique est un switch qui peut etre a 0 ou 1 comme la plupart des switchs que j'ai pu voir dans d'autres gauges, alors j'essaie de lui attribuer la valeur 1 si un generateur est actif.


Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#7 [↑][↓]  07-02-2012 18:52:48

ARCC
Copilote
Lieu: Loc Maria Plouzane (29)
Date d'inscription: 13-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Je me pose une question RB

Est ce une faute de frappe la répétition du "or" ?
(L:Flag1,bool) (L:Flag2,bool) (L:Flag3,bool) or or  if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</

A+
Christian


Un ancien sous-marinier qui à pris de la hauteur.

Hors ligne

 

#8 [↑][↓]  07-02-2012 19:21:16

pepe-pompero
Commandant de bord
Lieu: Toulouse.
Date d'inscription: 28-12-2009
Renommée :   25 

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

ARCC a écrit:

Je me pose une question RB

Est ce une faute de frappe la répétition du "or" ?
(L:Flag1,bool) (L:Flag2,bool) (L:Flag3,bool) or or  if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</

A+
Christian

C'est je crois ce qu'on appelle, le polonais inversé;  regarde les and, or etc sont derrière les termes
le "and" est apres les deux premieres conditions.

En français on pourrais dire ceci:
Condition une , à % ,10, supérieur
condition deux on
et si oui
alors réponse une

Condition trois  à % 10 supérieur
condition quatre on
et si oui
alors réponse deux

donc réponse une, réponse deux ,ou , si oui modification activer.

@Daube, merci j'avais peur de l'installer ainsi, pensant que les panels  n'étaient actif que lors de son utilisation..

pépé


Windows 10 ,Intel (R) Core(TM) i7-6700K CPU 4.00GHz, RAM installée 16.0 GO
NVIDIA geForce GTX 1060/3GB

Hors ligne

 

#9 [↑][↓]  07-02-2012 19:31:55

Fro'
Pilote confirmé
Date d'inscription: 20-09-2008
Renommée :   25 
Site web

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

ARCC a écrit:

Je me pose une question RB

Est ce une faute de frappe la répétition du "or" ?
(L:Flag1,bool) (L:Flag2,bool) (L:Flag3,bool) or or  if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</

A+
Christian

Hello,
C'est la structure du Polonais Inversé qui permet/veut cela: le 1er "Or" concerne la condition "Flag1 vrai" OU "Flag2 vrai" et le 2ième "Or" correspond à la 2ième condition "Flag2 vrai" OU "Flag3 vrai"...

Personnellement je n'aurait pas utilisé les variables L:Flag et aurait directement mis les conditions. Par contre, je vous conseille de toujours mettre une condition préliminaire sur l'état de départ du switch : Si l'Avionic Master est sur On alors il ne faut rien faire.
Dans les codes présentés précédemment, la gauge va systématiquement déclencher un évènement K: même lorsque cela n'est pas nécessaire: cela charge inutilement  les ressources (18 fois par seconde FSX va devoir passer à 1 le swtich même lorsqu'il est déjà à 1!!) et avec certains évènements comme les flaps, vous allez flooder (= surcharger les échanges réseaux) lorsqu'on est en multijoueur...
Donc je vous conseille d'avoir toujours une condition qui permet de n'agir que lorsqu'il y a réellement un changement d'état ...

Enfin, K:AVIONICS_MASTER_SET ou K:AVIONICS_MASTER_TOOGLE, au final cela ne change pas énormément...
A+
Fro'


http://www.pilote-virtuel.com/img/members/1208/mini_Bandeau-Signature.jpg

Hors ligne

 

#10 [↑][↓]  07-02-2012 20:04:37

ARCC
Copilote
Lieu: Loc Maria Plouzane (29)
Date d'inscription: 13-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Effectivement je viens de relire et j'ai vu mon erreur.
Je ne suis pas un grand "gaugiste" mais j'ai pourtant deja utilisé ce "polonais inversé".
Je retire donc ma question.
A+
Christian


Un ancien sous-marinier qui à pris de la hauteur.

Hors ligne

 

#11 [↑][↓]  07-02-2012 20:21:01

RBLeDoC
Copilote
Lieu: Marseille
Date d'inscription: 16-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Daube a dit

RBLeDoC, je t'avoue que j'ai du mal a voir pourquoi ce serait plus avantageux de passer par des flags intermediaires. Je trouve justement que ca complique le code encore plus

bonsoir Daube

moi j'aime bien lier certains bouts de routine a des variables "flags" dans l'éventualité d'une utilisation ultérieure soit  dans une autre routine de la même gauge soit dans une autre gauge.; je trouve cela plus facile a manipuler!

mais effectivement on peut écrire ta gauge de la façon suivante:

<Gauge Name="Automatic avionics">
  <Element>
    <Select>
      <Value>
      (A:APU PCT RPM,percent) 10 >
      (A:APU GENERATOR SWITCH,bool) and
      (A:ENG1 N2 RPM,rpm) 10 >
      (A:General eng generator switch:1,bool) and
      (A:ENG2 N2 RPM,rpm) 10 >
      (A:General eng generator switch:2,bool) and or or  if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</Value>
    </Select>
  </Element>
</Gauge>

A+solv_gifsolv_gifsolv_gif

Hors ligne

 

#12 [↑][↓]  07-02-2012 20:45:12

Fro'
Pilote confirmé
Date d'inscription: 20-09-2008
Renommée :   25 
Site web

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Hi,
Petit complément à mon message précédent. Daube, ton code utilistant K:TOOGLE_AVIONIC_MASTER ne fonctionnait pas pour une raison toute bête: comme tu n'as pas de test initial sur la position du switch, ta gauge, lorsqu'on est dans les conditions nécessaires et suffisantes, appelait systématiquement TOOGLE_AVIONINC_MASTER
Résultat : un coup je mets sur ON , un coup je remet sur OFF, etc.. => 18 fois par seconde ta gauge basculait le switch dans sa position inverse...

Le code de RBLeDoC va fonctionner car au lieu de basculer le switch , il va forcer sa position à On si les conditions sont OK et OFF sinon. Pour autant il va le faire en permanence, 18 fois par secondes!!

J'insiste sur ce détail, mais avec des tests mal protégé, on peut dégrader significativement les performances en multijoueur, où pas mal de variables et évènements sont partagés avec tous les joueurs (notamment tout ce qui touche les éléments visibles en vue extérieures) mais aussi parfois en vol simple...
Il m'est arrivé de ne plus arrivé à ouvrir les portes secondaires (via MajE+2, 3, etc..) juste parce qu'une de mes gauges avait un test mal protégé qui "saturait" FSX et l'empêchait d'intercepter le numéro d'ouverture ...
En espérant que cela puisse vous aider...

A+
Fro'


http://www.pilote-virtuel.com/img/members/1208/mini_Bandeau-Signature.jpg

Hors ligne

 

#13 [↑][↓]  07-02-2012 22:04:00

RBLeDoC
Copilote
Lieu: Marseille
Date d'inscription: 16-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

tout a fait d'accord avec Fro' sur le fait qu'il est hautement souhaitable d'éviter que des gauges soient lues en entier inutilement!...c'est une autre utilisation de mes variables "flag"laugh.De même en général pour moduler la lecture d'une gauge j'utilise les vertus de la balise <Update> dans laquelle je place ma ou mes routines conditionnelles.
Parmi les variables  d'exécution ( K:) méfiez vous des variables "TOGGLE" qui peuvent réserver quelques surprises inattendues! dans la mesure du possible préférez l'utilisation des variables "SET" beaucoup plus puissantes et moins sujettes a surprises désagréables.

A+solv_gifsolv_gifsolv_gif

Hors ligne

 

#14 [↑][↓]  08-02-2012 10:02:53

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Fro' a écrit:

ARCC a écrit:

Je me pose une question RB

Est ce une faute de frappe la répétition du "or" ?
(L:Flag1,bool) (L:Flag2,bool) (L:Flag3,bool) or or  if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</

A+
Christian

Hello,
C'est la structure du Polonais Inversé qui permet/veut cela: le 1er "Or" concerne la condition "Flag1 vrai" OU "Flag2 vrai" et le 2ième "Or" correspond à la 2ième condition "Flag2 vrai" OU "Flag3 vrai"...

Personnellement je n'aurait pas utilisé les variables L:Flag et aurait directement mis les conditions. Par contre, je vous conseille de toujours mettre une condition préliminaire sur l'état de départ du switch : Si l'Avionic Master est sur On alors il ne faut rien faire.
Dans les codes présentés précédemment, la gauge va systématiquement déclencher un évènement K: même lorsque cela n'est pas nécessaire: cela charge inutilement  les ressources (18 fois par seconde FSX va devoir passer à 1 le swtich même lorsqu'il est déjà à 1!!) et avec certains évènements comme les flaps, vous allez flooder (= surcharger les échanges réseaux) lorsqu'on est en multijoueur...
Donc je vous conseille d'avoir toujours une condition qui permet de n'agir que lorsqu'il y a réellement un changement d'état ...

Enfin, K:AVIONICS_MASTER_SET ou K:AVIONICS_MASTER_TOOGLE, au final cela ne change pas énormément...
A+
Fro'

Bien vu pour la surcharge. Merci du conseil, j'essaierai d'integrer un test supplementaire, une fois que j'aurai compris pourquoi meme le code surcharge ne fonctionne pas big_smile


Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#15 [↑][↓]  08-02-2012 10:04:29

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Fro' a écrit:

Hi,
Petit complément à mon message précédent. Daube, ton code utilistant K:TOOGLE_AVIONIC_MASTER ne fonctionnait pas pour une raison toute bête: comme tu n'as pas de test initial sur la position du switch, ta gauge, lorsqu'on est dans les conditions nécessaires et suffisantes, appelait systématiquement TOOGLE_AVIONINC_MASTER
Résultat : un coup je mets sur ON , un coup je remet sur OFF, etc.. => 18 fois par seconde ta gauge basculait le switch dans sa position inverse...

Le code de RBLeDoC va fonctionner car au lieu de basculer le switch , il va forcer sa position à On si les conditions sont OK et OFF sinon. Pour autant il va le faire en permanence, 18 fois par secondes!!

J'insiste sur ce détail, mais avec des tests mal protégé, on peut dégrader significativement les performances en multijoueur, où pas mal de variables et évènements sont partagés avec tous les joueurs (notamment tout ce qui touche les éléments visibles en vue extérieures) mais aussi parfois en vol simple...
Il m'est arrivé de ne plus arrivé à ouvrir les portes secondaires (via MajE+2, 3, etc..) juste parce qu'une de mes gauges avait un test mal protégé qui "saturait" FSX et l'empêchait d'intercepter le numéro d'ouverture ...
En espérant que cela puisse vous aider...

A+
Fro'

Je comprend le coup de la repetition. Mais alors, comment expliques-tu que je me retrouvais dans le cockpit systematiquement avec l'instrumentation eteinte ? C'est bien qu'il y a un probleme a la base, non ? De plus, apres avoir fait CTRL+E, l'instrumentation passait sur ON et y restait...
Donc concretement ma gauge ne faisait rien du tout, non ?

Dernière modification par Daube (08-02-2012 10:06:05)


Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#16 [↑][↓]  08-02-2012 10:11:57

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

RBLeDoC a écrit:

bonsoir Daube

moi j'aime bien lier certains bouts de routine a des variables "flags" dans l'éventualité d'une utilisation ultérieure soit  dans une autre routine de la même gauge soit dans une autre gauge.; je trouve cela plus facile a manipuler!

Ah oui, effectivement j'avais pas pense a ca.
Mais ces flags seront visibles uniquement a l'interieur de la gauge courante, ou bien il deviendra visible depuis d'autres gauges egalement ?

mais effectivement on peut écrire ta gauge de la façon suivante:

<Gauge Name="Automatic avionics">
  <Element>
    <Select>
      <Value>
      (A:APU PCT RPM,percent) 10 >
      (A:APU GENERATOR SWITCH,bool) and
      (A:ENG1 N2 RPM,rpm) 10 >
      (A:General eng generator switch:1,bool) and
      (A:ENG2 N2 RPM,rpm) 10 >
      (A:General eng generator switch:2,bool) and or or  if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</Value>
    </Select>
  </Element>
</Gauge>

A+solv_gifsolv_gifsolv_gif

Je vois que tu as mis cote-a-cote les deux OU, alors que moi j'avais mis le premier OU juste apres le deuxieme ET... je me demande si ma syntaxe etait correcte ou pas... Peut-etre que les deux fonctionnent en fait...


Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#17 [↑][↓]  08-02-2012 14:09:20

RBLeDoC
Copilote
Lieu: Marseille
Date d'inscription: 16-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

salut Daube

avant de retourner au boulot, voici la réponse (plus globale)  a tes interrogations:

A la différence des variables" G: " les variables "L:" sont prises en compte par TOUTES  les gauges (ou jauges en bon français! ) d'un même panel.

Ta façon de placer les || (or) est tout a fait valable, Dans ta gauge tes 2 erreurs sont , d'avoir considéré une variable "L:" comme une variable d'exécution (ce qui n'est pas le cas!) et aussi d'avoir omit de mettre une condition de fermeture de l'avionic. 

NB:même avec la variable d'exécution K:AVIONICS_MASTER_TOOGLE , comme tu as écrit ta gauge cela risque de ne pas marcher (et c'est ton cas!) ...a moins de modifier, par tâtonnement,  la vitesse de lecture par une balise <Update> bien que cela ne soit pas la bonne méthode. Avec  K:AVIONICS_MASTER_SET ce problème n'existe pas et ta gauge fonctionnera.

A+solv_gifsolv_gif

Dernière modification par RBLeDoC (08-02-2012 14:29:37)

Hors ligne

 

#18 [↑][↓]  12-02-2012 16:07:58

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

Ca y est, enfin de retour en France.
J'ai enfin pu jeter un nouveau coup d'oeil a ma gauge, et sur la base des divers conseils ci-dessus, j'ai essaye de faire une version ultra simplifiee qui se contente de mettre l'avionique sur ON des que le generateur 1 est en marche.

Et ben ca marche toujours pas ! La franchement j'ai du mal a comprendre pourquoi hmm

Code:

<Gauge Name="Automatic avionics">
<Element>
<Select>
<Value>(A:General eng generator switch:1,bool) if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</Value>
</Select>
</Element>
</Gauge>

Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#19 [↑][↓]  12-02-2012 17:25:09

Daube
Pilote Virtuel
Date d'inscription: 31-10-2008

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

J'ai trouve !
En fait, la gauge n'etait pas executee du tout apparemment.
Faut croire qu'on a pas le droit d'appeller une gauge XML directement depuis le repertoire "panel". Il faut qu'elle soit dans un fichier .CAB ou bien dans un sous-repertoire. En l'occurence, j'ai donc cree un repertoire "new", j'ai mis mon fichier XML dedans, et dans le panel.cfg j'appelle la gauge gauge.xx=new!auto_avionics....

Voici la derniere version du code qui fait exactement ce que je voulais:

Code:

<Gauge Name="Automatic avionics">
<Element>
<Select>
<Value>(A:GENERAL ENG GENERATOR ACTIVE:1,bool) (A:GENERAL ENG GENERATOR ACTIVE:2,bool) || (A:APU GENERATOR ACTIVE,bool) || if{ 1 (>K:AVIONICS_MASTER_SET) } els{ 0 (>K:AVIONICS_MASTER_SET) }</Value>
</Select>
</Element>
</Gauge>

Et ca marche. Si l'APU ou les moteurs sont eteints, l'avionique est desactivee, peu importe si les generateurs sont sur ON ou OFF (ils ne sont pas "actifs"). Mais si j'allume ne serait-ce que l'APU, l'avionique s'active des que son generateur est actif.


Core i7 8700k, 32 Gb de RAM, NVidia GTX 1070-ti, Windows 10 64, Casque VR Pico 4

Hors ligne

 

#20 [↑][↓]  12-02-2012 19:30:41

RBLeDoC
Copilote
Lieu: Marseille
Date d'inscription: 16-03-2008
Renommée :   

Re: [FS9][FSX]Besoin d'explications pour un code XML d'une gauge

bonsoir Daube

effectivement depuis FS 2002 les gauges xml sont contenues soit dans des archives .cab soit dans des dossiers .
Prenons ta gauge nommée "auto_avionics.xml" qui peut être placée avec ses fichiers .bgl soit dans  une archive de compression au format Microsoft:"new.cab" soit dans un sous dossier intitulé:"new".
La ligne de déclaration dans panel.cfg est "gaugexx=new!auto_avionics, yyy, zzz"
Que va faire FSX ?
1-dans un premier temps il va rechercher dans le sous dossier panel de l'avion s'il existe un sous dossier "new" et si dans ce sous dossier il y a bien un fichier "auto_avionics.xml"; dans le cas ou sa recherche est négative il ira rechercher alors s'il y a une archive new.cab avec un fichier "auto_avionics.xml".
2-dans un second temps si dans le sous dossier de l'avion il n'a rien trouvé il fera les mêmes recherches dans le dossier Gauges de FSX.

remarque:FSX lit donc pour un avion donné, en premier une gauge contenue dans un sous dossier placé dans le dossier panel de cet avion et en dernier une gauge placée dans une archive .cab située dans le dossier Gauge de FSX.

A+solv_gifsolv_gifsolv_gif

Hors ligne

 

Pied de page des forums

Maintenance informatique Lausanne