Jump to content
Tory

SOS: вопросы по приборам на XML

Recommended Posts

16 минут назад, ilya1502 пишет:

Представить — не то. Надо рисовать, тогда все косяки сразу видны. Когда делаешь всё в голове, уже знаешь, как должен работать твой прибор, в результате в мысленной схеме кажется, что всё правильно.

Да. Всё так. Только хорошо, когда на XML свободно пишешь. А я только со "словарём" :-)  (В других приборах подглядишь и пытаешься что-то подобное наваять). 

И без Ваших подсказок вообще бы туго пришлось ))).

Edited by Казачок

Share this post


Link to post
Share on other sites
2 hours ago, Казачок said:

И без Ваших подсказок вообще бы туго пришлось ))).

Когда-то в этой ветке мне так же подсказывали :)

Share this post


Link to post
Share on other sites

Здравствуйте!

Столкнулся с проблемой...

Есть строка в приборе, отвечающая за шрифт (цифры в часах):

 <Text X="67" Y="27" Bright="Yes" Length="5" Font="Quartz" Fixed="Yes" FontWeight="800" Color="#E0E0E0" HilightColor="Yellow"> 

С приведённой строкой цифры на табло белые. Мне нужно, что бы они были зелёного цвета. За цвет шрифта, как понимаю, отвечает запись  Color="#E0E0E0"? 

Так вот... Взял я из другого прибора (с зелёным шрифтом) строку Color="#FFFFFF" , но ничего не поменялось - В моём приборе шрифт по прежнему белый. Как мне его (цвет шрифта) изменить? И, если возможно, расскажите пожалуйста, что означают остальные записи строки (Length="5, FontWeight="800", HilightColor="Yellow")?

Share this post


Link to post
Share on other sites

Посмотрите вот здесь Chapter 1. На стр. 13 есть описание строковых выражений. И в целом хороший туториал.

  • Upvote 1

Share this post


Link to post
Share on other sites
18 минут назад, ilya1502 пишет:

Посмотрите вот здесь Chapter 1. На стр. 13 есть описание строковых выражений. И в целом хороший туториал.

Спасибо!

Сейчас покопаюсь.

Share this post


Link to post
Share on other sites
46 минут назад, DT-75 пишет:

Код цвета можно в фотошопе, в палитре цветов выбрать. Или  из таблицы https://ru.wikipedia.org/wiki/Википедия:Таблица_цветов

  Показать контент

1.jpg.c3a2b93f9d287d1b553970f95a1fa352.jpg

 

Огромное Спасибо!

Это действительно помогло! Теперь всё, как нужно!

Share this post


Link to post
Share on other sites

Вот ещё одно....

ХАЭ-85 попытался изобразить. получается вот что:

Один и тот же прибор, но записанный в разные окна 2D панели, ведет себя не синхронно. Причём как-то на половину... Текущее время показывает нормально. Секундомер управляется нормально.

5a58e91a49c96_-85(1).jpg.d0a76886ced096a3bc4c76e1db6bea0f.jpg

А вот время полёта одинаково отображать не хочет. В одном окне нажимаю кнопку "Старт" - Время пошло. А в другом окне этот же самый прибор стоит на месте, и кнопка не нажата.

5a58e942058e6_-85(2).jpg.dba34957b795e0f11992ab2dc770827a.jpg

В чём дело?

Share this post


Link to post
Share on other sites

А как у вас реализован хронометр полётного времени и кнопка "Старт"?

Share this post


Link to post
Share on other sites
9 минут назад, ilya1502 пишет:

А как у вас реализован хронометр полётного времени и кнопка "Старт"?

Да обыкновенно реализован )) - "Механизм" свинчен с дефолтного  B747-400 (MFS2004).

Скрытый текст

       <Element>
      <Position X="83" Y="167"/>
      <Text X="67" Y="27" Bright="Yes" Length="5" Font="Quartz" Fixed="Yes" FontWeight="800" Color="#3AE43A" HilightColor="Yellow">
         <String>%((L:Clock Sim Rate, bool))%{if}%((P:Simulation rate, number) d 100 &gt;=)%{if}%!5.1f!%{else}%!5.2f!%{end}%{else}%((L:Clock Chronograph Mode, number) s1)%{if}%((L:Clock Chronograph Accumulated, minutes) l1 1 == if{ (P:Absolute time, minutes) (L:Clock Chronograph Start, minutes) - + } flr)%!5d!%{else}%((G:Var8) 0 == if{ (P:Absolute time, seconds) (&gt;G:Var8) } (G:Var9) (G:Var5) 0 == if{ (P:Absolute time, seconds) (G:Var8) - + } 60 / flr d 60 % r 60 / flr 99 min)%!02d!:%!02d!%{end}%{end}</String>
         <Hilight>
            <SELECT_SIM_RATE Start="1" End="5"/>
         </Hilight>
         <Failures>
            <SYSTEM_ELECTRICAL_PANELS Action=""/>
         </Failures>
      </Text>
   </Element> 

 

<Area Left="0" Top="149" Width="32" Height="62">
         <Area Bottom="40">
            <Cursor Type="Hand"/>
            <Click>(G:Var5) ! (&gt;G:Var5) 0 (&gt;L:Clock Sim Rate, bool) (G:Var5) 0 != if{ (G:Var9) (P:Absolute time, seconds) (G:Var8) - + (&gt;G:Var9) } els{ (P:Absolute time, seconds) (&gt;G:Var8) }</Click>
         </Area>
         <Area Top="40">
            <Cursor Type="Hand"/>
            <Click>10 (&gt;G:Var5) 0 (&gt;L:Clock Sim Rate, bool) 0 (&gt;G:Var9) </Click>
         </Area>
      </Area>

Полагаю тут G-переменные замешаны?

Share this post


Link to post
Share on other sites
1 hour ago, Казачок said:

Полагаю тут G-переменные замешаны?

Именно.

Share this post


Link to post
Share on other sites

Здравствуйте!

Вот предположим, должно запустится событие (например, загореться контрольная лампа) при включении  (L:BSKD_MD1, enum) или (L:BSKD_MD2, enum).

Я записываю выражение <Value>(L:BSKD_MD1, enum) || (L:BSKD_MD2, enum)</Value>. Но в таком виде контрольная лампа загорается только при включении (L:BSKD_MD2, enum).

Как мне правильно поставить знак "ИЛИ", что бы событие запускалось при L:1 или L:2 ?

Edited by Казачок

Share this post


Link to post
Share on other sites

А какие значения принимают эти переменные? С точки зрения логических операций важно только 0 или не 0. Любое ненулевое значение трактуется "не равно 0".

  • Upvote 1

Share this post


Link to post
Share on other sites

Здравствуйте!

Прошу помощи!

Простейший прибор - цифровой указатель уровня топлива в левом баке. Показывать должен в килограммах. Выдернул из похожего прибора строку, указывающую общее количество топлива в левом и правом баке:

            <Text X="73" Y="17" Bright="Yes" Length="6" Font="Arial"
Color="LightGreen" Adjust="Center" VerticalAdjust="Center" Multiline="No">
               <String>%((A:Fuel total quantity weight, kilogram)) %!5d!</String>
            </Text>

Работает - Показывает сумму. 

Пытаюсь переписать строку только под левый бак. Например так: 

            <Text X="73" Y="17" Bright="Yes" Length="6" Font="Arial"
Color="LightGreen" Adjust="Center" VerticalAdjust="Center" Multiline="No">
               <String>%((A:Fuel tank left main quantity weight, kilogram)) %!5d!</String>
            </Text>

- Ничего не выходит. Указатель упорно показывает 0.

Как мне правильно записать строку, что бы указатель показывал топливо в килограммах в левом (правом) баке? 

Share this post


Link to post
Share on other sites

Неправильно указано имя переменной. Должно быть (A: FUEL TANK LEFT MAIN QUANTITY, kilogram)

Это есть в SDK

Share this post


Link to post
Share on other sites
17 минут назад, Alexander Belov пишет:

Неправильно указано имя переменной. Должно быть (A: FUEL TANK LEFT MAIN QUANTITY, kilogram)

Это есть в SDK

Большое спасибо, Александр!

Интересно, что такой вариант я записывал. Только при нём прибор всё равно упорно показывает 0. Ни как не пойму - в чём дело?

Share this post


Link to post
Share on other sites
38 минут назад, Alexander Belov пишет:

А сам бак существует? Он в aircratf.cfg прописан?

Да, конечно.

[Fuel]

fuel_type               = 2
number_of_tank_selectors= 2
electric_pump           = 1
//
// 6.7 lbs/gal; -> 3.04liters/Gal -> (1Gal=3.786liters) -> Ro~0.8
//
LeftMain = -7.3, -14.0, -0.6, 2055.0, 66.0
RightMain= -7.3,  14.0, -0.6, 2055.0, 66.0
//aav
//Center1  = -7.3,   0.0,  0.0,  539.6, 3.0    //Max fuel wgt 27,025 lb - Ref 1
//LeftMain = -7.3, -14.0, -0.6, 1747.0, 3.0
//RightMain= -7.3,  14.0, -0.6, 1747.0, 3.0

И сумму-то правильно показывает...

Edited by Казачок

Share this post


Link to post
Share on other sites

Вообще, полезно иметь хотя бы один центральный бак, пусть и символической емкости, хоть 1 галлон. Есть такая глюка - без центрального бака дефолтная топливная система может работать некорректно.

Можно попробовать вписать эту переменную в любую точно и гарантированно работающую строку. Это чтобы проверить, нет ли ошибки в строке вывода.

  • Upvote 1

Share this post


Link to post
Share on other sites

Да...

Добавление центрального бака ничего не даёт - Указатель топлива всё равно 0 показывает. И вообще с килограммами топливо по бакам показывать никак не хочет - Только сумму.

Пришлось прибор кормить литрами, умноженными на коэффициент 0,8. Работает.

Вот ещё вопрос:

На некоторых самолётах реализовано переключение управления передней стойкой шасси: Разбег (пробег) - Руление. Например Ан-12, Ил-18 (кажется). Там этот тумблер в GAU-архив зашит (автор - Степан Грицевский) и поковыряться в нём не получится, на сколько я знаю.

Возможно ли такой тумблер на XML реализовать?

Edited by Казачок

Share this post


Link to post
Share on other sites
В 10.03.2018 в 22:45, Alexander Belov пишет:

А что этот тумблер должен делать?

Приветствую!

На сколько я понимаю, он при рулении разрешает поворачивать передней стойке шасси, а при разбеге - пробеге блокирует её (работает только  руль направления на киле).

Share this post


Link to post
Share on other sites

Так это уже на дефолтном DC-3 сделано. Хвостовое колесо блокируется на разбеге. Вот этот кусок кода (файл ecu.xml):

--------------------------------------------------------------------------------------- линия отреза

    <!-- Tailwheel Lock -->
    <Area Left="182" Top="264" Width="32" Height="72">
      <Cursor Type="Hand"/>
      <Tooltip ID="TOOLTIPTEXT_TAILWHEEL_LOCK"/>
      <Click Event="TOGGLE_TAILWHEEL_LOCK"/>
    </Area>

--------------------------------------------------------------------------------------- линия отреза
    

  • Upvote 1

Share this post


Link to post
Share on other sites

Спасибо!

Сегодня посмотрю. Надеюсь, всё получится.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...