Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Use essa anotação para associar um parâmetro de efeito a um controle de interface do usuário no ambiente do host. Isso permitirá que um usuário controle interativamente um parâmetro de efeito por meio do aplicativo host.
O DXSAS define um conjunto de controles padrão em termos do modelo de dados e do comportamento básico que os autores de efeito podem esperar de aplicativos host. A anotação de controle é usada da seguinte maneira:
string SasUiControl = "ControlType";
onde
ControlType
é um dos seguintes:
| ControlType | Descrição | Tipo de dados interno | Anotações da propriedade Control |
|---|---|---|---|
| Nenhum | Nenhum controle deve ser mostrado. Observe que um controle fica visível se SasUiVisible for True e o tipo de controle for qualquer tipo diferente de None. | n/a | n/a |
| Qualquer | Isso implica que nenhum controle especial é solicitado. O controle apresentado é o resultado do comportamento definido pelo aplicativo. | n/a | n/a |
| ColorPicker | Represente um valor de cor como uma amostra de cores. O valor é empacotado nos componentes XYZ do vetor associado. O componente W do vetor associado é sempre definido como um. | floatN em que N é de 1 a 4 inclusive. | SasUiEnum |
| Direção | Um vetor de direção. | floatN em que N é de 2 a 4, inclusive. | Nenhum |
| FilePicker | Uma caixa de diálogo que permite que o usuário navegue e selecione um arquivo. | corda | Nenhum |
| ListPicker | Uma lista de valores de cadeia de caracteres da qual o usuário pode selecionar uma entrada. Os valores são gerados da anotação SasUiEnum. | Uma matriz de cadeias de caracteres junto com um valor inteiro que contém o índice do valor de cadeia de caracteres selecionado. | SasUiEnum |
| Numérico | Um conjunto de controles de entrada numéricos (como caixas de texto). | floatMxN onde M e N são de 1 a 4 inclusive. | SasUiMin, SasUiMax, SasUiStride |
| Controle deslizante | Um conjunto de controles deslizantes. | floatMxN onde M e N são de 1 a 4 inclusive | SasUiMin, SasUiMax, SasUiSteps, SasUiStepsPower |
| Corda | Uma caixa de texto para editar o conteúdo da cadeia de caracteres. | corda | Nenhum |
Se o tipo de dados interno não for idêntico ao tipo do parâmetro associado, a conversão ocorrerá quando os dados forem transferidos do parâmetro do aplicativo host para o parâmetro de efeito.
O padrão é a cadeia de caracteres "None".
Propriedades comuns da interface do usuário
SasUiDescription
Use essa anotação para especificar uma cadeia de caracteres para descrever uma ferramenta. Isso pode ser usado para elementos de interface do usuário, como dicas de ferramenta.
string SasUiDescription = "descriptive string";
Por exemplo:
float3 UpNormal
<
string SasUiDescription = "The normalized up vector";
>;
O padrão é uma cadeia de caracteres vazia.
SasUiLabel
Use essa anotação para especificar uma cadeia de caracteres para rotular qualquer controle de interface do usuário.
string SasUiLabel = "some label;
Aqui está um exemplo:
float3 UpNormal
<
string SasUiLabel = "Normal that points up.";
>;
O padrão é uma cadeia de caracteres vazia.
SasUiVisible
Use essa anotação para especificar se o parâmetro associado deve ser exibido para o usuário.
bool SasUiVisible = false;
Se definido como True, o aplicativo host deverá exibir um controle de interface do usuário para editar o parâmetro de efeito anotado. Se for falso, nenhuma interface do usuário será exibida no aplicativo host.
Aqui está um exemplo:
float3 UpNormal
<
string SasUiVisible = false;
>;
O padrão é True.
Propriedades do controle de interface do usuário
Anotações de propriedade de controle são modificadores adicionais que ajudam a determinar como um controle específico opera.
SasUiEnum
Essa anotação permite que você restrinja o intervalo de valores para um controle. A anotação contém uma cadeia de caracteres de valores delimitada por vírgulas.
O padrão é uma cadeia de caracteres vazia.
SasUiMax
Essa anotação especifica o valor máximo do parâmetro associado. Ele só pode ser associado a um parâmetro tipado numericamente. O valor máximo do parâmetro será calculado como:
MaxValue = min(FLT_MAX, PARAMETER_TYPE_MAX);
PARAMETER_TYPE_MAX é o valor máximo para o tipo usado pelo parâmetro associado. Isso significa que o valor do parâmetro, levando em conta a anotação SasUiMax é calculada como:
ParameterValue = min(NewParameterValue, MaxValue);
O valor padrão é FLT_MAX conforme definido em Math.h.
SasUiMin
Essa anotação especifica o valor mínimo do parâmetro associado. Ele só pode ser associado a qualquer parâmetro tipado numericamente. O valor mínimo do parâmetro será calculado como:
MinValue = max(-FLT_MAX, PARAMETER_TYPE_MIN);
PARAMETER_TYPE_MIN é o valor mínimo para o tipo usado pelo parâmetro associado. Isso significa que o valor do parâmetro, levando em conta a anotação SasUiMin é calculada como:
ParameterValue = max(NewParameterValue, MinValue);
O valor padrão é -FLT_MAX conforme definido em Math.h.
SasUiSteps
Essa anotação especifica o número de etapas que podem ser usadas ao incrementar ou decrementar o valor do parâmetro associado. A anotação só é significativa em um parâmetro tipado numericamente. Zero especifica que o aplicativo host escolherá um número razoável de etapas.
O valor padrão é 0.
SasUiStepsPower
Essa anotação especifica o expoente na função de energia, que tem o intervalo [0.0f, 1.0f]. Os aplicativos host devem implementar o seguinte método ao calcular valores de parâmetro:
ParameterValue = ((SasUiMax - SasUiMin) x pow(UI_VALUE, SasUiStepsPower) + SasUiMin
O valor padrão é 1,0f.
SasUiStride
Essa anotação especifica o incremento que deve ser usado ao incrementar ou decrementar esse valor. Ao contrário de SasUiSteps, SasUiStride é útil com um controle spinner, por exemplo, em que os dados não são associados e o usuário prefere incrementar o valor do parâmetro por passo em vez de por um número predefinido de etapas. Os aplicativos host devem incrementar (ou diminuir dependendo do comportamento do controle) pelo valor de SasUiStride da seguinte maneira:
ParameterValue = ParameterValue +/- SasUiStride
O valor padrão é 1,0f.
Tópicos relacionados