🙄Разминка для ума!
Треугольник Серпинского, интересная фигура которую построить достаточно просто.
Алгоритм такой:
1. создаём любые 3 точки на плоскости
2. из этих точек случайно выбираем любую, как начальную
3. случайно выбираем любую точку из этих же трёх точек как цель
4. перемещаемся в сторону цели на половину расстояния
5. повторяем бесконечно с пункта 3
Если сделать достаточно много итераций то вырисовывается интересная фигура. Треугольник, в который вписаны более мелкие треугольники. Это самый настоящий фрактал!
Я собрал пример построения такой фигуры на базе Qt.
🌎 Код можно посмотреть здесь.
С помощью paintEvent я рисую точки по озвученному алгоритму. Каждые 10 секунд либо по клику на виджете строится следующий треугольник.
Особенности примера:
🔸 Атрибут Qt.WA_OpaquePaintEvent позволяет сохранить то, что было нарисовано в прошлой итерации. Таким образом мы видим постепенное наполнение точек а не мелькающую одну точку.
🔸QTimer позволяет создавать отложенные вызовы один раз или с повторением через интервал.
🔸QColor.fromHsv() позволяет создать рандомный но предсказуемый цвет с помощью HSV схемы. Не слишком светлый и не слишком тёмный но всегда с разный. Рандомизации подвергается только смещение по цветовому кругу (Hue), яркость (Value) и насыщенность (Saturation) можно контролировать отдельно в своих пределах или оставить статичными. Обычный рандом цвета по RGB не даёт такой предсказуемый результат.
🔸 Каждый новый цикл с новым треугольником предварительно затемняет предыдущие через этот вызов
painter.fillRect(rec, QColor(0, 0, 0, 100))
То есть полупрозрачный цвет. Таким образом, чем старше треугольник, тем он темней.
Если сделать виджет фулскрин, то у нас получится некий ScreenSaver)))
🔸 Да, я знаю, что рисование в Qt не самый лучший способ сделать этот пример) Скорее всего самый НЕподходящий. Попробуйте сделать тоже самое но другими средствами.
#qt#source#tricks
🌍 Barcelona’s “superblocks” group several city blocks to restrict car traffic inside, giving more space to people, trees, and bikes. This design lowers air pollution and boosts urban green life. ✨
#urbanism⚡#sustainability⚡#innovation⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography
👉more Channels
🌍 Seoul’s Cheonggyecheon stream was once a covered highway. Restoring this waterway transformed part of the city into a lively urban park, cooling the air and reducing nearby pollution. ✨
#urbanism⚡#restoration⚡#parks⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography
👉more Channels
Милан-Кортина 2026: Олимпиада «по тонкому льду» и мастер-класс по реновации спортивных объектов
В этом феврале мы наблюдаем за Олимпийскими играми в уже привычном статусе — без флага и гимна. Но профессиональная оптика не позволяет игнорировать это важное событие. Потому что именно в Италии уже случилась тихая революция в девелопменте мега-сооружений для масштабных событий мирового уровня.
Милан-Кортина 2026 — это первая Олимпиада у которой нет «архитектурного эго». Вместо того чтобы строить арены-памятники, итальянцы показали мастер-класс по adaptive reuse: 93% объектов — это или временная инфраструктура или существующая, но приспособленная под спортивные и культурно-массовые задачи.
Что интересного в материале, который яподготовила и рекомендую прочитать:
🏢Арена Санта-Джулия (David Chipperfield & Arup): Как спроектировать стадион с гигантским медиа-фасадом, который днем не выглядит как «выключенный телевизор», и сделать его якорем обновления бывшей «промки»
🏗Трансформация Rho Fiera: как превратить павильоны для коммерческих выставок в конькобежный стадион убрав подчистую сетку несущих колонн
🎓Олимпийская деревня = Студенческий кампус: Работа над ошибками Турина-2006. Жилье изначально проектируется как доступное общежитие для молодежи, которое просто «сдадут пожить» спортсменам на пару месяцев.
Материал совсем не про спорт больших достижений и гигантские бюджеты, а про то, как город может гибко адаптировать под мировые события существующие объекты и после завершения не оставаться один на один с долгами и никому не нужными тысячами квадратных метров общественных сооружений
👇 Подробный разбор архитектурных решений и стратегии — в лонгриде
#Оспорттымир#Urbanism#MilanCortina2026#архитектурное#лонгрид#зеленая_среда
The fifth season of the International Prize #WEARETOGETHER has been launched.
▫️ Foreign citizens and NGOs can apply until June 23, 2025 on the official website of the Prize https://wearetogetherprize.com.
🌐 The Prize is available for volunteers and NGOs from across the globe. The laureates will receive a cash prize valued at $10,000 and an invitation to take part in the International Forum of Civil Participation #WEARETOGETHER, which is traditionally held in December in Moscow.
👉🏻 Prize nominations:
♻️“Sustainable Future”
For those who are leading projects in the field of environmental protection, environmental education, ecological consumption, “green” economy and technologies
#ecology#urbanism#biodiversity#recycling#environmental protection
🕊️“Human Assistance”
For those who run projects aimed at improving the well-being of vulnerable categories of citizens, providing social and humanitarian assistance to people, discovering talents and nurturing individuals, developing education and volunteerism.
▫️ Apply here: https://wearetogetherprize.com/
#social_help#medicine#donorship#healthcare#emergencies
🔜The fifth season of the International Prize #WEARETOGETHER has been launched. Foreign citizens and NGOs can apply until June 23, 2025 on the official website of the Prize.
The Prize is available for volunteers and NGOs from across the globe. The laureates will receive a cash prize valued at $10,000 and an invitation to take part in the International Forum of Civil Participation #WEARETOGETHER, which is traditionally held in December in Moscow.
Prize nominations:
✔️“Sustainable Future”
For those who are leading projects in the field of environmental protection, environmental education, ecological consumption, “green” economy and technologies
#ecology#urbanism#biodiversity#recycling#environmental protection
✔️ “Human Assistance”
For those who run projects aimed at improving the well-being of vulnerable categories of citizens, providing social and humanitarian assistance to people, discovering talents and nurturing individuals, developing education and volunteerism.
Apply here
#social_help#medicine#donorship#healthcare#emergencies
🇷🇺Стартовал пятый сезон Международной Премии #МЫВМЕСТЕ. Иностранные граждане и НКО могут подать заявку до 23 июня 2025 года на официальном сайте Премии: https://wearetogetherprize.com/.
В премии могут принять участие волонтеры и НКО всех стран мира. Победители получат $10,000 и приглашение принять участие в Международном форуме гражданского участия #МЫВМЕСТЕ, который традиционно проходит в декабре в Москве.
Номинации Премии:
🌱«Устойчивое будущее»
Для тех, кто ведет проекты в сфере защиты окружающей среды, экологического просвещения, экологического потребления, «зеленой» экономики и технологий.
#экология#урбанизм#биоразнообразие#переработка#охрана_природы
🆘«Помощь людям»
Для тех, кто ведет проекты, направленные на улучшение благополучия уязвимых категорий граждан, оказание социальной, гуманитарной помощи людям, раскрытие талантов и воспитание личности, развитие образования и добровольческого движения.
Подать заявку можно на официальном сайте Премии: https://wearetogetherprize.com/
#социальная_помощь#медицина#донорство#здравоохранение#ЧС
🇷🇴A început cel de-al cincilea sezon al Premiului Internațional #SuntemÎmpreună. Cetățenii străini și ONG-urile pot depune o cerere până la data de 23 iunie 2025 pe site-ul oficial al Premiului: https://wearetogetherprize.com.
La competiția pot participa voluntari și ONG-uri din toate țări ale lumii. Câștigătorii vor primi 10.000 USD și o invitație de a participa la Forumul Internațional al Participării Civice #SuntemÎmpreună, care are loc tradițional în luna decembrie la Moscova.
Nominalizările Premiului:
🌱„Viitor sustenabil”
Pentru cei care desfășoară proiecte în domeniul protecției mediului, educației ecologice, consumului responsabil, economiei și tehnologiilor „verzi”.
#ecologie#urbanism#biodiversitate#reciclare#protecțiamediului
🆘„Ajutor pentru oameni”
Pentru cei care implementează proiecte dedicate îmbunătățirii bunăstării categoriilor vulnerabile ale populației, asistenței sociale și umanitare, dezvoltării talentelor și formării personalității, educației și mișcării de voluntariat.
Cererea poate fi depusă pe site-ul oficial al Premiului: https://wearetogetherprize.com
#asistențăsocială#medicină#donare#sănătate#situațiideurgență