コード例 #1
0
        private void ClearGabrielMinimumSpanningTree()
        {
            GabrielGraph graph = delaunay.BuildGabrielGraph();
            var          minimumSpanningTree = graph.GetMinimumSpanningTree();

            foreach (var edge in minimumSpanningTree.Edges)
            {
                var path = graph.CreateLineForMinSpanningTreeEdge(edge);
                this.Plane.Children.Remove(path);
            }
        }
コード例 #2
0
        private void ClearGabrielGraph()
        {
            GabrielGraph graph = delaunay.BuildGabrielGraph();

            foreach (var vertex in graph.Vertices)
            {
                Path path = graph.CreateVertexPoint(vertex);
                this.Plane.Children.Remove(path);
            }
            foreach (var edge in graph.Edges)
            {
                Path path = graph.CreateEdgeLine(edge);
                this.Plane.Children.Remove(path);
            }
        }
コード例 #3
0
        public GabrielGraph BuildGabrielGraph()
        {
            if (gabrielGraph == null)
            {
                HashSet<Vertex> gabrielVertices = new HashSet<Vertex>();
                HashSet<DelaunayEdge> gabrielEdges = new HashSet<DelaunayEdge>();

                BuildGabrielGraph(gabrielVertices, gabrielEdges);
                gabrielGraph = new GabrielGraph()
                {
                    Vertices = new List<Vertex>(gabrielVertices),
                    Edges = new List<DelaunayEdge>(gabrielEdges)
                };
            }
            return gabrielGraph;
        }
コード例 #4
0
        public GabrielGraph BuildGabrielGraph()
        {
            if (gabrielGraph == null)
            {
                HashSet <Vertex>       gabrielVertices = new HashSet <Vertex>();
                HashSet <DelaunayEdge> gabrielEdges    = new HashSet <DelaunayEdge>();

                BuildGabrielGraph(gabrielVertices, gabrielEdges);
                gabrielGraph = new GabrielGraph()
                {
                    Vertices = new List <Vertex>(gabrielVertices),
                    Edges    = new List <DelaunayEdge>(gabrielEdges)
                };
            }
            return(gabrielGraph);
        }