I'm not sure if this is the right place to request such advice on concept information, so I apologize if it is not related or off topic to ask on Stack Overflow.
I want to develop an application in WPF that has the ability to draw polygons with the functionality of a regular control, they can change shape by adding, removing or moving vertices, changing brushes all at runtime, from data binding or, possibly, direct manipulation of C # code (still not sure about this).
What I'm trying to achieve is an application that draws a map, and the shapes on it are objects with dynamic borders above the map (for example, political borders). Polygons should also be interactive controls with collision checking (and not just the bounding box, namely the shape of the object on the map). I can expect the figures to be very detailed because of the boundaries that are found by rivers and mountains or other natural objects that are not a straight line of two peaks, so the performance role is important here, since a single polygon can contain hundreds of peaks).
What I came to the conclusion is that through WPF you can create such an application. But my uncertainty lies in the most efficient way to implement a map drawing, maybe I should implement a D3D hosting like SharpDX, but I donβt want this, it would make things even more complicated and difficult.
I prefer everything on this map to be functional as a regular WPF control with its data binding and styling capabilities. I developed several small test projects with WPF over the course of several months to learn the basics and the basic concept. But now the main interest for me is developing with WPF. I need advice, because drawing complex and dynamic shapes is still not entirely clear to me, just to continue and begin to develop it.