3D浮动图像

原创 2016年06月02日 12:49:54
 
把如下代码复制到<head></head>之间
 
<xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v"/>
<style>
v\:* { behavior: url(#default#VML); }
</style>
 
 
把如下代码复制到<body></body>之间
 

<SCRIPT>
// 3D-Slideshow
// more javascript from http://www.smallrain.net
var slideurl=new Array()
slideurl[0]="pic/blender.png"
slideurl[1]="pic/aim.png"
slideurl[2]="pic/babelfish.png"

// add a corresponding link for each image
// if you don't wont to link an image, enter "#"
var slidelink=new Array()
slidelink[0]="http://www.butong.net"
slidelink[1]="http://bz.butong.net"
slidelink[2]="http://www.butong.net/it/index.htm"

// add a corresponding target for each link
// acceptable values "_blank" or "_top" or "_parent" or "_self"
var slidetarget=new Array()
slidetarget[0]="_blank"
slidetarget[1]="_self"
slidetarget[2]="_top"

// set the width of the 3D-border (pixels)
var backdepth=6

// set thecolorof the 3D-border (HTML-values required)
var fillcolor="#666666"

// set the standstill (seconds) for the images (required for Netscape Navigator)
var standstill=3

// set the form of the imageframe
// acceptable values are "oval" or "rect"
var imageform="oval"

// do not edit below this line
var slidewidth=1
var slideheight=1

var ns6=document.getElementByIdx&&!document.all?1:0
var opera=navigator.userAgent.match(/Opera/)
var ie5=document.getElementByIdx&&document.all&&!opera?1:0

standstill*=1000
var floatingspeed=1
var tempo=20
var numberofimages=slideurl.length-1
var stepx=new Array()
var stepy=new Array()
for (i=0;i<=numberofimages;i++) {
 stepx[i]=randommakerNS(floatingspeed)
 stepy[i]=randommakerNS(floatingspeed)
}
var imgwidth=new Array()
var imgheight=new Array()
for (i=0;i<=numberofimages;i++) {
 imgwidth[i]=10
 imgheight[i]=10
}
var x,y
var marginbottom
var marginleft=0
var margintop=0
var marginright
var timer
var i_fadestrength=new Array()
var i_fadestep=new Array()
var i_fadenow=new Array()
var i_fadenowmax=new Array()
for (i=0;i<=slideurl.length;i++) {
 i_fadenowmax[i]=2
 i_fadestrength[i]=randommakerNS(99) 
 i_fadestep[i]=1
 i_fadenow[i]=0
}

var spancontent=new Array()
var i_spancontent=0
var imgpreload=new Array()
for (i=0;i<=slideurl.length;i++) {
 imgpreload[i]=new Image()
 imgpreload[i].src=slideurl[i]
}
for (i=0;i<=numberofimages;i++) {
 spancontent[i]="<a href='"+slidelink[i]+"' target='"+slidetarget[i]+"'><img src='"+slideurl[i]+"' border='0'></a>"
}

var i_angle1=0
var i_size=1
var i_pic=0
var posleft=0
var postop=0
var x_extrusionangle=0
var y_extrusionangle=0
var x_rotationcenter=0
var y_rotationcenter=0
var pagewidth
var pageheight

function initNS() {
    marginbottom=windows.innerHeight-11
    marginright=windows.innerWidth-11          
 var thisspan=document.getElementByIdx('span0')
 thisspan.innerHTML=spancontent[0]
 var thisspan=document.getElementByIdx('span0')
 imgwidth[0]=parseInt(thisspan.offsetWidth)
 imgheight[0]=parseInt(thisspan.offsetHeight)
 var maxleftstart=marginright-imgwidth[0]
 var maxtopstart=marginbottom-imgheight[0]
 var thisspan=document.getElementByIdx('span0').style
    thisspan.left=parseInt(thisspan.left)+randommakerNS(maxleftstart)
 thisspan.top=parseInt(thisspan.top)+randommakerNS(maxtopstart)
 thisspan.visibility="visible"
    checkmovementNS()
}

function randommakerNS(range) {  
 rand=Math.floor(range*Math.random())
 if (rand==0) {rand=Math.ceil(range/2)}
    return rand
}

function checkmovementNS() {
 checkpositionNS()
 movepicturesNS()
    timer=setTimeout("checkmovementNS()",tempo)
}

function movepicturesNS() {
    var thisspan=document.getElementByIdx('span0').style
    thisspan.left=parseInt(thisspan.left)+stepx[0]
 thisspan.top=parseInt(thisspan.top)+stepy[0] 
 i_fadenow[0]++
 if (i_fadenow[0]>=i_fadenowmax[0]) {
  i_fadenow[0]=0
  if (i_fadestrength[0]>=100) {i_fadestep[0]=i_fadestep[0]*-1}
  else if (i_fadestrength[0]<=0) {
   i_fadestep[0]=i_fadestep[0]*-1
   i_spancontent++
   if (i_spancontent>=spancontent.length) {i_spancontent=0}
   document.getElementByIdx('span0').innerHTML=spancontent[i_spancontent]
  }
 } 
 i_fadestrength[0]+=i_fadestep[0]
 document.getElementByIdx('span0').style.MozOpacity=Math.round(i_fadestrength[0])/100
}

function checkpositionNS() {
 imgwidth[0]=parseInt(document.getElementByIdx('span0').offsetWidth)
 imgheight[0]=parseInt(document.getElementByIdx('span0').offsetHeight)        
 var thisspan=document.getElementByIdx('span0').style
 var leftx=parseInt(thisspan.left)
 var topy=parseInt(thisspan.top)
 if (leftx>marginright-imgwidth[0]-floatingspeed) {
  thisspan.left=leftx-Math.abs(stepx[0]+1)
  stepx[0]=randommakerNS(floatingspeed)*-1 
 }
 if (leftx<marginleft) {
  thisspan.left=leftx+Math.abs(stepx[0])
  stepx[0]=randommakerNS(floatingspeed)   
 } 
 if (topy>marginbottom-imgheight[0]-floatingspeed) {
  thisspan.top=topy-Math.abs(stepy[0])
  stepy[0]=randommakerNS(floatingspeed)*-1
 }
 if (topy<margintop) {
  thisspan.top=topy+Math.abs(stepy[0])
  stepy[0]=randommakerNS(floatingspeed)
 }
}

function initIE() {
 var i_preload=0
 for (i=0;i<=slideurl.length-1;i++) {
  var imgref=eval_r("document.n"+i)
  if (imgref.complete) {i_preload++}
 }
 if (i_preload>=slideurl.length-1) {
  slidewidth=document.getElementByIdx('spn1').offsetWidth
  slideheight=document.getElementByIdx('spn1').offsetHeight
  pagewidth=document.body.clientWidth
  pageheight=document.body.clientHeight
  document.getElementByIdx('rectid').style.width=slidewidth
  document.getElementByIdx('rectid').style.height=slideheight
  posleft=(pagewidth-slidewidth)/2
  postop=(pageheight-slideheight)/2
  x_rotationcenter=(posleft/slidewidth)/2
  y_rotationcenter=(postop/slideheight)/2
  var rotationcenter=0+","+y_rotationcenter+","+x_rotationcenter
  document.getElementByIdx('rectid').style.left=posleft
  document.getElementByIdx('rectid').style.top=postop
  document.getElementByIdx('extrusionid').rotationcenter=rotationcenter
  rotateIE()
 }
 else {
  var timer=setTimeout("initIE()",200)
 }
}

function rotateIE() {
 i_angle1+=1
 if (i_angle1>=360) {
  i_angle1=0
 }
 if (i_angle1==127) {
  i_pic++
  if (i_pic>=slideurl.length) {i_pic=0}
  document.getElementByIdx('fillid').src=slideurl[i_pic]
 }
 document.getElementByIdx('rectid').style.rotation=i_angle1
 document.getElementByIdx('extrusionid').rotationangle=i_angle1+","+i_angle1
 var timer=setTimeout("rotateIE()",30)
}

function openpageIE() {
 if (slidetarget[i_pic]=="_blank") {
  window.open(slidelink[i_pic])
 }
 else if (slidetarget[i_pic]=="_self") {
  document.location.href(slidelink[i_pic])
 }
 else if (slidetarget[i_pic]=="_top" || slidetarget[i_pic]=="_parent") {
  top.location.href(slidelink[i_pic])
 }
}

if (ns6) {
 document.write("<span id='span0' style='position:absolute;top:0px;left:0px;filter:alpha(opacity=0);-moz-opacity:0'></span>")
    document.close()
 window.onload=initNS
}
if (ie5) {
 document.write('<div id="preloadimages" style="position:absolute;left:0px;top:-5px;visibility:hidden">')
 for (i=0;i<=slideurl.length-1;i++) {
  document.write('<span id="spn'+i+'" style="position:absolute;width:2px;left:0px;top:0px;">')
  document.write('<img src="'+slideurl[i]+'" name="n'+i+'">')
  document.write('</span>')
 }
 document.write('</div>')
    document.write('<v:'+imageform+' id="rectid"  style="position:absolute;top:0;left:0;width:'+slidewidth+';height:'+slideheight+'" onClick="openpageIE()">')
    document.write('<v:extrusion id="extrusionid" on="true" type="perspective" color="'+fillcolor+'" rotationcenter="0,0,0" backdepth="'+backdepth+'" diffusity="2.5" metal="true">')
  document.write('</v:extrusion>')
document.write('<v:fill id="fillid" opacity="100%" color="'+fillcolor+'" type="frame" src="'+slideurl[0]+'"/>')
   document.write('</v:'+imageform+'>')
 window.onload=initIE
   }
</script>

版权声明:本文为博主原创文章,未经博主允许不得转载。

基于单幅图像的2D转3D算法研究

最近,3D影片盛行,3D电视技术也层出不穷,3D技术在带给大家非凡的视觉冲击同时,也在告诉大家这背后隐藏了太多的商机。     目前的3D技术大体分为两种:软件技术和硬件技术。所谓硬件技术就是在拍摄影...
  • Trent1985
  • Trent1985
  • 2013年11月07日 13:21
  • 9393

js实现图片浮动

js实现图片轮播 #main{width:1024px; margin:20px auto;text-align:center;} #adv{width:200px;height:400px;pos...
  • woshituhao
  • woshituhao
  • 2015年08月12日 16:04
  • 300

怎样实现一个3D模型漂浮,上下浮动的效果

怎样实现一个3D模型漂浮,上下浮动的效果 效果如下图: 这是一个魔方,每个面都对应一个点击事件。 直接上代码吧 using UnityEngine; using System.Coll...
  • qq_26270779
  • qq_26270779
  • 2016年09月26日 17:31
  • 899

单张图像重建3D场景

看了andrew ng老师的lecture里面介绍自己的学生做了这方面的事情,我感觉超好玩,就想自己动手做试试看,毕竟是ML和AI的结合啊。     所以就去搜了篇论文《3D scene recons...
  • u011100984
  • u011100984
  • 2014年06月26日 15:29
  • 829

【3D图像生成算法的原理】

2.隐藏面消除 全屏幕Z-Buffer(深度缓存器)算法已成为图形学事实上的标准隐藏面消除算法,他虽然简单但存储要求很高。Z-Buffer算法可看作是工作在三维屏幕空间。每一个象素有一个二维屏幕空间...
  • gggg_ggg
  • gggg_ggg
  • 2015年01月07日 18:32
  • 2734

VR开发入门:3D图像的处理过程

在进行第一个VR应用开发之前,我们来看看几个重要的概念:   搭建场景:创建一个可视化、可交互、脚本驱动的虚拟现实环境。   立体渲染:用两个相机渲染场景分别表示用户的左右眼,然后通过Oc...
  • lalate
  • lalate
  • 2016年05月25日 15:33
  • 3967

利用jQuery实现图片信息的浮动显示

li{list-style:none;float:left;margin-right:10px;border:1px solid #AAAAAA}  #tooltip{position:absolu...
  • zsj523
  • zsj523
  • 2013年04月16日 20:34
  • 1576

3D图象算法(转)

可视化编辑器,alt+1到9键,切换到工具区,tab键,选择按钮,esc键,返回编辑  3D简介    我们首先从坐标系统开始。你也许知道在2D里我们经常使用Ren?笛卡儿坐标系统在平面上来识别...
  • gggg_ggg
  • gggg_ggg
  • 2015年04月07日 14:22
  • 2583

《CSS权威指南》学习记录——浮动

浮动关键字:float。可接受:left、right、none(默认值)。适用于所有元素。无继承性。 一个元素浮动时,其他元素会“围绕”该元素。 浮动元素不会与周围元素发生外边距合并。 如果要浮动...
  • gemingzhu
  • gemingzhu
  • 2016年06月10日 01:15
  • 510

h5学习笔记: 图片浮动提示

在锋利的jquery一书里面讲到浮动图片应该如何做。下面记录一下 在第二版的书里,少了一段代码。导致跟随不到。所以在css设置的时候需要”position”:”absolute”, 加入定位的属性这...
  • hero82748274
  • hero82748274
  • 2016年08月18日 20:43
  • 1363
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:3D浮动图像
举报原因:
原因补充:

(最多只允许输入30个字)