This project will create a color spectrogram (2D waterfall) rectangular graphing control using C# and DirectX. It is desired that this control can be placed on a form, and scalable based on the host form size. The graph control must accept X and Z data arrays, plotting these to the graph in the order that they are received. The data should fill the rectangle from bottom to top, however, it would be desirable to have the ability to set botton-top or top-bottom.
The Z data arrays will provide the color information for the individual spectrogram lines. Typical values in the Z arrays will be from -150 to +30. It is desirable to have the ability to set the colors of the minimum and maximum values on the fly (i.e. via a slider bar on the host form).The X data arrays will provide X-axis data points. Each X/Z data array set will be identified by a single date/time value (Y). It is not required to display the time value on the chart.
Once the chart drawing window fills with data, the control can delete previously displayed data from it's internal storage.
The control should have the following features:
1. Clear
2. Color Max/Min
3. Ablility to scale with host form
4. Rubberband zoom
I have attached a screen capture of a color spectrogram chart. This capture shows all of the features that I am looking for in this control. The code must be well documented and have robust error handling.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Windows XP, 2000 (.NET)