コード例 #1
0
        public static freeGraph GetGraphSection(this freeGraph source, List <String> node_names, String name, String description = "")
        {
            var nodes = source.GetNodes(node_names);

            freeGraph output = new freeGraph()
            {
                name        = name,
                description = description
            };

            foreach (var node in nodes)
            {
                output.AddNode(node.name, node.weight, node.type);
            }

            foreach (var node in nodes)
            {
                var links = source.GetLinks(node.name, true, false, 1);
                foreach (var link in links)
                {
                    if (node_names.Contains(link.nodeB.name))
                    {
                        output.AddLink(node.name, link.nodeB.name, link.linkBase.weight, link.linkBase.type);
                    }
                }
            }

            return(output);
        }