iOS-CGRect-offsetBy()-与-insetBy()-方法

offsetBy() 是移动矩形位置,大小不变。dx 和 dy 表示origin移动距离。
insetBy() 是缩小或放大矩形,中心点不变。dx 和 dy 表示矩形四边同时向中心点移动的距离。origin移动距离也是 dx 和 dy,宽高的变化是 -2dx 和 -2dy。

(lldb) po f
▿ (100.0, 100.0, 100.0, 100.0)
  ▿ origin : (100.0, 100.0)
    - x : 100.0
    - y : 100.0
  ▿ size : (100.0, 100.0)
    - width : 100.0
    - height : 100.0

(lldb) po f.offsetBy(dx: 10, dy: 10)
▿ (110.0, 110.0, 100.0, 100.0)
  ▿ origin : (110.0, 110.0)
    - x : 110.0
    - y : 110.0
  ▿ size : (100.0, 100.0)
    - width : 100.0
    - height : 100.0

(lldb) po f.insetBy(dx: 10, dy: 10)
▿ (110.0, 110.0, 80.0, 80.0)
  ▿ origin : (110.0, 110.0)
    - x : 110.0
    - y : 110.0
  ▿ size : (80.0, 80.0)
    - width : 80.0
    - height : 80.0

(lldb) po f.insetBy(dx: -10, dy: -10)
▿ (90.0, 90.0, 120.0, 120.0)
  ▿ origin : (90.0, 90.0)
    - x : 90.0
    - y : 90.0
  ▿ size : (120.0, 120.0)
    - width : 120.0
    - height : 120.0
posted @ 2022-07-18 17:48  rome753  阅读(260)  评论(0编辑  收藏  举报