3d跨度振幅走势图实现--彩票类

2024-03-18 03:48

本文主要是介绍3d跨度振幅走势图实现--彩票类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ESUNChart={};
ESUNChart.previewCode=[];
ESUNChart.on=function(o,type,fn){o.attachEvent?o.attachEvent('on'+type,function(){fn.call(o)}):o.addEventListener(type,fn,false);};
/* 全局控制 */
ESUNChart.ini={default_has_line:true,map:[],/* 数字到字符映射 */initShow:'',/* 是否初始化时显示重号或者其它号码,格式为复选框ID+,号 "c_tb,c_v,c_v3,c_h,c_h3,c_x,c_x3" */stop_buy_re:/sina|tenpay|paipai|youa/ /* 禁止出现购买按钮的包含站点规则 */
};ESUNChart.CSS=function(obj,v){var _style=obj.style;if (_style[v])return _style[v];  if (obj.currentStyle) return obj.currentStyle[v]if (document.defaultView && document.defaultView.getComputedStyle){ v = v.replace(/([A-Z])/g,"-$1").toLowerCase();var s = document.defaultView.getComputedStyle(obj,""); return s && s.getPropertyValue(v); }return null; 
}
ESUNChart.stop= function(e) {if (e.stopPropagation) {e.stopPropagation();e.preventDefault();} else {e.cancelBubble = true;e.returnValue = false;};
};
ESUNChart.insertAfter=function(newElement,targetElement){var parent=targetElement.parentNode;if(parent.lastChild==targetElement){return parent.appendChild(newElement);}else{return parent.insertBefore(newElement,targetElement.nextSibling);};
}/* 连线类  --------------------------------------------------------------------*/
JoinLine=function(color,size){this.color=color||"#000000";this.size=size||1;this.lines=[];this.tmpDom=null;this.visible=true;var cenbox=document.getElementById('container');//for center divthis.box=document.body;if(cenbox){//兼容居中divthis.wrap=cenbox.getElementsByTagName('DIV')[0];if(this.wrap){this.box=this.wrapthis.wrap.style.position='relative';}};
};
JoinLine.prototype={show:function(yes){for(var i=0;i<this.lines.length;i++)this.lines[i].style.visibility=yes?"visible":"hidden";		},remove:function(){for(var i=0;i<this.lines.length;i++)this.lines[i].parentNode.removeChild(this.lines[i]);this.lines=[];		},join:function(objArray,hide,fn){this.remove();this.visible=hide?"visible":"hidden";this.tmpDom=document.createDocumentFragment();for(var i=0;i<objArray.length-1;i++){var a=this.pos(objArray[i]);var b=this.pos(objArray[i+1]);//alert("A.x*: " + a.x + " * A.y*: " + a.y + " *B.x*: " + b.x + " *B.y*: " + b.y);/* 通过比对两个值来决策绘制与否 */if(fn&&fn(a,b)===false)continue;if(document.all && !(navigator.appName == "Microsoft Internet Explorer" && (navigator.appVersion.match(/9./i)=="9." || document.documentMode == 10))){this.IELine(a.x,a.y,b.x,b.y)}else{this.FFLine(a.x,a.y,b.x,b.y)};};this.box.appendChild(this.tmpDom);		},pos:function(obj){//alert(obj.offsetWidth);if(obj.nodeType==undefined)return obj;// input {x:x,y:y} return;var pos={x:0,y:0},a=obj;for(;a;a=a.offsetParent){pos.x+=a.offsetLeft;pos.y+=a.offsetTop;if(this.wrap&&a.offsetParent===this.wrap)break};// 兼容居中divpos.x+=parseInt(obj.offsetWidth/2);pos.y+=parseInt(obj.offsetHeight/2);return pos;},_oldDot:function (x,y,color,size){var dot=document.createElement("DIV");dot.style.cssText="position: absolute; left: "+x+"px; top: "+y+"px;background: "+color+";width:"+size+"px;height:"+size+"px;font-size:1px;overflow:hidden";dot.style.visibility=this.visible;this.lines.push(this.tmpDom.appendChild(dot));},_oldLine:function(x1,y1,x2,y2){var r=Math.floor(Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)));var theta=Math.atan((x2-x1)/(y2-y1));if(((y2-y1)<0&&(x2-x1)>0)||((y2-y1)<0&&(x2-x1)<0))	theta=Math.PI+theta;var dx=Math.sin(theta),dy=Math.cos(theta),i=0;do{this.FFDot(x1+i*dx,y1+i*dy,this.color,this.size)}while(i++<r);},FFLine:function(x1,y1,x2,y2){if(Math.abs(y1-y2)<(JoinLine.indent*2)&&x1==x2)return;//自动确定同列的是否连线		var np=this.nPos(x1,y1,x2,y2,JoinLine.indent);//两端缩减函数(防止覆盖球)x1=np[0];y1=np[1];x2=np[2];	y2=np[3];var cvs=document.createElement("canvas");cvs.style.position="absolute";cvs.style.visibility=this.visible;cvs.width=Math.abs(x1-x2)||this.size;cvs.height=Math.abs(y1-y2)||this.size;var newY=Math.min(y1,y2);var newX=Math.min(x1,x2);cvs.style.top=newY+"px";cvs.style.left=newX+"px";var FG=cvs.getContext("2d");FG.save();//缓存历史设置FG.strokeStyle=this.color;FG.lineWidth=this.size;//FG.globalAlpha=0.5;//透明度;	FG.beginPath(); FG.moveTo(x1-newX,y1-newY);FG.lineTo(x2-newX,y2-newY);FG.closePath();FG.stroke();FG.restore();//恢复历史设置this.lines.push(cvs);this.tmpDom.appendChild(cvs);		},	IELine:function(x1,y1,x2,y2){if(Math.abs(y1-y2)<(JoinLine.indent*2)&&x1==x2)return;//自动确定同列的是否连线var np=this.nPos(x1,y1,x2,y2,JoinLine.indent);//两端缩减函数(防止覆盖球)x1=np[0];y1=np[1];x2=np[2];	y2=np[3];		var line = document .createElement( "<v:line></v:line>" );line.from=x1+","+y1;line.to=x2+","+y2;line.strokeColor=this.color;line.strokeWeight=this.size+"px";line.style.cssText="position:absolute;z-index:999;top:0;left:0";line.style.visibility=this.visible;line.coordOrigin="0,0";this.lines.push(line);this.tmpDom.appendChild(line);},nPos:function(x1, y1, x2, y2, r){var a = x1 - x2, b = y1 - y2;var c = Math.round(Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2)));var x3, y3, x4, y4;var _a = Math.round((a * r)/c);var _b = Math.round((b * r)/c);return [x2 + _a, y2 + _b, x1 - _a, y1 - _b]; }
};JoinLine.indent=8;/* 过滤搜索连线操纵类 --------------------------------------------------------------------*/
LG=function(table,_x,_y,width,margin_bottom,css_name,fn_check){var rect={x:_x||0,y:_y||0,w:width||0,oh:margin_bottom||0};var trs;if (isIE()) {trs=document.getElementById(table).rows;} else {trs = (document.getElementById("table3d").getElementsByTagName("tbody"))[1] . rows; }var row_start=rect.y<0?(trs.length+rect.y):rect.y;var row_end=trs.length-rect.oh;var col_start=rect.x<0?(trs[row_start].cells.length+rect.x):rect.x;var col_end=parseInt(col_start)+parseInt(rect.w);if(col_end>trs[row_start].cells.length)col_end=trs[row_start].cells.length;	if(rect.w==0)col_end=trs[row_start].cells.length;	this.g=[];//alert([row_start,row_end,col_start,col_end]);for(var i=row_start;i<row_end;i++){/* each and grouping */var tr=trs[i].cells;for(var j=col_start;j<col_end;j++){var td=tr[j];/* 检测器返回绝对真时,单元格才被添加到组 */if(td){if(fn_check(td,css_name,j,i)===true)this.g.push(td);}};};if(LG.autoDraw)this.draw();
};
//LG.color='#E4A8A8';
LG.color='#898989';
LG.size=2;
LG.autoDraw=true;/* 默认自动绘线 */
LG.isShow=true;
LG.filter=function(){};
LG.prototype={draw:function(color,size,fn){this.line=new JoinLine(color||LG.color,size||LG.size);if(!fn)fn=LG.filter;this.line.join(this.g,LG.isShow,fn);},clear:function(){this.line.remove();},show:function(yes){this.line.show(yes)}
}/* 批量绘线对象 -----------------------------------------------------------------------------------
设置表格;
设置开关;
设置检测函数;
添加块;x坐标从0开始
显示;
修改模式;
添加;
再显示;
error:如果检测函数第一次显示无效,第二次会被覆盖掉
*/
oZXZ={vg:[],lg:[],_vg:[],_lg:[],css_name:[],table:false,check:function(td,cssName){for (var i = 0; i < cssName.length; i++) {if (td.className == cssName[i]) {return true;}}return false;},on_off:true,_on:true,/* 开关反作用 */novl:false,/* 忽略垂直线 */bind:function(tid,_css_name,_on_off){this.table=tid;for(var i=0;i<_css_name.length;i++){this.css_name.push(_css_name[i])};this.on_off=_on_off;return this;},color:function(c){LG.color=c;return this;},newCheck:function(fn){this.check=fn;return this;},	draw:function(yes){if(!this.table)return;if(yes){var qL=this.vg.length;for(var i=0;i<qL;i++){var it=this.vg[i];LG.color=it.color;JoinLine.indent=it.indent;this.novl=it.novl;if(this.novl)LG.filter=function(a,b){return !(a.x==b.x)};this.lg.push(new LG(this.table,it[0],it[1],it[2],it[3],this.css_name,this.check));}}if(this.on_off){var _this=this;$=document.getElementById(this.on_off);if($)$.οnclick=function(){var yes=_this._on?this.checked:!this.checked;_this.show(yes);};	}/* 转移与清空历史记录,等待下一次添加 */this._vg=this._vg.concat(this.vg);this.vg=[];this._lg=this._lg.concat(this.lg);this.lg=[];return this;},show:function(yes){/* 如果没有线则重绘一次 */if(this._lg.length==0)this.redraw();var qL=this._lg.length;for(var i=0;i<qL;i++){this._lg[i].show(yes)};},/*x,y,w,-bottom*/add:function(x,y,w,mb){//把每一块封成组加上属性this.vg.push([x,y,w,mb]);/* 记录本组缩进与颜色 */this.vg[this.vg.length-1].color=LG.color;this.vg[this.vg.length-1].indent=JoinLine.indent;this.vg[this.vg.length-1].novl=this.novl;return this;},clear:function(){for(var i=0;i<this._lg.length;i++)this._lg[i].clear();return this;},redraw:function(){this.clear();this.vg=this.vg.concat(this._vg);this._vg=[];this.draw(true);},newCheck:function(fn){this.check=fn;return this;},	setvl:function(v){this.novl=v;return this;},indent:function(v){JoinLine.indent=v;return this;}
}/* 添加所有的全局初始化动作
------------------------------------------------------------------------------------------*/
ESUNChart.init=function(){/* 复位复选框 */var inputs=document.getElementsByTagName("INPUT");for(var i=0;i<inputs.length;i++){var it=inputs[i];if(it.type.toLowerCase()=="checkbox")it.checked=false;}if(!ESUNChart.ini.default_has_line)return;var on_off=document.getElementById("has_line");if(!on_off)return;on_off.checked='checked';
};/* 重写fw.onReady 延迟执行到window.onload */
if(typeof fw =='undefined')fw={};
fw.onReady=function(fn){ESUNChart.on(window,'load',fn);
}ESUNChart.on(window,'load',function(){// foot scroll ADvar sys=document.getElementById('foot_scroll_txt');if(!sys)return;//sys.style.overflow='hidden';//sys.style.height='38px'var go_go=function(outer,inShell,goUnit,stopTime,speed,dir){var $=function (id){return document.getElementById(id)},dir=dir||-1;var outer=$(outer),inShell=$(inShell),H=inShell.offsetHeight;outer.appendChild(inShell.cloneNode(true));(function (){H=H||inShell.offsetHeight;var m=(outer.scrollTop-1)%goUnit?(speed||13):stopTime;//get timer speed;var ed=outer.scrollTop;if(go_go.stop!=true)if(dir==-1){outer.scrollTop=ed==H+1?0:++ed;}else{outer.scrollTop=ed==0?H-1:--ed;}setTimeout(arguments.callee,m);})()return arguments.callee;};go_go('foot_scroll_txt','foot_scroll_shell',19,3000,10,-1);sys.οnmοuseοver=function(){go_go.stop=true};sys.οnmοuseοut=function(){go_go.stop=false};
});function addReferrer(from){var links=document.links;for(var i=0,j;j=links[i++];)j.href+=(j.href.indexOf('?')==-1?'?':'&')+'from='+from
};
function isStopBuySite(){var from=document.referrer,local=location.href,search=location.search;var param=search.match(/\bfrom=([^&?]+)\b/);if(param)from=param[1]//addReferrer(from);if(ESUNChart.ini.stop_buy_re!==null)return ESUNChart.ini.stop_buy_re.test(from);return false;    	
};ESUNChart.on(window,'load',function(){ // show hide foot ad and buy buttonvar noBuy=isStopBuySite();if(noBuy)return;function getID(o){return document.getElementById(o)}//显示预选区for (var i=0;i<6;++i ) {var el=getID('selLine'+i);if(el)el.style.display='';};el=getID('selMaskBox');if(el)el.style.display='none';//显示按钮var spans=getID('chartbottom').getElementsByTagName('span');for(var i=0,l=spans.length;i<l;i++){var j=spans[i];if(j.className=='intro_right ssq_ad')j.style.display='block';        };//显示新闻var spans=getID('chartbottom').getElementsByTagName('DIV');for(var i=0,l=spans.length;i<l;i++){var j=spans[i];if(j.className=='latest')j.style.display='block';        };
});/*
预选事件
*/ESUNChart.onPreviewAreaClick=function(){}/*
全局配置
*//*
常见无效原因
1.未加VML样式
2.表格x,y定位错误,使表格没有全部遍历
3.缺少必要ID
*//*
line Color:
青绿色:#C5C50A;
橙色:#FF9916;
深粉:#FB9D82;
*/

这篇关于3d跨度振幅走势图实现--彩票类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/821096

相关文章

无人叉车3d激光slam多房间建图定位异常处理方案-墙体画线地图切分方案

墙体画线地图切分方案 针对问题:墙体两侧特征混淆误匹配,导致建图和定位偏差,表现为过门跳变、外月台走歪等 ·解决思路:预期的根治方案IGICP需要较长时间完成上线,先使用切分地图的工程化方案,即墙体两侧切分为不同地图,在某一侧只使用该侧地图进行定位 方案思路 切分原理:切分地图基于关键帧位置,而非点云。 理论基础:光照是直线的,一帧点云必定只能照射到墙的一侧,无法同时照到两侧实践考虑:关

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

让树莓派智能语音助手实现定时提醒功能

最初的时候是想直接在rasa 的chatbot上实现,因为rasa本身是带有remindschedule模块的。不过经过一番折腾后,忽然发现,chatbot上实现的定时,语音助手不一定会有响应。因为,我目前语音助手的代码设置了长时间无应答会结束对话,这样一来,chatbot定时提醒的触发就不会被语音助手获悉。那怎么让语音助手也具有定时提醒功能呢? 我最后选择的方法是用threading.Time

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略 1. 特权模式限制2. 宿主机资源隔离3. 用户和组管理4. 权限提升控制5. SELinux配置 💖The Begin💖点点关注,收藏不迷路💖 Kubernetes的PodSecurityPolicy(PSP)是一个关键的安全特性,它在Pod创建之前实施安全策略,确保P

工厂ERP管理系统实现源码(JAVA)

工厂进销存管理系统是一个集采购管理、仓库管理、生产管理和销售管理于一体的综合解决方案。该系统旨在帮助企业优化流程、提高效率、降低成本,并实时掌握各环节的运营状况。 在采购管理方面,系统能够处理采购订单、供应商管理和采购入库等流程,确保采购过程的透明和高效。仓库管理方面,实现库存的精准管理,包括入库、出库、盘点等操作,确保库存数据的准确性和实时性。 生产管理模块则涵盖了生产计划制定、物料需求计划、

C++——stack、queue的实现及deque的介绍

目录 1.stack与queue的实现 1.1stack的实现  1.2 queue的实现 2.重温vector、list、stack、queue的介绍 2.1 STL标准库中stack和queue的底层结构  3.deque的简单介绍 3.1为什么选择deque作为stack和queue的底层默认容器  3.2 STL中对stack与queue的模拟实现 ①stack模拟实现