TGViewer
Physics.Math.Code Physics.Math.Code @physics_lib · 147K subscribers
Post #15362 3.1K
😵‍💫 Плоттер, который рисует картинки и даже портреты в полярной системе координат

У полярного графопостроителя есть две осевые координаты: θ — поворот стола/руки, ρ — выдвижение инструмента от центра. Пишущий инструмент находится в точке (ρ, θ). Стоит вспомнить связь декартовых и полярных координат (кстати, вы в школе такое проходили или только в ВУЗе?):
Прямое преобразование: x = ρ · cos(θ) и y = ρ · sin(θ)
Обратное преобразование: ρ = √(x² + y²) и θ = atan2(y, x)
Центр вращения также может быть смещен от начала координат, но это легко задается сдвиговыми смещениями: x' = x - x0 ; y' = y - y0 ; ρ = √(x'² + y'²) ; θ = atan2(y', x')
Для реального плоттера важно: ρ обычно ограничено: ρ_min ≤ ρ ≤ ρ_max , а вот угол θ может быть любым, если нет гибких проводов, которые начинают заматываться.

Чтобы построить растровые изображения и портреты, нужна векторизация в декартовой плоскости, потом перевод в полярные.
Загрузить изображение → Перевести в grayscale → Выделить края: Canny, Sobel, Laplacian → Пороговая обработка → Скелетизация линий → Трассировка контуров → Упрощение ломаных: алгоритм Дугласа–Пекара → Расчет для каждой точки контура ( x, y): ρ = √((x-x0)² + (y-y0)²) ; θ = atan2(y-y0, x-x0) → Отсортировать контуры, чтобы меньше двигаться без рисования → Сгенерировать G-код: поднять перо, перейти, опустить, вести линию.

Для закрученного вокруг центра портрета:
for i = 0..N_θ:
θ = 2π · i / N_θ
for j = 0..N_ρ:
ρ = ρ_min + (ρ_max - ρ_min) · j / N_ρ
x = ρ · cos(θ)
y = ρ · sin(θ)
polar_image[i, j] = sample_image(x, y)

Получается изображение в координатах (θ, ρ). Его можно векторизовать так же, как обычное, но затем каждая линия уже будет линией в полярных координатах. 

Главная математическая тонкость: прямая в декартовой системе не является прямой в полярных координатах. Поэтому для точных рисунков и портретов траекторию всегда сначала строят в декартовых координатах, разбивают на мелкие отрезки и только затем переводят каждую точку в (ρ, θ). #математика #mathematics #animation #math #геометрия #geometry #gif

График трохоиды

➰ Красота параметрических кривых

⭕️ Точки пересечения кругов на воде движутся по гиперболе

🕑 Экстремальная задача на смекалку

💡 Physics.Math.Code // @physics_lib
  • 🔥 14
  • ❤ 6
  • ✍ 5
  • 👍 2
  • 🤝 1
More from @physics_lib
  1. Oct 7, 2026🔴 ЗАДАЧА ДНЯ: Геомеханика и теория упругости Представьте, что вы проектируете горный тонн…
  2. Oct 6, 2026🎈 Резиновый шарик в тепловизоре 🔥 Ранее на канале был уже такой опыт. Кратко о происходя…
  3. Oct 6, 2026⚡️ Друзья-подписчики, которые имеют premium-подписку, нужно помочь сообществу голосами, чт…
  4. Oct 6, 2026🔸 Нобелевская премия по физике за 2026 год была присуждена бельгийскому астрофизику Фрэнс…
  5. Oct 5, 2026⚙️ Модель устройства главной части вертолёта 🚁 Несущий винт вертолёта состоит из лопастей…
  6. Oct 4, 2026💻 12 игр, которые научат программировать лучше любого курса Собрал для вас подборку, где…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →