/// <summary>
        /// Fills a PointF array of data points absolute pixel positions.
        /// </summary>
        /// <param name="graph">Graphics object.</param>
        /// <param name="series">Point series.</param>
        /// <param name="indexedSeries">Indicate that point index should be used as X value.</param>
        /// <returns>Array of data points position.</returns>
        override protected PointF[] GetPointsPosition(ChartGraphics graph, Series series, bool indexedSeries)
        {
            PointF[] pointPos = new PointF[series.Points.Count];
            int      index    = 0;

            foreach (DataPoint point in series.Points)
            {
                // Change Y value if line is out of plot area
                double yValue = GetYValue(Common, Area, series, point, index, this.YValueIndex);

                // Recalculates y position
                double yPosition = VAxis.GetPosition(yValue);

                // Recalculates x position
                double xPosition = HAxis.GetPosition(point.XValue);
                if (indexedSeries)
                {
                    xPosition = HAxis.GetPosition(index + 1);
                }

                // Add point position into array
                pointPos[index] = new PointF(
                    (float)(xPosition * (graph.Common.ChartPicture.Width - 1) / 100F),
                    (float)(yPosition * (graph.Common.ChartPicture.Height - 1) / 100F));

                index++;
            }

            return(pointPos);
        }
Esempio n. 2
0
 public static Vector3D ToVector3D(HAxis axis)
 {
     switch (axis)
     {
         case HAxis.AXIS_X_N: return -Vector3D.XAxis;
         case HAxis.AXIS_X_P: return Vector3D.XAxis;
         case HAxis.AXIS_Y_N: return -Vector3D.YAxis;
         case HAxis.AXIS_Y_P: return Vector3D.YAxis;
         case HAxis.AXIS_Z_N: return -Vector3D.ZAxis;
         default:                return Vector3D.ZAxis;
     }
 }
Esempio n. 3
0
 public static string ToString(HAxis axis)
 {
     switch (axis)
     {
         case HAxis.AXIS_X_N: return "XN";
         case HAxis.AXIS_X_P: return "XP";
         case HAxis.AXIS_Y_N: return "YN";
         case HAxis.AXIS_Y_P: return "YP";
         case HAxis.AXIS_Z_N: return "ZN";
         case HAxis.AXIS_Z_P: return "ZP";
         default: return "ZP";
     }
 }
Esempio n. 4
0
 public static HAxis Opposite(HAxis axis)
 {
     switch (axis)
     {
         case HAxis.AXIS_X_N: return HAxis.AXIS_X_P;
         case HAxis.AXIS_X_P: return HAxis.AXIS_X_N;
         case HAxis.AXIS_Y_N: return HAxis.AXIS_Y_P;
         case HAxis.AXIS_Y_P: return HAxis.AXIS_Y_N;
         case HAxis.AXIS_Z_N: return HAxis.AXIS_Z_P;
         case HAxis.AXIS_Z_P: return HAxis.AXIS_Z_N;
         default: return HAxis.AXIS_Z_P;
     }
 }
Esempio n. 5
0
        public static Vector3D ToVector3D(HAxis axis)
        {
            switch (axis)
            {
            case HAxis.AXIS_X_N: return(-Vector3D.XAxis);

            case HAxis.AXIS_X_P: return(Vector3D.XAxis);

            case HAxis.AXIS_Y_N: return(-Vector3D.YAxis);

            case HAxis.AXIS_Y_P: return(Vector3D.YAxis);

            case HAxis.AXIS_Z_N: return(-Vector3D.ZAxis);

            default:                return(Vector3D.ZAxis);
            }
        }
Esempio n. 6
0
        public static string ToString(HAxis axis)
        {
            switch (axis)
            {
            case HAxis.AXIS_X_N: return("XN");

            case HAxis.AXIS_X_P: return("XP");

            case HAxis.AXIS_Y_N: return("YN");

            case HAxis.AXIS_Y_P: return("YP");

            case HAxis.AXIS_Z_N: return("ZN");

            case HAxis.AXIS_Z_P: return("ZP");

            default: return("ZP");
            }
        }
Esempio n. 7
0
        public static HAxis Opposite(HAxis axis)
        {
            switch (axis)
            {
            case HAxis.AXIS_X_N: return(HAxis.AXIS_X_P);

            case HAxis.AXIS_X_P: return(HAxis.AXIS_X_N);

            case HAxis.AXIS_Y_N: return(HAxis.AXIS_Y_P);

            case HAxis.AXIS_Y_P: return(HAxis.AXIS_Y_N);

            case HAxis.AXIS_Z_N: return(HAxis.AXIS_Z_P);

            case HAxis.AXIS_Z_P: return(HAxis.AXIS_Z_N);

            default: return(HAxis.AXIS_Z_P);
            }
        }
Esempio n. 8
0
        public static string ToAbbrev(HAxis axis)
        {
            switch (axis)
            {
            case HAxis.AXIS_X_N: return("X-");

            case HAxis.AXIS_X_P: return("X+");

            case HAxis.AXIS_Y_N: return("Y-");

            case HAxis.AXIS_Y_P: return("Y+");

            case HAxis.AXIS_Z_N: return("Z-");

            case HAxis.AXIS_Z_P: return("Z+");

            default: return("Z+");
            }
        }
Esempio n. 9
0
        public static int Direction(HAxis axis)
        {
            switch (axis)
            {
            case HAxis.AXIS_X_N:
            case HAxis.AXIS_X_P:
                return(0);

            case HAxis.AXIS_Y_N:
            case HAxis.AXIS_Y_P:
                return(1);

            case HAxis.AXIS_Z_N:
            case HAxis.AXIS_Z_P:
                return(2);

            default:
                return(-1);
            }
        }
Esempio n. 10
0
 public static HAxis ReflectionY(HAxis axis)
 {
     Vector3D v = HalfAxis.ToVector3D(axis);
     return HalfAxis.ToHalfAxis(new Vector3D(-v.X, v.Y, v.Z));
 }
Esempio n. 11
0
 public static HAxis Transform(HAxis axis, Transform3D transform)
 {
     return HalfAxis.ToHalfAxis(transform.transformRot(HalfAxis.ToVector3D(axis)));
 }
Esempio n. 12
0
 public static HAxis Transform(HAxis axis, Transform3D transform)
 {
     return(HalfAxis.ToHalfAxis(transform.transformRot(HalfAxis.ToVector3D(axis))));
 }
Esempio n. 13
0
 public static HAxis CrossProduct(HAxis axis0, HAxis axis1)
 {
     return(ToHalfAxis(Vector3D.CrossProduct(ToVector3D(axis0), ToVector3D(axis1))));
 }
Esempio n. 14
0
        public static HAxis ReflectionY(HAxis axis)
        {
            Vector3D v = ToVector3D(axis);

            return(ToHalfAxis(new Vector3D(-v.X, v.Y, v.Z)));
        }
Esempio n. 15
0
        public static HAxis ReflectionX(HAxis axis)
        {
            Vector3D v = HalfAxis.ToVector3D(axis);

            return(HalfAxis.ToHalfAxis(new Vector3D(v.X, -v.Y, v.Z)));
        }