X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FSequence.java;h=8928425f607b54b4cff148bc8d93d3b19ec9e921;hb=e542a2b9968ee6a7def19e79e84c27684ee686e3;hp=99f2de2dc286be0f702046b0e0a972be60127b0d;hpb=1fea111206bcb8b84284805a3b6e233d5879084c;p=jalview.git diff --git a/src/jalview/datamodel/Sequence.java b/src/jalview/datamodel/Sequence.java index 99f2de2..8928425 100755 --- a/src/jalview/datamodel/Sequence.java +++ b/src/jalview/datamodel/Sequence.java @@ -8,21 +8,14 @@ import MCview.*; public class Sequence implements SequenceI { - protected String name; - protected String sequence; + protected String name; + protected String sequence; protected String description; - protected int start; - protected int end; - protected String displayId; - protected Color color = Color.white; + protected int start; + protected int end; + protected String displayId; + protected Color color = Color.white; String pdbId; - PDBfile pdb; - - public int maxchain = -1; - public int pdbstart; - public int pdbend; - public int seqstart; - public int seqend; public Vector sequenceFeatures = new Vector(); public void setSequenceFeatures(Vector v) @@ -42,47 +35,6 @@ public class Sequence implements SequenceI return pdbId; } - public void setPDBfile(PDBfile pdb) - { - this.pdb = pdb; - int max = -10; - maxchain = -1; - - for (int i=0; i < pdb.chains.size(); i++) { - - System.out.println("PDB sequence = " + ((PDBChain)pdb.chains.elementAt(i)).sequence); - // Now lets compare the sequences to get - // the start and end points. - - - StringTokenizer str = new StringTokenizer(sequence, "."); - String newString = ""; - - while (str.hasMoreTokens()) { - newString += str.nextToken(); - } - // Align the sequence to the pdb - AlignSeq as = new AlignSeq(this,((PDBChain)pdb.chains.elementAt(i)).sequence,"pep"); - as.calcScoreMatrix(); - as.traceAlignment(); - as.printAlignment(); - - System.out.println("Score = " + as.maxscore); - if (as.maxscore > max) { - System.out.println("New max score"); - max = as.maxscore; - maxchain = i; - - pdbstart = as.seq2start; - pdbend = as.seq2end; - seqstart = as.seq1start - 1 ; - seqend = as.seq1end -1; - } - - System.out.println("PDB start/end " + pdbstart + " " + pdbend); - System.out.println("SEQ start/end " + seqstart + " " + seqend); - } - } public Sequence(String name, String sequence, int start, int end) { @@ -194,18 +146,30 @@ public class Sequence implements SequenceI } return pos; } + + public int[] gapMap() { + // Returns an int array giving the position of each residue in the sequence in the alignment + String seq = jalview.analysis.AlignSeq.extractGaps("-. ",sequence); + int[] map = new int[seq.length()]; + int j=0; + int p=0; + while (j