1 package jalview.ext.forester;
3 import jalview.datamodel.SequenceI;
4 import jalview.ext.archaeopteryx.TreeNode;
5 import jalview.ext.treeviewer.ExternalTreeNodeI;
6 import jalview.math.MatrixI;
8 import java.util.ArrayList;
11 import org.forester.evoinference.matrix.distance.DistanceMatrix;
12 import org.forester.io.parsers.phyloxml.PhyloXmlDataFormatException;
13 import org.forester.phylogeny.PhylogenyNode;
15 public final class DataConversions
17 public static org.forester.phylogeny.data.Sequence createForesterSequence(
18 final SequenceI jalviewSequence, final boolean sequenceIsAligned)
20 org.forester.phylogeny.data.Sequence foresterSeq = new org.forester.phylogeny.data.Sequence();
22 if (jalviewSequence.getDescription() != null)
24 foresterSeq.setName(jalviewSequence.getDescription());
26 foresterSeq.setMolecularSequenceAligned(sequenceIsAligned); // all tree
31 foresterSeq.setMolecularSequence(jalviewSequence.getSequenceAsString());
32 if (jalviewSequence.isProtein()) // add checks for DNA or RNA (infer from
37 foresterSeq.setType("protein");
38 } catch (final PhyloXmlDataFormatException ignore)
50 // public static org.forester.phylogeny.data.Accession
51 // createForesterAccession(
52 // SequenceI jalviewSequence)
56 // org.forester.phylogeny.data.Accession foresterAcs = new
57 // org.forester.phylogeny.data.Accession();
59 // return foresterAcs;
62 public static DistanceMatrix createForesterDistanceMatrix(
63 final MatrixI jalviewInputMatrix,
64 final String[] matrixIdentifiers)
67 DistanceMatrix foresterMatrix = new ForesterMatrix(jalviewInputMatrix,
69 return foresterMatrix;
73 public static DistanceMatrix createForesterDistanceMatrix(
74 final MatrixI jalviewInputMatrix,
75 final SequenceI[] matrixSequences)
77 DistanceMatrix foresterMatrix = new ForesterMatrix(jalviewInputMatrix,
79 return foresterMatrix;
83 public static List<ExternalTreeNodeI> getConvertedTreeNodes(
84 List<PhylogenyNode> aptxNodes)
86 List<ExternalTreeNodeI> jalviewNodes = new ArrayList<>();
87 for (PhylogenyNode aptxNode : aptxNodes)
89 jalviewNodes.add(new TreeNode(aptxNode));