IOSDEV Telegram 548
This media is not supported in your browser
VIEW IN TELEGRAM
Что такое phyllotaxis или как повторить анимацию в Wallet и Lock Screen в iOS 16
Оговорюсь, я как и прежде не использую Swift UI в проде, и наверняка код можно сделать чище

С выходом новой iOS многие обратили внимание на крутую анимацию при переходе на заблокированный экран и обратно. Philip Davis в твиттере дополнил, что по факту используемая фигура очень похожа на phyllotaxis (филлотаксис по-русски). Так что же это за зверь такой?

Время нового факта

Филлотаксис — одна из природных загадок, известная со времён Леонардо да Винчи. Название с древнегреческого — «расположение листьев».

Загадочным является наблюдаемое в мире растений геометрически правильное расположение. Вспомните, например, как выглядит подсолнух😏.

Если сосчитать количество однотипных спиралей на поверхности, то с большой вероятностью мы получим одну из пар, образованных двумя соседними числами Фибоначчи.

☺️ Спасибо математикам за псевдокод:

n = caseIndex
base_angle = pi*(1+sqrt(5))
r = sqrt(n)
theta = n*base_angle
x = r*cos(theta)
y = r*sin(theta)


Для упрощения терминологии: n это индекс семечка (у нас это просто кружок, baseAngle некий стартовый угол, r - радиус, x и y — позиции, на которые мы должны поместить наше семечко).

Что ж, попробуем повторить природное явление с помощью Swift!

1️⃣ Создадим GeometryReader, proxy.size будет размером поля. xCenter и yCenter - координаты центра, от которых я отталкивался.

2️⃣ Радиус можно рассчитать по следующей формуле let radius:Double = maxWidth * sqrt(Double(i)). maxWidth это ширина семечка (тех, что ближе к краю поля).

3️⃣ Заполяем поле с помощью CircleInside в зависимости от максимального количества "семечек" внутри поля.

4️⃣ И небольшой эффект анимации: scaleEffect и rotationEffect по тапу.

😎 В итоге получится то, что вы видите на гифке.

@iOS Dev — решаю загадки Да Винчи на Swift.
👏23🔥12❤‍🔥8👍61



tgoop.com/iosdev/548
Create:
Last Update:

Что такое phyllotaxis или как повторить анимацию в Wallet и Lock Screen в iOS 16
Оговорюсь, я как и прежде не использую Swift UI в проде, и наверняка код можно сделать чище

С выходом новой iOS многие обратили внимание на крутую анимацию при переходе на заблокированный экран и обратно. Philip Davis в твиттере дополнил, что по факту используемая фигура очень похожа на phyllotaxis (филлотаксис по-русски). Так что же это за зверь такой?

Время нового факта

Филлотаксис — одна из природных загадок, известная со времён Леонардо да Винчи. Название с древнегреческого — «расположение листьев».

Загадочным является наблюдаемое в мире растений геометрически правильное расположение. Вспомните, например, как выглядит подсолнух😏.

Если сосчитать количество однотипных спиралей на поверхности, то с большой вероятностью мы получим одну из пар, образованных двумя соседними числами Фибоначчи.

☺️ Спасибо математикам за псевдокод:

n = caseIndex
base_angle = pi*(1+sqrt(5))
r = sqrt(n)
theta = n*base_angle
x = r*cos(theta)
y = r*sin(theta)


Для упрощения терминологии: n это индекс семечка (у нас это просто кружок, baseAngle некий стартовый угол, r - радиус, x и y — позиции, на которые мы должны поместить наше семечко).

Что ж, попробуем повторить природное явление с помощью Swift!

1️⃣ Создадим GeometryReader, proxy.size будет размером поля. xCenter и yCenter - координаты центра, от которых я отталкивался.

2️⃣ Радиус можно рассчитать по следующей формуле let radius:Double = maxWidth * sqrt(Double(i)). maxWidth это ширина семечка (тех, что ближе к краю поля).

3️⃣ Заполяем поле с помощью CircleInside в зависимости от максимального количества "семечек" внутри поля.

4️⃣ И небольшой эффект анимации: scaleEffect и rotationEffect по тапу.

😎 В итоге получится то, что вы видите на гифке.

@iOS Dev — решаю загадки Да Винчи на Swift.

BY iOS Dev


Share with your friend now:
tgoop.com/iosdev/548

View MORE
Open in Telegram


Telegram News

Date: |

To edit your name or bio, click the Menu icon and select “Manage Channel.” Public channels are public to the internet, regardless of whether or not they are subscribed. A public channel is displayed in search results and has a short address (link). 1What is Telegram Channels? To view your bio, click the Menu icon and select “View channel info.” Just at this time, Bitcoin and the broader crypto market have dropped to new 2022 lows. The Bitcoin price has tanked 10 percent dropping to $20,000. On the other hand, the altcoin space is witnessing even more brutal correction. Bitcoin has dropped nearly 60 percent year-to-date and more than 70 percent since its all-time high in November 2021.
from us


Telegram iOS Dev
FROM American