如何使一个对象相对于第二个对象的位置居中?
How to center an object within an object relative to the position of the second object?
我需要将位于屏幕上另一个对象内部的对象居中,并使其相对于第二个对象的位置
例如:
-------- screen --------
| |
| -------- |
| | text | |
| -------- |
------------------------
Lua
中屏幕居中文本的代码示例:
local x = math.floor(screenWidth / 2 - width / 2)
local y = math.floor(screenHeight / 2 - height / 2)
只需将对象相对于父对象居中,然后将其移动到屏幕上的绝对位置:
local x = parentX + math.floor((parentWidth - width) / 2)
local y = parentY + math.floor((parentHeight - height) / 2)
从Lua 5.3开始,你可以使用floor division(//
)来缩短这个:
local x = parentX + (parentWidth - width) // 2
local y = parentY + (parentHeight - height) // 2
我需要将位于屏幕上另一个对象内部的对象居中,并使其相对于第二个对象的位置
例如:
-------- screen --------
| |
| -------- |
| | text | |
| -------- |
------------------------
Lua
中屏幕居中文本的代码示例:
local x = math.floor(screenWidth / 2 - width / 2)
local y = math.floor(screenHeight / 2 - height / 2)
只需将对象相对于父对象居中,然后将其移动到屏幕上的绝对位置:
local x = parentX + math.floor((parentWidth - width) / 2)
local y = parentY + math.floor((parentHeight - height) / 2)
从Lua 5.3开始,你可以使用floor division(//
)来缩短这个:
local x = parentX + (parentWidth - width) // 2
local y = parentY + (parentHeight - height) // 2