Для тех кто пишет расширения на 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
#LaSinfonía53#StarDawn#AlanHovhaness#KeithBrion
Título:Sinfonia n. 53 op. 377 "Star dawn"
Autor:Alan Hovhaness
Movimentos:
🎵 I. Maestoso sostenuto, allegro
🎵 II. Moderato sostenuto con molto espressione
Interpretación:
Orquesta de viento de la Real Academia Escocesa de Música y Drama
Director:
Keith Brion
Fuente:🎼
@ClasicaAlAtardecer
#LaSinfonía53#StarDawn#AlanHovhaness#KeithBrion
LA “SINFONÍA Nº 53” (STAR DAWN) OP. 377
La “Sinfonía Nº 53” (Star Dawn) Op.377 fue terminada en el mes de julio de 1983 por Alan Hovhaness. Escrita para banda sinfónica fue encargada por Charles D. Yates y el San Diego State University Wind Ensemble. Se estrenó en el mes de febrero de 1990 interpretada por la Yale University Concert Band dirigida por Thomas Duffy.
La obra está inspirada en la “Divina Comedia” de Dante, en su parte final de ascensión al Paraíso. Su título, subida a las estrellas, está tomado de una frase de Dante que sugiere los viajes espaciales. En su forma original la sinfonía constaba de tres movimientos, pero el compositor eliminó totalmente uno de ellos.
Consta de dos Movimentos:
🎵Maestoso sostenuto, allegro
🎵 Moderato sostenuto con molto espressione
El primer movimiento, maestoso sostenuto, allegro, empieza con un poderoso tema significando la salida del hombre de la tierra. Los clarinetes nos muestran la frialdad del espacio. Aparece un gran himno para la salvación del hombre. Sigue con un solo de clarinete, perteneciente a una obra para piano escrita en 1933 no publicada, que llevaba el mismo título. No sabemos si después de 50 años redescubrió el manuscrito o tenía la melodía en su mente. El viaje continúa en un espacio rodeado por el brillo de las estrellas expresado por las campanas. Ondulaciones del clarinete nos muestran la ingravidez en el espacio. Después de un tema aéreo de la trompeta, el tema inicial retorna de un modo triunfal indicando el éxito del aterrizaje.
El segundo movimiento, moderato sostenuto con molto espressione, empieza con un solo de saxo, que simboliza según su autor la adaptación del hombre a un nuevo planeta, con su diferente gravedad. Luego escuchamos una breve coral, simbolizando la subida a los cielos. Las trompetas empiezan la interpretación de un himno de agradecimiento por el nuevo mundo conquistado. Las estrellas brillan en un nuevo cielo expresado por las campanas, terminando la obra de modo solemne.
Hovhaness interpreta las palabras de Dante como un viaje del género humano al espacio en busca de un nuevo mundo exterior. El primer movimiento nos relata el viaje espacial, la salida de la nave, su trayectoria por el ingrávido espacio exterior y su feliz llegada a un nuevo mundo. En el segundo movimiento nos encontramos en la nueva tierra, donde empieza la adaptación de los seres humanos hacia una nueva vida.
Las palabras escritas por el propio compositor nos hablan de sus sueños. Durante toda mi vida el interés por la astronomía me ha sugerido el pensamiento y la esperanza de que pudiéramos colonizar Marte. Como la tierra está superpoblada podríamos tener esta salida. Marte a pesar de ser muy frío, parece tener un clima que podría hacer esto posible.
@ClasicaAlAtardecer
#Sinfonía53#StarDawn#AlanHovhaness#KeithBrion
Título:La “Sinfonía Nº 53” (Star Dawn) Op.377
Autor:Alan Hovhaness
Movimientos:
🎵 Maestoso sostenuto, allegro
🎵 Moderato sostenuto con molto espressione
Interpretación:
Orquesta de viento de la Real Academia Escocesa de Música y Drama.
- Keith Brion
Fuente:🎼
@ClasicaAlAtardecer
#Sinfonía53#StarDawn#AlanHovhaness#KeithBrion
LA “SINFONÍA Nº 53” (STAR DAWN) OP.377
La “Sinfonía Nº 53” (Star Dawn) Op.377 fue terminada en el mes de julio de 1983. Escrita por Alan Hovhaness para banda sinfónica fue encargada por Charles D. Yates y el San Diego State University Wind Ensemble. Se estrenó en el mes de febrero de 1990 interpretada por la Yale University Concert Band dirigida por Thomas Duffy.
La obra está inspirada en la “Divina Comedia” de Dante, en su parte final de ascensión al Paraíso. Su título, subida a las estrellas, está tomado de una frase de Dante que sugiere los viajes espaciales. En su forma original la sinfonía constaba de tres movimientos, pero el compositor eliminó totalmente uno de ellos.
La pieza tiene dos movimientos
🎵Maestoso sostenuto, allegro
🎵Moderato sostenuto con molto espressione
El primer movimiento, maestoso sostenuto, allegro, empieza con un poderoso tema significando la salida del hombre de la tierra. Los clarinetes nos muestran la frialdad del espacio. Aparece un gran himno para la salvación del hombre. Sigue con un solo de clarinete, perteneciente a una obra para piano escrita en 1933 no publicada, que llevaba el mismo título. No sabemos si después de 50 años redescubrió el manuscrito o tenía la melodía en su mente. El viaje continúa en un espacio rodeado por el brillo de las estrellas expresado por las campanas. Ondulaciones del clarinete nos muestran la ingravidez en el espacio. Después de un tema aéreo de la trompeta, el tema inicial retorna de un modo triunfal indicando el éxito del aterrizaje.
El segundo movimiento, moderato sostenuto con molto espressione, empieza con un solo de saxo, que simboliza según su autor la adaptación del hombre a un nuevo planeta, con su diferente gravedad. Luego escuchamos una breve coral, simbolizando la subida a los cielos. Las trompetas empiezan la interpretación de un himno de agradecimiento por el nuevo mundo conquistado. Las estrellas brillan en un nuevo cielo expresado por las campanas, terminando la obra de modo solemne.
Hovhaness interpreta las palabras de Dante como un viaje del género humano al espacio en busca de un nuevo mundo exterior. El primer movimiento nos relata el viaje espacial, la salida de la nave, su trayectoria por el ingrávido espacio exterior y su feliz llegada a un nuevo mundo. En el segundo movimiento nos encontramos en la nueva tierra, donde empieza la adaptación de los seres humanos hacia una nueva vida.
Las palabras escritas por el propio compositor nos hablan de sus sueños. Durante toda mi vida el interés por la astronomía me ha sugerido el pensamiento y la esperanza de que pudiéramos colonizar Marte. Como la tierra está superpoblada podríamos tener esta salida. Marte a pesar de ser muy frío, parece tener un clima que podría hacer esto posible.
@ClasicaAlAtardecer