Заметка пользовательского интерфейса
Используйте эту заметку для связывания параметра эффекта с элементом управления пользовательского интерфейса в среде узла. Это позволит пользователю в интерактивном режиме управлять параметром эффекта через ведущее приложение.
DXSAS определяет набор стандартных элементов управления с точки зрения модели данных и базового поведения, которое авторы могут ожидать от ведущих приложений. Заметка элемента управления используется следующим образом:
string SasUiControl = "ControlType";
where
ControlType
— одно из следующих:
ControlType | Описание | Внутренний тип данных | Заметки свойств элемента управления |
---|---|---|---|
Нет | Элемент управления не должен отображаться. Обратите внимание, что элемент управления отображается, если SasUiVisible имеет значение True, а тип элемента управления — любой тип, отличный от None. | Недоступно | Недоступно |
Любой | Это означает, что специальный контроль не запрашивается. Представленный элемент управления является результатом поведения, определяемого приложением. | Недоступно | Недоступно |
ColorPicker | Представление значения цвета в виде цветовой палитры. Значение упаковывается в компоненты XYZ связанного вектора. Компонент W связанного вектора всегда имеет значение 1. | floatN , где N — от 1 до 4 включительно. | SasUiEnum |
Направление | Вектор направления. | floatN , где N — от 2 до 4 включительно. | Нет |
FilePicker | Диалоговое окно, позволяющее пользователю просматривать и выбирать файл. | строка | Нет |
ListPicker | Список строковых значений, из которых пользователь может выбрать одну запись. Значения создаются из заметки SasUiEnum . | Массив строк и целочисленное значение, содержащее индекс выбранного строкового значения. | SasUiEnum |
Числовой | Набор числовых элементов управления вводом (например, текстовых полей). | floatMxN , где M и N имеют значение от 1 до 4 включительно. | SasUiMin, SasUiMax, SasUiStride |
Ползунок | Набор ползунков. | floatMxN , где M и N от 1 до 4 включительно | SasUiMin, SasUiMax, SasUiSteps, SasUiStepsPower |
Строка | Текстовое поле для редактирования строкового содержимого. | строка | Нет |
Если внутренний тип данных не идентичен типу связанного параметра, приведение будет выполняться при передаче данных из параметра ведущего приложения в параметр effect.
По умолчанию используется строка "None".
Общие свойства пользовательского интерфейса
SasUiDescription
Используйте эту заметку, чтобы указать строку для описания средства. Его можно использовать для элементов пользовательского интерфейса, таких как подсказки инструментов.
string SasUiDescription = "descriptive string";
Например:
float3 UpNormal
<
string SasUiDescription = "The normalized up vector";
>;
Значением по умолчанию является пустая строка.
SasUiLabel
Используйте эту заметку, чтобы указать строку, которая помечает любой элемент управления пользовательского интерфейса.
string SasUiLabel = "some label;
Вот пример:
float3 UpNormal
<
string SasUiLabel = "Normal that points up.";
>;
Значением по умолчанию является пустая строка.
SasUiVisible
Используйте эту заметку, чтобы указать, должен ли соответствующий параметр отображаться для пользователя.
bool SasUiVisible = false;
Если задано значение True, в ведущем приложении должен отображаться элемент управления пользовательского интерфейса для изменения параметра эффекта с заметками. Если значение равно false, пользовательский интерфейс не отображается в ведущем приложении.
Вот пример:
float3 UpNormal
<
string SasUiVisible = false;
>;
Значение по умолчанию равно True.
Свойства элемента управления пользовательского интерфейса
Заметки свойств элемента управления — это дополнительные модификаторы, которые помогают определить, как работает конкретный элемент управления.
SasUiEnum
Эта заметка позволяет ограничить диапазон значений для элемента управления. Заметка содержит строку значений, разделенных запятыми.
Значением по умолчанию является пустая строка.
SasUiMax
Эта заметка задает максимальное значение связанного параметра. Его можно связать только с параметром с числовым типом. Максимальное значение параметра фактически вычисляется следующим образом:
MaxValue = min(FLT_MAX, PARAMETER_TYPE_MAX);
PARAMETER_TYPE_MAX — это максимальное значение для типа, используемого связанным параметром. Это означает, что значение параметра с учетом заметки SasUiMax вычисляется следующим образом:
ParameterValue = min(NewParameterValue, MaxValue);
Значение по умолчанию — FLT_MAX, как определено в Math.h.
SasUiMin
В этой заметке указывается минимальное значение связанного параметра. Его можно связать только с любым числовым типизированным параметром. Минимальное значение параметра фактически вычисляется следующим образом:
MinValue = max(-FLT_MAX, PARAMETER_TYPE_MIN);
PARAMETER_TYPE_MIN — это минимальное значение для типа, используемого связанным параметром. Это означает, что значение параметра с учетом заметки SasUiMin вычисляется следующим образом:
ParameterValue = max(NewParameterValue, MinValue);
Значение по умолчанию — -FLT_MAX, как определено в Math.h.
SasUiSteps
В этой заметке указывается количество шагов, которые можно использовать при приращении или уменьшении значения связанного параметра. Заметка имеет смысл только в параметре с числовым типом. Ноль указывает, что ведущее приложение выберет разумное количество шагов.
Значение по умолчанию — 0.
SasUiStepsPower
Эта заметка указывает степень в функции power, которая имеет диапазон [0,0f, 1,0f]. При вычислении значений параметров в ведущих приложениях должен быть реализован следующий метод:
ParameterValue = ((SasUiMax - SasUiMin) x pow(UI_VALUE, SasUiStepsPower) + SasUiMin
Значение по умолчанию — 1,0f.
SasUiStride
Эта заметка указывает приращение, которое должно использоваться при приращении или уменьшении этого значения. В отличие от SasUiSteps, SasUiStride полезен с элементом управления спиннером, например, когда данные являются неограниченными, и пользователь предпочел бы увеличить значение параметра по шагам, а не по предварительно определенному количеству шагов. Ведущее приложение должно увеличиваться (или уменьшаться в зависимости от поведения элемента управления) на значение SasUiStride следующим образом:
ParameterValue = ParameterValue +/- SasUiStride
Значение по умолчанию — 1,0f.
Связанные темы