Exemplo n.º 1
0
        public static void GetAnimation(Animator animator)
        {
            var animation = animator.GetAnimation();

            if (animation == null)
            {
                return;
            }
            switch (animation.Type)
            {
            case AnimationType.EdgeFlowChanged:
                if (!EdgeStates.ContainsKey(animation.Edge.ToShortString()))
                {
                    EdgeStates[animation.Edge.ToShortString()] = new FlowEdgeState();
                }
                EdgeStates[animation.Edge.ToShortString()].FlowChanged = true;
                EdgeStates[animation.Edge.ToShortString()].Flow        = animation.Edge.Flow;
                break;

            case AnimationType.EdgeMarked:
                if (!EdgeStates.ContainsKey(animation.Edge.ToShortString()))
                {
                    EdgeStates[animation.Edge.ToShortString()] = new FlowEdgeState();
                }
                EdgeStates[animation.Edge.ToShortString()].Marked = true;
                break;

            case AnimationType.EdgeUnmarked:
                if (!EdgeStates.ContainsKey(animation.Edge.ToShortString()))
                {
                    EdgeStates[animation.Edge.ToShortString()] = new FlowEdgeState();
                }
                EdgeStates[animation.Edge.ToShortString()].Marked = false;
                break;
            }

            OnRedrawRequired?.Invoke();
        }
Exemplo n.º 2
0
 public static void Reset()
 {
     EdgeStates = new Dictionary <string, FlowEdgeState>();
     OnRedrawRequired?.Invoke();
 }