update
This commit is contained in:
parent
e291c1c7a7
commit
b6b063e68c
23
Install.py
23
Install.py
@ -11,24 +11,11 @@ import os
|
||||
|
||||
from scripts import config
|
||||
|
||||
try:
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from shiboken2 import wrapInstance
|
||||
print("从PySide2加载Qt和shiboken2")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from shiboken6 import wrapInstance
|
||||
print("从PySide6加载Qt和shiboken6")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide import QtCore, QtGui, QtWidgets
|
||||
from shiboken import wrapInstance
|
||||
print("从PySide加载Qt和shiboken")
|
||||
except ImportError as e:
|
||||
print(f"Qt加载失败: {str(e)}")
|
||||
QtCore = QtGui = QtWidgets = None
|
||||
wrapInstance = None
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
TOOL_NAME = config.TOOL_NAME
|
||||
TOOL_ICON = config.TOOL_ICON
|
||||
|
@ -1,12 +1,18 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
import maya.OpenMayaUI as omui
|
||||
from shiboken2 import wrapInstance
|
||||
from scripts import config
|
||||
from scripts.ui import menu, toolshelf, meshes, rigging, behaviour, definition
|
||||
|
||||
from scripts.ui import behaviour, definition, rigging # 改为绝对导入
|
||||
from scripts import config # 改为绝对导入
|
||||
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class MetaFusion(QtWidgets.QMainWindow):
|
||||
def __init__(self, parent=None):
|
||||
super(MetaFusion, self).__init__(parent)
|
||||
@ -19,8 +25,8 @@ class MetaFusion(QtWidgets.QMainWindow):
|
||||
# === 设置窗口属性 ===
|
||||
self.setWindowTitle(f"{config.TOOL_NAME} {config.TOOL_VERSION}")
|
||||
# 设置初始大小和最小大小
|
||||
self.resize(550, 800) # 初始大小
|
||||
self.setMinimumSize(550, 800) # 最小大小限制
|
||||
self.resize(550, 820) # 初始大小
|
||||
self.setMinimumSize(550, 820) # 最小大小限制
|
||||
|
||||
# === 创建中心部件 ===
|
||||
self.central_widget = QtWidgets.QWidget()
|
||||
|
@ -7,37 +7,16 @@ from . import config
|
||||
|
||||
# 确保PYDNA_PATH在sys.path中
|
||||
if config.PYDNA_PATH not in sys.path:
|
||||
sys.path.insert(0, config.PYDNA_PATH) # 将PYDNA_PATH添加到搜索路径的最前面
|
||||
sys.path.insert(0, config.PYDNA_PATH)
|
||||
|
||||
# 先导入dna模块
|
||||
try:
|
||||
import dna
|
||||
except ImportError as e:
|
||||
# 更详细的错误信息
|
||||
print("="*80)
|
||||
print("DNA模块导入失败:")
|
||||
print(f"错误信息: {str(e)}")
|
||||
print(f"PYDNA_PATH: {config.PYDNA_PATH}")
|
||||
print(f"当前Python路径:")
|
||||
for p in sys.path:
|
||||
print(f" - {p}")
|
||||
print("="*80)
|
||||
|
||||
# 检查pydna目录是否存在及其内容
|
||||
if os.path.exists(config.PYDNA_PATH):
|
||||
print(f"\nPYDNA目录内容:")
|
||||
for root, dirs, files in os.walk(config.PYDNA_PATH):
|
||||
print(f"\n目录: {root}")
|
||||
for d in dirs:
|
||||
print(f" 目录: {d}")
|
||||
for f in files:
|
||||
print(f" 文件: {f}")
|
||||
else:
|
||||
print(f"\nPYDNA目录不存在: {config.PYDNA_PATH}")
|
||||
|
||||
print(f"DNA模块导入失败: {str(e)}")
|
||||
raise
|
||||
|
||||
# 现在导入其他模块
|
||||
# 修改为绝对导入
|
||||
from .api import build_meshes, build_rig
|
||||
from .builder.config import Config, RigConfig
|
||||
from .builder.maya.skin_weights import (
|
||||
@ -46,7 +25,7 @@ from .builder.maya.skin_weights import (
|
||||
)
|
||||
from .dnalib.dnalib import DNA
|
||||
from .dnalib.layer import Layer
|
||||
from .MetaFusion import show
|
||||
from .MetaFusion import show # 改为绝对导入
|
||||
from .config import __version__
|
||||
|
||||
__all__ = [
|
||||
|
@ -10,11 +10,41 @@ import datetime
|
||||
import sys
|
||||
import os
|
||||
|
||||
def Qt():
|
||||
try:
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from shiboken2 import wrapInstance
|
||||
print("从PySide2加载Qt和shiboken2")
|
||||
return QtCore, QtGui, QtWidgets, wrapInstance
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from shiboken6 import wrapInstance
|
||||
print("从PySide6加载Qt和shiboken6")
|
||||
return QtCore, QtGui, QtWidgets, wrapInstance
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide import QtCore, QtGui, QtWidgets
|
||||
from shiboken import wrapInstance
|
||||
print("从PySide加载Qt和shiboken")
|
||||
return QtCore, QtGui, QtWidgets, wrapInstance
|
||||
except ImportError as e:
|
||||
print(f"Qt加载失败: {str(e)}")
|
||||
QtCore = QtGui = QtWidgets = None
|
||||
wrapInstance = None
|
||||
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
__version__ = "2.1.1"
|
||||
|
||||
# Base Information
|
||||
TOOL_NAME = str("MetaFusion")
|
||||
TOOL_VERSION = str("Beta v1.0.0")
|
||||
|
||||
|
||||
TOOL_AUTHOR = str("CGNICO")
|
||||
TOOL_LANG = str('en_US')
|
||||
TOOL_WSCL_NAME = str(f"{TOOL_NAME}WorkSpaceControl")
|
||||
|
@ -12,24 +12,10 @@ import os
|
||||
|
||||
from scripts import config
|
||||
|
||||
try:
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from shiboken2 import wrapInstance
|
||||
print("从PySide2加载Qt和shiboken2")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from shiboken6 import wrapInstance
|
||||
print("从PySide6加载Qt和shiboken6")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide import QtCore, QtGui, QtWidgets
|
||||
from shiboken import wrapInstance
|
||||
print("从PySide加载Qt和shiboken")
|
||||
except ImportError as e:
|
||||
print(f"Qt加载失败: {str(e)}")
|
||||
QtCore = QtGui = QtWidgets = None
|
||||
wrapInstance = None
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class BehaviourTab(QtWidgets.QWidget):
|
||||
def __init__(self, parent=None):
|
||||
|
@ -10,26 +10,12 @@ import webbrowser
|
||||
import sys
|
||||
import os
|
||||
|
||||
from scripts import config
|
||||
from scripts import config # 改为绝对导入
|
||||
|
||||
try:
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from shiboken2 import wrapInstance
|
||||
print("从PySide2加载Qt和shiboken2")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from shiboken6 import wrapInstance
|
||||
print("从PySide6加载Qt和shiboken6")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide import QtCore, QtGui, QtWidgets
|
||||
from shiboken import wrapInstance
|
||||
print("从PySide加载Qt和shiboken")
|
||||
except ImportError as e:
|
||||
print(f"Qt加载失败: {str(e)}")
|
||||
QtCore = QtGui = QtWidgets = None
|
||||
wrapInstance = None
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class DefinitionTab(QtWidgets.QWidget):
|
||||
def __init__(self, parent=None):
|
||||
|
@ -10,26 +10,12 @@ import webbrowser
|
||||
import sys
|
||||
import os
|
||||
|
||||
from scripts import config
|
||||
from .. import config
|
||||
|
||||
try:
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from shiboken2 import wrapInstance
|
||||
print("从PySide2加载Qt和shiboken2")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from shiboken6 import wrapInstance
|
||||
print("从PySide6加载Qt和shiboken6")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide import QtCore, QtGui, QtWidgets
|
||||
from shiboken import wrapInstance
|
||||
print("从PySide加载Qt和shiboken")
|
||||
except ImportError as e:
|
||||
print(f"Qt加载失败: {str(e)}")
|
||||
QtCore = QtGui = QtWidgets = None
|
||||
wrapInstance = None
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class MenuBar(QtWidgets.QMenuBar):
|
||||
def __init__(self, parent=None):
|
||||
|
@ -10,26 +10,12 @@ import webbrowser
|
||||
import sys
|
||||
import os
|
||||
|
||||
from scripts import config
|
||||
from .. import config
|
||||
|
||||
try:
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from shiboken2 import wrapInstance
|
||||
print("从PySide2加载Qt和shiboken2")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from shiboken6 import wrapInstance
|
||||
print("从PySide6加载Qt和shiboken6")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide import QtCore, QtGui, QtWidgets
|
||||
from shiboken import wrapInstance
|
||||
print("从PySide加载Qt和shiboken")
|
||||
except ImportError as e:
|
||||
print(f"Qt加载失败: {str(e)}")
|
||||
QtCore = QtGui = QtWidgets = None
|
||||
wrapInstance = None
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class MeshItem(QtWidgets.QWidget):
|
||||
"""单个网格项控件"""
|
||||
|
@ -12,24 +12,10 @@ import os
|
||||
|
||||
from scripts import config
|
||||
|
||||
try:
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from shiboken2 import wrapInstance
|
||||
print("从PySide2加载Qt和shiboken2")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from shiboken6 import wrapInstance
|
||||
print("从PySide6加载Qt和shiboken6")
|
||||
except ImportError:
|
||||
try:
|
||||
from PySide import QtCore, QtGui, QtWidgets
|
||||
from shiboken import wrapInstance
|
||||
print("从PySide加载Qt和shiboken")
|
||||
except ImportError as e:
|
||||
print(f"Qt加载失败: {str(e)}")
|
||||
QtCore = QtGui = QtWidgets = None
|
||||
wrapInstance = None
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class RiggingTab(QtWidgets.QWidget):
|
||||
def __init__(self, parent=None):
|
||||
|
@ -1,8 +1,12 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
from scripts import config
|
||||
from .. import config
|
||||
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class ToolShelf(QtWidgets.QWidget):
|
||||
def __init__(self, parent=None):
|
||||
|
@ -9,7 +9,13 @@ import maya.mel as mel
|
||||
import webbrowser
|
||||
import sys
|
||||
import os
|
||||
from PySide2 import QtCore, QtGui, QtWidgets
|
||||
|
||||
from .. import config
|
||||
|
||||
QtCore, QtGui, QtWidgets, wrapInstance = config.Qt()
|
||||
|
||||
if QtCore is None or QtGui is None or QtWidgets is None or wrapInstance is None:
|
||||
print(f"Qt加载失败: {QtCore}, {QtGui}, {QtWidgets}, {wrapInstance}")
|
||||
|
||||
class ToolShelf(QtWidgets.QToolBar):
|
||||
def __init__(self, parent=None):
|
||||
|
Loading…
Reference in New Issue
Block a user