The current 2D drawing widget is actually a 3D renderer using Qt3D. Although all geometry entities (points, lines, polygons, etc.) have 3D for future use, the 3D rendering overheads are not necessary for 2D geometry.
A truly 2D drawing widget (canvas) can simply ignore the third dimension (z) and draw in the 2D space.
Make a Qt widget that can draw World in strictly 2D space. The widget should support basic viewing actions including panning and zooming. The control should be done in Python.
All geometry manipulation code should be testable without Qt.
Keep each PR to be less than 500 lines of change. If a PR can be longer than that, break it into stages.
The current 2D drawing widget is actually a 3D renderer using Qt3D. Although all geometry entities (points, lines, polygons, etc.) have 3D for future use, the 3D rendering overheads are not necessary for 2D geometry.
A truly 2D drawing widget (canvas) can simply ignore the third dimension (z) and draw in the 2D space.
Make a Qt widget that can draw
Worldin strictly 2D space. The widget should support basic viewing actions including panning and zooming. The control should be done in Python.All geometry manipulation code should be testable without Qt.
Keep each PR to be less than 500 lines of change. If a PR can be longer than that, break it into stages.