Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/rev/d9a3e99ae19b
Дата изменения: Unknown
Дата индексирования: Tue Oct 2 01:05:08 2012
Кодировка:
allpy: d9a3e99ae19b

allpy

changeset 666:d9a3e99ae19b

blocks3d/www: mark conservative columns inside blocks Previously letters were marked if column is conservative over all sequences of alignment. Currently it was changed to conservatism over block including this letter. Additional attribute storing conservatism of columns inside block was added to block. This caused all colors of blocks to be changed.
author boris <bnagaev@gmail.com>
date Fri, 01 Jul 2011 03:21:08 +0400
parents 731015ce0d24
children 78e1700f589d
files blocks3d/www/input/blocks.js
diffstat 1 files changed, 14 insertions(+), 2 deletions(-) [+]
line diff
     1.1 --- a/blocks3d/www/input/blocks.js	Fri Jul 01 03:01:17 2011 +0400
     1.2 +++ b/blocks3d/www/input/blocks.js	Fri Jul 01 03:21:08 2011 +0400
     1.3 @@ -6,6 +6,7 @@
     1.4      int end; (inclusive)
     1.5      IDs: list of IDs
     1.6      cores: []
     1.7 +    is_conservative: list, mapping pos to bool
     1.8  }
     1.9  */
    1.10  
    1.11 @@ -139,6 +140,16 @@
    1.12          is_conservative[j] = is_conservative_column(j, all_sequences);
    1.13      }
    1.14  
    1.15 +    for (i = 0; i < blocks.length; i++)
    1.16 +    {
    1.17 +        block = blocks[i];
    1.18 +        block.is_conservative = [];
    1.19 +        for (j = block.start; j <= block.end; j++)
    1.20 +        {
    1.21 +            block.is_conservative[j] = is_conservative_column(j, block.IDs);
    1.22 +        }
    1.23 +    }
    1.24 +
    1.25      // pre-calculate strings for <pre>
    1.26      alignment_strings = {};
    1.27      var block_i;
    1.28 @@ -149,11 +160,12 @@
    1.29          for (j = 0; j < seq_length; j++)
    1.30          {
    1.31              block_i = useful_positions[ID][j];
    1.32 +            block = blocks[block_i];
    1.33              if (block_i || block_i === 0)
    1.34              {
    1.35                  // current element is a part of block
    1.36 -                var dark = is_conservative[j] && seq.charAt(j) != '-';
    1.37 -                var color = crc32_color(json(blocks[block_i]), dark);
    1.38 +                var dark = block.is_conservative[j] && seq.charAt(j) != '-';
    1.39 +                var color = crc32_color(json(block), dark);
    1.40                  t += '<font ';
    1.41                  t += ' style="background:' + color + '; cursor:pointer;" ' ;
    1.42                  t += ' onclick=letter_click("' + ID + '",' + j + ') ' ;