X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FJnetAnnotationMaker.java;h=27fc8697e327dd09effa82921acca97b64092a27;hb=2305d687bac5ed8a76ecb93c54c7b090a928e362;hp=a4160c593f107c6f1ea6c3a79efa7627d795a37e;hpb=d423f22792e47dbc800ae220a58677f988971d06;p=jalview.git diff --git a/src/jalview/io/JnetAnnotationMaker.java b/src/jalview/io/JnetAnnotationMaker.java index a4160c5..27fc869 100755 --- a/src/jalview/io/JnetAnnotationMaker.java +++ b/src/jalview/io/JnetAnnotationMaker.java @@ -1,23 +1,32 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.io; -import jalview.datamodel.*; +import java.util.Locale; + +import jalview.datamodel.AlignmentAnnotation; +import jalview.datamodel.AlignmentI; +import jalview.datamodel.Annotation; +import jalview.datamodel.SequenceI; +import jalview.util.MessageManager; public class JnetAnnotationMaker { @@ -52,18 +61,19 @@ public class JnetAnnotationMaker // in the future we could search for the query // sequence in the alignment before calling this function. SequenceI seqRef = al.getSequenceAt(firstSeq); - int width = preds[0].getSequence().length; + int width = preds[0].getLength(); int[] gapmap = al.getSequenceAt(firstSeq).gapMap(); if ((delMap != null && delMap.length > width) || (delMap == null && gapmap.length != width)) { - throw (new Exception("Number of residues in " - + (delMap == null ? "" : " mapped ") - + "supposed query sequence ('" - + al.getSequenceAt(firstSeq).getName() + "'\n" - + al.getSequenceAt(firstSeq).getSequenceAsString() - + ")\ndiffer from number of prediction sites in prediction (" - + width + ")")); + throw (new Exception(MessageManager.formatMessage( + "exception.number_of_residues_in_query_sequence_differ_from_prediction", + new String[] + { (delMap == null ? "" + : MessageManager.getString("label.mapped")), + al.getSequenceAt(firstSeq).getName(), + al.getSequenceAt(firstSeq).getSequenceAsString(), + Integer.valueOf(width).toString() }))); } AlignmentAnnotation annot; @@ -75,106 +85,132 @@ public class JnetAnnotationMaker existingAnnotations = al.getAlignmentAnnotation().length; } + Annotation[] sol = new Annotation[al.getWidth()]; + boolean firstsol = true; + while (i < preds.length) { - String id = preds[i].getName().toUpperCase(); + String id = preds[i].getName().toUpperCase(Locale.ROOT); if (id.startsWith("LUPAS") || id.startsWith("JNET") || id.startsWith("JPRED")) { - annotations = new Annotation[al.getWidth()]; - /* - * if (delMap!=null) { for (int j=0; jPrediction of Solvent Accessibility
levels are
  • 0 - Exposed
  • 3 - 25% or more S.A. accessible
  • 6 - 5% or more S.A. accessible
  • 9 - Buried (<5% exposed)
", + sol, 0f, 9f, AlignmentAnnotation.BAR_GRAPH); + annot.validateRangeAndDisplay(); + if (seqRef != null) + { + annot.createSequenceMapping(seqRef, 1, true); + seqRef.addAlignmentAnnotation(annot); + } + al.addAnnotation(annot); + al.setAnnotationIndex(annot, + al.getAlignmentAnnotation().length - existingAnnotations - 1); + } // Hashtable scores = prediction.getScores(); /*