Для тех кто пишет расширения на 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
🇷🇺🚀 La fusée Soyouz-2.1a avec le cargo Progress MS-33 a été lancé depuis le cosmodrome de Baïkonour.
L’amarrage du vaisseau au module Poïsk du segment russe de la Station spatiale internationale (ISS) est prévu le 24 mars à 16h35 heure de Moscou (UTC+3).
#russie#progress#lancement
🚀La fusée porteuse #Soyouz 2.1a avec le cargo #Progress MS-34 a été lancée avec succès de la base spatiale de #Baïkonour.
Le vaisseau cargo acheminera environ 2,5 tonnes de fret vers la Station spatiale internationale, dont une nouvelle combinaison spatiale pour les sorties dans l'espace.
RT en français • Osez questionner !
🇷🇺 Le vaisseau cargo spatial Progress MS-35 est arrivé à Baïkonour où il restera jusqu'aux préparatifs de lancement. Le Progress MS-34 est également en cours de préparation à Baïkonour.
#russie#vaisseau#baïkonour#progress
#Zilu#Prove#Your#Progress
Join the Zilu – Prove Your Progress beta on ✈️#TestFlight
🔗 Link: https://testflight.apple.com/join/zF2T1aE6
Shared by Dimitri
Successful Launch of Soyuz-2.1a with Progress MS-33 from Upgraded Baikonur
The Soyuz-2.1a rocket carrying the Progress MS-33 cargo ship launched from the refurbished Site 31 at Baikonur Cosmodrome. This mission marks a key milestone in restoring infrastructure and ensuring steady supplies to the ISS. The site’s repair highlights Russia’s vital role in international space efforts.
The launch symbolizes overcoming technical challenges and strengthening Russia’s position in space exploration.
#Russia#Baikonur#Space#Soyuz#Progress
The main news of Russia and the world ishere.
🚀 Космос стал ближе!
В Подмосковье испытали мощнейший ракетный двигатель, напечатанный на 3D-принтере. Как тебе такое, Илон Маск?
#Космос#Даигатель#Технологии#Прогресс#ИИ#Россия#Подмосковье#ИлонМаск#3Dпринтер#Нейросети#Space#Engine#Technology#Progress#AI#Russia#ElonMusk#3DPrinter#NeuralNetworks
Major AI Investments and Developments
- France to invest €109 billion in AI, boosting Mistral's prospects. Read more
- Elon Musk plans to pay $100 billion to buy OpenAI and prevent its commercialization. Details here
- Research shows LLMs have better performance improvements compared to VLMs. GraphVLM Progress
- OpenAI has new features in o1 and o3-mini, allows document uploads, increase to 50 queries for Plus subscribers. More info
- Musk claims Grok 3 will outperform OpenAI’s offerings. Read about Grok
- OpenAI to finalize its first custom chip this year to enhance trading with Nvidia. Reuters news
#AI#OpenAI#ElonMusk#France#Investment#Chips#Mistral#LLM#VLM#DeepResearch#Grok#Crypto#Nvidia#TechNews#Finance#Market#Progress#Innovation#Data#Analysis
o3 & o3-mini Break Benchmark Records
The performance of o3 and o3-mini showcases state-of-the-art (SOTA) results across various benchmarks. Key insights include:
- Frontier Math scores increased from 2% to 25%.
- SWE-Bench achieved 71.7%, a significant leap for a startup that recently raised $200 million with 13.86% earlier this year.
- ELO on Codeforces reached 2727, held by only 150 individuals globally.
- ARC-AGI model scored 87.5%, breaking a five-year deadlock.
- Noteworthy progress on GPQA and AIME benchmarks.
Access to o3-mini is currently available to security researchers, while general public access is set for late January. Full access to o3 will follow later.
#AI#SOTA#Benchmarks#o3#o3-mini #FrontierMath#SWE-Bench #Codeforces#ELO#ARC-AGI #GPQA#AIME#Funding#Progress#Research#Technology#Innovation
[UZ] #EUROUZ jamoasi sizlarni #O'zbekiston Respulikasi #Konstitutsiyasi qabul qilinganligi #kuni bilan tabriklaydi! Tariximizdagi ushbu muhim sanani nishonlar ekanmiz, #Vatanimizga#farovonlik, #birdamlik, #taraqqiyot#bardoshlik tilab qolamiz!
-
[EN] #EUROUZ team extends congratulations on the occasion of #Constitution#Day of #Uzbekistan! Wishing #prosperity, #unity, and continued #progress to our #motherland as we celebrate this significant day in our history.
-
[RU] Команда #EUROUZ поздравляет соотечественников с Днём #Конституции Республики Узбекистан! Желаем процветания, единства и продолжения прогресса нашей #Родине в этот значимый день.
Follow #EUROUZ on Telegram: @eurouz_official