Visualizzazione dei risultati da 1 a 1 su 1
  1. #1

    Aiuto per decodificare codice Javascript

    Ho questa pagina:
    http://haya2now.jp/

    Fornisce tantissimi dati.... di cui però non mi importa niente, tranne di uno... che però non c'è, o meglio, è rappresentato solo graficamente, mentre io vorrei un numero per elaborarlo come voglio.
    Vedete quel riquadro con un pallino bianco al centro, accanto all'immagine della sonda spaziale?
    Le dimensioni del pallino vengono calcolate in base al dato che mi serve... ma non riesco a capire da dove viene letto!

    La parte di codice che ridimensiona il pallino (oggetto "onc-w1__target") sta in app.js:
    codice:
    Haya2.prototype.updateONC_T = function updateONC_T (xy, area) {
    var $screen = this.find('.onc-w1__screen');  
    var $circle = this.find('.onc-w1__target');
    var percenate_x = xy[0] / 512 * 100;\
    var percenate_y = (1 - xy[1] / 512) * 100;
    var percenate_r = Math.sqrt(area / Math.PI) / 512 * 100;
    Questo codice lo capisco abbastanza, ma questo che vuol dire?
    codice:
       __WEBPACK_IMPORTED_MODULE_3_gsap__[\"TweenLite\"].to($circle, 0.1, {
          top: percenate_y+'%',
          left: percenate_x+'%',
          width: (2 * percenate_r)+'%',
          height: (2 * percenate_r)+'%',
          ease: __WEBPACK_IMPORTED_MODULE_3_gsap__[\"Power4\"].easeInOut
        });
      };

    Credo che la chiamata a updateONC_T sia questa:

    codice:
    this.updateONC_T(sc['ONC_XY'], sc['ONC_A']);
    Che a sua volta prende i dati della variabile sc da qui:
    codice:
    Header.prototype.updateData = function updateData (data) {
    var sc = data.status.spacecraft
    ....
    Andando ancora a ritroso nel codice, sembra che alla fine risulti che devo andare a cercare il modulo n.3 caricato tramite questa funzione:
    codice:
     __webpack_require__(3);
    Ma più in là di così non riesco ad andare, qualcuno mi può dare una mano?
    -- JumpJack --

  2. #2
    Beh come non detto.
    Ho cliccato per sbaglio su "network" nella finestra di debug di Chrome... e ho trovato un miliardo di chiamate a questo file!
    http://haya2now.jp/data/data.json

    Che contiene varie sezioni, di cui quella che mi interessa è questa (convertita in XML):

    Beh come non detto.
    Ho cliccato per sbaglio su "network" nella finestra di debug di Chrome... e ho trovato un miliardo di chiamate a questo file!
    http://haya2now.jp/data/data.json

    Che contiene varie sezionio, di cui quella che mi interessa è questa (convertita in XML):

    codice:
          <spacecraft>
             <Bus-P>651.073</Bus-P>
             <CMDBitrate1>1000</CMDBitrate1>
             <CMDBitrate2>15.625</CMDBitrate2>
             <COH>COH</COH>
             <CSAS>
                <element>13.957</element>
                <element>-0.209</element>
                <element>0.019</element>
                <element>-nan</element>
             </CSAS>
             <MGA>
                <element>-85.003</element>
                <element>-66.000</element>
             </MGA>
             <ModIndex>1.25</ModIndex>
             <ONC_A>322</ONC_A>
             <ONC_XY>
                <element>262</element>
                <element>257</element>
             </ONC_XY>
             <RNG_LIDAR>47</RNG_LIDAR>
             <RX-ANT1>XMGA</RX-ANT1>
             <RX-ANT2>XLGA-A</RX-ANT2>
             <RX1-Lock>CRR+DEM</RX1-Lock>
             <RX2-Lock>CRR</RX2-Lock>
             <RXLv1>-98.203</RXLv1>
             <RXLv2>-99.733</RXLv2>
             <THR>
                <element>60.532227</element>
                <element>24.645508</element>
                <element>0.686523</element>
                <element>23.698242</element>
                <element>5.851562</element>
                <element>37.575195</element>
                <element>12.829102</element>
                <element>32.855469</element>
                <element>0.926758</element>
                <element>59.339844</element>
                <element>56.762695</element>
                <element>61.491211</element>
             </THR>
             <TLMBitrate>8192</TLMBitrate>
             <TX-AMP>XPA-A_HI</TX-AMP>
             <TX-ANT>XHGA</TX-ANT>
             <TX-XTRP>XTRP1</TX-XTRP>
             <TxMode>TLM</TxMode>
             <generatedAt>2018-09-24T06:40:36.980Z</generatedAt>
             <receivedAt>2018-09-24T06:58:29.129Z</receivedAt>
          </spacecraft>
    -- JumpJack --

  3. #3
    Ci ho ripensato, mi serve di nuovo aiuto. :-)
    Ho scoperto che in un altro pezzo di codice è effettivamente calcolata la distanza che mi serve, in questo modo:

    var distHaya2Ryugu = calcDistance(now.valueOf(), __WEBPACK_IMPORTED_MODULE_4__Util_js__[\"a\" /* default */].getInterpolators('hayabusa2'), __WEBPACK_IMPORTED_MODULE_4__Util_js__[\"a\" /* default */].getInterpolators('ryugu'));


    Non capisco praticamente niente di questa riga, come funziona? La funzione è definita così:
    var calcDistance = function (x, i1, i2)


    Ho trovato anche questa definizione:
    var __WEBPACK_IMPORTED_MODULE_4__Util_js__ = __webpack_require__(3);

    ..ma non so proprio come leggerla e usarla.

    Questo è il file completo dei sorgenti:
    http://haya2now.jp/js/app.js

    Le righe sopra le ho trovate "compresse" nella riga 155 del file.
    -- JumpJack --

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.