Files
godot-docs-l10n/classes/ru/class_propertytweener.rst

229 lines
12 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. _class_PropertyTweener:
PropertyTweener
===============
**Наследует:** :ref:`Tweener<class_Tweener>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
Интерполирует свойство :ref:`Object<class_Object>` с течением времени.
.. rst-class:: classref-introduction-group
Описание
----------------
**PropertyTweener** используется для интерполяции свойства в объекте. См. :ref:`Tween.tween_property()<class_Tween_method_tween_property>` для получения дополнительной информации об использовании.
Tweener завершится автоматически, если целевой объект будет освобожден.
\ **Примечание:** :ref:`Tween.tween_property()<class_Tween_method_tween_property>` — единственный правильный способ создания **PropertyTweener**. Любой **PropertyTweener**, созданный вручную, не будет работать правильно.
.. rst-class:: classref-reftable-group
Методы
------------
.. table::
:widths: auto
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PropertyTweener<class_PropertyTweener>` | :ref:`as_relative<class_PropertyTweener_method_as_relative>`\ (\ ) |
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PropertyTweener<class_PropertyTweener>` | :ref:`from<class_PropertyTweener_method_from>`\ (\ value\: :ref:`Variant<class_Variant>`\ ) |
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PropertyTweener<class_PropertyTweener>` | :ref:`from_current<class_PropertyTweener_method_from_current>`\ (\ ) |
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PropertyTweener<class_PropertyTweener>` | :ref:`set_custom_interpolator<class_PropertyTweener_method_set_custom_interpolator>`\ (\ interpolator_method\: :ref:`Callable<class_Callable>`\ ) |
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PropertyTweener<class_PropertyTweener>` | :ref:`set_delay<class_PropertyTweener_method_set_delay>`\ (\ delay\: :ref:`float<class_float>`\ ) |
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PropertyTweener<class_PropertyTweener>` | :ref:`set_ease<class_PropertyTweener_method_set_ease>`\ (\ ease\: :ref:`EaseType<enum_Tween_EaseType>`\ ) |
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PropertyTweener<class_PropertyTweener>` | :ref:`set_trans<class_PropertyTweener_method_set_trans>`\ (\ trans\: :ref:`TransitionType<enum_Tween_TransitionType>`\ ) |
+-----------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания метода
------------------------------
.. _class_PropertyTweener_method_as_relative:
.. rst-class:: classref-method
:ref:`PropertyTweener<class_PropertyTweener>` **as_relative**\ (\ ) :ref:`🔗<class_PropertyTweener_method_as_relative>`
При вызове окончательное значение будет использоваться как относительное значение.
\ **Пример:** Переместить узел на ``100`` пикселей вправо.
.. tabs::
.. code-tab:: gdscript
var tween = get_tree().create_tween()
tween.tween_property(self, "position", Vector2.RIGHT * 100, 1).as_relative()
.. code-tab:: csharp
Tween tween = GetTree().CreateTween();
tween.TweenProperty(this, "position", Vector2.Right * 100.0f, 1.0f).AsRelative();
.. rst-class:: classref-item-separator
----
.. _class_PropertyTweener_method_from:
.. rst-class:: classref-method
:ref:`PropertyTweener<class_PropertyTweener>` **from**\ (\ value\: :ref:`Variant<class_Variant>`\ ) :ref:`🔗<class_PropertyTweener_method_from>`
Устанавливает пользовательское начальное значение для **PropertyTweener**.
\ **Пример:** Переместить узел из позиции ``(100, 100)`` в ``(200, 100)``.
.. tabs::
.. code-tab:: gdscript
var tween = get_tree().create_tween()
tween.tween_property(self, "position", Vector2(200, 100), 1).from(Vector2(100, 100))
.. code-tab:: csharp
Tween tween = GetTree().CreateTween();
tween.TweenProperty(this, "position", new Vector2(200.0f, 100.0f), 1.0f).From(new Vector2(100.0f, 100.0f));
.. rst-class:: classref-item-separator
----
.. _class_PropertyTweener_method_from_current:
.. rst-class:: classref-method
:ref:`PropertyTweener<class_PropertyTweener>` **from_current**\ (\ ) :ref:`🔗<class_PropertyTweener_method_from_current>`
Заставляет **PropertyTweener** использовать текущее значение свойства (т.е. на момент создания этого **PropertyTweener**) в качестве отправной точки. Это эквивалентно использованию :ref:`from()<class_PropertyTweener_method_from>` с текущим значением. Эти два вызова сделают то же самое:
.. tabs::
.. code-tab:: gdscript
tween.tween_property(self, "position", Vector2(200, 100), 1).from(position)
tween.tween_property(self, "position", Vector2(200, 100), 1).from_current()
.. code-tab:: csharp
tween.TweenProperty(this, "position", new Vector2(200.0f, 100.0f), 1.0f).From(Position);
tween.TweenProperty(this, "position", new Vector2(200.0f, 100.0f), 1.0f).FromCurrent();
.. rst-class:: classref-item-separator
----
.. _class_PropertyTweener_method_set_custom_interpolator:
.. rst-class:: classref-method
:ref:`PropertyTweener<class_PropertyTweener>` **set_custom_interpolator**\ (\ interpolator_method\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_PropertyTweener_method_set_custom_interpolator>`
Позволяет интерполировать значение с помощью пользовательской функции смягчения. Предоставленный ``interpolator_method`` будет вызван со значением в диапазоне от ``0.0`` до ``1.0`` и, как ожидается, вернет значение в том же диапазоне (значения вне диапазона могут использоваться для превышения). Возвращаемое значение метода затем используется для интерполяции между начальным и конечным значением. Обратите внимание, что параметр, переданный методу, по-прежнему зависит от собственного смягчения tweener.
.. tabs::
.. code-tab:: gdscript
@export var curve: Curve
func _ready():
var tween = create_tween()
# Интерполируйте значение, используя пользовательскую кривую.
tween.tween_property(self, "position:x", 300, 1).as_relative().set_custom_interpolator(tween_curve)
func tween_curve(v):
return curve.sample_baked(v)
.. code-tab:: csharp
[Export]
public Curve Curve { get; set; }
public override void _Ready()
{
Tween tween = CreateTween();
// Интерполируйте значение, используя пользовательскую кривую.
Callable tweenCurveCallable = Callable.From<float, float>(TweenCurve);
tween.TweenProperty(this, "position:x", 300.0f, 1.0f).AsRelative().SetCustomInterpolator(tweenCurveCallable);
}
private float TweenCurve(float value)
{
return Curve.SampleBaked(value);
}
.. rst-class:: classref-item-separator
----
.. _class_PropertyTweener_method_set_delay:
.. rst-class:: classref-method
:ref:`PropertyTweener<class_PropertyTweener>` **set_delay**\ (\ delay\: :ref:`float<class_float>`\ ) :ref:`🔗<class_PropertyTweener_method_set_delay>`
Устанавливает время в секундах, после которого **PropertyTweener** начнет интерполяцию. По умолчанию задержки нет.
.. rst-class:: classref-item-separator
----
.. _class_PropertyTweener_method_set_ease:
.. rst-class:: classref-method
:ref:`PropertyTweener<class_PropertyTweener>` **set_ease**\ (\ ease\: :ref:`EaseType<enum_Tween_EaseType>`\ ) :ref:`🔗<class_PropertyTweener_method_set_ease>`
Устанавливает тип используемой плавности из :ref:`EaseType<enum_Tween_EaseType>`. Если не установлено, плавность по умолчанию используется из :ref:`Tween<class_Tween>`, который содержит этот Tweener.
.. rst-class:: classref-item-separator
----
.. _class_PropertyTweener_method_set_trans:
.. rst-class:: classref-method
:ref:`PropertyTweener<class_PropertyTweener>` **set_trans**\ (\ trans\: :ref:`TransitionType<enum_Tween_TransitionType>`\ ) :ref:`🔗<class_PropertyTweener_method_set_trans>`
Задает тип используемого перехода из :ref:`TransitionType<enum_Tween_TransitionType>`. Если не задано, используется переход по умолчанию из :ref:`Tween<class_Tween>`, который содержит этот Tweener.
.. |virtual| replace:: :abbr:`virtual (Этот метод обычно должен быть переопределен пользователем, чтобы иметь какой-либо эффект.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Этот метод не имеет побочных эффектов. Он не изменяет ни одну из переменных-членов экземпляра.)`
.. |vararg| replace:: :abbr:`vararg (Этот метод принимает любое количество аргументов после описанных здесь.)`
.. |constructor| replace:: :abbr:`constructor (Этот метод используется для создания типа.)`
.. |static| replace:: :abbr:`static (Этот метод не нуждается в вызове экземпляра, поэтому его можно вызвать напрямую, используя имя класса.)`
.. |operator| replace:: :abbr:`operator (Этот метод описывает допустимый оператор для использования с этим типом в качестве левого операнда.)`
.. |bitfield| replace:: :abbr:`BitField (Это значение является целым числом, составленным как битовая маска следующих флагов.)`
.. |void| replace:: :abbr:`void (Нет возвращаемого значения.)`