void Main() { Font font(60); Font emoji(60, Typeface::MonochromeEmoji); font.addFallback(emoji); LineString ls = { Vec2(30, 30), Vec2(770, 30), Vec2(770, 570), Vec2(30, 570) }; Vec2 v = Vec2(700, 500); while(System::Update()) { double d1 = 1.0 - (Periodic::Sine0_1(3) * 0.5); double d2 = Periodic::Sine0_1(3) - 0.5; double d3 = Periodic::Sine0_1(3) * 0.5; ls.drawClosed(10, Palette::Silver); Circle(Vec2(100, 100), 30 * d1).draw(Palette::Turquoise); Circle(Vec2(250, 100), 30 * d1).drawFrame(10, Palette::Turquoise); Circle(Vec2(400, 100), 30).drawPie(_deg(0), _deg(270) * d1, Palette::Turquoise); Circle(Vec2(550, 100), 30).drawArc(_deg(0), _deg(270) * d1, 10, 0, Palette::Turquoise); Circle(Vec2(700, 100), 30).drawArc(_deg(0), _deg(270) * d1, 0, 10, Palette::Turquoise); Rect(Arg::center(100, 200), 60, 60).rotatedAt(Vec2(100, 200), d2).draw(Palette::Lightcoral); Triangle(Vec2(250, 200), 60).rotatedAt(Vec2(250, 200), d2).draw(Palette::Sandybrown); Quad(Vec2(360, 170), Vec2(400, 170), Vec2(440, 230), Vec2(400, 230)).rotatedAt(Vec2(400,200), d2).draw(Palette::Khaki); Ellipse(Vec2(550, 200), 40, 30).asPolygon().rotatedAt(Vec2(550, 200), d2).draw(Palette::Pink); RoundRect(Arg::center(700, 200), 80, 60, 5).asPolygon().rotatedAt(Vec2(700, 200), d2).draw(Palette::Lightgreen); Shape2D::Cross(40 * d1, 10, Vec2(100, 300)).draw(Palette::Skyblue); Shape2D::Plus(40 * d1, 10, Vec2(250, 300)).draw(Palette::Skyblue); Shape2D::Pentagon(40 * d1, Vec2(400, 300)).draw(Palette::Skyblue); Shape2D::Hexagon(40 * d1, Vec2(550, 300)).draw(Palette::Skyblue); Shape2D::Ngon(10, 40 * d1, Vec2(700, 300)).draw(Palette::Skyblue); Shape2D::Star(40, Vec2(100, 400)).asPolygon().rotatedAt(Vec2(100, 400), d2).draw(Palette::Skyblue); Shape2D::NStar(10, 40, 30, Vec2(250, 400)).asPolygon().rotatedAt(Vec2(250, 400), d2).draw(Palette::Skyblue); Shape2D::Rhombus(80, 60, Vec2(400, 400)).asPolygon().rotatedAt(Vec2(400, 400), d2).draw(Palette::Skyblue); Shape2D::RectBalloon(RectF(510, 370, 80, 40), Vec2(550, 430)).asPolygon().rotatedAt(Vec2(550, 400), d2).draw(Palette::Skyblue); Shape2D::Stairs(Vec2(740, 430), 80, 60, 4).asPolygon().rotatedAt(Vec2(700, 400), d2).draw(Palette::Skyblue); Shape2D::Arrow(Vec2(-30, 30), Vec2(30, -30), 20, Vec2(40, 30)).asPolygon().scaled(d1).movedBy(Vec2(100, 500)).draw(Palette::Skyblue); Line(Vec2(220, 470), Vec2(280, 530)).stretched(-40 * d3).drawArrow(20, Vec2(40, 30), Palette::Gray); Line(Vec2(370, 500), Vec2(430, 500)).stretched(-40 * d3).draw(10, Palette::Gray); Line(Vec2(520, 500), Vec2(580, 500)).stretched(-40 * d3).draw(LineStyle::RoundDot, 10, Palette::Gray); Bezier2(Vec2(660, 480).lerp(v, d3), Vec2(700, 580).lerp(v, d3), Vec2(740, 480).lerp(v, d3)).draw(10, Palette::Orchid); font("Hello, SivBoard!🐣").drawAt(Scene::Center(), Palette::White); } }