protected void CreatePath(Random rnd) { PTransformActivity rotActivity; // Create a path P3Path path = P3Path.CreateEllipse(0, 0, 100, 100); path.Brush = Brushes.Red; path.AddLine(0, 0, 20, 20); path.AddLine(20, 20, 34,67); path.AddArc(0, 30, 30, 30, 30, 30); path.Tolerance = .002f; canvas.Layer.AddChild(path); PMatrix rMatrix = new PMatrix(); PointF center = PUtil.CenterOfRectangle(path.Bounds); rMatrix.RotateBy(90, center.X, center.Y); rotActivity = path.AnimateToMatrix(rMatrix, 2000 + (long)(2000 * rnd.NextDouble())); rotActivity.LoopCount = 1000; rotActivity.Mode = ActivityMode.SourceToDestinationToSource; }
protected void CreateRects(Random rnd) { PTransformActivity rotActivity; P3Path rect; // Create a bunch of animated rectangles for (int x=0; x<2000; x += 100) { for (int y=200; y<1500; y += 100) { int w = 200; int h = 200; rect = P3Path.CreateRectangle(x, y, w, h); rect.Brush = new SolidBrush(Color.FromArgb(50, Color.Purple.R, Color.Purple.G, Color.Purple.B)); rect.Pen = new Pen(Color.Red, 0); canvas.Layer.AddChild(rect); PMatrix matrix = new PMatrix(); matrix.RotateBy(90, x+w/2, y+h/2); rotActivity = rect.AnimateToMatrix(matrix, 5000 + (long)(2000 * rnd.NextDouble())); rotActivity.LoopCount = 1000; rotActivity.Mode = ActivityMode.SourceToDestinationToSource; } } }
protected void CreateImages(Random rnd) { PTransformActivity rotActivity; P3Image image; // Create a bunch of animated images for (int x=0; x<2000; x += 500) { for (int y=1500; y<3000; y += 500) { int w = 200; int h = 200; image = new P3Image("hcil-logo.png"); canvas.Layer.AddChild(image); PMatrix matrix = new PMatrix(); matrix.RotateBy(90, x+w/2, y+h/2); rotActivity = image.AnimateToMatrix(matrix, 5000 + (long)(2000 * rnd.NextDouble())); rotActivity.LoopCount = 1000; rotActivity.Mode = ActivityMode.SourceToDestinationToSource; } } }