问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我想用flash做一个交互式动画,用鼠标拖动一个三角形,当三角形靠近参考线时能够吸附捕捉到参考线上

发布网友 发布时间:2023-03-27 23:15

我来回答

2个回答

热心网友 时间:2023-10-24 23:30

AS2.0还是AS3.0的?

你应该把这些网格的辅助线转为影片剪辑——横线是一个影片剪辑,,给个链接名比如叫Hengxian,竖线是另一个影片剪辑,,给个链接名比如叫Shuxian。

然后遍历场景上的横线与竖线,当三角形的坐标(注册点)靠近的时候,就自动把坐标改成横线或竖线的值……

有点难说明。

你可以加我QQ 2656958,我帮你做个简单的列子给你参考。

//使用以下代码的前提条件是:你的场景上已经有三角形MC和所有网格线条的MC,三角形的实例名是mc,网格线不需要实例名,但是需要有库里的链接类,竖线的链接类叫Shuxian,横线的链接类叫Hengxian
var mc_x,mc_y,mouse_x,mouse_y:Number;
//开始拖动MC的时候是否让MC的注册点移到鼠标上
var lockCenter:Boolean = true;//true or false
//自动吸附的磁力范围
var mf:Number = 10;
//储存竖线索引的数组
var sxArr:Array = new Array();
//储存横线索引的数组
var hxArr:Array = new Array();
addChild(mc);//mc是你的三角形的实例名
for (var i:int = 0; i < this.numChildren - 1; i++)
{
var xian:MovieClip = MovieClip(this.getChildAt(i));
if(xian.constructor == Shuxian)//根据链接类的名称来判断它是横线还是竖线
{
sxArr.push(xian);
}
else
{
hxArr.push(xian);
}
}
//因为不能通过mc.startDrag来实现这个吸附效果,所以必须自己写拖动动作
mc.addEventListener(MouseEvent.MOUSE_DOWN,mcSelected);
function mcSelected(e:MouseEvent)
{
if(lockCenter)
{
mc.x = mouseX;
mc.y = mouseY;
}
mc_x = mc.x;
mc_y = mc.y;
mouse_x = mouseX;
mouse_y = mouseY;
stage.addEventListener(MouseEvent.MOUSE_MOVE,moveHandler);
stage.addEventListener(MouseEvent.MOUSE_UP,stopHandler);
}
function moveHandler(e:MouseEvent):void
{
mc.x = mc_x + mouseX - mouse_x;
mc.y = mc_y + mouseY - mouse_y;
for each(var shuxian in sxArr)
{
//进入竖线磁力范围的时候开始吸附
if(Math.abs(mc.x - shuxian.x) <= mf)
{
mc.x = shuxian.x;
break;
}
}
for each(var hengxian in hxArr)
{
//进入横线磁力范围的时候开始吸附
if(Math.abs(mc.y - hengxian.y) <= mf)
{
mc.y = hengxian.y;
break;
}
}
e.updateAfterEvent();
}
function stopHandler(e:MouseEvent)
{
stage.removeEventListener(MouseEvent.MOUSE_MOVE,moveHandler);
stage.removeEventListener(MouseEvent.MOUSE_UP,stopHandler);
}

热心网友 时间:2023-10-24 23:31

网上有flash教程的那个更好一些!追问网上flash教程我有找过,具体问题没有,如果你有链接能否给个?或者我还是期待高手的解答吧!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
街头篮球手游中锋攻略汇总 C位攻略大全 街头篮球手游中锋有什么技巧 中锋C技巧详解 php一个表单提交数据怎么区分开,隐藏域可以吗,如果可以怎么用。 梦见牙掉光了什么预兆 梦见牙齿掉完了是什么征兆 梦见牙齿全掉了是什么预兆 梦见一口牙全部掉了是什么预兆 教师年度考核不认课的领导班子成员,干的工作不少,怎样考核办法公平... 湖北省郧西县义务教育学校绩效工资实施办法绩效工资总量和水平的... 事业单位年底是否有绩效奖金的 flash可以作出交互式非动画多媒体视频宣传光盘吗? 我想在一段FLASH影片中制作一种交互功能。 主要就是在影片播放中途出现一道选择题以及四个选项,通过点击 超频三 显卡伴侣 V9 辅助显卡散热 PCI位风扇 机箱散热 梦见晚上做恶梦死人的预兆 WPS的宏在哪里? wps宏在哪? 网卡为什么有时有网有时没网 野生橡子有毒吗,橡子果有毒吗 中国学位认证为什么查不到自己学校 《钢铁是怎样炼成的》读后感个人感受 《钢铁是怎样炼成的》读后感及感悟 元毛的窗花怎么贴 到乃的结构到乃的结构是什么 倚扇的解释 北京铁路报名考试时上传照片尺寸不对会有影响吗 湖北专升本报名照片尺寸不对 甄嬛传中甄嬛生下了哪三个孩子? 江湖问路不问心问心问得几路行是什么意思 江湖问路不问心问心问得几路行的意思 给坐牢回来的人送什么礼物合适? 怎么找耐克下团购单 《简书》添加背景音乐方法 在简书写字时听什么音乐 蒸生蚝蒸多长时间才能熟? 怎么添加 添加微信好友的步骤 怎么添加 添加微信好友的步骤 请问一下丙烯有毒吗,大家要注意了 快递退回去了还可以要求退款吗 2020武汉倒春寒什么时候结束湖北天气预报 炫舞时代舞池双人舞怎么加入 QQ怎么添加银行卡帐户。 我 济宁银行的银行卡可以冲q币吗 怎么把Microsoft Excel 工作表中含有某几个字的信息全部筛选出来删除?? 2个问题:1、EXCEL复制和移动时提示“复制工作表中字符数多余255个,怎么删除这些字符?2、退出表格出错 如何删除一个工作簿中,每个工作表里相同的内容? 转斗千里是什么意思? 五十天宝宝鼻塞,不流涕。喉咙有痰怎么弄 粉刺食疗方法 案剑瞋目的解释 苹果手机照片如何进行排序? 秉公办理的解释