Example #1
0
        // Constructor function
        public Plotter(Canvas c)
        {
            // set properties
            CanvasToDrawOn = c;

            Ellipses  = new Ellipses();
            Polyliner = new Polyliner();

            CanvasToDrawOn.Width  = 400;
            CanvasToDrawOn.Height = 300;
            //AxesWithOrigin = new AxesWithOrigin((int)CanvasToDrawOn.Width, (int)CanvasToDrawOn.Height);
            //AxesWithOrigin = new AxesWithOrigin((int)CanvasToDrawOn.Width, (int)CanvasToDrawOn.Height, new System.Tuple<int, int>(80, 200));
            AxesWithOrigin            = new AxesWithOrigin((int)CanvasToDrawOn.Width, (int)CanvasToDrawOn.Height, new System.Tuple <int, int>((int)CanvasToDrawOn.Width / 2, (int)CanvasToDrawOn.Height));
            CanvasToDrawOn.Background = new SolidColorBrush(Colors.WhiteSmoke);

            //CanvasToDrawOn.Children.Add(AxesWithOrigin.XAxis);
            //CanvasToDrawOn.Children.Add(AxesWithOrigin.YAxis);
        }
Example #2
0
        /// <summary>
        /// Takes "bukalemun" values, converts them to "pixelated" values and saves for next drawing.
        /// </summary>
        /// <param name="dataPoints">An IEnumerable set of bukalemun type data points</param>
        public void SetPoints(IEnumerable <DataPoint> dataPoints)
        {
            // Convert bukalemunDataPoints into pixelatedDataPoints and add them to Ellipses & Polyliner classes //hypothetical == bukalemun?
            Ellipses.Reset();
            Polyliner.Reset();
            DataPoint temp_PixelatedDataPoint;

            foreach (DataPoint bukalemunDataPoint in dataPoints)
            {
                // Linear mapping from imagined "bukalemun 2D plane" to real "pixelated 2D plane"
                temp_PixelatedDataPoint   = bukalemunDataPoint;
                temp_PixelatedDataPoint.X = AxesWithOrigin.Origin.Item1 + temp_PixelatedDataPoint.X * AxesWithOrigin.XScalingFactor;
                temp_PixelatedDataPoint.Y = AxesWithOrigin.Origin.Item2 + temp_PixelatedDataPoint.Y * AxesWithOrigin.YScalingFactor;

                // Add the result of transformation as both a circle to the Ellipses and point to the Polyliner
                Ellipses.AddPoint(bukalemunDataPoint, temp_PixelatedDataPoint);
                Polyliner.AddPoint(temp_PixelatedDataPoint);
            }
        }