X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FJnetAnnotationMaker.java;h=51924549b03f599083103edc656b34438ceb7db8;hb=17e77c3f2949a0729322b4a8d907f3f34b6a9914;hp=8c841a885423a6d5fb69f90c15de07bfb83f3cdf;hpb=2de8acfae59aced665e4c37ad0f7dcc2ed68818e;p=jalview.git diff --git a/src/jalview/io/JnetAnnotationMaker.java b/src/jalview/io/JnetAnnotationMaker.java index 8c841a8..5192454 100755 --- a/src/jalview/io/JnetAnnotationMaker.java +++ b/src/jalview/io/JnetAnnotationMaker.java @@ -1,24 +1,30 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Development Version 2.4.1) - * Copyright (C) 2009 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9) + * Copyright (C) 2015 The Jalview Authors * - * This program 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 2 - * of the License, or (at your option) any later version. + * This file is part of Jalview. * - * This program 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. + * 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. + * + * 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 this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.io; -import jalview.datamodel.*; +import jalview.datamodel.AlignmentAnnotation; +import jalview.datamodel.AlignmentI; +import jalview.datamodel.Annotation; +import jalview.datamodel.SequenceI; +import jalview.util.MessageManager; public class JnetAnnotationMaker { @@ -33,17 +39,17 @@ public class JnetAnnotationMaker * adds the annotation parsed by prediction to al. * * @param prediction - * JPredFile + * JPredFile * @param al - * AlignmentI + * AlignmentI * @param firstSeq - * int the index of the sequence to attach the annotation to - * (usually zero) + * int the index of the sequence to attach the annotation to (usually + * zero) * @param noMsa - * boolean + * boolean * @param delMap - * mapping from columns in JPredFile prediction to residue - * number in al.getSequence(firstSeq) + * mapping from columns in JPredFile prediction to residue number in + * al.getSequence(firstSeq) */ public static void add_annotation(JPredFile prediction, AlignmentI al, int firstSeq, boolean noMsa, int[] delMap) throws Exception @@ -58,13 +64,17 @@ public class JnetAnnotationMaker 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; @@ -76,6 +86,9 @@ 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(); @@ -83,99 +96,121 @@ public class JnetAnnotationMaker 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", + 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(); /*