Beispiel #1
0
        /// <summary>
        /// Gets the clipping rectangle.
        /// </summary>
        /// <param name="element">The <see cref="ITransposablePlotElement" />.</param>
        /// <returns>The clipping rectangle.</returns>
        public static OxyRect GetClippingRect(this ITransposablePlotElement element)
        {
            var p1 = new ScreenPoint(element.XAxis.ScreenMin.X, element.YAxis.ScreenMin.Y);
            var p2 = new ScreenPoint(element.XAxis.ScreenMax.X, element.YAxis.ScreenMax.Y);

            return(new OxyRect(element.Orientate(p1), element.Orientate(p2)));
        }
Beispiel #2
0
 /// <summary>
 /// Transforms from a screen point to a data point by the axes of this series.
 /// </summary>
 /// <param name="element">The <see cref="ITransposablePlotElement" />.</param>
 /// <param name="p">The screen point.</param>
 /// <returns>A data point.</returns>
 public static DataPoint InverseTransform(this ITransposablePlotElement element, ScreenPoint p)
 {
     p = element.Orientate(p);
     return(element.XAxis.InverseTransform(p.X, p.Y, element.YAxis));
 }
Beispiel #3
0
 /// <summary>
 /// Transforms the specified coordinates to a screen point by the axes of this series.
 /// </summary>
 /// <param name="element">The <see cref="ITransposablePlotElement" />.</param>
 /// <param name="x">The x coordinate.</param>
 /// <param name="y">The y coordinate.</param>
 /// <returns>A screen point.</returns>
 public static ScreenPoint Transform(this ITransposablePlotElement element, double x, double y)
 {
     return(element.Orientate(element.XAxis.Transform(x, y, element.YAxis)));
 }