root/galaxy-central/static/scripts/tools/rgenetics/helper_functions.js @ 2

リビジョン 2, 7.2 KB (コミッタ: hatakeyama, 14 年 前)

import galaxy-central

  • 属性 svn:executable の設定値 *
行番号 
1var svgNS="http://www.w3.org/2000/svg";var xlinkNS="http://www.w3.org/1999/xlink";var cartoNS="http://www.carto.net/attrib";var attribNS="http://www.carto.net/attrib";var batikNS="http://xml.apache.org/batik/ext";function toPolarDir(a,c){var b=(Math.atan2(c,a));return(b)}function toPolarDist(a,b){var c=Math.sqrt(a*a+b*b);return(c)}function toRectX(b,c){var a=c*Math.cos(b);return(a)}function toRectY(a,b){y=b*Math.sin(a);return(y)}function DegToRad(a){return(a/180*Math.PI)}function RadToDeg(a){return(a/Math.PI*180)}function dd2dms(a){var b=(Math.abs(a)-Math.floor(Math.abs(a)))*60;var d=(b-Math.floor(b))*60;var b=Math.floor(b);if(a>=0){var c=Math.floor(a)}else{var c=Math.ceil(a)}return{deg:c,min:b,sec:d}}function dms2dd(c,a,b){if(c<0){return c-(a/60)-(b/3600)}else{return c+(a/60)+(b/3600)}}function log(c,a){if(a==null){a=Math.E}return Math.log(c)/Math.log(a)}function intBilinear(m,k,g,c,o,b,a,u,t){var q=(o-a)/t;var p=(b-u)/t;var n=(1-q)*(1-p);var l=q*(1-p);var j=q*p;var d=p*(1-q);var r=n*g+l*c+j*m+d*k;return r}function leftOfTest(b,j,d,g,c,f){var a=(g-j)*(c-d)-(d-b)*(f-g);if(a<0){var e=1}else{var e=0}return e}function distFromLine(e,f,d,a,c,j){var k=c-d;var g=j-a;var b=(g*(e-d)-k*(f-a))/Math.sqrt(Math.pow(k,2)+Math.pow(g,2));return b}function angleBetwTwoLines(b,a,e,c){var d=Math.acos((b*e+a*c)/(Math.sqrt(Math.pow(b,2)+Math.pow(a,2))*Math.sqrt(Math.pow(e,2)+Math.pow(c,2))));return d}function calcBisectorVector(b,a,g,e){var f=Math.sqrt(Math.pow(b,2)+Math.pow(a,2));var d=Math.sqrt(Math.pow(g,2)+Math.pow(e,2));var j=new Array();j[0]=b/f+g/d;j[1]=a/f+e/d;return j}function calcBisectorAngle(a,k,j,g){var c=Math.sqrt(Math.pow(a,2)+Math.pow(k,2));var b=Math.sqrt(Math.pow(j,2)+Math.pow(g,2));var f=a/c+j/b;var e=k/c+g/b;var d=toPolarDir(f,e);return d}function intersect2lines(l,f,k,e,n,j,m,g){var c=new Object();var d=(g-j)*(k-l)-(m-n)*(e-f);if(d==0){alert("lines are parallel")}else{var b=((m-n)*(f-j)-(g-j)*(l-n))/d;var a=((k-l)*(f-j)-(e-f)*(l-n))/d}c.x=l+b*(k-l);c.y=f+b*(e-f);return c}function formatNumberString(a,e){if(typeof(a)=="Number"){var c=a.toString()}else{var c=a}var b="";var d=c.split(".");var f=d[0].length;if(f>3){while(f>0){if(f>3){b=e+d[0].substr(f-3,3)+b}else{b=d[0].substr(0,f)+b}f-=3}}else{b=d[0]}if(d[1]){b=b+"."+d[1]}return b}function statusChange(a){document.getElementById("statusText").firstChild.nodeValue="Statusbar: "+a}function scaleObject(a,e){var d=a.currentTarget;var c=d.getAttributeNS(null,"x");var b=d.getAttributeNS(null,"y");var f="scale("+e+") translate("+(c*1/e-c)+" "+(b*1/e-b)+")";d.setAttributeNS(null,"transform",f)}function getTransformToRootElement(b){try{var c=b.getTransformToElement(document.documentElement)}catch(a){var c=b.getCTM();while((b=b.parentNode)!=document){c=b.getCTM().multiply(c)}}return c}function getTransformToElement(b,c){try{var d=b.getTransformToElement(c)}catch(a){var d=b.getCTM();while((b=b.parentNode)!=c){d=b.getCTM().multiply(d)}}return d}function hsv2rgb(j,c,b){var l=new Object();if(c==0){l.red=Math.round(b*255);l.green=Math.round(b*255);l.blue=Math.round(b*255)}else{var g=j/60;var e=Math.floor(g);var k=g-e;if(e%2==0){k=1-k}var d=b*(1-c);var a=b*(1-c*k);switch(e){case 0:l.red=b;l.green=a;l.blue=d;break;case 1:l.red=a;l.green=b;l.blue=d;break;case 2:l.red=d;l.green=b;l.blue=a;break;case 3:l.red=d;l.green=a;l.blue=b;break;case 4:l.red=a;l.green=d;l.blue=b;break;case 5:l.red=b;l.green=d;l.blue=a;break;case 6:l.red=b;l.green=a;l.blue=d;break}l.red=Math.round(l.red*255);l.green=Math.round(l.green*255);l.blue=Math.round(l.blue*255)}return l}function rgb2hsv(c,b,a){var d=new Object();c=c/255;b=b/255;a=a/255;myMax=Math.max(c,Math.max(b,a));myMin=Math.min(c,Math.min(b,a));v=myMax;if(myMax>0){s=(myMax-myMin)/myMax}else{s=0}if(s>0){myDiff=myMax-myMin;rc=(myMax-c)/myDiff;gc=(myMax-b)/myDiff;bc=(myMax-a)/myDiff;if(c==myMax){h=(bc-gc)/6}if(b==myMax){h=(2+rc-bc)/6}if(a==myMax){h=(4+gc-rc)/6}}else{h=0}if(h<0){h+=1}d.hue=Math.round(h*360);d.sat=s;d.val=v;return d}function arrayPopulate(a,b){var c=new Array();if(a.length!=b.length){alert("error: arrays do not have the same length!")}else{for(i=0;i<a.length;i++){c[a[i]]=b[i]}}return c}function getData(d,c,e,f,b,a){this.url=d;this.callBackFunction=c;this.returnFormat=e;this.method=f;this.additionalParams=a;if(f!="get"&&f!="post"){alert("Error in network request: parameter 'method' must be 'get' or 'post'")}this.postText=b;this.xmlRequest=null}getData.prototype.getData=function(){if(window.getURL){if(this.method=="get"){getURL(this.url,this)}if(this.method=="post"){postURL(this.url,this.postText,this)}}else{if(window.XMLHttpRequest){var b=this;this.xmlRequest=new XMLHttpRequest();if(this.method=="get"){if(this.returnFormat=="xml"){this.xmlRequest.overrideMimeType("text/xml")}this.xmlRequest.open("GET",this.url,true)}if(this.method=="post"){this.xmlRequest.open("POST",this.url,true)}this.xmlRequest.onreadystatechange=function(){b.handleEvent()};if(this.method=="get"){this.xmlRequest.send(null)}if(this.method=="post"){var a=true;if(!this.postText){a=false;alert("Error in network post request: missing parameter 'postText'!")}if(typeof(this.postText)!="string"){a=false;alert("Error in network post request: parameter 'postText' has to be of type 'string')")}if(a){this.xmlRequest.send(this.postText)}}}else{alert("your browser/svg viewer neither supports window.getURL nor window.XMLHttpRequest!")}}};getData.prototype.operationComplete=function(b){if(b.success){if(this.returnFormat=="xml"){var a=parseXML(b.content,document);if(typeof(this.callBackFunction)=="function"){this.callBackFunction(a.firstChild,this.additionalParams)}if(typeof(this.callBackFunction)=="object"){this.callBackFunction.receiveData(a.firstChild,this.additionalParams)}}if(this.returnFormat=="json"){if(typeof(this.callBackFunction)=="function"){this.callBackFunction(b.content,this.additionalParams)}if(typeof(this.callBackFunction)=="object"){this.callBackFunction.receiveData(b.content,this.additionalParams)}}}else{alert("something went wrong with dynamic loading of geometry!")}};getData.prototype.handleEvent=function(){if(this.xmlRequest.readyState==4){if(this.returnFormat=="xml"){var a=document.importNode(this.xmlRequest.responseXML.documentElement,true);if(typeof(this.callBackFunction)=="function"){this.callBackFunction(a,this.additionalParams)}if(typeof(this.callBackFunction)=="object"){this.callBackFunction.receiveData(a,this.additionalParams)}}if(this.returnFormat=="json"){if(typeof(this.callBackFunction)=="function"){this.callBackFunction(this.xmlRequest.responseText,this.additionalParams)}if(typeof(this.callBackFunction)=="object"){this.callBackFunction.receiveData(this.xmlRequest.responseText,this.additionalParams)}}}};function serializeNode(b){if(typeof XMLSerializer!="undefined"){return new XMLSerializer().serializeToString(b)}else{if(typeof b.xml!="undefined"){return b.xml}else{if(typeof printNode!="undefined"){return printNode(b)}else{if(typeof Packages!="undefined"){try{var a=new java.io.StringWriter();Packages.org.apache.batik.dom.util.DOMUtilities.writeNode(b,a);return a.toString()}catch(c){alert("Sorry, your SVG viewer does not support the printNode/serialize function.");return""}}else{alert("Sorry, your SVG viewer does not support the printNode/serialize function.");return""}}}}}function startAnimation(a){document.getElementById(a).beginElement()};
Note: リポジトリブラウザについてのヘルプは TracBrowser を参照してください。