import java.util.Vector;
import org.forester.io.writers.PhylogenyWriter;
+import org.forester.phylogeny.PhylogenyNodeI.NH_CONVERSION_SUPPORT_VALUE_STYLE;
import org.forester.phylogeny.data.BranchData;
import org.forester.phylogeny.data.Confidence;
import org.forester.phylogeny.data.Identifier;
+import org.forester.phylogeny.data.PhylogenyDataUtil;
import org.forester.phylogeny.data.Sequence;
import org.forester.phylogeny.data.SequenceRelation;
import org.forester.phylogeny.data.SequenceRelation.SEQUENCE_RELATION_TYPE;
new_node.setParent( sibling_parent );
sibling.setParent( new_node );
sibling_parent.setChildNode( sibling_index, new_node );
- final double new_dist = sibling.getDistanceToParent() == PhylogenyNode.DISTANCE_DEFAULT ? PhylogenyNode.DISTANCE_DEFAULT
+ final double new_dist = sibling.getDistanceToParent() == PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT ? PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT
: sibling.getDistanceToParent() / 2;
new_node.setDistanceToParent( new_dist );
sibling.setDistanceToParent( new_dist );
b.setBranchData( ( BranchData ) a.getBranchDataDirectly().copy() );
}
// New root is always placed in the middle of the branch:
- if ( a.getDistanceToParent() == PhylogenyNode.DISTANCE_DEFAULT ) {
- b.setDistanceToParent( PhylogenyNode.DISTANCE_DEFAULT );
+ if ( a.getDistanceToParent() == PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT ) {
+ b.setDistanceToParent( PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT );
}
else {
if ( distance_n_to_parent >= 0.0 ) {
if ( c.getNumberOfDescendants() == 2 ) {
final PhylogenyNode node = c.getChildNode( 1 - b.getChildNodeIndex( c ) );
node.setParent( b );
- if ( ( c.getDistanceToParent() == PhylogenyNode.DISTANCE_DEFAULT )
- && ( node.getDistanceToParent() == PhylogenyNode.DISTANCE_DEFAULT ) ) {
- node.setDistanceToParent( PhylogenyNode.DISTANCE_DEFAULT );
+ if ( ( c.getDistanceToParent() == PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT )
+ && ( node.getDistanceToParent() == PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT ) ) {
+ node.setDistanceToParent( PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT );
}
else {
node.setDistanceToParent( ( c.getDistanceToParent() >= 0.0 ? c.getDistanceToParent() : 0.0 )
} // swapChildren( PhylogenyNode )
public String toNewHampshire() {
- return toNewHampshire( false );
+ return toNewHampshire( false, NH_CONVERSION_SUPPORT_VALUE_STYLE.NONE );
}
- public String toNewHampshire( final boolean simple_nh ) {
+ public String toNewHampshire( final boolean simple_nh,
+ final NH_CONVERSION_SUPPORT_VALUE_STYLE nh_conversion_support_style ) {
try {
- return new PhylogenyWriter().toNewHampshire( this, simple_nh, true ).toString();
+ return new PhylogenyWriter().toNewHampshire( this, simple_nh, true, nh_conversion_support_style )
+ .toString();
}
catch ( final IOException e ) {
throw new Error( "this should not have happend: " + e.getMessage() );
}
}
- public String toNexus() {
+ public String toNexus( final NH_CONVERSION_SUPPORT_VALUE_STYLE svs ) {
try {
- return new PhylogenyWriter().toNexus( this ).toString();
+ return new PhylogenyWriter().toNexus( this, svs ).toString();
}
catch ( final IOException e ) {
throw new Error( "this should not have happend: " + e.getMessage() );
}
}
+ public String toNexus() {
+ return toNexus( NH_CONVERSION_SUPPORT_VALUE_STYLE.NONE );
+ }
+
public String toPhyloXML( final int phyloxml_level ) {
try {
return new PhylogenyWriter().toPhyloXML( this, phyloxml_level ).toString();