Which Point, Coodinate structures in C#
<p>I'm using mapping in my application. So I have 2D point structures of int and double, which I need to manipulate. I have currently separated my solution into 2 projects/ assemblies. One has the core functionality. The other is for user interface. I'm currently using a WPF user interface. However I've tried to maximise the functionality of the core assembly, while trying to ensure that it will work with any C# user interface, e.g. forms, XNA a future API such as the Windows 8 Jupiter(Metro XAML) or on a Linux/ Mac Windows Phone etc. </p>

<p>I wish to manipulate these structures within my core functionality. I see that there are Point structures in System.Windows and System.Drawing. However I'm reluctant to use these as these seem to be tied to particular windows GUI APIs. Should I make my own structures even though this will be reimplementing much of the functionality from these existing structs? I see there is a maths class but no maths name-space with useful general purpose maths classes and structs.</p>

<p>Is the situation the same for 3d point structures?</p>
