- 浏览: 102034 次
- 性别:
- 来自: 大连
文章分类
最新评论
package
{
import flash.display.Bitmap;
import flash.display.DisplayObject;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.geom.Matrix;
import flash.media.Sound;
import flash.net.NetStream;
import flash.net.URLRequest;
import flash.utils.Timer;
/**
* ...
* @author hacker47
*/
public class Main extends MovieClip
{
private var loader:Loader;
private var url:String = "1.jpg";
private var bitmap:Bitmap;
private var matrix:Matrix;
private var angle:Number = 0;
private var speed:Number = .05;
public function Main()
{
if (stage) init();
else
addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void {
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(new URLRequest(url));
}
private function onComplete(e:Event):void {
bitmap = e.target.content as Bitmap;
bitmap.x = (stage.stageWidth - bitmap.width) / 2;
bitmap.y = (stage.stageHeight - bitmap.height) / 2;
addChild(bitmap);
matrix = bitmap.transform.matrix;
//将图片旋转30度
//rotate(bitmap, 30, bitmap.width / 2, bitmap.height / 2, matrix);
stage.addEventListener(MouseEvent.MOUSE_MOVE, running1);
}
private function running(e:Event = null):void {
bitmap.x = (stage.stageWidth - bitmap.width) / 2;
bitmap.y = (stage.stageHeight - bitmap.height) / 2;
rotate(bitmap, angle, bitmap.width / 2, bitmap.height / 2, matrix);
angle += speed;
//trace(angle);
}
private function running1(e:MouseEvent):void {
bitmap.x = (stage.stageWidth - bitmap.width) / 2;
bitmap.y = (stage.stageHeight - bitmap.height) / 2;
var dy:Number = mouseY - (bitmap.y + bitmap.height / 2);
var dx:Number = mouseX - (bitmap.x + bitmap.width / 2);
//bitmap.rotation = Math.atan2(dy, dx) * 180 / Math.PI;
rotate(bitmap, Math.atan2(dy, dx), bitmap.width / 2, bitmap.height / 2, matrix);
}
private function rotate(dis:DisplayObject,rotation:int,px:int,py:int,srcMatrix:Matrix):void {
var tx:int = dis.x + px;
var ty:int = dis.y + py;
var m:Matrix = srcMatrix.clone();
m.translate(-tx, -ty);
m.rotate(rotation * 180 / Math.PI);
m.translate(tx, ty);
dis.transform.matrix = m;
}
}
}
{
import flash.display.Bitmap;
import flash.display.DisplayObject;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.geom.Matrix;
import flash.media.Sound;
import flash.net.NetStream;
import flash.net.URLRequest;
import flash.utils.Timer;
/**
* ...
* @author hacker47
*/
public class Main extends MovieClip
{
private var loader:Loader;
private var url:String = "1.jpg";
private var bitmap:Bitmap;
private var matrix:Matrix;
private var angle:Number = 0;
private var speed:Number = .05;
public function Main()
{
if (stage) init();
else
addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void {
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(new URLRequest(url));
}
private function onComplete(e:Event):void {
bitmap = e.target.content as Bitmap;
bitmap.x = (stage.stageWidth - bitmap.width) / 2;
bitmap.y = (stage.stageHeight - bitmap.height) / 2;
addChild(bitmap);
matrix = bitmap.transform.matrix;
//将图片旋转30度
//rotate(bitmap, 30, bitmap.width / 2, bitmap.height / 2, matrix);
stage.addEventListener(MouseEvent.MOUSE_MOVE, running1);
}
private function running(e:Event = null):void {
bitmap.x = (stage.stageWidth - bitmap.width) / 2;
bitmap.y = (stage.stageHeight - bitmap.height) / 2;
rotate(bitmap, angle, bitmap.width / 2, bitmap.height / 2, matrix);
angle += speed;
//trace(angle);
}
private function running1(e:MouseEvent):void {
bitmap.x = (stage.stageWidth - bitmap.width) / 2;
bitmap.y = (stage.stageHeight - bitmap.height) / 2;
var dy:Number = mouseY - (bitmap.y + bitmap.height / 2);
var dx:Number = mouseX - (bitmap.x + bitmap.width / 2);
//bitmap.rotation = Math.atan2(dy, dx) * 180 / Math.PI;
rotate(bitmap, Math.atan2(dy, dx), bitmap.width / 2, bitmap.height / 2, matrix);
}
private function rotate(dis:DisplayObject,rotation:int,px:int,py:int,srcMatrix:Matrix):void {
var tx:int = dis.x + px;
var ty:int = dis.y + py;
var m:Matrix = srcMatrix.clone();
m.translate(-tx, -ty);
m.rotate(rotation * 180 / Math.PI);
m.translate(tx, ty);
dis.transform.matrix = m;
}
}
}
发表评论
-
AS3 经典的代码库
2013-03-29 16:39 03D引擎 Papervision3Dhttp://b ... -
AS3开源资源整理
2013-03-29 16:38 0一个使用Stage3D APIs 实现 ... -
如何自定义VideoPlayer的全屏行为
2012-12-13 16:58 1312Flex4中增加了一个视频播放组件:VideoPlayer,相 ... -
代码改变影片剪辑亮度、色调、高级、透明度的方法
2012-12-03 08:41 867通过Color类来改变影片颜色 亮度:(设置影片明暗效果) ... -
as3自己写皮肤
2012-11-30 09:47 0<?xml version="1.0" ... -
AS3 正则表达式详解
2012-11-30 09:27 01.新建正则表达式,有两 ... -
TweenLite用法
2012-11-30 09:26 0TweenLite 是一个缓动的类 ... -
AS3位图的加载、拷贝、绘制
2012-11-30 09:26 0建Bitmap可以是使用Bitmap ... -
AS3中的反射
2012-11-30 09:25 659什么是反射 反射 (Reflection) 是指在程序在运行时 ... -
AS3文本操作
2012-11-30 09:03 1229设置文本框的边框、背景与前景色 默认状态下,文本框的边框和背景 ... -
as3日期格式化以及htmlText的安全转义类
2012-11-30 08:57 1036package org.juke{ ... -
Flash AS3.0关于TextField的过滤,HTML格式,对齐,换行等介绍
2012-11-30 08:56 1375过滤文字输入 TextField.restrict = &q ... -
AS3碎裂重组特效
2012-11-26 15:04 884碎裂指的是图片的碎裂 那我们要先做的是就是得到这张图片,在a ... -
Flash AS3.0实例---接近鼠标的图片缓动效果
2012-11-26 15:02 1179当鼠标移动到图片的一定位置时,图片会缓冲移动到鼠标位置,在现 ... -
flex air 启动本地应用程序
2012-11-26 09:23 854在air 2.0中,可以利用NativeProcess启动本地 ... -
as3打开和保存本地文件
2012-11-26 08:52 2395package { import flash.displa ... -
FLV视频类播放器全屏切换完整AS代码示例
2012-11-21 10:53 825function setFullScreen() { ... -
as3冒泡排序
2012-11-20 09:12 0<?xml version="1.0" ... -
Flex在Image组件使用蒙板
2012-11-16 17:34 0Flex在Image组件使用蒙板 1.Flex SDK3.0 ... -
Flex导入Excel文件示例
2012-11-16 17:33 01.SDK3.0 2.导入文件用FileFilter过滤。由于 ...
相关推荐
简单的html中js实现图片中心旋转
本文将详细讲解如何实现图片绕圈旋转以及加载GIF格式文件的功能。 首先,我们要了解WPF中的Image控件。Image控件是WPF用于显示图像的基本元素,它可以显示静态图像,如.jpg、.png或.bmp格式的文件。但是,WPF的...
本效果是基于HTML5,CSS3及JavaScript实现的,实现了移动端和...同时,以中心图片为圆点,四周图片环绕中心图片旋转,主要使用到的技术点在于z-index以及border-radius:50%,实现效果仅供参考(其中图片请自行替换)。
这可能涉及到计算实际的绘图坐标,因为图片的旋转中心可能不是其几何中心。 5. **性能优化**: 当处理大量或者复杂的动画时,需要注意性能问题。可以考虑使用硬件加速,通过在`CircleImageView`的构造函数中调用`...
// 设置旋转中心点为图片的中心 Point center = new Point(width / 2, height / 2); g.TranslateTransform(center.X, center.Y); g.RotateTransform(angle); // 旋转角度 // 将原始图像绘制到旋转后的Bitmap上...
该程序将图像围绕某⼀指定点旋转⼀定的⻆度。 如有疑问,请联系博主。
在Android开发中,实现图片绕Y轴持续旋转的效果通常涉及到动画这一重要概念。动画是提升用户体验、增加应用视觉吸引力的关键元素。在这个特定的场景中,我们关注的是2D平面上的3D旋转效果,即让图片围绕Y轴进行连续...
HTML图片环绕旋转是一种创新的网页设计技术,它利用CSS3的特性来实现图片在页面上以某种特定方式旋转,形成类似相册的效果。这个技术可以让用户以动态的方式浏览一组图片,提升用户体验,使得网页设计更加生动有趣。...
在本文中,我们将深入探讨如何使用Silverlight技术实现图片绕椭圆路径进行旋转的效果,同时涵盖自动和手动拖动两种模式。Silverlight是Microsoft推出的一种富互联网应用程序(RIA)平台,它提供了丰富的图形、动画和...
环绕旋转轮播是一种常见的网页动态效果,用于展示一组图片或内容,通过连续的环绕旋转来吸引用户的注意力。这种效果主要依赖于CSS(Cascading Style Sheets)技术来实现,特别是CSS3中的过渡(transition)、动画...
1、 halcon的9点标定就不多说了,很多人在旋转中心上求不准,或者旋转中心求出来后不知道具体用法,本示例完整演示旋转中心的求证,可视化演示旋转中心的验证。 2、 里面的示例图片是项目调试实际的图片,在精度...
2. 创建Matrix对象:Matrix对象用于保存变换矩阵,调用Matrix.setRotate()设置旋转角度,其中第一个参数为旋转角度,第二个参数和第三个参数为旋转中心点(默认为图片的左上角)。 3. 应用变换:调用Bitmap.create...
需要注意的是,由于图像的中心点通常不是其物理像素中心,所以在实际应用中可能需要对图像进行平移,使其中心点与旋转中心对齐,然后再进行旋转操作。最后,如果旋转角度不是90度的倍数,新图像的尺寸可能与原始图像...
`images`目录则存放了星系中的图片资源,如星球图像和光效图片。最后,`index.html`文件是项目的主页面,它引入了CSS样式表,并用HTML结构定义了页面布局,包括星系元素的位置和交互事件。 总的来说,这个CSS3星系...
图像旋转通常是指改变图像的方向,使其绕着一个固定点(通常是图像中心)按一定角度转动。在编程中,这通常通过矩阵变换来实现,涉及到复杂数学计算,包括向量旋转和平移。易语言虽然简化了语法,但依然可以支持这样...
实现图片360度球型3D旋转 [注意:本资源来自网络,如有侵权,请联系我删除,谢谢。]
3. **定义旋转中心**:通常,旋转的中心点是PictureBox的中心。我们可以通过PictureBox的Width和Height属性计算出来。 ```csharp int centerX = pictureBox.Width / 2; int centerY = pictureBox.Height / 2; ``` ...
这个例子中,当用户将鼠标悬停在图片上时,图片会以Y轴为中心旋转180度,整个过程会平滑地在0.5秒内完成。你可以根据实际需求调整旋转角度、过渡时间和透视距离,以达到理想的效果。 在实际项目中,可能还需要考虑...
而图片旋转则是指图片绕着某个轴心进行转动,同样可以使用CSS3的`rotate()`函数实现。例如,要让图片每秒旋转360度,可以这样写: ```css .image { animation: rotate 2s linear infinite; } @keyframes rotate {...
3. **设置旋转中心**:为了使图片绕其中心点旋转,我们需要找到图片的中心坐标。这可以通过`QPixmap`的`rect()`方法获取图片的矩形区域,然后计算中心点。 4. **创建旋转变换**:使用`QTransform`创建一个旋转变换...