Example #1
0
        protected void DrawNode(Canvas drawingCanvas, Point p)
        {
            if (drawingCanvas == null)
            {
                return;
            }

            StartDrawing(drawingCanvas);

            DDNodeWithHandles newNode = new DDNodeWithHandles(drawingCanvas, new DDPoint(p));

            TargetObject.Nodes.Add(newNode);
            GuideLine.StartPoint = p;
            GuideLine.EndPoint   = p;
        }
Example #2
0
        private void xamlButton2_Click(object sender, RoutedEventArgs e)
        {
            xamlCanvas.Children.Clear();

            Random rand   = new Random();
            int    pCount = rand.Next(30) + 10;

            DDPolygon[] polygons = new DDPolygon[pCount];
            for (int i = 0; i < pCount; i++)
            {
                polygons[i] = new DDPolygon();

                int   nCount = rand.Next(10) + 5;
                Point pos    = new Point(rand.Next(800), rand.Next(800));
                Size  size   = new Size(rand.Next(600) + 50, rand.Next(600) + 50);
                for (int j = 0; j < nCount; j++)
                {
                    DDNodeWithHandles node = new DDNodeWithHandles(xamlCanvas)
                    {
                        Point = new Point(
                            pos.X + rand.Next((int)size.Width),
                            pos.Y + rand.Next((int)size.Height))
                    };
                    polygons[i].Nodes.Add(node);
                }

                polygons[i].Stroke = new SolidColorBrush(Color.FromArgb((byte)(200 + rand.Next(56)),
                                                                        (byte)rand.Next(256), (byte)rand.Next(256), (byte)rand.Next(256)));
                polygons[i].Fill = new SolidColorBrush(Color.FromArgb((byte)(200 + rand.Next(56)),
                                                                      (byte)rand.Next(256), (byte)rand.Next(256), (byte)rand.Next(256)));
                polygons[i].StrokeThickness = rand.Next(6);
                xamlCanvas.Children.Add(polygons[i]);
            }

            DDTranslateAndScaleFrame manipulationFrame = new DDTranslateAndScaleFrame(polygons);

            xamlCanvas.Children.Add(manipulationFrame);
        }