ShapeAnimator

public class ShapeAnimator : NSObject, Animator

Shape에 애니메이션 효과를 주기 위한 Animator 클래스.

Animator를 생성해서 애니메이션 효과를 주고자 하는 Shape를 Animator에 넣어서 animator를 동작시키는 방식이다.

Animator는 사용자가 직접 생성할 수 없으며, ShapeManager를 통해서만 생성한 객체를 받아서 사용할 수 있다.

Animator Controls

  • Animator를 동작시킨다.

    Animator에 추가된 Shape가 없으면 start함수는 동작하지 않는다. start를 호출한 이후에는 Animator에 Shape를 추가하거나 지울 수 없다.

    추가하고자 하는 경우, stop을 호출하고 추가해야한다.

    start 호출 이후 애니메이션이 끝나면 Animator에 추가된 Shape는 비워지므로, 다시 start를 호출하려면 Shape를 추가해야한다.

    Shape Interface에 있는 이동/회전등의 동작은 Animator가 start되면 멈춘다.

    Declaration

    Swift

    public func start()
  • Animator의 동작을 멈춘다.

    stop이 호출되면 다시 애니메이션이 끝난것으로 간주되어 Animator에 속한 Shape는 모두 비워지므로, Animator를 다시 동작시키리면 다시 Shape를 Animator에 추가해야한다.

    Declaration

    Swift

    public func stop()
  • Animator 의 종료 콜백을 지정한다. Start 된 애니메이션이 종료되거나 stop이 호출되면 지정한 callback 이 호출된다. nil 로 지정해서 기존에 지정했던 callback을 제거할 수 있다. 기본값 nil.

    Declaration

    Swift

    public func setStopCallback(_ callback: ((Animator?) -> Void)?)

    Parameters

    callback

    Animator에 추가할 종료 콜백.

Managing Shapes

  • Animator에 MapPolygonShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 MapPolygonShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 MapPolygonShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addMapPolygonShape(_ shape: MapPolygonShape)

    Parameters

    shape

    Animator에 추가할 MapPolygonShape

  • Animator에 여러개의 MapPolygonShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 MapPolygonShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 MapPolygonShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addMapPolygonShapes(_ shapes: [MapPolygonShape])

    Parameters

    shapes

    Animator에 추가할 MapPolygonShape 배열

  • Animator에 PolygonShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 PolygonShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 PolygonShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addPolygonShape(_ shape: PolygonShape)

    Parameters

    shape

    Animator에 추가할 PolygonShape

  • Animator에 여러개의 PolygonShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 PolygonShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 PolygonShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addPolygonShapes(_ shapes: [PolygonShape])

    Parameters

    shapes

    Animator에 추가할 PolygonShape 배열

  • Animator에 MapPolylineShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 MapPolylineShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 MapPolylineShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addMapPolylineShape(_ shape: MapPolylineShape)

    Parameters

    shape

    Animator에 추가할 MapPolylineShape

  • Animator에 여러개의 MapPolylineShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 MapPolylineShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 MapPolylineShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addMapPolylineShapes(_ shapes: [MapPolylineShape])

    Parameters

    shapes

    Animator에 추가할 MapPolylineShape 배열

  • Animator에 PolylineShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 PolylineShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 PolylineShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addPolylineShape(_ shape: PolylineShape)

    Parameters

    shape

    Animator에 추가할 PolylineShape

  • Animator에 여러개의 PolylineShape를 추가한다.

    등록한 Animation에 동작시키고자 하는 PolylineShape를 추가한다. start()를 호출한 이후에는 애니메이션이 끝나기 전까지 PolylineShape를 추가할 수 없다.

    Declaration

    Swift

    @objc
    public func addPolylineShapes(_ shapes: [PolylineShape])

    Parameters

    shapes

    Animator에 추가할 PolylineShape 배열

  • Animator에 추가한 shape를 모두 지운다.

    start() 호출 이후에는 동작하지 않는다.

    Declaration

    Swift

    @objc
    public func clearAllShapes()

Properties

  • 추가한 animatorID

    Declaration

    Swift

    public var animatorID: String { get }
  • Animator 동작이 완료되고 나면 Animator에 추가된 폴리곤을 사라지게 할 지에 대한 여부

    Declaration

    Swift

    @objc
    public var hideAtStop: Bool { get set }
  • Animator 시작 여부

    Declaration

    Swift

    public var isStart: Bool { get }