在as3中缩放精灵?

发布于 2024-12-11 17:58:32 字数 125 浏览 0 评论 0原文

我有一个 as3 代码中的精灵,我想输入它的高度来调整它的大小,如何相应地缩放宽度?

sprite.height = 200;
sprite.width = ??

谢谢

I have a sprite in as3 code, I want to enter its height to resize it, how can I scale the width accordingly?

sprite.height = 200;
sprite.width = ??

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

仅此而已 2024-12-18 17:58:32

如果你想缩放精灵,为什么不使用缩放方法呢?

sprite.scaleX = 2;
sprite.scaleY = 2;

否则,您将需要应用一个比率,例如宽度/高度。

假设你的精灵的宽度是:150,高度:100。这意味着宽度是高度的 1.5 倍。

// calculate ratio of scale factor
var ratio:Number = sprite.width / sprite.height; // 1.5

// apply ratio your sprite's original dimensions:
sprite.height = 200;
sprite.width = sprite.height * ratio; // 300

这也可以使用矩阵变换来完成。

If you want to scale a sprite, why not use use scale methods?

sprite.scaleX = 2;
sprite.scaleY = 2;

Otherwise, you will need to apply a ratio, such as width / height.

Say your sprite was width: 150, height: 100. That means width is 1.5 times height.

// calculate ratio of scale factor
var ratio:Number = sprite.width / sprite.height; // 1.5

// apply ratio your sprite's original dimensions:
sprite.height = 200;
sprite.width = sprite.height * ratio; // 300

This could also be accomplished using a Matrix transform.

西瑶 2024-12-18 17:58:32

当您设置宽度/高度时,缩放属性会更新,因此您可以使用它们来缩放其他尺寸:

sprite.height = 200;
sprite.scaleX = sprite.scaleY;

比您自己跟踪/更新纵横比更容易且不易出错。

The scale properties are updated when you set the width/height, so you can use them to scale the other dimension:

sprite.height = 200;
sprite.scaleX = sprite.scaleY;

Easier and less error prone than tracking/updating the aspect ratio on your own.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文