private void buttonShapes_Click(object sender, EventArgs e) { GraphicsWindow.Show(); LDScrollBars.Rasterize = "True"; GraphicsWindow.MouseDown += OnMouseDown; LDScrollBars.Add(GraphicsWindow.Width, 10000); int cogRadius = 100; int cogNumTeeth = 10; int cogToothSize = 10; Primitive cog = Shapes.AddEllipse(2 * cogRadius, 2 * cogRadius); Primitive points = ""; Primitive point = ""; LDPhysics.AddMovingShape(cog, 0.5, 0.8, 1); for (int i = 1; i <= 1; i++) { double angle = (i - 1) / cogNumTeeth * 2 * SBMath.Pi; double innerSector = 0.7 / cogNumTeeth * 2 * SBMath.Pi; double outerSector = 0.5 / cogNumTeeth * 2 * SBMath.Pi; point["X"] = cogRadius + cogRadius * SBMath.Cos(angle); point["Y"] = cogRadius + cogRadius * SBMath.Sin(angle); points[1] = point; point["X"] = cogRadius + cogRadius * SBMath.Cos(angle + innerSector); point["Y"] = cogRadius + cogRadius * SBMath.Sin(angle + innerSector); points[2] = point; point["X"] = cogRadius + (cogRadius + cogToothSize) * SBMath.Cos(angle + outerSector); point["Y"] = cogRadius + (cogRadius + cogToothSize) * SBMath.Sin(angle + outerSector); points[3] = point; point["X"] = cogRadius + (cogRadius + cogToothSize) * SBMath.Cos(angle + innerSector - outerSector); point["Y"] = cogRadius + (cogRadius + cogToothSize) * SBMath.Sin(angle + innerSector - outerSector); points[4] = point; Primitive tooth = LDShapes.AddPolygon(points); LDPhysics.AddMovingShape(tooth, 0.5, 0.8, 1); //LDPhysics.GroupShapes(cog, tooth); } LDPhysics.DoTimestep(); Primitive ball = Shapes.AddEllipse(100, 50); //Shapes.Move(ball, 112, 112); //Shapes.Zoom(ball, 1, 1); //Shapes.Rotate(ball, -60); Shapes.Move(ball, 100, 112); //Shapes.Zoom(ball, 1.2, 1); //Shapes.Rotate(ball, -60); Primitive gradient = ""; gradient[1] = "Red"; gradient[2] = "Yellow"; gradient[3] = "Blue"; Primitive brush = LDShapes.BrushGradient(gradient, "H"); LDShapes.BrushShape(ball, brush); LDUtilities.GWCapture("C:\\temp\\test.jpg", "False"); Primitive rect = Shapes.AddRectangle(60, 60); Shapes.Move(rect, 25, 95); Shapes.Zoom(rect, 1.5, 1); Shapes.Rotate(rect, 45); //Shapes.Move(rect, 75, 75); //Shapes.Zoom(rect, 1.5, 1); //Shapes.Rotate(rect, 45); TextWindow.WriteLine(LDShapes.Overlap(ball, rect)); //TextWindow.WriteLine(LDShapes.Overlap(rect, ball)); Primitive image1 = Shapes.AddImage("C:\\temp\\test2.jpg"); Shapes.Move(image1, 100, 100); TextWindow.WriteLine(LDShapes.Overlap(ball, image1)); //LDShapes.AnimatedGifInterval = 0; Primitive gifShape = LDShapes.AddAnimatedGif("http://www.animatedgif.net//animals//birds//batana1_e0.gif", "True"); Shapes.Move(gifShape, 100, 300); Primitive rectangle = Shapes.AddRectangle(100, 100); LDShapes.BrushColour(rectangle, "Red"); Primitive img = SBImageList.LoadImage("C:\\temp\\test.jpg"); Primitive img2 = "C:\\temp\\test2.jpg"; Primitive button = SBControls.AddButton("TEST", 100, 100); SBControls.SetSize(button, 50, 50); Primitive image = Shapes.AddImage(img); LDShapes.ReSize(image, 50, 50); LDShapes.Centre(image, 400, 25); SBProgram.Delay(1000); LDShapes.SetImage(image, img2); LDShapes.SetImage(button, img); SBProgram.Delay(1000); LDShapes.AnimationInterval = 0; LDShapes.AnimationSet(gifShape, LDShapes.AnimationCount(gifShape) / 3); SBProgram.Delay(1000); LDShapes.AnimationInterval = 50; LDShapes.AnimationPause(gifShape); SBProgram.Delay(2000); Shapes.HideShape(gifShape); LDShapes.AnimationResume(gifShape); SBProgram.Delay(2000); Shapes.ShowShape(gifShape); }