glycoinfo / GlycanBuilder2

7 stars 5 forks source link

The end repeating bracket has branched #35

Closed e15d5605 closed 2 years ago

e15d5605 commented 2 years ago

6つのGlcの直線構造に対して繰り返しユニットを挿入すると、バージョンの違いによって終点位置のブラケットの構造が異なる\ GlycanBuilder2の編集機能を更新した際に分岐するように設定されていると考えられる\ 繰り返し構造を挿入する際に、ブラケットの結合位置は元の単糖の結合位置を継承するため、単糖とブラケットが分岐する必要はない

e15d5605 commented 2 years ago

参考:https://bitbucket.org/glycosw/wurcsglycanbuilder/src/54d6019b2df4aef53ab2b9654935280982fafa32/GlycanBuilder_WURCSextend/src/main/java/org/eurocarbdb/application/glycanbuilder/GlycanDocument.java?at=master

以下の構文をコメントアウトしている

for (Iterator<Linkage> il = last.iterator(); il.hasNext();) {
    Linkage child_link = il.next();
    if (child_link.getChildResidue() != end
        && !nodes.contains(child_link.getChildResidue())) {
        end.getChildrenLinkages().add(child_link);
        child_link.setParentResidue(end);
        il.remove();
    }
}

記録をきちんととっていない、かつ5年以上前のコミットなので記憶が曖昧なのだが、環状構造を追加した際に特定条件下でブラケットが正しく挿入されていない問題を解決するためにコメントアウトしたことを記憶している\ 後になってcreateCyclicという関数を実装しているため、その際にコメントアウトされたままになっていたと思われる\ この構文のコメントアウトを削除したところ、直列したGlcに対して繰り返しユニットを挿入すると以下のように表示される

また、この状態で繰り返し構造を生成すると以下のように表示された

以上のことから、createRepeatのfor文のコメントアウトを削除し、createCyclicのfor文をコメントアウトした