1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Bgl File Element Additional Airport Data

Discussion in 'Tools programming' started by scruffyduck, 20/11/06.

  1. scruffyduck

    scruffyduck Administrator Staff Member FSDevConf team Resource contributor

    Joined:
    17/9/05
    Messages:
    23,306
    Country:
    wales
    This is listed in Winfrieds File Format document as having an ID of 0x002c in FS9 but I can't find any information about the format of this. Would some kind soul be kind enough to explain to me what is is and what it contains?

    Thanks
  2. lc0277

    lc0277

    Joined:
    25/9/06
    Messages:
    156
    Country:
    france
    0x002C looks like transition data, used for encoding parts of instrument approach procedures in airports.
    BGLXml can extract such data, so you may take a look at the sourcecode. However, Jim Vile pointed out that both BglAnalyze and BGLXml had some problems in decompiling approaches.
  3. scruffyduck

    scruffyduck Administrator Staff Member FSDevConf team Resource contributor

    Joined:
    17/9/05
    Messages:
    23,306
    Country:
    wales
    Yes it is but there is a section header for this element and the number of records is always identical to the number of airports in the file. The same is true of namelist records. I wonder if both of these are redundant asn the data for Airport names and approach transitions should be inside the overall airport record itself??
  4. jvile

    jvile

    Joined:
    24/1/05
    Messages:
    7,466
    The number of approach transistions should not coincide with the number of airports.

    A single runway can have multiple transistions (5, 6, 7) or none at all for any type approach (ILS, LDA, GPS, RNAV, VORDME, NDBDME etc).

    The transistion is either FULL or DME ARC for the user airplanes GPS receiver which is processed by the proper dll so ATC knows what command to use in verbal vectoring for the Transistion.

    I ask MS in the past to tie the Transistions to the AI Plane so we could write an approach with visibility greater then 3 miles to eliminate the straight in vectors to final. That has been a big problem in the past because once the AI Plane turns final from a 30 degree offset heading it no longer is being instructed to avoid MDA's and will fly through any terrain in its way if on an extended final. The only type approach that can change the inbound course of the AI Plane when visibility is above 3 miles is a type=ILS.

    I have been testing AI plane behavior to see if it now uses any of the 2 type transistions (Full/DME ARC) other then 30 degree offset to final. If my results yield a different AI Plane behavior when visibility is above 3 miles then I would suspect the 0x002C record would not be in FSX.
  5. scruffyduck

    scruffyduck Administrator Staff Member FSDevConf team Resource contributor

    Joined:
    17/9/05
    Messages:
    23,306
    Country:
    wales
    I am now convinced that these records have nothing to do with approaches. What is interesting is that the number always matches the number of airports (as far as I can see) and are 44 bytes long in both FS9 and FSX. Also they are presented at the top level in the bgl with their own section header. Maybe they are a left over from pre-FS9 days
    Last edited: 21/11/06
  6. adr179

    adr179

    Joined:
    5/5/06
    Messages:
    257
    Country:
    slovenia
    Well, as far as my expirience with AI traffic in visibility above 3 miles went so far is that FS X AI traffic is as "stupid" as it was in the FS9. ATC is only giving visual straight-in approaches if no ILS approach is present.
    The self made traffic scenery for LQMO FS9 airport (had no aids, no ATC, no lightning no approaches as stock FS9 airport), that worked flawlessly in FS9 doesn't work at all for AI traffic in FS X, but the structure of approaches and transitions is recognised by the ATC and can be requested by user aircraft, only the AI traffic doesn't react as it should.

    Does anyone have list of codes that explain the approach/missed apprach/transition legs codes (IF,CF,DF and so on)?
    Yes, I'm aware of the offer from the SDK ( https://www.arinc.com/cf/store/catalog.cfm?prod_group_id=1&category_group_id=1, but really not willing to spend 250 and something bucks in order to be able to produce some FREE scenery.
    Last edited: 22/11/06
  7. Manuel Ambulo

    Manuel Ambulo

    Joined:
    29/9/06
    Messages:
    162
    Country:
    panama
    I got the BGLC_9_Source file, (posted by rhumbaflappy), and it there says the names of some sections inside of the FS2004's BGL sections, but i didnt found the format of some of them...in the BGL_9_Source it says that 0x002C sections is AIRPORT SUMMARY...the format is unknown for me, but if you open the BGLC_9_Source file and go to where it says these:

    BGL_DATA_TYPE_NONE--------EQU-------0t
    BGL_DATA_TYPE_COPYRIGHT-------EQU------1t
    BGL_DATA_TYPE_GUID-----------EQU-------2t
    BGL_DATA_TYPE_AIRPORT--------EQU-------3t = 0x0003 (Airports)
    BGL_DATA_TYPE_NAV-----------EQU------19t
    BGL_DATA_TYPE_NDB--------EQU-------23t
    BGL_DATA_TYPE_MARKER-------EQU--------24t
    BGL_DATA_TYPE_BOUNDARY--------EQU------32t
    BGL_DATA_TYPE_WAYPOINT---------EQU------34t
    BGL_DATA_TYPE_GEOPOL--------EQU-------35t
    BGL_DATA_TYPE_SCENERY_OBJECT--------EQU--------37t = 0x0025 (Scenery Object)
    BGL_DATA_TYPE_AIRPORT_NAME_INDEX-------EQU------39t
    BGL_DATA_TYPE_VOR_ICAO_INDEX------EQU-------40t
    BGL_DATA_TYPE_NDB_ICAO_INDEX--------EQU--------41t
    BGL_DATA_TYPE_WAYPOINT_ICAO_INDEX--------EQU------42t
    BGL_DATA_TYPE_MODEL_DATA-------EQU--------43t
    BGL_DATA_TYPE_AIRPORT_SUMMARY---------EQU---------44t = **0x002C**
    BGL_DATA_TYPE_EXCLUSION---------EQU--------46t
    BGL_DATA_TYPE_TIME_ZONE-----EQU-----47t
    BGL_DATA_TYPE_FAKE_TYPES------EQU--------10000t

    I didnt had found the format of that section, so for now its just unknown for me.

    I got the BGLC_9_Source from:

    http://www.fsdeveloper.com/forum/showthread.php?t=59

    Best Regards,

    Manuel Ambulo
    Last edited: 23/11/06
  8. scruffyduck

    scruffyduck Administrator Staff Member FSDevConf team Resource contributor

    Joined:
    17/9/05
    Messages:
    23,306
    Country:
    wales
    Hi Manuel and thanks - I have come to the conclusion that it contains things like country, state, city etc. Thank you for reminding me about Dick's BGLC_9, I have it and I used the source when I worked on mdl files but completely forgot about it for this project :eek: :eek:
  9. Vector

    Vector

    Joined:
    30/11/06
    Messages:
    69
    Country:
    us-pennsylvania
    jvile, do you understand how to interpret the approaches and transitions in the APX files? I understand some of it but some entries just don't seem to make sense. lol

    I am trying to write the transitions and approaches into a series of steps to follow.

    Here is an example where I can't figure out how to write out the transition, etc data.

    <Approach type="VOR"
    gpsOverlay="FALSE"
    runway="0"
    designator="NONE"
    suffix="A"
    fixType="VOR"
    fixIdent="SSM"
    fixRegion="K5"
    heading="85.00"
    altitude="1700.00F"
    missedAltitude="2600.00F">
    <ApproachLegs>
    <Leg type="IF"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="0.0"
    rho="0.00"
    altitudeDescriptor="A"
    altitude1="1700.00F"
    />
    <Leg type="CF"
    fixType="TERMINAL_WAYPOINT"
    fixRegion="CY"
    fixIdent="MA089"
    flyOver="FALSE"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="89.0"
    rho="16672.26"
    magneticCourse="89.0"
    distance="16672.26"
    altitudeDescriptor="A"
    altitude1="1300.00F"
    />
    </ApproachLegs>
    <MissedApproachLegs>
    <Leg type="CA"
    magneticCourse="89.0"
    altitudeDescriptor="+"
    altitude1="2600.00F"
    />
    <Leg type="DF"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    flyOver="FALSE"
    theta="0.0"
    rho="0.00"
    altitudeDescriptor="A"
    altitude1="2600.00F"
    />
    </MissedApproachLegs>
    <Transition transitionType="FULL"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    altitude="2100.00F">
    <TransitionLegs>
    <Leg type="PI"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    turnDirection="R"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="0.0"
    rho="0.00"
    magneticCourse="224.0"
    distance="18524.74"
    altitudeDescriptor="+"
    altitude1="2100.00F"
    />
    <Leg type="CF"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    flyOver="FALSE"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="0.0"
    rho="0.00"
    magneticCourse="89.0"
    distance="14819.79"
    altitudeDescriptor="+"
    altitude1="1700.00F"
    />
    </TransitionLegs>
    </Transition>

    </Approach>

    <Approach type="VOR"
    gpsOverlay="FALSE"
    runway="0"
    designator="NONE"
    suffix="A"
    fixType="VOR"
    fixIdent="SSM"
    fixRegion="K5"
    heading="85.00"
    altitude="1700.00F"
    missedAltitude="2600.00F">
    <ApproachLegs>
    <Leg type="IF"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="0.0"
    rho="0.00"
    altitudeDescriptor="A"
    altitude1="1700.00F"
    />
    <Leg type="CF"
    fixType="TERMINAL_WAYPOINT"
    fixRegion="CY"
    fixIdent="MA089"
    flyOver="FALSE"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="89.0"
    rho="16672.26"
    magneticCourse="89.0"
    distance="16672.26"
    altitudeDescriptor="A"
    altitude1="1300.00F"
    />
    </ApproachLegs>
    <MissedApproachLegs>
    <Leg type="CA"
    magneticCourse="89.0"
    altitudeDescriptor="+"
    altitude1="2600.00F"
    />
    <Leg type="DF"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    flyOver="FALSE"
    theta="0.0"
    rho="0.00"
    altitudeDescriptor="A"
    altitude1="2600.00F"
    />
    </MissedApproachLegs>
    <Transition transitionType="FULL"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    altitude="2100.00F">
    <TransitionLegs>
    <Leg type="PI"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    turnDirection="R"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="0.0"
    rho="0.00"
    magneticCourse="224.0"
    distance="18524.74"
    altitudeDescriptor="+"
    altitude1="2100.00F"
    />
    <Leg type="CF"
    fixType="VOR"
    fixRegion="K5"
    fixIdent="SSM"
    flyOver="FALSE"
    recommendedType="VOR"
    recommendedRegion="K5"
    recommendedIdent="SSM"
    theta="0.0"
    rho="0.00"
    magneticCourse="89.0"
    distance="14819.79"
    altitudeDescriptor="+"
    altitude1="1700.00F"
    />
    </TransitionLegs>
    </Transition>
    </Approach>
    Last edited: 1/2/07

Share This Page