我有一个{X:100 Y:60 Width:37 Height:58}
Rectangle.Center
正在返回{X:118 Y:89}
我希望它返回{X:15.5 Y:44.5}
(不是特别包括小数),它是矩形宽度和高度的一半。
我无法弄清楚它在这里做了什么。这么简单的问题。怎么了?
答案 0 :(得分:2)
该属性返回正确的结果。你为什么期望X = 15.5和Y = 44.5? Rectangle.Center将返回矩形的中心(正如人们所期望的那样)。该中心等于:
{X + (width/2), Y + (height/2)}
插入给定值会导致:
{100 + (37/2), 60 + (58/2)}
{100 + 18.5, 60 + 29}
{118.5, 89}
由于矩形使用int
,因此将118.5舍入为118,得出最终答案:
{118, 89}
请扩展您的问题,了解为什么会出现任何不同的结果?