FlashAS3:绝对坐标和相对坐标
点评:一个程序员写的飞机游戏,通常看不到UI界面,和每个移动控件并通过代码实现图像的位置,很多球队把数据以艺术的任务,艺术在地图上的位置开枪,给程序员。通常在这里有两个模式,一个绝对坐标,它适用于屏幕尺寸。一个程序员写的飞机游戏,通常看不到UI界面,和每个移动控件并通过代码实现图像的位置,很多球队把数据以艺术的任务,艺术在时间地图将采取的立场,和程序员通常有两种类型。模式,一为绝对坐标,适用于屏幕不会改变大小,长度和宽度和位置都是一样的,但这一模式的程序通常是很小的。相反,它是相对坐标。这对于客户端的Flash版本来说非常简单。那么这个坐标是怎么建立起来的,它折磨我很久了。
首先,它是直接设置的。
MC1。x = y =;MC1;
这1设置,动态AS3新出的MC是没有宽度,没有高度,和他的长和高本身是不确定的,如果你把一个300x200图片中,那么他的W和H将成为300和200,如果你添加了一个400x100图片,W和H将成为他400不变,这是相对复杂的多的相对坐标,如我想要的MC完全居中怎么办
如果阶段1000的宽度,发挥MC1。x =(1000-400) / 2;看,中间点的原理,我们必须先阶段的中心,它是把一些1000 / 2结果500很容易但X到舞台中心不是X是左上角,所以答案再减400 / 2相当于MC1然后离开自己的位置,充分发挥,那么答案是1000 / / 2公式2-400的演变出来的。
因此,中心的答案似乎已经出来了(阶段。stagewidth MC。宽度) / 2,坐标必须是最中间,但是这是真的吗如果舞台发生了变化呢如果MC的大小改变了怎么办他还在中间吗这仍然是思考的方式。
我也很理想的认为这是最好的方式,但是练习告诉我,我错了,当我需要继续增加原来的形象在MC,和图片应居中,这幅画应该在MC的范围内,这幅画可能大于MC或小于MC。让我们看看情况是什么。
如果是在MC1和MC2 MC1大于mc2,好mc2。x =(MC1。width-mc2。x)/ 2;很好,很明显,他们是对的,和MC1不需要移动的舞台上。但是还有什么其他的吗该算法也可以得到自己的坐标,但这一次mc1.width并非原创,因为MC2宽度大于它,所以显然是错误的,这是0大的和小的图片将左对齐,和舞台上的MC1 MC1位置集中更新,但有错的一塌糊涂,你必须重新调整原始图像,2个文件将来回的麻烦,很好,很容易忘记,这是图像的结果,穆村很痛苦的错位。你越是想它,更形象、更麻烦。
这时,很多程序员都不会跳出去。他们总是想着如何修理它,然后一直修理它。事实上,这是错的。我们都错了。有时我们解决不了问题。如果我们改变主意,如果我们改变主意,将会发生什么你想过吗改变之后就这么简单,让我们来看看原理。
首先,我们将检查他的大小,然后计算中心,但大小会改变。我们不能照顾外面的人。我们可以不关心外面。答案是肯定的。事实上,在任何情况下尺寸变量有点总是在舞台的中心,该中心是MC,但宽度尺寸是变化的,如何使中心不变,当我想到一个关键词(注册)在FlashIDE,也许这个词是非常熟悉的,但对代码可能很难想到这个关键词,所以我们需要做的是让中心点MC总是在这0点。也就是说,00点是中间和左上角之间!这个时候我们再看一遍吧
MC1。x =阶段。stagewidth / 2;
MC2。x = -(MC2。宽度 / 2);
现在让我们看看,不管内外是大还是小,总是直接向左边移动。首先,我们必须确认我们的中心。然后我们把中心放在舞台中央,完成外美。当然,你可以用左对齐和右对齐。既然你设定的00点的位置,让你的形象和00对准第一和00去其他地方,所以迭代是不容易犯错误。这是个很简单的问题,因为在错误的时间开始,所以更多的麻烦,很多时候问题是相似的,我们必须注意,这是一个深刻的体会,所以它发布!最后,我对复制这个著名的地方很感兴趣,谢谢你。谢谢你的支持!谢谢您.