SCNActionable
SCNActionable
протокол определяет методы для рабочих действий с узлами.
SCNAction
объекты представляют допускающие повторное использование, анимированные действия, которые могут быть выполнены на узлах, таких как перемещение или вращение их. Вы используете SCNAction
метод класса создать действие и затем использовать методы в SCNActionable
протокол для выполнения действия с узлом. Этот протокол также определяет методы для проверки, имеет ли узел какие-либо в настоящее время рабочие действия и, если так, отменяя их.
Наследование
Не применимый
Оператор импорта
Swift
import SceneKit
Objective C
@import SceneKit;
Доступность
Доступный в OS X v10.10 и позже.
-
runAction (_:) - runAction:
ТребуемыйДобавляет действие к списку действий, выполняемых узлом. (требуемый)
Объявление
Swift
func runAction(_
action
: SCNAction)Objective C
- (void)runAction:(SCNAction *)
action
Параметры
action
Действие, которое будет выполняться.
Обсуждение
SceneKit начинает выполнять недавно добавленное действие, когда он подготавливает представлять следующий кадр.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.
-
Добавляет действие к списку действий, выполняемых узлом. Когда действие завершается, SceneKit вызывает указанный блок. (требуемый)
Объявление
Swift
func runAction(_
action
: SCNAction, completionHandlerblock
: (() -> Void)?)Objective C
- (void)runAction:(SCNAction *)
action
completionHandler:(void (^)(void))block
Параметры
action
Действие, которое будет выполняться.
block
Блок завершения, который вызывает SceneKit, когда завершается действие.
Обсуждение
Новое действие обрабатывается в следующий раз, когда SceneKit подготавливает представлять кадр.
SceneKit вызывает Ваш блок после того, как продолжительность действия будет завершена. Например, в игре Вы могли использовать этот метод для показа Игра закончена сообщение после выполнения действия постепенного исчезновения с узлом, выводящим на экран персонажа.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.
-
runAction (_: forKey:) - runAction:forKey:
ТребуемыйДобавляет идентифицируемое действие к списку действий, выполняемых узлом. (требуемый)
Объявление
Параметры
action
Действие, которое будет выполняться.
key
Уникальный ключ раньше идентифицировал действие.
Обсуждение
Этот метод идентичен
runAction:
, но действие сохранено и идентифицируется так, чтобы можно было получить или отменить его позже. Если действие с помощью того же ключа уже работает, SceneKit удаляет его прежде, чем добавить новое действие.Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Добавляет идентифицируемое действие к списку действий, выполняемых узлом. Когда действие завершается, SceneKit вызывает указанный блок. (требуемый)
Объявление
Параметры
action
Действие, которое будет выполняться.
key
Уникальный ключ раньше идентифицировал действие.
block
Когда действие завершается, блок завершения вызвал.
Обсуждение
Этот метод идентичен
runAction:completionHandler:
, но действие сохранено и идентифицируется так, чтобы можно было получить или отменить его позже. Если действие с помощью того же ключа уже работает, SceneKit удаляет его прежде, чем добавить новое действие.SceneKit вызывает Ваш блок после того, как продолжительность действия будет завершена. Например, можно использовать этот метод с действием ожидания для выполнения некоторого кода после синхронизированной задержки. Если в течение времени задержки необходимо препятствовать тому, чтобы код работал, используйте
removeActionForKey:
метод для отмены его.Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
actionForKey (_:) - actionForKey:
ТребуемыйВозвращает действие, связанное с определенным ключом. (требуемый)
Объявление
Параметры
key
Строка, однозначно определяющая действие.
Возвращаемое значение
Объект действия, соответствующий указанный ключ, или
nil
если узлу не идентифицировал действие ключ.Обсуждение
Используйте этот метод для получения действий, Вы запланировали использование
runAction:forKey:
илиrunAction:forKey:completionHandler:
метод.Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.
-
hasActions () - hasActions
ТребуемыйВозвраты, выполняет ли узел в настоящее время какие-либо действия. (требуемый)
Объявление
Swift
func hasActions() -> Bool
Objective C
- (BOOL)hasActions
Возвращаемое значение
YES
true
если узел имеет какие-либо действия выполнения; иначе,NO
false
.Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.
-
removeActionForKey (_:) - removeActionForKey:
ТребуемыйУдаляет действие, связанное с определенным ключом. (требуемый)
Объявление
Swift
func removeActionForKey(_
key
: String)Objective C
- (void)removeActionForKey:(NSString *)
key
Параметры
key
Строка, однозначно определяющая действие.
Обсуждение
Если узел в настоящее время выполняет действие, соответствующее ключ, SceneKit удаляет то действие из узла, пропуская любую остающуюся анимацию, которую это выполнило бы, но сохраняющий любые изменения, уже внесенные в узел.
Используйте этот метод для отмены действий, Вы запланировали использование
runAction:forKey:
илиrunAction:forKey:completionHandler:
метод.Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.
-
removeAllActions () - removeAllActions
ТребуемыйКонцы и удаляют все действия из узла. (требуемый)
Объявление
Swift
func removeAllActions()
Objective C
- (void)removeAllActions
Обсуждение
Когда SceneKit удаляет действие из узла, он пропускает любую остающуюся анимацию, которую выполнило бы действие. Однако любые изменения, которые действие уже внесло в состояние узла, остаются в силе.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.10 и позже.