Для тех кто пишет расширения на 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
🌍 Each year, vast dust storms from the Sahara cross the Atlantic, carrying nutrients that fertilize the Amazon rainforest. This airborne soil links continents in a natural, global recycling process. ✨
#cycles⚡#atmosphere⚡#continents⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography
👉more Channels
🌍 The global carbon cycle constantly moves carbon between the air, land, water, and living things. This cycle helps regulate Earth’s climate by storing and releasing carbon dioxide. ✨
#carbon⚡#climate⚡#cycles⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography🌍
🌍 Some lake water can take hundreds of years to fully circulate from the surface to the deepest layers and back again, creating slow, hidden water cycles that influence local climates and ecosystems. ✨
#hydrology⚡#lakes⚡#cycles⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography
👉more Channels
🌍 Earth’s tides are driven mostly by the Moon’s gravity, causing oceans to rise and fall all over the globe. These constant movements help mix ocean waters and shape coastal ecosystems. ✨
#tides⚡#ocean⚡#cycles⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography🌍
🌍 Earth’s magnetic field flips direction every few hundred thousand years, a process called geomagnetic reversal. These flips are recorded in volcanic rocks and help scientists trace ancient geologic changes. ✨
#geomagnetism⚡#volcanism⚡#cycles⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography
👉more Channels
https://x.com/priceactiongann/status/1819774789399224477
#nifty#nifty50#stocks
Price and Time Relation:
strong connection and cycle of 144 and 108 or 1440 and 1080
Nifty low of march 24 , 2020 = 7511 price
Nifty all time high august 1 2024=25078 price
price moved from low to high or total range from low to high is 17567
#trading
Price 17567/144= 122
#priceaction
122x144=17658
Time taken to reach is 1081 bars and 1591 days
1080 trading days or bars to reach from low to high
1080/144=7.5
1080/1440=.75
17657 is price moved and 1081 is time taken
2.177860006167129
17657/1081 =16.33395004625347(163)
16.33395004625347/7.5 =2.177860006167129(216 or 217)
2.177860006167129x5 =10.88930003083565(108 or 1080)
1080 or 1081 days to reach from low to high!
#Stocks
90 years cycle the great cycle is 90x12 =1080 months
18x60(great cycle) = 1080
circle 360 =3 (holytrinity)x360 =1080
3x3x3= 27
27x4 =108
108/3=36
666=6x6x6
also 108 is 18 degree cancer
108 is half of 216 (144 + 72) and its 1/4 of 432
#numerology#financialastrology#astrology
1080/666=1.62
If this post gets 108 likes and 108 comments i will post more calculations
1080/666=1.62 #time#price
one important cycle about above number and how it connects to nifty high
it will deal with other number like 555,666,777 etc.
more u will get in that too once reaches 108 likes and 108 comments here.
#stockmarket#stockmarketcrash#economy#timecycle#pricecycle#gann#cycles
https://x.com/priceactiongann/status/1819774789399224477