CGPath в SwiftUI - PullRequest
       37

CGPath в SwiftUI

1 голос
/ 12 июля 2020

При использовании SwiftUI меня озадачивает эта строка кода:

xPath = Path(myPath.cgPath)

Здесь более широкий контекст:

struct MyShape: Shape {
    @Binding var xPath:Path
    ........


    var myPath = Path()
    myPath.move(to: somePoint1)
    myPath.addLine(to: somePoint2)
    myPath.addLine(to: somePoint3)
    myPath.addLine(to: somePoint1)

    xPath = Path(myPath.cgPath)

Сразу после выполнения строки вот что Я получаю в консоли отладчика:

(lldb) p myPath
(Path) $R14 = {
  storage = path (path = 0x0000000280e081c0)
}
(lldb) p myPath.cgPath
(NSObject) $R16 = 0x000000028298cfc0 {
  baseNSObject@0 = {
    isa = __NSCFType
  }
}
(lldb) p myPath.description
(String) $R18 = "39.3916 34.8342 m 51.5 0 l 63.6084 34.8342 l 39.3916 34.8342 l"
(lldb) p xPath
(Path) $R20 = {
  storage = empty
}

Кажется, все в порядке? Поскольку myPath что-то содержит, мне кажется странным, что xPath выглядит пустым в конце.

Я что-то упускаю?

...