X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fanalysis%2FNJTree.java;h=67ce460bb5ba8b158528c421641a603a5495382b;hb=95d51867c156db0ac8f9cda391eb168be8ee05fa;hp=c053cb38743681188e4080b0edfa299d4eb38d28;hpb=153dd62dc91da13ae732600e6ea55ddbe15eab39;p=jalview.git diff --git a/src/jalview/analysis/NJTree.java b/src/jalview/analysis/NJTree.java old mode 100755 new mode 100644 index c053cb3..67ce460 --- a/src/jalview/analysis/NJTree.java +++ b/src/jalview/analysis/NJTree.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle * * This file is part of Jalview. * @@ -237,7 +237,7 @@ public class NJTree { if (ResidueProperties.getScoreMatrix(pwtype) == null) { - type = "BLOSUM62"; + pwtype = "BLOSUM62"; } } @@ -267,15 +267,16 @@ public class NJTree } /** - * DOCUMENT ME! + * Generate a string representation of the Tree * - * @return DOCUMENT ME! + * @return Newick File with all tree data available */ public String toString() { jalview.io.NewickFile fout = new jalview.io.NewickFile(getTopNode()); - return fout.print(false, true); // distances only + return fout.print(isHasBootstrap(), + isHasDistances(), isHasRootDistance()); // output all data available for tree } /** @@ -345,7 +346,24 @@ public class NJTree } } } + /** + * rename any nodes according to their associated sequence. + * This will modify the tree's metadata! (ie the original NewickFile or newly generated BinaryTree's label data) + */ + public void renameAssociatedNodes() { + applyToNodes(new NodeTransformI() { + @Override + public void transform(BinaryNode node) + { + Object el = node.element(); + if (el!=null && el instanceof SequenceI) + { + node.setName(((SequenceI)el).getName()); + } + } + }); + } /** * DOCUMENT ME! */ @@ -740,8 +758,9 @@ public class NJTree { try { - score += pwmatrix.getPairwiseScore(sequenceString[i] - .charAt(k), sequenceString[j].charAt(k)); + score += pwmatrix.getPairwiseScore( + sequenceString[i].charAt(k), + sequenceString[j].charAt(k)); } catch (Exception ex) { System.err.println("err creating BLOSUM62 tree");