Topic

#gui

Everything about gui on RhinoQuant.

Creating a Cairo-Inspired Graphics Library for MetaTrader 5 (Part 7): Arcs, Circles and Rounded Rectangles

Arcs derived from the sagitta rather than approximated with a Bézier constant, plus rounded rectangles with a per-corner radius — the one function most interface code will actually call. The geometry layer is finished here.

Read more

Creating a Cairo-Inspired Graphics Library for MetaTrader 5 (Part 6): Curves and Adaptive Flattening

Cubic Bézier curves in pure MQL5, flattened by De Casteljau subdivision that stops where the curve is already flat enough — so a gentle sweep costs few vertices and a tight bend gets the detail it needs, from one tolerance setting.

Read more

Creating a Cairo-Inspired Graphics Library for MetaTrader 5 (Part 5): Fill Rules, Holes and Borders

Two fill rules — non-zero and even-odd — and the small change to the rasterizer that turns an inner contour into a real hole: the letter A, donuts, gauges and borders, without ever guessing the background colour.

Read more

Creating a Cairo-Inspired Graphics Library for MetaTrader 5 (Part 4): Anti-Aliasing, Coverage and Compositing

Replacing the inside-or-outside test with fractional coverage, so that smooth edges and real transparency stop being two problems and become the same arithmetic.

Read more

Creating a Cairo-Inspired Graphics Library for MetaTrader 5 (Part 3): Edges and the First Filled Shape

Turning a path into pixels: edges, the winding number, and a scanline rasterizer that fills any shape — holes included — with one routine that never asks what it is drawing.

Read more

Creating a Cairo-Inspired Graphics Library for MetaTrader 5 (Part 2): Points, Contours and the Path

One geometry representation for every shape: points, contours and the path, with MoveTo, LineTo and Close — so a single fill routine can later draw anything.

Read more

Creating a Cairo-Inspired Graphics Library for MetaTrader 5 (Part 1): Why the terminal needs its own 2D-renderer

Why MetaTrader 5 needs a real 2D renderer, and the two building blocks everything else rests on: an ARGB color type and a pixel surface bound to one chart object.

Read more