Можно ли отрисовать запретные или тренировочные зоны в FSX — Создание сценариев FSX

Ответов: 20

Можно ли отрисовать запретные или тренировочные зоны в FSX?Если да,то как??

Пытался найти такую функцию в FSX Planner, AFX, ADE. Результат отрицательный.

 

Заранее благодарен.

Сообщение отредактировано kiril_85703: 16 May 2015 — 20:40

По конкретнее, что значить «отрисовать» ?

Нанести их на дефолтную карту симулятора. Заставить эту зону там отображаться.

Да, БГЛ-ка закидывается в папку с подключенным сценарием.

Ради интереса я скомпилировал Вашу зону:

 

p46.jpg

 

Красный ромбик — это она и есть.

 

UPD

В архиве хмл-ка и бгл-ка

 

Прикрепленные файлы

Сообщение отредактировано Nizkovoltnik: 17 May 2015 — 12:57

Если с такой работой никто не сталкивался,может тогда есть программа, которая определяет какой именно файл соответствует, к примеру, какому-нибудь одинокому приводу вне аэропорта??

К сожалению, утилиты для графического редактирования boundaries не существует. Сэр Джон, автор ADE, еще лет 5 назад собирался запилить эту функцию, да так и не сподобился.

Однако, в справочнике по СДК расписаны все команды и их атрибуты. Искать нужно в fsxsdk.chm -> Environment Kit -> BGL Compiler SDK -> Compiling BGL -> Boundary.

 

Вот пример кода запретной зоны, воткнутой в центр Москвы. Зона имеет круглую форму, радиус ее 5 км, высота — от 0 до 2 км от уровня моря.

<?xml version="1.0" encoding="ISO-8859-1"?>
<FSData
version="9.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="bglcomp.xsd">
<Boundary
type="RESTRICTED"
name="Moscow">

<Origin
lat="55.755388"
lon="37.621149"

/>

<Circle
index="0"
radius="5000"
minimumAltitudeType="MSL"
altitudeMinimum="0.00000"
maximumAltitudeType="MSL"
altitudeMaximum="2000.000"/>


</Boundary>
</FSData>

Такую XML-ку нужно скомпилировать с помощью BGLComp и поместить в сценарную папку.

 

UPD

 

Дефолтный файл, содержащий все зоны в игре, называется BNXWorld1.bgl и находится по адресу: Microsoft Flight Simulator XSceneryWorldScenery

Декомпилировать его можно с помощью утилиты bgl2xml от упомянутого Джона: http://www.scruffydu…2xml/4584282773

Сообщение отредактировано Nizkovoltnik: 17 May 2015 — 14:47

У Вас, по всей видимости, скрыты расширения файлов в Windows, поэтому хмл-ка имеет странное имя: Training Areas.bgl.xml

 

p48.jpg

 

Соответственно, после компиляции получается Training Areas.bgl.bgl.

Забавно то, что пробел в имени файла FSX спокойно проглатывает, а лишнюю точку — нет.

Поэтому я просто переименовал Ваш файл в Training Areas.xml, скомпилировал его в Training Areas.bgl и все заработало.

 

Кроме того, в тексте пропущен заголовок, самая первая строка:

 

<?xml version=»1.0″ encoding=»ISO-8859-1″?>

 

СДК утверждает, что:

  • The first line of the file indicates the XML version and character encoding to use for the rest of the file.  This line is not strictly required by XML parsers, but is strongly recommended to ensure the XML parser produces expected results.

То есть, «на скорость не влияет», компилируется работает и без нее, но, во избежание ненужного геморроя, лучше ее вписать.

Сообщение отредактировано Nizkovoltnik: 17 May 2015 — 14:25

Спасибо Вам!!!!

Я думал что Boundary это что-то забора или отбойников для газовки :brrr1:  :punish:

Сообщение отредактировано kiril_85703: 17 May 2015 — 11:46

Наверное перепутали с BoundaryFence (забор вокруг аэропорта).

Вопрос.

 

<Origin

         lat=»N61 47.400008″
         lon=»W156 35.283338″/>
      <Arc
         type=»COUNTER_CLOCKWISE»
         index=»0″
         lat=»N61 48.411831″
         lon=»W156 29.335835″/>
 
 
Что за Origin и Arc? 
 
Предполагаю что-то из этого центр зоны.
 
UPD. Нашел зоны без этих переменных, особо не нужны значит :)
UPD1. Как обратно xml превратить в bgl?? 
UPD2. Разобрался. Перетащить надо файл xml на иконку «bgl comp» в папке SDK.

Сообщение отредактировано kiril_85703: 17 May 2015 — 12:25

Создал xml файл:

 

 

<?xml version=»1.0″ encoding=»ISO-8859-1″?>
<!— Created by Scenery Design Engine (SDE) on 17.05.2015 —>
<FSData
   version=»9.0″
   xmlns:xsi=»http://www.w3.org/20…chema-instance»
   xsi:noNamespaceSchemaLocation=»bglcomp.xsd»>
  
 
 
   <Boundary
      type=»MOA»
      name=»R19002″
      >
      <BoundaryStart
         lat=»N52 38.000000″
         lon=»E27 22.000000″
         minimumAltitudeType=»MSL»
         altitudeMinimum=»50.0M»
         maximumAltitudeType=»AGL»
         altitudeMaximum=»8250.0″/>
      
      <Line
         lat=»N52 31.000000″
         lon=»E27 46.000000″/>
      <Line
         lat=»N52 18.000000″
         lon=»E27 18.000000″/>
      <Line
         lat=»N52 23.000000″
         lon=»E26 57.000000″/>
      <Line
         lat=»N52 38.000000″
         lon=»E27 22.000000″/>
 
      </Boundary>
 
 
</FSData>
 
 
.bgl файл создал, при загрузке симулятора никакой зоны нету:(

Origin — центр. Нужен для построения окружности (Circle) или дуги (Arc). Вот простенький пример такой зоны:

 

   <Boundary
      type=»MOA»
      name=»STONY B»
      >
      <BoundaryStart
         lat=»N62 34.967«
         lon=»W156 00.134«
         minimumAltitudeType=»MSL»
         altitudeMinimum=»609.6M»
         maximumAltitudeType=»AGL»
         altitudeMaximum=»5486.095M»/>
      <Line
         lat=»N62 31.467″
         lon=»W155 48.133″/>

      <Origin
         lat=»N61 47.537″
         lon=»W156 35.085″/>

      <Arc
         type=»COUNTER_CLOCKWISE»
         index=»0″
         lat=»N61 44.500″
         lon=»W156 35.000″/>
      <Line
         lat=»N62 34.967«
         lon=»W156 00.134«/>
   </Boundary>

 

Указываются координаты начальной точки;

От них строится первая линия;

От конца линии против часовой стрелки строится дуга с центром, находящимся в координатах точки Origin;

От конца дуги строится вторая линия, заканчиваясь в начальной точке первой линии, замыкая таким образом зону.

 

Получилась фигура каплеобразной формы.

Сообщение отредактировано Nizkovoltnik: 17 May 2015 — 13:07

Спасибо!Но меня зона ограничена четырехугольником. То есть, центр зоны и дугу не надо проводить.Вот пример такой зоны:

 

   <Boundary
      type=»TRAINING»
      name=»AREA A-3H/S 32H»
      >
      <BoundaryStart
         lat=»N45 00.000000″
         lon=»E142 04.000007″
         minimumAltitudeType=»AGL»
         altitudeMinimum=»7315.2M»
         maximumAltitudeType=»UNLIMITED»
         altitudeMaximum=»30480.0M»/>
      <Line
         lat=»N45 00.000000″
         lon=»E142 30.000000″/>
      <Line
         lat=»N44 36.000009″
         lon=»E143 29.999996″/>
      <Line
         lat=»N44 16.999992″
         lon=»E142 49.999999″/>
      <Line
         lat=»N43 52.000007″
         lon=»E142 01.000010″/>
      <Line
         lat=»N45 00.000000″
         lon=»E142 04.000007″/>
   </Boundary>
 
 
 
А вот моя зона:
 

 

<Boundary
      type=»MOA»
      name=»R19002″
      >
      <BoundaryStart
         lat=»N52 38.000000″
         lon=»E27 22.000000″
         minimumAltitudeType=»MSL«
         altitudeMinimum=»50.0M»
         maximumAltitudeType=»AGL«
         altitudeMaximum=»8250.0″/>
      
      <Line
         lat=»N52 31.000000″
         lon=»E27 46.000000″/>
      <Line
         lat=»N52 18.000000″
         lon=»E27 18.000000″/>
      <Line
         lat=»N52 23.000000″
         lon=»E26 57.000000″/>
      <Line
         lat=»N52 38.000000″
         lon=»E27 22.000000″/>
 
      </Boundary>

 

.bgl файл закидывается в папку с нужной сценой?? 
 
 
 
 

Ну не отображается,и все. :(

 

UPD.Ваша отобразилась.

 

Может дело в двойном [/FSdata]??

Сообщение отредактировано kiril_85703: 17 May 2015 — 13:05

Может дело в двойном [/FSdata]??

В моем случае это банальная опечатка, ни на что не влияющая. Докопипастился :) А вообще, нужно внимательно следить за <открывающими> и </закрывающими> тегами.

Сообщение отредактировано Nizkovoltnik: 17 May 2015 — 13:15

Тогда я пока что не наблюдаю разницы между Вашим и моим файлом:)

 

В любом случае спасибо!!!

А прикрепите сюда свою хмл-ку, погляжу на досуге, что у Вас в ней не так.

У меня пишет что я не могу прикреплять файлы такого типа.Кидаю на ЯДиск

 

https://yadi.sk/d/fM7vdHaNggLkw

Спасибо!!

Ну что ж, возрожу тему немного под другим соусом — думаю в тему будет. Итак, в FSX в Минск отсутствует круг. Решил добавить через xml, зоны отрисовываются, НО! УВД целенаправленно отправляет при взлете на частоту подхода, минуя частоту круга. Какие могут быть предположения? Код вставки xml внизу:

<?xml version=»1.0″ encoding=»ISO-8859-1″?>
<FSData
version=»9.0″
xmlns:xsi=»http://www.w3.org/20…chema-instance»
xsi:noNamespaceSchemaLocation=»bglcomp.xsd»>
   <Boundary
      type=»CLASS_C»
      name=»MINSK TMA2″
      >
      <BoundaryStart
         lat=»N54 0.001″
         lon=»E028 28.02″
         minimumAltitudeType=»MSL»
         altitudeMinimum=»0.0M»
         maximumAltitudeType=»MSL»
         altitudeMaximum=»2438.4M»/>
         <Com
         frequency=»125.250″
         type=»APPROACH»
         name=»Minsk Radar»/>
      <Line
         lat=»N54 0.001″
         lon=»E028 28.02″/>
      <Line
         lat=»N53 30.021″
         lon=»E028 38.027″/>
      <Line
         lat=»N53 25.018″
         lon=»E027 24.017″/>
      <Line
         lat=»N53 57.04″
         lon=»E027 3.002″/>
      <Line
         lat=»N54 9.007″
         lon=»E027 14.01″/>
      <Line
         lat=»N54 12.008″
         lon=»E027 50.035″/>
      <Line
         lat=»N54 0.001″
         lon=»E028 28.02″/>
   </Boundary>
   <Boundary
      type=»APPROACH»
      name=»Minsk TMA2″
      >
      <BoundaryStart
         lat=»N54 0.001″
         lon=»E028 28.02″
         minimumAltitudeType=»MSL»
         altitudeMinimum=»0.0M»
         maximumAltitudeType=»MSL»
         altitudeMaximum=»2438.4M»/>
         <Com
         frequency=»125.250″
         type=»APPROACH»
         name=»MINSK RADAR»/>
      <Line
         lat=»N54 0.001″
         lon=»E028 28.02″/>
      <Line
         lat=»N53 30.021″
         lon=»E028 38.027″/>
      <Line
         lat=»N53 25.018″
         lon=»E027 24.017″/>
      <Line
         lat=»N53 57.04″
         lon=»E027 3.002″/>
      <Line
         lat=»N54 9.007″
         lon=»E027 14.01″/>
      <Line
         lat=»N54 12.008″
         lon=»E027 50.035″/>
      <Line
         lat=»N54 0.001″
         lon=»E028 28.02″/>
   </Boundary>