Для тех кто пишет расширения на PyQt/PySide для CG-софтов.
Когда я только начинал писать тулзы под Maya (тогда еще версия 2010-2011) мне приходилось ручками ставить PyQt4 под Maya. Даже написал мануалы по установке на своём сайте. Но потом стал доступен из коробки PySide и позже он обновится до PySide2. Для некоторых систем была поддержка PyQt5.
И как простому разработчику поддерживать этот зоопарк? Ведь хочется чтобы тул работал на любой версии (вы тоже делали модуль что-то типа import_qt.py?😁)
На помощь приходит проект Qt.py который поставил себе цель унифицировать использование Qt-биндингов вне зависимости от среды где запускается код. Те, кто давно пишут на Qt, скорее всего знают этот проект.
Он стал стандартом для CG-индустрии и используется в топовых студиях и проектах.
Qt․py помогает запускать один и тот же код на разных платформах с разными вариантами Qt-библиотек. Это может быть как интеграция в CG-софт, так и переносимость стендалонов между разными платформами с разными версиями Python.
Я решил рассказать о некоторых особенностях работы с этой библиотекой.
Сегодня о том, как установить и использовать Qt․py и что это вам даёт.
Установка
pip install Qt.py
Чтобы начать использовать Qt․py в коде достаточно заменить импорт вашего варианта Qt-биндинга на Qt․py
from [PySide|PyQt4|PySide2|PyQt5] import QtWidgets
=>
from Qt import QtWidgets
Теперь ваш код будет поддерживать любой вариант биндинга Qt в Python.
При этом не потребуется использовать if-else конструкции под разные версии. Все вызовы теперь одинаковы.
Всё что нужно сделать, это написать его по правилам PySide2. Именно эта версия была взята за основу.
Приоритет импорта такой:
1. PySide2
2. PyQt5
3. PySide
4. PyQt4
Что именно загрузилось можно посмотреть в переменной __binding__
>>> import Qt
>>> Qt.__binding__
'PySide2'
Приоритет имопрта можно изменить через переменные QT_PREFERRED_BINDING и QT_PREFERRED_BINDING_JSON. Причем под каждый проект оверрайды можно настраивать индивидеально.
#qt#libs
🌐Xalqaro moliya korporatsiyasi (IFC) mintaqaviy vakillari bilan uchrashuv
🇺🇿 Biznes va tadbirkorlik oliy maktabida IFC vakillari bilan uchrashuv bo‘lib o‘tdi. Uchrashuv davomida tomonlar biznes-ta’lim sohasidagi hamkorlik istiqbollari, barqaror rivojlanish tamoyillarini ilgari surish, ESG standartlarini joriy etish, xalqaro tavsiyalar va ilg‘or jahon tajribasiga asoslangan korporativ boshqaruvni takomillashtirish masalalarini muhokama qildilar.
🟢 IFCning ta’lim tashabbuslari kompaniya rahbarlari uchun boshqaruv va yetakchilik ko‘nikmalarini rivojlantirish hamda xususiy sektor ehtiyojlariga mos o‘quv dasturlarini ishlab chiqishga alohida e’tibor qaratadi.
💠 Yakunida tomonlar qo‘shma ta’lim dasturlarini ishlab chiqish va ESG tamoyillarini O‘zbekiston biznes muhitiga integratsiya qilishni qo‘llab-quvvatlash maqsadida keyingi chora-tadbirlarni muvofiqlashtirish bo‘yicha kelishuvga erishdilar.
📝Batafsil
🇷🇺RU
🇬🇧ENG
#GSBE#GraduateSchool#IFC#ESG#Cooperation#Meeting
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
17 мая в отеле Courtyard by Marriott Tashkent состоялся интерактивный тренинг по привлечению инвестиций и обслуживанию новых и действующих инвесторов со стороны международного эксперта Роберта Хайзака. Тренинг проводился в рамках проекта IFC, поддерживаемого правительством Японии. В мероприятии приняли участие сотрудники Агентства стратегического развития при Президенте Республики Узбекистан, Министерства инвестиций и внешней торговли и Агентства по привлечению иностранных инвестиций при МИВТ РУз. В ходе мероприятия обсуждались способы привлечения инвесторов, формирование совместных предприятий, принципы работы CRM-системы, а также меры по решению возникающих вопросов. В конце тренинга участники получили ответы на интересующие их вопросы.
#ifc#training#ipa#uzipa
Международный клуб дружбы Ленинградской области открыл для себя историю железнодорожного транспорта! 🚂
Участники МКД47 посетили Музей РЖД в Санкт-Петербурге, где познакомились с богатой историей железных дорог России. Гости смогли увидеть уникальные экспонаты, узнать о развитии железнодорожного транспорта и его важной роли в становлении нашей страны.
В ходе экскурсии иностранные участники клуба из разных стран получили возможность погрузиться в атмосферу прошлого и настоящего российского железнодорожного транспорта. Особенно впечатляющими стали старинные паровозы, исторические вагоны и современные локомотивы.
In English in the comments
#ВФМ#МКД#МеждународныйКлубДружбы#МКД47#WYF#IFC#InternationalFriendshipClub#IFC47
🔔 PikTools Генплан: Ваш DWG → 3D-модель + IFC по стандартам Москвы
Мы сделали генплан не просто чертежом, а полноценным цифровым двойником, который понимают все — от архитекторов до сетевиков. И да, он уже соответствует требованиям Москомархитектуры.
Технология работы:
✅ Из обычного DWG — в 3D-генплан и IFC
▪️Автоматическое построение объёмной модели прямо в Civil 3D
▪️Экспорт в формат IFC строго по структуре ЦИМ АГР, утверждённой для города Москва.
✅ Смежники скажут спасибо
Ваша модель становится основой для:
▪️Проверок коллизий АР-ГП (архитектура vs генплан)
▪️Проверок коллизий ГП-НС (генплан vs наружные сети)
▪️Выдаётся как задание смежным проектным командам с понятным объёмным представлением классического генплана.
✅ Что это даёт на практике?
▪️Архитекторы видят реальные отметки и привязки зданий.
▪️Сетевики сразу определяют зоны прокладки коммуникаций.
▪️Все работают с единой цифровой моделью, а не с клочками чертежей.
Хотите, чтобы ваш генплан стал центром BIM-координации?
🌐Запросите триал версию продукта PikTools Генплан демонстрацию на сайте
👍Подписывайтесь на наш новый канал по продукту
❤️Ставьте лайки и комментарии к видео справке продукта
🎞Смотреть как продукт делает 3D генплан и IFC
#PikTools#Генплан#BIM#ЦИМ#Москва#IFC#3Dмоделирование#Коллизии#АР_ГП#ГП_НС#Автоматизация#Civil3D#BIMteam
#cplusplus#3mf#android#asset_pipeline#assets#assimp#c_plus_plus#collada#dae#fbx#fbx_exporter#game_development#gamedev_tool#gamedevelopment#gltf#gltf2#ifc#patreon#python#stl
The Open Asset Import Library (Assimp) is a tool that helps load many different 3D file formats into a common format. It supports over 40 formats for importing and several for exporting. Assimp works on various platforms like Windows, macOS, Linux, Android, and iOS. It also provides tools to improve the 3D models, such as fixing errors and making them look better. This library is useful for developers because it simplifies working with different 3D file types, making it easier to create and manage 3D content across different systems.
https://github.com/assimp/assimp