Unity 6.3
0 онлайн 49 гостей 3 в системе
Вход

Конструктор SceneQueryEngineFilterAttribute

Declaration

public SceneQueryEngineFilterAttribute(string token, string[] supportedOperators);
public SceneQueryEngineFilterAttribute(string token, stringComparison options, string[] supportedOperators);
public SceneQueryEngineFilterAttribute(string token, string paramTransformerFunction, string[] supportedOperators);
public SceneQueryEngineFilterAttribute(string token, string paramTransformerFunction, stringComparison options, string[] supportedOperators);

Параметры

Параметр Описание
знак Идентификатор фильтра. Обычно это то, что предшествует оператору в фильтре (i.e. "id" в "id>=2").
supportedOperators Список поддерживаемых токенов операторов. Null для всех операторов.
варианты Параметры сравнения строк.
paramTransformerFunction Имя функции преобразования параметров для использования с этим фильтром. Тег функции преобразования параметров с соответствующим атрибутом ParameterTransformer. Дополнительные сведения см. в SceneQueryEngineParameterTransformer.

Описание

Создайте фильтр с соответствующим токеном и поддерживаемыми операторами.

В следующем примере добавлена новая функция фильтрации dist, которая возвращает расстояние между объектом и точкой. Этот фильтр требует параметра transformer для преобразования текста в точку. Кроме того, он не поддерживает оператор "contains" (:).

[SceneQueryEngineFilter("dist", "DistanceParamHandler", new[] {"=", "!=", "<", ">", "<=", ">="})]
static float DistanceHandler(GameObject go, Vector3 p)
{
    return (go.transform.position - p).magnitude;
}