maya/python 修改 modelPanel 布局和行为
maya/python modify modelPanel layout and behaviour
我正在 python 编写我的第一个脚本。它应该只是一个 2 选项卡脚本,在一个选项卡上会有角色选择器,在第二个选项卡上应该有一个带有面部 GUI 的相机视图。
我想摆脱红色圆圈菜单(您可以在此处看到 http://postimg.org/image/fozvc010x/)并以这种方式锁定视图,禁止缩放和平移。
我尝试在maya帮助上搜索,但对我来说不是很清楚。
我还附上了负责该视图的代码。
FacialGUI = cmds.formLayout()
FacialPanel = cmds.modelPanel(camera = "facial_cam")
cmds.formLayout(FacialGUI, e=True,
attachForm=[
(FacialPanel, "top", 0),
(FacialPanel, "left", 0),
(FacialPanel, "bottom", 0),
(FacialPanel, "right", 0)
])
cmds.setParent( '..' )
谢谢,
丹妮尔!
要摆脱红色圆圈菜单,在命令 modelPanel 中尝试将 menuBarVisible 标志设置为 False
FacialPanel = cmds.modelPanel(camera = "facial_cam", mbv=False)
使用命令 mel.eval("ToggleModelEditorBars")
可以切换编辑器栏的可见性。
如果你想锁定缩放和平移,你必须在相机对象上做。
编辑
不然你可以这样截图场景:
import maya.cmds as cmd
import maya.OpenMaya as api
import maya.OpenMayaUI as apiUI
def grabViewport(directory, imageName, ext="jpg"):
viewport = apiUI.M3dView.active3dView()
viewport.refresh()
img = api.MImage()
img.create(1280, 720)
viewport.readColorBuffer(img, True)
filePath = os.path.join(directory, imageName + "." + ext)
img.writeToFile(filePath, ext)
cmd.viewSet(front=True)
cmd.viewFit()
filename = "image"
dir = "c:/snapshots"
ext = "jpg"
imageName = filename + "_front"
grabViewport(dir, imageName, ext)
现在您可以拍摄该图像并在您的面板中进行设置了。
我正在 python 编写我的第一个脚本。它应该只是一个 2 选项卡脚本,在一个选项卡上会有角色选择器,在第二个选项卡上应该有一个带有面部 GUI 的相机视图。
我想摆脱红色圆圈菜单(您可以在此处看到 http://postimg.org/image/fozvc010x/)并以这种方式锁定视图,禁止缩放和平移。
我尝试在maya帮助上搜索,但对我来说不是很清楚。
我还附上了负责该视图的代码。
FacialGUI = cmds.formLayout()
FacialPanel = cmds.modelPanel(camera = "facial_cam")
cmds.formLayout(FacialGUI, e=True,
attachForm=[
(FacialPanel, "top", 0),
(FacialPanel, "left", 0),
(FacialPanel, "bottom", 0),
(FacialPanel, "right", 0)
])
cmds.setParent( '..' )
谢谢, 丹妮尔!
要摆脱红色圆圈菜单,在命令 modelPanel 中尝试将 menuBarVisible 标志设置为 False
FacialPanel = cmds.modelPanel(camera = "facial_cam", mbv=False)
使用命令 mel.eval("ToggleModelEditorBars")
可以切换编辑器栏的可见性。
如果你想锁定缩放和平移,你必须在相机对象上做。
编辑
不然你可以这样截图场景:
import maya.cmds as cmd
import maya.OpenMaya as api
import maya.OpenMayaUI as apiUI
def grabViewport(directory, imageName, ext="jpg"):
viewport = apiUI.M3dView.active3dView()
viewport.refresh()
img = api.MImage()
img.create(1280, 720)
viewport.readColorBuffer(img, True)
filePath = os.path.join(directory, imageName + "." + ext)
img.writeToFile(filePath, ext)
cmd.viewSet(front=True)
cmd.viewFit()
filename = "image"
dir = "c:/snapshots"
ext = "jpg"
imageName = filename + "_front"
grabViewport(dir, imageName, ext)
现在您可以拍摄该图像并在您的面板中进行设置了。