You could use Inkscape (open-source vector drawing program) to draw bézier curves, add as many nodes as needed in them and then turn them to straight paths.
Inkscape outputs SVG files, which are XML documents. You can then extract points fairly easily from the d attribute of svg:path elements.
A few hints for using Inkscape:
Create a rectangle in your document, this will add an svg:rect to your SVG file
You can turn it into an svg:path by hitting Ctrl+Shift+C
You can then move and distort the nodes however you want. Double-clicking on a segment will add a new node. Dragging anywhere on a segment will turn it into a bézier curve
To add more nodes to your path (make it smoother), select all nodes and click the "+" button in the node toolbar.
Once you're done editing your curve and you have added enough nodes, you can turn it back into a straight path by clicking on the button named "Make selected segments lines"
Ctrl+Shift+X opens an XML editor from which you can copy / paste the path data.
The SVG path data for straight segments is pretty straightforward:
- "M x,y" moves the pen to the specified location
- "L x,y" (or just "x,y", the L can be and is ommitted by Inkscape) draws a segment to the specified location
See here for full syntax: http://www.w3.org/TR/SVG/paths.html#PathData
Alternatively, you could try using my VectorLevelProcessor content pipeline processor, which parses SVG files & path data and can generate point list for bézier curves. But it might be too much work to integrate if you only need a few paths.
Here's a link to the main source file: http://nuclearwinter.codeplex.com/SourceControl/changeset/view/1268293a8bff#VectorLevelProcessor%2fVectorLevelProcessor.cs
It's part of a bigger framework that you can check out at http://nuclearwinter.codeplex.com/