StrokeMapper Silverlight UserControl
Create a Silverlight UserControl that exposes a method named DrawImage that takes string input containing instructions for the creation of a vector image, and then creates that image on a sizeable canvas.
The StrokeMapper user control will receive input commands resembling the following:
The input will contain a single command per line, and often more than 1 command will be sent at a time. Commands may be sent with long delays (many minutes), but state should be maintained at all times. There are 4 core commands: New, Down, Move, and Up.
The New command clears any strokes within the vector image displayed.
The Down command represents a pen being pressed against the writing surface of a given color at a given coordinate point on the drawing surface. This is the beginning of a stroke.
The Move command represents a pen being moved around the writing surface of a given color at a specific coordinate point. This is the continuation of a stroke.
The Down, and Move commands have additional metadata provided. They have a color, an x coordinate, and a y coordinate, each separated by a pipe character (|). Valid colors are black, red, green, blue, and erase. erase is a special color. Any strokes that are of color erase, remove portions of any other strokes that they overlap.
The Up command represents a pen being removed from the writing surface. This is the completion of a stroke.
The drawing surface is a coordinate plane that stretches from (0,0) to (1,1). The drawing surface is what the user control will display. Its state will be maintained until a New command is encountered.
The width of all strokes should be configurable, or exposed as properties of the User Control. The background Fill color should be exposed as a property. The image should be infinitely scaleable.
Your bid must provide samples of similiar work or show an example of how you would accomplish this task.
10 freelancers are bidding on average $154 for this job
Hi, I've silverlight 2 programming experience. Requirements you've provided could be easy implemented. I am ready to start working on it immediately after your decision.