일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 동기화
- core data
- COLOR
- 데드락
- 비동기
- struct
- IOS
- Codable
- Swift
- async
- 오브젝트
- 인프런
- @state
- Algorithm
- Apple Developer Academy
- 알고리즘
- UserDefaults
- 앨런
- 프로세스 스케줄링
- 파일 시스템
- 100 days of SwiftUI
- 동시성
- deadlock
- Linked List
- forEach
- 상호배제
- 가상 메모리
- SwiftUI
- decode
- 운영체제
- Today
- Total
목록shape (3)
기어가더라도 제대로
2022.11.21 - [SwiftUI - 기초] - [SwiftUI-기초] Shape 를 애니메이션 주기 - animatableData 위의 글에선 프로퍼티 하나의 변화를 감지해서 애니메이션을 그렸다면 이번 포스팅에선 두개 ~ 여러개의 애니메이션을 추적해보겠음 보드판의 행과 열이 추가되면 애니메이션이 어떻게 변화하는지를 감지할 것임 행과 열이라는 단어에서 프로퍼티 2개를 추적한다는 것을 알 수 있음 struct Checkerboard: Shape { var rows: Int var columns: Int func path(in rect: CGRect) -> Path { var path = Path() let rowSize = rect.height / Double(rows) let columnSize =..
struct Trapezoid: Shape { var insetAmount: Double func path(in rect: CGRect) -> Path { var path = Path() path.move(to: CGPoint(x: 0, y: rect.maxY)) path.addLine(to: CGPoint(x: insetAmount, y: rect.minY)) path.addLine(to: CGPoint(x: rect.maxX - insetAmount, y: rect.minY)) path.addLine(to: CGPoint(x: rect.maxX, y: rect.maxY)) path.addLine(to: CGPoint(x: 0, y: rect.maxY)) return path } } struct Con..
.stroke: path 따라서 테두리를 색칠하는 메서드 이용가능한 프레임을 넘겨버림 선을 안쪽으로 그림을 그리고 싶다하면 위의 메서드를 사용해서는 안됨 왜냐하면 직선을 따라서 뭉툭한 연필을 이용해 따라 그리는 상황을 상상해보면 연필의 정중앙이 직선에 오도록하고 그릴 것임 연필은 직선위를 지나므로 양옆으로 넘어가는 부분이 생기는데, 도형에서는 이것을 관리하기가 어려운 부분이 있다. 즉 일정한 간격으로 안쪽으로 들어가게 그리고 싶을 땐 어떻게 하면 좋을까? Circle().stroke(.blue, lineWidth: 40) Circle().strokeBorder(.blue, lineWidth: 40) strokeBorder() 를 이용 그러나 이는 우리가 커스텀하게 만들어 채택한 Shape 프로토콜엔 사용..