Example #1
0
 public override void DrawGizmo(Graphics graph)
 {
     if (showGizmo)
     {
         moveCursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
         p1Cursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
         p2Cursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
     }
 }
Example #2
0
        public override void DrawGizmo(Graphics graph)
        {
            if (showRotationTrack)
            {
                float f  = 180 - frsAngle.Rad2Deg();
                float k  = 180 - cursorAngle.Rad2Deg();
                float l  = ((k - f) > 0) ? k - f : 360 - Math.Abs(k - f);
                float f1 = 0;
                if (l <= 180)
                {
                    f1            = f - 90;
                    rotationAngle = l;
                }
                else
                {
                    f1            = k - 90;
                    rotationAngle = 360 - l;
                }
                graph.DrawEllipse(gizmoPen, (moveCursor.X - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                                  (moveCursor.Y - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset,
                                  radius * 2 * pic.ViewBox.scaleCoefficient,
                                  radius * 2 * pic.ViewBox.scaleCoefficient);

                graph.FillPie(sectorBrush, (moveCursor.X - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                              (moveCursor.Y - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset,
                              radius * 2 * pic.ViewBox.scaleCoefficient,
                              radius * 2 * pic.ViewBox.scaleCoefficient,
                              f1, rotationAngle);

                graph.DrawString(Convert.ToString(Math.Round(rotationAngle, 2)), new Font("Times New Roman", 10 * pic.ViewBox.scaleCoefficient),
                                 textBrush,
                                 moveCursor.X * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                                 moveCursor.Y * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset);
            }
            moveCursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            rotationCursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            if (showGizmo)
            {
                p1Cursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
                p2Cursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
                p3Cursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
                p4Cursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);

                graph.DrawLine(gizmoPen, pic.Splines[index].x1 * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                               pic.Splines[index].y1 * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset,
                               pic.Splines[index].x2 * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                               pic.Splines[index].y2 * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset);

                graph.DrawLine(gizmoPen, pic.Splines[index].x3 * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                               pic.Splines[index].y3 * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset,
                               pic.Splines[index].x4 * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                               pic.Splines[index].y4 * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset);
            }
        }
Example #3
0
        public override void DrawGizmo(Graphics graph)
        {
            if (showGizmo)
            {
                graph.DrawRectangle(gizmoPen, x1 * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                                    y1 * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset,
                                    width * pic.ViewBox.scaleCoefficient,
                                    height * pic.ViewBox.scaleCoefficient);
            }

            if (showRotationTrack)
            {
                float f  = 180 - frsAngle.Rad2Deg();
                float k  = 180 - cursorAngle.Rad2Deg();
                float l  = ((k - f) > 0) ? k - f : 360 - Math.Abs(k - f);
                float f1 = 0;
                if (l <= 180)
                {
                    f1            = f - 90;
                    rotationAngle = l;
                }
                else
                {
                    f1            = k - 90;
                    rotationAngle = 360 - l;
                }
                graph.DrawEllipse(gizmoPen, (moveCursor.X - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                                  (moveCursor.Y - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset,
                                  radius * 2 * pic.ViewBox.scaleCoefficient,
                                  radius * 2 * pic.ViewBox.scaleCoefficient);

                graph.FillPie(sectorBrush, (moveCursor.X - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset,
                              (moveCursor.Y - radius) * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset,
                              radius * 2 * pic.ViewBox.scaleCoefficient,
                              radius * 2 * pic.ViewBox.scaleCoefficient, f1, rotationAngle);

                graph.DrawString(Convert.ToString(Math.Round(rotationAngle, 2)), new Font("Times New Roman", 10 * pic.ViewBox.scaleCoefficient),
                                 textBrush, moveCursor.X * pic.ViewBox.scaleCoefficient - pic.ViewBox.xOffset, moveCursor.Y * pic.ViewBox.scaleCoefficient - pic.ViewBox.yOffset);
            }
            moveCursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            xScaleR.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            xScaleL.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            yScaleU.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            yScaleD.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            xyScaleUR.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
            rotationCursor.DrawXCursor(graph, pic.ViewBox.xOffset, pic.ViewBox.yOffset, pic.ViewBox.scaleCoefficient);
        }