/// <summary> /// Creates a graphviz format representation of the tree edges and its nodes. /// </summary> /// <param name="userContext">The user context.</param> /// <param name="tree">The tree.</param> /// <param name="treeNodes">The tree nodes.</param> /// <param name="treeIterationMode">The tree iteration mode.</param> /// <param name="onlyValid">if set to <c>true</c> only valid relations are included.</param> /// <param name="format">The format.</param> /// <returns>A GraphViz graph.</returns> public static string CreateGraphvizFormatRepresentation( IUserContext userContext, TaxonRelationsTree tree, ICollection <ITaxonRelationsTreeNode> treeNodes, TaxonRelationsTreeIterationMode treeIterationMode, bool onlyValid, GraphVizFormat format) { // Get edges. var edges = tree.GetAllEdges( treeNodes, treeIterationMode, onlyValid, treeIterationMode != TaxonRelationsTreeIterationMode.OnlyChildren); string str = CreateGraphvizFormatRepresentation( userContext, tree, edges, treeNodes, format); return(str); }