【问题标题】:Corona SDK - object:scale() scales object but width does not change?Corona SDK - object:scale() 缩放对象但宽度不变?
【发布时间】:2012-01-20 14:41:05
【问题描述】:

在一定时间内,我已将我的对象每帧缩放 0.99。然后我将其缩放为 1/.99 相同的时间。由于舍入误差,对象最终会变大/变小,而不是相同的大小。为了解决这个问题,我将原始宽度和高度保存在变量中,并在必要时将 object.contentWidth 和 contentHeigth 设置为等于这些变量。但是,对象会继续增长或缩小,并且永远不会重置。当我打印原始宽度和高度变量、内容宽度和高度以及常规宽度和高度时,它们都是相同的值,就好像对象从未缩放过一样。

我认为这里的问题是我误解了 Corona SDK 对象的功能和属性,所以我没有发布任何代码。如果不是误会,我会在这里发布我的代码的简化版本;请告诉我。

【问题讨论】:

    标签: lua scaling coronasdk


    【解决方案1】:

    我假设:
    如果您想缩小到原始大小。
    您应该将其从0.99 缩放到1.0,而不是1/.99

    使用函数object:scale()进行相对缩放
    使用属性object.xScale,object.yScale 进行绝对缩放。

    试试绝对缩放。

    【讨论】:

    • 比例函数是相对的。每次应用 0.99 的比例时,图像都会缩小到其大小的 99%。使用 1.0 的值进行缩放将无济于事。我想我会发布一些代码来澄清一下。
    • @gsingh2011 让我试试,我会写一个示例代码看看效果如何
    • Corona 确实应该在文档中指定绝对与相对缩放差异。
    • @gsingh2011 供您参考:here 他们确实谈到了它。这两种语法应该直观地做同样的事情
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-03
    • 1970-01-01
    相关资源
    最近更新 更多