git://source.jalview.org
/
jalview.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c4d991e
)
javadoc and additional convenience method for JAL-716
author
jprocter
<Jim Procter>
Thu, 9 Dec 2010 15:28:45 +0000
(15:28 +0000)
committer
jprocter
<Jim Procter>
Thu, 9 Dec 2010 15:28:45 +0000
(15:28 +0000)
src/jalview/datamodel/SequenceGroup.java
patch
|
blob
|
history
diff --git
a/src/jalview/datamodel/SequenceGroup.java
b/src/jalview/datamodel/SequenceGroup.java
index
be40bce
..
f045555
100755
(executable)
--- a/
src/jalview/datamodel/SequenceGroup.java
+++ b/
src/jalview/datamodel/SequenceGroup.java
@@
-627,10
+627,9
@@
public class SequenceGroup
}
/**
}
/**
- * DOCUMENT ME!
+ * Set the first column selected by this group. Runs from 0<=i<N_cols
*
* @param i
*
* @param i
- * DOCUMENT ME!
*/
public void setStartRes(int i)
{
*/
public void setStartRes(int i)
{
@@
-638,10
+637,9
@@
public class SequenceGroup
}
/**
}
/**
- * DOCUMENT ME!
+ * Set the groups last selected column. Runs from 0<=i<N_cols
*
* @param i
*
* @param i
- * DOCUMENT ME!
*/
public void setEndRes(int i)
{
*/
public void setEndRes(int i)
{
@@
-794,23
+792,39
@@
public class SequenceGroup
*/
public SequenceI[] getSequencesInOrder(AlignmentI al)
{
*/
public SequenceI[] getSequencesInOrder(AlignmentI al)
{
+ return getSequencesInOrder(al, true);
+ }
+ /**
+ * return an array representing the intersection of the group with al, optionally returning an array the size of al.getHeight()
+ * where nulls mark the non-intersected sequences
+ * @param al
+ * @param trim
+ * @return null or array
+ */
+ public SequenceI[] getSequencesInOrder(AlignmentI al, boolean trim)
+ {
int sSize = sequences.size();
int alHeight = al.getHeight();
int sSize = sequences.size();
int alHeight = al.getHeight();
- SequenceI[] seqs = new SequenceI[sSize];
+ SequenceI[] seqs = new SequenceI[(trim) ? sSize : alHeight];
int index = 0;
for (int i = 0; i < alHeight && index < sSize; i++)
{
if (sequences.contains(al.getSequenceAt(i)))
{
int index = 0;
for (int i = 0; i < alHeight && index < sSize; i++)
{
if (sequences.contains(al.getSequenceAt(i)))
{
- seqs[index++] = al.getSequenceAt(i);
+ seqs[(trim) ? index : i] = al.getSequenceAt(i);
+ index++;
}
}
if (index == 0)
{
return null;
}
}
}
if (index == 0)
{
return null;
}
+ if (!trim)
+ {
+ return seqs;
+ }
if (index < seqs.length)
{
SequenceI[] dummy = seqs;
if (index < seqs.length)
{
SequenceI[] dummy = seqs;