- 浏览: 1450998 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (564)
- 算法 (7)
- 流金岁月 (1)
- Javascript (30)
- actionscript (108)
- as3.0 game (14)
- flex (84)
- fms2 (27)
- 正则表达式 (7)
- 开源组件代码(as3.0) (1)
- Pv3d (13)
- Cairngorm (4)
- vbs (54)
- VB程序设计 (26)
- 计算机应用与维护 (4)
- 职场实用穿衣技巧 (3)
- 历史风云 (15)
- 淡泊明志,宁静致远 (12)
- 情感 (26)
- 杂谈 (41)
- 越南风 (14)
- DirectX (9)
- Dev-cpp (11)
- 回望百年 (2)
- 建站经验 (2)
- Python (24)
- 网络赚钱 (4)
- php (2)
- html (1)
- ob0短址网 (1)
- ob0.cn (1)
- wordpress (1)
- pandas logistic (1)
- haxe (1)
- opencv (1)
- 微信小程序 (3)
- vue (3)
- Flutter (1)
最新评论
-
GGGGeek:
第一个函数滚动监听不起作用,onPageScroll可以
微信小程序--搜索框滚动到顶部时悬浮 -
naomibyron:
解决办法:工具 -> 编译选项 -> 编译器 ...
dev-c++中编译含WINSOCK的代码出现错误的解决方法 -
haichuan11:
这个…… 代码不全真的是让人很憋屈的感觉啊
actionScript 3.0 图片裁剪及旋转 -
chenyw101:
老兄能留个QQ号吗?具体的我有些东西想请教下你
用VB制作网站登陆器 -
yantao1943:
貌似有点问题,只派发一次事件啊
使用ActionScript 2.0或ActionScript 3.0处理音频文件的提示点(cue
涂抹原理
橡皮擦原理
import flash.geom.Point;
//产生多个图形
function crtShapes(_num:Number) {
for (var i:Number = 0; i<_num; i++) {
var line:MovieClip = _root.createEmptyMovieClip("line"+i, _root.getNextHighestDepth());
line.color_num = random(0xFFFFFF);
line.f_color_num = random(0xffffff);
line._rotation = random(360);
/**/
line.onEnterFrame = function() {
this._rotation++;
};
line._x = random(Stage.width);
line._y = random(Stage.height);
line.points = new Array();
crtDots(line, 10);
}
}
//产生每个图形的绘图坐标点序列
function crtDots(holder:MovieClip, _num:Number) {
var r:Number = 20+random(10);
var da:Number = Math.PI*2/(_num-1);
holder.points.push(new Point(r*Math.sin(da), r*Math.cos(da)));
for (var i:Number = 1; i<_num; i++) {
var temp_r:Number = r+random(5);
var ps:Point = new Point(temp_r*Math.sin(da*i), temp_r*Math.cos(da*i));
holder.points.push(ps);
}
drawShape(holder);
}
//绘制图形
function drawShape(_mc:MovieClip) {
_mc.clear();
_mc.lineStyle(1, _mc.color_num, 100);
_mc.beginFill(_mc.f_color_num, 50);
_mc.moveTo(_mc.points[0].x, _mc.points[0].y);
for (var i:Number = 1; i<_mc.points.length; i++) {
_mc.lineTo(_mc.points[i].x, _mc.points[i].y);
}
}
//利用mc1去涂抹mc2
function leave(mc1:MovieClip, mc2:MovieClip) {
if (mc1.hitTest(mc2)) {
//生成全局坐标序列pss
var c_pos:Point = mc1.pos.clone();
var pss:Array = new Array();
for (var i = 0; i<mc2.points.length; i++) {
var obj:Point = mc2.points[i].clone();
mc2.localToGlobal(obj);
pss.push(new Point(obj.x, obj.y));
}
//检查距离,同时生成被修改id序列
var change_id:Array = new Array();
for (var i = 0; i<pss.length; i++) {
var dis:Number = Point.distance(c_pos, pss[i]);
if (dis == 0) {
dis = .1;
}
if (dis<mc1.r) {
change_id.push(i);
if (mc1.type == "out") {
var rx:Number = (pss[i].x-c_pos.x)/dis;
var ry:Number = (pss[i].y-c_pos.y)/dis;
pss[i].x += (mc1.r-dis)*rx*mc1.a/5;
pss[i].y += (mc1.r-dis)*ry*mc1.a/5;
} else if (mc1.type == "in") {
var rx:Number = (pss[i].x-c_pos.x)/dis;
var ry:Number = (pss[i].y-c_pos.y)/dis;
pss[i].x -= (mc1.r-dis)*rx*mc1.a/5;
pss[i].y -= (mc1.r-dis)*ry*mc1.a/5;
} else if (mc1.type == "rotate") {
var angle:Number = Math.atan2(pss[i].x-c_pos.x, pss[i].y-c_pos.y);
var d_angle:Number = (mc1.r/dis-1)*(1-mc1.a)*.05+.02*mc1.a;
pss[i].x = c_pos.x+dis*Math.sin(angle+d_angle);
pss[i].y = c_pos.y+dis*Math.cos(angle+d_angle);
} else if (mc1.type == "rotate2") {
var angle:Number = Math.atan2(pss[i].x-c_pos.x, pss[i].y-c_pos.y);
var d_angle:Number = -(mc1.r/dis-1)*(1-mc1.a)*.05-.02*mc1.a;
pss[i].x = c_pos.x+dis*Math.sin(angle+d_angle);
pss[i].y = c_pos.y+dis*Math.cos(angle+d_angle);
}
//update temp_mc
temp_mc.moveTo(pss[i].x, pss[i].y);
temp_mc.lineTo(pss[i].x, pss[i].y+.5);
}
}
//将被改变的关键点坐标装化到mc2的local坐标,并回填到mc2的points中去
if (change_id.length) {
for (var i = 0; i<change_id.length; i++) {
var obj:Point = pss[change_id[i]].clone();
mc2.globalToLocal(obj);
mc2.points[change_id[i]] = new Point(obj.x, obj.y);
}
drawShape(mc2);
}
}
}
//涂抹初始化
function initDoub(_type:String, r:Number, a:Number) {
var doub:MovieClip = _root.createEmptyMovieClip("doub", _root.getNextHighestDepth());
doub.type = _type;
doub.r = r;
doub.a = a;
doub.lineStyle(r*2, 0, 20);
doub.lineTo(.5, 0);
doub.startDrag(true);
doub.onPress = function() {
mouse_down = true;
};
doub.onRelease = function() {
mouse_down = false;
temp_mc.clear();
};
doub.onEnterFrame = function() {
if (mouse_down) {
this.pos = new Point(this._x, this._y);
temp_mc.clear();
temp_mc.lineStyle(2, 0xFF0000);
for (i in _root) {
if (typeof (_root[i]) == "movieclip" && _root[i] != doub) {
leave(this, _root[i]);
}
}
}
};
}
//生成待变形形状
crtShapes(50);
//初始化涂抹工具 类型:_type:in/out/rotate/rotate2 半径:r 强度:a
initDoub("rotate", 100, .5);
//临时图层,显示被涂抹的关键点
_root.createEmptyMovieClip("temp_mc", _root.getNextHighestDepth());
发表评论
-
haXe是什么?
2016-01-04 10:50 1075haXe是什么? haXe是一种编程语言,官方网站在 ... -
用EA类图生成AS3代码
2008-10-15 16:18 2723EA(Enterprise Architect)是支持多种流 ... -
actionScript 3.0 图片裁剪及旋转
2008-10-10 12:54 5960package com.wdxc { /** ... -
Flash(AS3)读取Excel文件
2008-10-09 13:29 5188var excelXml:XML; var loader=ne ... -
AS3 Loading的制作方法
2008-10-09 13:28 6080AS2的时候做LOADING有很多种方法,做起来也得心应手可是 ... -
让"Flash" 写文件(AS3)
2008-09-11 16:23 1803目前,出于安全考虑Flash不支持写文件的操作,在AS3的A ... -
AS3 中的 拖动 及 碰撞 检测
2008-09-11 16:11 2943没有press和release事件 hitTest()被分尸 ... -
As和js通信问题完全解析(解决addcallback失效的问题)
2008-09-11 16:10 3661as和js通信最早用的是fscommand,这个我就不说了,老 ... -
Flash CS3制作Fla形式的组件
2008-06-16 14:45 1396本文为大家介绍如何制作Flash CS3中的[*.fla]形 ... -
AS3图像处理之剪裁、动态选取
2008-06-15 23:25 2257和师傅写C#写的思维混乱,方法变量几乎第一反应就是大写,习惯都 ... -
从界面入手 划分类
2008-06-15 19:25 1291如何将一个项目细化成各个类呢? 1 从一个项目的界面入手,按照 ... -
AS3-DisplayEffect组件
2008-06-14 20:40 2084[AS3]DisplayEffect组件【组件版本】:0.5【 ... -
KTooltip 工具提示组件
2008-06-14 20:38 1040发布一个小工具KTooltip 。这是0.9beta版,出发日 ... -
AS3.0写的一个滚动条【缓动效果】
2008-06-13 16:10 6395package { import flash.d ... -
一个简单的文本滚动条类 as3
2008-06-13 16:04 4399最近一直做会议与AS3有关项目今天花了点时间写了一个可以选择套 ... -
自定义滚动条类
2008-06-13 16:01 2095在平常的开发中,经常需要用到滚动条,今天将滚动条类整理了下,有 ... -
AS3加载机制
2008-06-13 15:03 2219摸了好一阵子,才弄明白AS3.0的加载机制.还是坚持自己的原则 ... -
写了一个Flash的Transition
2008-06-11 10:36 1753写了一个Flash的Transition package { ... -
JavaScript与ActionScript函数相互调用
2008-06-06 15:07 22841、在JavaScript中调用Flex( ... -
传参之事件代理
2008-06-05 10:23 1113有时候我们在调用事件侦听器的时候,需要给它传进相应的参数,这个 ...
相关推荐
总结起来,"代码变形乱序demo"是一个展示如何通过对源代码进行变形和乱序处理来增强其安全性的实例。change.exe和source.exe这两个文件为我们提供了一个直观的学习平台,通过对比分析,可以深入理解这两种技术的实现...
This packet contains the C source for a mixed-radix FFT routine. It performs a fast discrete Fourier transform (FFT) of a complex sequence, x, of an arbitrary length, n. The output, y, is also a ...
`bin`目录可能包含编译后的Flex应用或库,而`examples`可能存放了展示变形效果的实例代码。`source`目录则可能包含源代码,这对于理解变形效果的实现机制非常有帮助。 深入学习Flex变形效果,你需要掌握...
- 音频系统(AudioSource和AudioClip):播放和管理音频资源,实现钢琴音效的播放。 - 键盘输入监听:捕捉键盘按键,根据键位触发相应的音符播放。 - 自动演奏:通过编程生成音乐序列,实现自动演奏功能。 这些...
你可以尝试为沙发添加简单的动画,如坐垫的弹性变形,以增加互动性。 7. **学习资源**:在学习过程中,参考“新建文件夹 (3)”内的文件,可能包含步骤截图、模型文件或说明文档,这些都是深入理解教程的重要辅助...
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它包含了大量的图像处理和计算机视觉的算法,广泛应用于图像分析、机器学习、人脸识别等领域。OpenCV3是该库的一个重要版本,它在前一版本...
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,包含了众多图像处理和计算机视觉的算法。在相机标定中,OpenCV提供了丰富的函数和工具,使得开发者能够方便地进行标定工作...
在本文中,我们将深入探讨Silverlight技术,特别是关于图片缩放的实现实例。Silverlight是Microsoft推出的一个跨浏览器插件,用于创建丰富的交互式Web应用程序,具有强大的图形处理能力和多媒体支持。图片缩放功能在...
5. **流输出阶段**:新引入的流输出阶段允许开发者将渲染结果作为输入数据反馈给后续的几何处理,实现复杂的几何变形和后处理效果。 6. **多线程支持**:DirectX 10鼓励并行处理,支持在多个线程上执行渲染任务,以...
Java笔记编辑查看器,变形的构造函数。把File对象也放该函数内,以使引用FileIO对象的类更整洁,因为每次文件目录树收起时也触发valueChanged函数,所以此处加if判断是否是收起操作。该判断条件来源与打印((JTree) e...
该压缩包文件“arc_source22_UDF...总之,这个压缩包提供了一个关于如何使用UDF实现刚体运动和动网格的实例,对于理解和开发此类应用具有很高的参考价值。学习和理解这些内容,有助于提升在CFD领域的编程和建模能力。
**OpenCV**(Open Source Computer Vision Library)是一个开源计算机视觉库,广泛应用于图像处理、视频分析和模式识别等领域。OpenCV 2.4.3 版本在原有基础上进行了更新和优化。 ##### 1.1 Linux环境下的安装 - **...
本实例通过使用CSS3的变形(transform)、定位(positioning)和阴影(shadow)属性,以及伪元素(pseudo-elements)等特性,将文字呈现出立体、多层次的效果。以下是对实现这个效果的详细解析: 1. **背景设置**:...
标题《基于开源工具的数据分析》和描述《数据之魅:基于开源工具的数据分析 data-analysis-with-open-source-tools》指出了文档的主题和焦点是数据科学领域中使用开源工具进行数据分析的实践和方法。这里提到的开源...
- **单源最短路径**(Section 6.4 Single-Source Shortest Path):求解从单个源节点到图中所有其他节点的最短路径问题的算法。 - **所有对最短路径**(Section 6.5 All Pairs Shortest Path):求解图中任意两点...
4. **添加实例**:将创建的动画实例添加到舞台或者显示列表的某个层次。 5. **控制动画**:可以随时启动、停止、反转或调整动画,以适应用户交互或其他事件。 通过深入学习和实践,开发者可以充分利用GreenSock AS3...
Zerene Stacker v1.04 64bit版是FOSI(Free and Open Source Software Initiative)发布的一个版本,它提供了一个直观且功能强大的平台,用于处理一系列相同主题的照片,通过计算每张图片的差异,将最佳细节整合到...
- 使用`Bitmap`的`createBitmap(Bitmap source, int width, int height, Bitmap.Config config)`方法创建缩放后的位图,避免在缩放过程中频繁加载原图,提高性能。 - 使用`Bitmap.createBitmap()`和`Canvas`进行...