Для тех кто пишет расширения на 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
🚢"Ocean7 Ranger" открывает навигационный сезон 2026 в порту Дулут.
Многоцелевое судно "Ocean7 Ranger" стало первым океанским судном, прибывшим в порт Дулут (Duluth Seaway Port Authority) в рамках открытия навигационного сезона 2026 года.
Судно доставило 33 единицы проектного груза, включая оборудование массой до 130 тонн, в терминал Clure на озере Верхнее.
Груз, загруженный в Китае и Южной Корее, был доставлен через Тихий океан, Панамский канал и Атлантику с последующим входом в систему Великих озер и реки Святого Лаврентия.
После выгрузки дальнейшую логистику, включая перегрузку и транспортировку в Альберту (Канада), обеспечивает оператор Duluth Cargo Connect.
С отраслевой точки зрения событие подчеркивает уникальную роль системы Великих озер как глубинного логистического коридора, позволяющего доставлять океанские грузы вглубь Северной Америки.
Такие маршруты особенно востребованы для проектных грузов, где важна минимизация перегрузок и оптимизация логистики.
Начало навигационного сезона также отражает сезонную цикличность региона, где открытие портов после зимнего периода формирует важный импульс для грузопотоков и региональной экономики.
📌Duluth Seaway Port Authority — основана в 1955 году, государственная портовая администрация, принадлежит штату Миннесота (США).
#projectcargo#GreatLakes#shipping#logistics#USA
🚢Операторы Great Lakes требуют пошлин на иностранные суда для защиты рынка США.
Американская отраслевая ассоциация Lake Carriers’ Association обратилась к торговому представителю США с предложением ввести сборы на суда иностранной постройки, работающие в системе Великих озёр.
Инициатива направлена прежде всего против канадских операторов, активно использующих суда, построенные за рубежом.
Предложение рассматривается в рамках расследования Section 301, охватывающего судостроительные отрасли Китая, Южной Кореи и других стран. Возможные меры включают тарифы и ограничения в случае признания наличия «избыточных мощностей».
Инициатива отражает усиление протекционизма в судоходстве, особенно в сегменте внутренней и прибрежной торговли. Американские операторы стремятся защитить флот, построенный в США, который сталкивается с более высокими капитальными затратами.
Дополнительно предложение предполагает создание фонда для субсидирования строительства и обслуживания американских судов, что может стимулировать локальное судостроение.
Таким образом, рынок Великих озёр становится ареной торгово-промышленного противостояния, где конкуренция смещается от операционных факторов к регуляторным и политическим инструментам.
📌Lake Carriers’ Association — основана в 1880 году, отраслевая ассоциация судовладельцев США, представляет операторов флота на Великих озёрах, принадлежит членам ассоциации.
#shipping#GreatLakes#trade#shipbuilding#regulation
🚢Порт Дулута ввёл в эксплуатацию реконструированный тяжеловесный причал с приёмом проектного груза.
Duluth Seaway Port Authority завершила ключевой этап 30-летней программы модернизации, официально открыв обновлённый причал Berth 10 на терминале Clure Terminal Expansion.
Событие ознаменовано заходом буксира "Meredith Ashton" с 240-футовой баржей для перевозки проектных грузов — первым судозаходом на данный участок за несколько десятилетий.
Реконструкция фактически трансформировала устаревшую зерновую инфраструктуру начала XX века в специализированный тяжеловесный хаб. После демонтажа зерновых элеваторов в 1997 году площадка последовательно развивалась, получив импульс за счёт федерального гранта TIGER ($10 млн) и последующих инвестиций.
Финальный этап стоимостью $10,5 млн, завершённый в марте 2025 года, обеспечил ввод причалов Berth 10 и 11, расширив портовые мощности по приёму судов и размещению грузов.
С инженерной точки зрения, ключевым результатом проекта стало формирование универсального тяжеловесного терминала с четырьмя причалами для обработки тяжелых и проектных грузов, интеграцией ro-ro операций и прямым железнодорожным доступом на причале, что существенно повышает эффективность обработки негабаритных и проектных грузов, снижая перегрузочные операции и время транзита.
В стратегическом разрезе Duluth Cargo Connect использует терминал как ядро мультимодальной логистики региона, усиливая роль порта Дулута как центра обработки балкерных и тяжеловесных грузов в центральной части Северной Америки. Диверсификация от традиционных навалочных грузов в сторону проектной логистики отражает общий тренд Great Lakes на расширение номенклатуры и повышение маржинальности портовых операций.
📌Duluth Seaway Port Authority — основана в 1955 году, является государственным портовым органом, управляющим портом Дулут-Супериор (штат Миннесота, США). Находится в публичной собственности и действует как независимая портовая администрация.
#ports#heavylift#projectcargo#logistics#GreatLakes
🚢Mainstay Maritime продаёт канадский бизнес Lower Lakes и шесть судов Algoma.
Американская Mainstay Maritime договорилась о продаже трёх канадских операционных компаний и шести судов под канадским флагом корпорации Algoma Central Corporation. В сделку входят активы Lower Lakes Towing и суда “Kaministiqua”, “Manitoulin”, “Robert S. Pierson”, “Saginaw”, “Michipicoten” и “Valo”. Закрытие: при стандартных условиях.
Продажа позволяет Mainstay (бывшая Rand Logistics) сосредоточиться на рынке США под действием закона Джонса (Jones Act) и реинвестировать в американский флот. Для Algoma приобретение усиливает канадский dry bulk-сегмент на Великих озёрах за счёт расширения флота и команды Lower Lakes.
С точки зрения рынка, сделка отражает стратегическую специализацию операторов по юрисдикциям (US Jones Act vs. Канада) и консолидацию регионального тоннажа в бассейне Великих озёр. Ожидается оптимизация маршрутов и повышение операционной эффективности в канадском сегменте.
📌Algoma Central Corporation — канадская судоходная компания, основанная в 1899 году, специализируется на перевозках навалочных грузов, танкерном и морском сервисном флоте. Акции обращаются на Toronto Stock Exchange; компания является публичной и принадлежит институциональным и частным инвесторам.
#GreatLakes#JonesAct#DryBulk#Algoma#ShippingDeals