icn3d 3.25.16 → 3.25.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/icn3d.module.js CHANGED
@@ -33156,7 +33156,8 @@ class Alternate {
33156
33156
  ic.drawCls.draw();
33157
33157
 
33158
33158
  ic.bShowHighlight = true;
33159
- ic.opts['rotationcenter'] = 'molecule center';
33159
+ //ic.opts['rotationcenter'] = 'molecule center';
33160
+ ic.opts['rotationcenter'] = 'highlight center';
33160
33161
  }
33161
33162
 
33162
33163
  alternateWrapper() { let ic = this.icn3d; ic.icn3dui;
@@ -43113,6 +43114,8 @@ class ShowSeq {
43113
43114
  refnumStr = ic.refnumCls.rmStrandFromRefnumlabel(refnumLabel);
43114
43115
  currRefnum = parseInt(refnumStr);
43115
43116
  refnumLabelNoPostfix = currStrand + currRefnum;
43117
+
43118
+ currStrand = refnumLabel.replace(new RegExp(refnumStr,'g'), '');
43116
43119
 
43117
43120
  let firstChar = refnumLabel.substr(0,1);
43118
43121
  if(!bStart && (firstChar == ' ' || firstChar == 'A' || firstChar == 'B')) { // start of a new IG domain
@@ -43129,7 +43132,26 @@ class ShowSeq {
43129
43132
  refnumLabel = undefined;
43130
43133
  }
43131
43134
  else {
43132
- if(parseInt(currResi) < parseInt(strandArray[strandCnt].startResi)) {
43135
+ let bBefore = false, bInRange= false, bAfter = false;
43136
+ // 100, 100A
43137
+ if(parseInt(currResi) == parseInt(strandArray[strandCnt].startResi) && currResi != strandArray[strandCnt].startResi) {
43138
+ bBefore = currResi < strandArray[strandCnt].startResi;
43139
+ }
43140
+ else {
43141
+ bBefore = parseInt(currResi) < parseInt(strandArray[strandCnt].startResi);
43142
+ }
43143
+
43144
+ // 100, 100A
43145
+ if(parseInt(currResi) == parseInt(strandArray[strandCnt].endResi) && currResi != strandArray[strandCnt].endResi) {
43146
+ bAfter = currResi > strandArray[strandCnt].endResi;
43147
+ }
43148
+ else {
43149
+ bAfter = parseInt(currResi) > parseInt(strandArray[strandCnt].endResi);
43150
+ }
43151
+
43152
+ bInRange = (!bBefore && !bAfter) ? true : false;
43153
+
43154
+ if(bBefore) {
43133
43155
  ic.residIgLoop[residueid] = 1;
43134
43156
 
43135
43157
  if(bBeforeAstrand) { // make it continuous to the 1st strand
@@ -43190,7 +43212,7 @@ class ShowSeq {
43190
43212
  }
43191
43213
  }
43192
43214
  }
43193
- else if(parseInt(currResi) >= parseInt(strandArray[strandCnt].startResi) && parseInt(currResi) <= parseInt(strandArray[strandCnt].endResi)) {
43215
+ else if(bInRange) {
43194
43216
  // not in loop any more if you assign ref numbers multiple times
43195
43217
  //delete ic.residIgLoop[residueid];
43196
43218
 
@@ -43218,7 +43240,7 @@ class ShowSeq {
43218
43240
  }
43219
43241
  }
43220
43242
  }
43221
- else if(parseInt(currResi) > parseInt(strandArray[strandCnt].endResi)) {
43243
+ else if(bAfter) {
43222
43244
  ic.residIgLoop[residueid] = 1;
43223
43245
 
43224
43246
  if(!bAfterGstrand) {
@@ -54824,7 +54846,10 @@ class SetSeqAlign {
54824
54846
  */
54825
54847
 
54826
54848
  let resid = chainid + '_' + resi;
54827
- return ic.residueId2Name[resid];
54849
+ let resn = ic.residueId2Name[resid];
54850
+ if(!resn) resn = '?';
54851
+
54852
+ return resn;
54828
54853
  }
54829
54854
 
54830
54855
  getResiAferAlign(chainid, bRealign, pos) { let ic = this.icn3d, me = ic.icn3dui;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "icn3d",
3
- "version": "3.25.16",
3
+ "version": "3.25.17",
4
4
  "main": "./icn3d.js",
5
5
  "exports": {
6
6
  ".": {