Reflect a point across one line, then reflect the image across a second line. The result is the same as one rotation around the point where the lines cross — by twice the angle between them.
The source code is at github.com/KirillOsenkov/LiveGeometry. It is written in .NET and Avalonia.