polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
2 lines • 3.78 kB
JavaScript
(window.webpackJsonpPOLY=window.webpackJsonpPOLY||[]).push([[9],{216:function(t,r,e){"use strict";e.r(r),e.d(r,"PDBLoader",(function(){return u}));var s=e(5),a=e(42),n=e(3),o=e(19),u=function(t){o.a.call(this,t)};u.prototype=Object.assign(Object.create(o.a.prototype),{constructor:u,load:function(t,r,e,s){var n=this,o=new a.a(n.manager);o.setPath(n.path),o.setRequestHeader(n.requestHeader),o.setWithCredentials(n.withCredentials),o.load(t,(function(e){try{r(n.parse(e))}catch(r){s?s(r):console.error(r),n.manager.itemError(t)}}),e,s)},parse:function(t){function r(t){return t.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function e(t){return t.charAt(0).toUpperCase()+t.substr(1).toLowerCase()}function a(t,r){var e=parseInt(d[g].substr(t,r));if(e){var s=function(t,r){return"s"+Math.min(t,r)+"e"+Math.max(t,r)}(y,e);void 0===f[s]&&(l.push([y-1,e-1,1]),f[s]=l.length-1)}}for(var o,u,i,c,p,b={h:[255,255,255],he:[217,255,255],li:[204,128,255],be:[194,255,0],b:[255,181,181],c:[144,144,144],n:[48,80,248],o:[255,13,13],f:[144,224,80],ne:[179,227,245],na:[171,92,242],mg:[138,255,0],al:[191,166,166],si:[240,200,160],p:[255,128,0],s:[255,255,48],cl:[31,240,31],ar:[128,209,227],k:[143,64,212],ca:[61,255,0],sc:[230,230,230],ti:[191,194,199],v:[166,166,171],cr:[138,153,199],mn:[156,122,199],fe:[224,102,51],co:[240,144,160],ni:[80,208,80],cu:[200,128,51],zn:[125,128,176],ga:[194,143,143],ge:[102,143,143],as:[189,128,227],se:[255,161,0],br:[166,41,41],kr:[92,184,209],rb:[112,46,176],sr:[0,255,0],y:[148,255,255],zr:[148,224,224],nb:[115,194,201],mo:[84,181,181],tc:[59,158,158],ru:[36,143,143],rh:[10,125,140],pd:[0,105,133],ag:[192,192,192],cd:[255,217,143],in:[166,117,115],sn:[102,128,128],sb:[158,99,181],te:[212,122,0],i:[148,0,148],xe:[66,158,176],cs:[87,23,143],ba:[0,201,0],la:[112,212,255],ce:[255,255,199],pr:[217,255,199],nd:[199,255,199],pm:[163,255,199],sm:[143,255,199],eu:[97,255,199],gd:[69,255,199],tb:[48,255,199],dy:[31,255,199],ho:[0,255,156],er:[0,230,117],tm:[0,212,82],yb:[0,191,56],lu:[0,171,36],hf:[77,194,255],ta:[77,166,255],w:[33,148,214],re:[38,125,171],os:[38,102,150],ir:[23,84,135],pt:[208,208,224],au:[255,209,35],hg:[184,184,208],tl:[166,84,77],pb:[87,89,97],bi:[158,79,181],po:[171,92,0],at:[117,79,69],rn:[66,130,150],fr:[66,0,102],ra:[0,125,0],ac:[112,171,250],th:[0,186,255],pa:[0,161,255],u:[0,143,255],np:[0,128,255],pu:[0,107,255],am:[84,92,242],cm:[120,92,227],bk:[138,79,227],cf:[161,54,212],es:[179,31,212],fm:[179,31,186],md:[179,13,166],no:[189,13,135],lr:[199,0,102],rf:[204,0,89],db:[209,0,79],sg:[217,0,69],bh:[224,0,56],hs:[230,0,46],mt:[235,0,38],ds:[235,0,38],rg:[235,0,38],cn:[235,0,38],uut:[235,0,38],uuq:[235,0,38],uup:[235,0,38],uuh:[235,0,38],uus:[235,0,38],uuo:[235,0,38]},h=[],l=[],f={},m={},d=t.split("\n"),g=0,w=d.length;g<w;g++)if("ATOM"===d[g].substr(0,4)||"HETATM"===d[g].substr(0,6)){o=parseFloat(d[g].substr(30,7)),u=parseFloat(d[g].substr(38,7)),i=parseFloat(d[g].substr(46,7)),c=parseInt(d[g].substr(6,5))-1,""===(p=r(d[g].substr(76,2)).toLowerCase())&&(p=r(d[g].substr(12,2)).toLowerCase());var v=[o,u,i,b[p],e(p)];h.push(v),m[c]=v}else if("CONECT"===d[g].substr(0,6)){var y=parseInt(d[g].substr(6,5));a(11,5),a(16,5),a(21,5),a(26,5)}return function(){var t,r,e,a,o,u={geometryAtoms:new s.a,geometryBonds:new s.a,json:{atoms:h}},i=u.geometryAtoms,c=u.geometryBonds,p=[],b=[],f=[];for(t=0,r=h.length;t<r;t++){var d=h[t];e=d[0],a=d[1],o=d[2],p.push(e,a,o);var g=d[3][0]/255,w=d[3][1]/255,v=d[3][2]/255;b.push(g,w,v)}for(t=0,r=l.length;t<r;t++){var y=l[t],A=y[0],C=y[1],L=m[A],O=m[C];e=L[0],a=L[1],o=L[2],f.push(e,a,o),e=O[0],a=O[1],o=O[2],f.push(e,a,o)}return i.setAttribute("position",new n.b(p,3)),i.setAttribute("color",new n.b(b,3)),c.setAttribute("position",new n.b(f,3)),u}()}})}}]);
//# sourceMappingURL=9.js.map