}
af.viewport.setGlobalColourScheme(cs);
- af.viewport.getResidueShading().setThreshold(
- view.getPidThreshold(), true);
+ af.viewport.getResidueShading().setThreshold(view.getPidThreshold(),
+ view.getIgnoreGapsinConsensus());
af.viewport.getResidueShading().setConsensus(
af.viewport.getSequenceConsensusHash());
af.viewport.setColourAppliesToAllGroups(false);
import jalview.datamodel.SequenceI;
import jalview.gui.AlignFrame;
import jalview.gui.IProgressIndicator;
+import jalview.schemes.ResidueProperties;
import jalview.workers.AlignCalcWorker;
import jalview.ws.jws2.dm.AAConSettings;
import jalview.ws.jws2.dm.JabaWsParamSet;
protected boolean submitGaps = true;
/**
+ * by default, we filter out non-standard residues before submission
+ */
+ private boolean filterNonStandardResidues = true;
+
+ /**
* Recover any existing parameters for this service
*/
protected void initViewportParams()
public List<Option> getJabaArguments()
{
- List<Option> newargs = new ArrayList<Option>();
+ List<Option> newargs = new ArrayList<>();
if (preset != null && preset instanceof JabaWsParamSet)
{
newargs.addAll(((JabaWsParamSet) preset).getjabaArguments());
inputSeqs = alignment;
}
- List<compbio.data.sequence.FastaSequence> seqs = new ArrayList<compbio.data.sequence.FastaSequence>();
+ List<compbio.data.sequence.FastaSequence> seqs = new ArrayList<>();
int minlen = 10;
int ln = -1;
if (bySequence)
{
- seqNames = new HashMap<String, SequenceI>();
+ seqNames = new HashMap<>();
}
gapMap = new boolean[0];
start = inputSeqs.getStartRes();
end = inputSeqs.getEndRes();
- for (SequenceI sq : ((List<SequenceI>) inputSeqs.getSequences()))
+ for (SequenceI sq : (inputSeqs.getSequences()))
{
if (bySequence ? sq.findPosition(end + 1)
- sq.findPosition(start + 1) > minlen - 1 : sq.getEnd()
}
for (int apos : sq.gapMap())
{
- gapMap[apos] = true; // aligned.
+ if (!filterNonStandardResidues
+ || ResidueProperties.aaIndex[sq.getCharAt(apos)] < 20)
+ {
+ gapMap[apos] = true; // aligned and real amino acid residue
+ }
+ ;
}
}
else