From 25e277834e02c37996caf1eb76c7728dbe8e0394 Mon Sep 17 00:00:00 2001 From: jprocter Date: Wed, 9 Aug 2006 16:21:36 +0000 Subject: [PATCH] new SequenceI method for making a sub sequence from a range on the current sequence. --- src/jalview/datamodel/Sequence.java | 20 +++++++++++++++++++- src/jalview/datamodel/SequenceI.java | 8 +++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/jalview/datamodel/Sequence.java b/src/jalview/datamodel/Sequence.java index 562440f..b5d5199 100755 --- a/src/jalview/datamodel/Sequence.java +++ b/src/jalview/datamodel/Sequence.java @@ -338,7 +338,25 @@ public class Sequence implements SequenceI return this.sequence.substring(start, end); } - + /** + * make a new Sequence object from start to end (including gaps) over this seqeunce + * @param start int + * @param end int + * @return SequenceI + */ + public SequenceI getSubSequence(int start, int end) { + if (start<0) + start = 0; + String seq = getSequence(start, end); + if (seq=="") + return null; + start = findPosition(start); + end=findPosition(end); + // JBPNote - this is an incomplete copy. + SequenceI nseq = new Sequence(this.getName(), seq, start, end); + nseq.setDatasetSequence(getDatasetSequence()); + return nseq; + } /** * DOCUMENT ME! * diff --git a/src/jalview/datamodel/SequenceI.java b/src/jalview/datamodel/SequenceI.java index f822fe6..d711788 100755 --- a/src/jalview/datamodel/SequenceI.java +++ b/src/jalview/datamodel/SequenceI.java @@ -111,7 +111,13 @@ public interface SequenceI * @return DOCUMENT ME! */ public String getSequence(int start, int end); - + /** + * create a new sequence object from start to end of this sequence + * @param start int + * @param end int + * @return SequenceI + */ + public SequenceI getSubSequence(int start, int end); /** * DOCUMENT ME! * -- 1.7.10.2