Gauge composer évolution

Gauge Composer / Project Magenta / Reality XP, FlightDecksoft, etc...

Re: Gauge composer évolution

Messagede F-DEUZ » Ven 13 Nov 2009 14:10

Salut Guda,
Merci pour tes explications. Je vais attendre ces nouvelles fonctions.

A+ - Denis
F-DEUZ
 

Re: Gauge composer évolution

Messagede F-DEUZ » Sam 14 Nov 2009 18:31

Hello,
Petit compte rendu du jour.
Sur de second PC les gauges s'affichent normalement et s'échangent parfaitement lorsue je manipule le rotatif (qui sera d'ailleurs remplacé par des poussoirs). Le seul problème à ce niveau c'est que je suis obligé de les mettre en route deux fois de suite pour conserver la position que je veux.
Pour la connexion avec FSX : En configuration explicite rien ne marche. je suis obligé de passer en configuration implicite et là tout fonctionne. Il me reste à trouver les bons offset (FSX ou SIOC) car certain ne correspondent pas à ce que je veux.
J'attends les nouvelles commandes pour conserver la position des gauges.
voilà, voilà. Ca avance pas vite mais ca avance. J'ai un ecams presque complet.
A+- Denis
F-DEUZ
 

Re: Gauge composer évolution

Messagede guda » Dim 15 Nov 2009 11:19

Peux-tu me préciser si tu utilise la beta envoyée ?

Pour les connections implicites et explicites, je t'avoue avoir toujours utilisé l'IP directe

POur les nouvelles commandes, avec la dernière beta, utilise :
set position x, y

Par exemple dans mon script au niveau de l'état de la batterie, dés qu'elle est sur on, je fais apparaitre mon gauge mais en plus je le place : set position 1000, 250
Dés que ma bat=1, le gauge se met en place.

C'est génial pour ceux qui doivent mettre GC dans des endroits où il refusait de s'exécuter : pile dans un coin d'écran ou a cheval sur deux écrans

Voici mieux, si tu superposes plus GC, t'en fait arriver un et l'autre tu le met hors de vision via set position

Petite combine, va dans "about Gauge Composer" et tu verras les dernières commandes ajoutées à GC

La version envoyée contient aussi l'autoconnect : tu peux demander a ton gauge d'attendre en mode run que tes serveurs SIOC démarrent. S'il s'arrêtent il va aussi attendre sans sortir. Tu auras son état dans les icones prés de l'heure

Maintenant GC devient vraiment "tu lances et tu oublis" !
Avatar de l’utilisateur
guda
 
Messages: 451
Inscription: 27/04/09
Localisation: Brie Comte Robert (77)

Re: Gauge composer évolution

Messagede F-DEUZ » Dim 15 Nov 2009 18:31

Salut,
Effectivement j'utilise la dernière version depuis ce matin.
Dans about gauge j'ai vu une nouvelle commande set screenpos mais je n'avais pas trouvé comment m'en servir.
Maintenant je comprends mieux. Je viens d'essayer et ca marche nickel.
Je vois qu'il y a plusieurs nouvelles commandes. Je vais les tester dès que possible.

En ip directe, les valeurs provenant de FSX ne s'affichent pas. Je suis obligé de passer en 255.255. ect

Pour le moment je suis en train de buter sur l'offset 090C et 09A4 :
090C : 4 : Engine 1 fuel used since start (in pounds, 32-bit float) : Ok-SimC : No
l'autre c'est le moteur 2
Tu as déjà utilisé les valeurs en 32 bits float ? J'ai beau chercher sur internet je trouve pas grand chose.
et je n'arrive pas à comprendre comment récupérer les valeurs pour les convertir et les afficher dans ma gauge.

A+ - Denis
F-DEUZ
 

Re: Gauge composer évolution

Messagede JeeHell » Dim 15 Nov 2009 19:31

Hello,

j'y connais pas grand chose à GC, mais il me semble que le mieux est de passer par du code SIOC et le serveur IOCP pour arriver à tes fins. En effet, SIOC sait gérer des variables "flottantes". Donc dans SIOC tu crées une nouvelle variable en nombre entier par contre, et tu y recopies une valeur arrondie de ce que t'a trouvé SIOC. Pour avoir de la précision, tu peux éventuellement y mettre l'arrondi de la valeur multipliée par 10, et dans GC tu divises par 10 pour retomber sur tes pattes...

Et si ça ne marche toujours pas, tu devra t'emm****r en convertissant le binaire vers du flottant. Pour cela
(grosso modo) faut mettre ta variable FSUIPC dans un entier uniquement positif, leconvertir en binaire, puis reconvertir tout ça vers du décimal.
Bon courage si tu dois passer par ce chemin ecroulerire
JeeHell
 
Messages: 1853
Inscription: 18/05/09

Re: Gauge composer évolution

Messagede guda » Lun 16 Nov 2009 10:49

Je rejoint Jeeheel. Je me sers de GC comme un terminal. Je prépare toutes mes variables dans SIOC pour éviter de les manipuler dans GC.
Avatar de l’utilisateur
guda
 
Messages: 451
Inscription: 27/04/09
Localisation: Brie Comte Robert (77)

Re: Gauge composer évolution

Messagede F-DEUZ » Lun 16 Nov 2009 18:26

Salut et merci à tous les deux. Je vais potasser le sujet dés que je trouve le temps.

A+ - Denis
F-DEUZ
 

Re: Gauge composer évolution

Messagede F-DEUZ » Ven 4 Déc 2009 13:25

Bonjour,
Sous FSX j'ai bien deux variables qui gèrent la consommation de carburant, une pour chaque moteur,
Mais ou je n'y comprend rien c'est pour récupérer la valeur (Float 32 et là convertir sous SIOC pour avoir un résultat qui tienne la route.
J'ai bien regardé un peu partout mais aucun exemple y compris sur le site OC.
Denis
F-DEUZ
 

Re: Gauge composer évolution

Messagede JeeHell » Ven 4 Déc 2009 14:05

Je suis allé fureter sur le forum d'OC, et j'ai bien peur que SIOC ne gère que les float 64 bits gratgrat
Le problème c'est que la structure binaire est différente entre les 64 et le 32 bit. Je vais voir si j'arrive à te faire une sub-routine qui te transforme le 32bit en entier arrondi.
JeeHell
 
Messages: 1853
Inscription: 18/05/09

Re: Gauge composer évolution

Messagede JeeHell » Ven 4 Déc 2009 16:20

Voili voilou:
Ce petit code comprend une sub-routine "Float32", qui lorsqu'elle est appelée avec une variable float 32 bits va la transformer en sa valeur decimale multipliée par 100 arrondie à l'inférieur et la stocker dans la variable &resultat murrouge
pour simplifier, si tu as en fuel used 123.456789, tu récupéreras 12345 dans &resultat
Ensuite dans GC, tu peux diviser en interne par 100.

Les variables signe, exp, mantisse et resultat sont nécessaires (pas assez de variables locales possibles...), à toi de changer les numéros pour t'adapter cligneoeil

Code: Tout sélectionner
Var 0001, name Float32, Link SUBRUTINE
{
  L0 = TESTBIT &Float32 ,31
  IF L0 = 1
  {
    &Signe = -1   
  }
  ELSE
  {
    &Signe = 1   
  }
  &exp = -127   
  L0 = TESTBIT &Float32 ,23
  &exp = L0 + &exp
  L0 = TESTBIT &Float32 ,24
  L0 = 2 * L0
  &exp = L0 + &exp
  L0 = TESTBIT &Float32 ,25
  L0 = 4 * L0
  &exp = L0 + &exp
  L0 = TESTBIT &Float32 ,26
  L0 = 8 * L0
  &exp = L0 + &exp
  L0 = TESTBIT &Float32 ,27
  L0 = 16 * L0
  &exp = L0 + &exp
  L0 = TESTBIT &Float32 ,28
  L0 = 32 * L0
  &exp = L0 + &exp
  L0 = TESTBIT &Float32 ,29
  L0 = 64 * L0
  &exp = L0 + &exp
  L0 = TESTBIT &Float32 ,30
  L0 = 128 * L0
  &exp = L0 + &exp
  &Mantisse = 0   
  L0 = TESTBIT &Float32 ,22
  L0 = L0 / 2
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,21
  L0 = L0 / 4
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,20
  L0 = L0 / 8
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,19
  L0 = L0 / 16
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,18
  L0 = L0 / 32
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,17
  L0 = L0 / 64
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,16
  L0 = L0 / 128
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,15
  L0 = L0 / 256
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,14
  L0 = L0 / 512
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,13
  L0 = L0 / 1024
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,12
  L0 = L0 / 2048
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,11
  L0 = L0 / 4096
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,10
  L0 = L0 / 8192
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,9
  L0 = L0 / 16384
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,8
  L0 = L0 / 32768
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,7
  L0 = L0 / 65536
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,6
  L0 = L0 / 131072
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,5
  L0 = L0 / 262144
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,4
  L0 = L0 / 524288
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,3
  L0 = L0 / 1048576
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,2
  L0 = L0 / 2097152
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,1
  L0 = L0 / 4194304
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = TESTBIT &Float32 ,0
  L0 = L0 / 8388608
  L0 = L0 * 10000000
  &Mantisse = L0 + &Mantisse
  L0 = &Mantisse / 10000000
  L0 = L0 + 1
  L1 = POWER 2 ,&exp
  L2 = &Signe * L0
  L2 = L2 * L1
  L2 = L2 * 100
  &Resultat = TRUNC L2
}

Var 0002, name Signe

Var 0003, name exp

Var 0004, name Mantisse

Var 0006, name Resultat

Var 0007, name eng1fuel, Link FSUIPC_INOUT, Offset $090C, Length 4
{
  CALL &Float32, &eng1fuel
}

JeeHell
 
Messages: 1853
Inscription: 18/05/09

PrécédenteSuivante

Retourner vers Add-Ons d'instruments sur un ou plusieurs PC





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 13 invités