void GenerateGestures()
    {
        tracker.AddGesture("Square", new SquareGesture(.6f));
        tracker.AddGesture("Circle", new CircleGesture(.4f));
        tracker.AddGesture("Triangle", new TriangleGesture(.8f));
        tracker.AddGesture("Heart", new HeartGesture());

        tracker.AddGesture("Letter-S", new Gesture().AddChecks(new List <Check> {
            new ArcCheck(new Vector3(.5f, .5f, 0), -90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(0, 1, 0), -90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(-.5f, .5f, 0), -90, new Vector3(0, .5f, 0)),

            new ArcCheck(new Vector3(0, 0, 0), 90, new Vector3(0, -.5f, 0)),
            new ArcCheck(new Vector3(.5f, -.5f, 0), 90, new Vector3(0, -.5f, 0)),
            new ArcCheck(new Vector3(0, -1, 0), 90, new Vector3(0, -.5f, 0))
        })

                           .SetNormalizer(new FittedNormalizer(new Vector3(-.5f, -1.0f, 0), new Vector3(.5f, 1.0f, 0))));


        tracker.AddGesture("Plus", new Gesture().AddChecks(new List <Check>()
        {
            new LineCheck(new Vector3(-1, 0, 0), new Vector3(1, 0, 0)),
            new LineCheck(new Vector3(0, -1, 0), new Vector3(0, 1, 0)),

            new RadiusCheck(new Vector3(-1, 0, 0)),
            new RadiusCheck(new Vector3(1, 0, 0)),
            new RadiusCheck(new Vector3(0, -1, 0)),
            new RadiusCheck(new Vector3(0, 1, 0)),
        }).SetNormalizer(new FittedNormalizer()));
    }
Beispiel #2
0
    void GenerateGestures()
    {
        tracker.AddGesture("Square", new SquareGesture());
        tracker.AddGesture("Circle", new CircleGesture());
        tracker.AddGesture("Triangle", new TriangleGesture());
        tracker.AddGesture("Heart", new HeartGesture());

        tracker.AddGesture("Vertical",
                           new Gesture(new List <Check> {
            new LineCheck(new Vector3(0, 1, 0), new Vector3(0, -1, 0))
        },
                                       new LineNormalizer(),
                                       new GestureEvent()));


        tracker.AddGesture("Horizontal",
                           new Gesture(new List <Check> {
            new LineCheck(new Vector3(-1, 0, 0), new Vector3(1, 0, 0))
        },
                                       new LineNormalizer(),
                                       new GestureEvent()));


        tracker.AddGesture("Letter-J", new Gesture(new List <Check> {
            new LineCheck(new Vector3(0, 1, 0), new Vector3(0, 0, 0)),
            new ArcCheck(new Vector3(0, 0, 0), 90, new Vector3(-.5f, 0, 0)),
            new ArcCheck(new Vector3(-.5f, -.5f, 0), 90, new Vector3(-.5f, 0, 0)),
        },

                                                   new FittedNormalizer(new Vector3(-1, -.5f, 0), new Vector3(0, 1, 0)),
                                                   new GestureEvent()));


        tracker.AddGesture("2", new Gesture(new List <Check> {
            new ArcCheck(new Vector3(.5f, .5f, 0), -90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(0, 1, 0), -90, new Vector3(0, .5f, 0)),
            new LineCheck(new Vector3(.5f, .5f, 0), new Vector3(-.5f, -1, 0)),
            new LineCheck(new Vector3(-.5f, -1, 0), new Vector3(.5f, -1, 0)),
        },

                                            new FittedNormalizer(new Vector3(-.5f, -1, 0), new Vector3(.5f, 1, 0)),
                                            new GestureEvent()));


        tracker.AddGesture("3", new Gesture(new List <Check> {
            new ArcCheck(new Vector3(.5f, .5f, 0), -90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(.5f, .5f, 0), 90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(0, 1, 0), -90, new Vector3(0, .5f, 0)),

            new ArcCheck(new Vector3(.5f, -.5f, 0), -90, new Vector3(0, -.5f, 0)),
            new ArcCheck(new Vector3(.5f, -.5f, 0), 90, new Vector3(0, -.5f, 0)),
            new ArcCheck(new Vector3(0, -1, 0), 90, new Vector3(0, -.5f, 0)),

            new LineCheck(new Vector3(0, 0, 0), new Vector3(-.5f, 0, 0)),
        },

                                            new FittedNormalizer(new Vector3(-.5f, -1, 0), new Vector3(.5f, 1, 0)),
                                            new GestureEvent()));



        tracker.AddGesture("4", new Gesture(new List <Check> {
            new LineCheck(new Vector3(0, -1, 0), new Vector3(0, 1, 0)),
            new LineCheck(new Vector3(0, 1, 0), new Vector3(-.5f, 0, 0)),
            new LineCheck(new Vector3(-.5f, 0, 0), new Vector3(.5f, 0, 0)),
        },

                                            new FittedNormalizer(new Vector3(-.5f, -1, 0), new Vector3(.5f, 1, 0)),
                                            new GestureEvent()));


        tracker.AddGesture("Letter-S", new Gesture(new List <Check> {
            new ArcCheck(new Vector3(.5f, .5f, 0), -90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(0, 1, 0), -90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(-.5f, .5f, 0), -90, new Vector3(0, .5f, 0)),

            new ArcCheck(new Vector3(0, 0, 0), 90, new Vector3(0, -.5f, 0)),
            new ArcCheck(new Vector3(.5f, -.5f, 0), 90, new Vector3(0, -.5f, 0)),
            new ArcCheck(new Vector3(0, -1, 0), 90, new Vector3(0, -.5f, 0)),
        },

                                                   new FittedNormalizer(new Vector3(-.5f, -1.0f, 0), new Vector3(.5f, 1.0f, 0)),
                                                   new GestureEvent()));


        tracker.AddGesture("Letter-P", new Gesture(new List <Check> {
            new ArcCheck(new Vector3(0, 1, 0), 90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(.5f, .5f, 0), 90, new Vector3(0, .5f, 0)),

            new LineCheck(new Vector3(0, 1, 0), new Vector3(0, -1, 0)),
        },

                                                   new FittedNormalizer(new Vector3(0, -1.0f, 0), new Vector3(0.5f, 1.0f, 0)),
                                                   new GestureEvent()).AddSequentialChecks(
                               new List <Check> {
            new RadiusCheck(new Vector3(0, -1, 0)),
            new RadiusCheck(new Vector3(0, 1, 0)),
            new RadiusCheck(new Vector3(.5f, .5f, 0)),
            new RadiusCheck(new Vector3(0, 0, 0)),
        }
                               ));



        tracker.AddGesture("Letter-Z", new Gesture(new List <Check> {
            new LineCheck(new Vector3(-1, 1, 0), new Vector3(1, 1, 0)),
            new LineCheck(new Vector3(1, 1, 0), new Vector3(-1, -1, 0)),
            new LineCheck(new Vector3(-1, -1, 0), new Vector3(1, -1, 0))
        },

                                                   new FittedNormalizer(new Vector3(-1, -1, 0), new Vector3(1, 1, 0)),
                                                   new GestureEvent()));



        tracker.AddGesture("Question", new Gesture(new List <Check> {
            new ArcCheck(new Vector3(-.5f, .5f, 0), 90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(0, 1.0f, 0), 90, new Vector3(0, .5f, 0)),
            new ArcCheck(new Vector3(.5f, .5f, 0), 90, new Vector3(0, .5f, 0)),

            new LineCheck(new Vector3(0, 0, 0), new Vector3(0, -1, 0))
        },

                                                   new FittedNormalizer(new Vector3(-.5f, -1, 0), new Vector3(.5f, 1, 0)),
                                                   new GestureEvent(DisplayHints)));
    }