示例#1
0
        public static void Test(AUTD autd)
        {
            const double x = AUTD.DeviceWidth / 2;
            const double y = AUTD.DeviceHeight / 2;
            const double z = 150;

            autd.SilentMode = false;

            var mod = Modulation.Static();

            autd.Send(mod);

            var       center   = new Vector3d(x, y, z);
            var       seq      = PointSequence.Create();
            const int pointNum = 200;

            for (var i = 0; i < pointNum; i++)
            {
                const double radius = 30.0;
                var          theta  = 2.0 * Math.PI * i / pointNum;
                var          p      = radius * new Vector3d(Math.Cos(theta), Math.Sin(theta), 0);
                seq.AddPoint(center + p);
            }
            seq.Frequency = 1;
            Console.WriteLine($"Actual frequency is {seq.Frequency}");
            autd.Send(seq, mod);
        }
示例#2
0
        public PointSequence ToPointSequence()
        {
            var seq = PointSequence.Create();

            seq.AddPoints(PointsReactive.Select(s => new Vector3d(s.X.Value, s.Y.Value, s.Z.Value)).ToArray());
            seq.Frequency = Frequency;
            return(seq);
        }