flash动态缓冲图片导航制作详解
The buffer formula is very useful in making special effects.The famous Samsung navigation menu uses this formula. Manywebsites are now in the limelight, and buffer navigation is oneof the highlights. This article takes the navigation of aGermanwebsite as an example to explain the manufacture of buffernavigation. This effect is done by me and the solvent. Heprovides the coordinate algorithm, and I provide the scalingalgorithm.
This example demonstrates the effect
The part of the mouse across the picture will become largerProduction ideas
Picture zoom control
Using the buffer formula to set the zoom ratio of the picture,if the mouse glides through a picture, zoom in 1.8 times. Ifthe serial number of the other picture is 1 different from thatof the picture, the picture on both sides of the picture ismagnified 1.4 times, and the other is of the original size.Picture coordinate control
When a picture is enlarged, the coordinates of the adjacentpictures are equal to the coordinates of the image, plus halfof the width of the two pictures, so that the pictures arearranged without distance.
Line and text control
Lines are implemented using line drawing functions, and thecoordinates and scale of text are the same as those of thecorresponding pictures.
Making process
1, startFlash, create anewmovie, set the size of 600px*200px.Get ready, like the material in the picture. The actual namesof the pictures are zjs0 to zjs4, and the literal names of thetext are Z0 to z4.
The intermediate image coordinates set (300130) , select all thepictures, arranged according to CTRLK panel set to top out, makethe same picture, y coordinates, X coordinate picturecontrolled by AS. In the same way that y coordinates the samecharacters, and adjust the spacing of text and pictures.2, add the following code on the first frame in the main sceneX / / get intermediate image coordinates
For (VaR = I = 0; i<5; i++) {
This["ZJS", +i] .n = i;
Each picture / / MC define a variable
This["ZJS", +i] .onRollOver = function () {
Control = true;
Mouse over the picture is true / /
} ;
This["ZJS", +i] .onRollOut = function () {
Control = false;
The picture is false when the mouse out of /
} ;
}
OnEnterFrame = function () {
For (VaR = k = 0; k<5; k++) {
This["Z", +k] ._x = this[, "ZJS", +k] ._x;
X/text should be equal to the X coordinate coordinate pictureThis["Z", +k] ._xscale = this[, "ZJS", +k] ._xscale;
This["Z", +k] ._yscale = this[, "ZJS", +k] ._yscale;
/ / text and pictures the same zoom ratio
}
If (control) {
Mouse_in () ;
} else {
Mouse_out () ;
}
/ / call the function condition of true or false when} ;
/ / coordinate setting function
Function, setX () {
For (VaR k = -2; k<3; k++) {
This["ZJS" + (k+2) ] ._x = myx+this["ZJS" +2] ._width*k;In the middle picture is / / no distance arrangement
}
For (VaR k = Number (temp 1) +1; k<5; k++) {
//temp1 is the variable value under the maximum scaled picture
this was mc1 = ["zjs' + k] ;this was mc2 = ["zjs' + (k - 1) ] ;
/ /此图片右边的其它图片mc1. _x = mc2. _x + (mc2. _width + mc1. _ width) / 2 - 1;/ /设置这些图片的x坐标, 1为消除图片间的空隙
}for (where k = number (temp1) - 1; k > 1; k) {this was mc1 = ["zjs' + k] ;this was mc2 = ["zjs' + (k + 1) ] ;mc1. _x = mc2. _x - (mc2. _width + mc1. _ width) / 2 + 1;}
/ /缩放比例最大的图片的左边的图片的x坐标设置myline () ;
/ /图片下方的线条
}
/ /比例缩放函数function move _ scale (x, obj) {speed = (x - obj. _ xscale) *.65 + speed * 0.6;obj. _ xscale + = speed;obj. _ yscale + = speed;
/ /缓冲公式, x为图片的缩放比例, obj为mc}
/ /鼠标滑过图片时, 图片的缩放、 x坐标设置函数function mouse _ () {for (i = 0; i < 5; i + +) {where mc = this ["zjs" +] ;
/ /获得实例名i f (mc.hittest (_xmouse, _ ymouse, true)) {move _ scale (180, mc) ;
/ /如果鼠标位于图片的上方, 图片放大1.8倍t emp 1 = mc.n;
/ /把此图片下的变量赋给变量t emp 1
} else if (math.abs (mc.n-temp1) = = 1) {move _ scale (140, mc) ;
/ /两侧的图片比例放大1.4倍
} else {move _ scale (100, mc) ;
/ /其它的图片为原始大小
}
}setx () ;
/ /设置图片的x坐标
}
/ /鼠标移出图片时, 图片的缩放、 x坐标设置函数function mouse _ out () {for (i = 0; i < 5; i + +) {
move _ scale (100, this "zjs" [+]) ;
/ /缩放比例为1,恢复原始大小
}setx () ;
/ /坐标复原
}
/ /线条函数function myline () {createemptymovieclip ("line", 1) ;
/ /创建一个空影片with (line) {linestyle (0. 1, 0xff9933, 100) ;moveto (zjs0. _ x - zjs0. _ width / 2, zjs0. _y + 10) ;lineto (zjs4. _ x + zjs4. _ width / 2, zjs4. _ y + 10) ;/ /图片下方水平的直线moveto (zjs0. _ x - zjs0. _ width / 2, zjs0. _y + 5) ;
lineto (zjs0. _ x - zjs0. _ width / 2, zjs0. _y + 15) ;/ /右边垂直的直线moveto (zjs4. _ x + zjs4. _ width / 2, zjs4. _ y + 5) ;lineto (zjs4. _ x + zjs4. _ width / 2, zjs4. _ y + 15) ;/ /左边垂直的直线
}
}
按ctrl + enter测试,本例制作完成.掌握原理后,加上好的创意,相信你能做出更好的特效.
资料引用: http: / / www.knowsky.
With / 340840.html
月神科技是由江西月神科技有限公司运营的一家自营云产品的IDC服务商,提供香港安畅、香港沙田、美国CERA、成都电信等机房资源,月神科技有自己的用户群和拥有创宇认证,并且也有电商企业将业务架设在月神科技的平台上。本次带来的是全场八折促销,续费同价。并且上新了国内成都高防服务器,单机100G集群1.2T真实防御,上层屏蔽UDP,可定制CC策略。非常适合网站用户。官方网站:https://www.ysi...
Hostodo近日发布了美国独立日优惠促销活动,主要推送了四款特价优惠便宜的VPS云服务器产品,基于KVM虚拟架构,NVMe阵列,1Gbps带宽,默认分配一个IPv4+/64 IPv6,采用solusvm管理,赠送收费版DirectAdmin授权,服务有效期内均有效,大致约为7折优惠,独立日活动时间不定,活动机型售罄为止,有需要的朋友可以尝试一下。Hostodo怎么样?Hostodo服务器好不好?...
WordPress专业外贸企业网站搭建模版,特色专业外贸企业风格 + 自适应网站开发设计 通用流行的外贸企业网站模块 + 更好的SEO搜索优化和收录 自定义多模块的产品展示功能 + 高效实用的后台自定义模块设置!采用标准的HTML5+CSS3语言开发,兼容当下的各种主流浏览器: IE 6+(以及类似360、遨游等基于IE内核的)、Firefox、Google Chrome、Safari、Opera...