问题标签 [pymel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
519 浏览

python - 在窗口中创建动态按钮

我正在尝试根据场景中存在的灯光数量在窗口中创建按钮。当我按下创建按钮时,我收到此错误(#RuntimeError: No object name specified.#):

回溯(最近一次调用最后):文件“C:\Program Files\Autodesk\Maya2015\Python\lib\site-packages\pymel\internal\factories.py”,第 779 行,回调 res = origCallback( *newargs )

文件“”,第 31 行,在 lightLst 中

文件“”,第 17 行,在 updateList 中

文件“C:\Program Files\Autodesk\Maya2015\Python\lib\site-packages\pymel\internal\factories.py”,第 806 行,在 newUiFunc 中返回 beforeUiFunc(*args, **kwargs)

文件“C:\Program Files\Autodesk\Maya2015\Python\lib\site-packages\pymel\internal\factories.py”,第 947 行,在 newFuncWithReturnFunc res = beforeReturnFunc(*args, **kwargs) 中

文件“C:\Program Files\Autodesk\Maya2015\Python\lib\site-packages\pymel\internal\pmcmds.py”,第 134 行,在 WrappedCmd res = new_cmd(*new_args, **new_kwargs)

RuntimeError: 未指定对象名称。#

我有点坚持,我找不到适合我的答案。这是代码:

如果有人能给它一些启示,我真的很感激它!

0 投票
1 回答
289 浏览

for-loop - Pymel 类型错误:文件

我正在尝试选择一个对象并显示行编辑

from PySide import * from pymel import *
import pymel.core as pm import maya.cmds as cmds import maya.mel as mel import maya.OpenMaya as OpenMaya

0 投票
1 回答
1296 浏览

python - 在 Pymel / Python 中更新或“刷新”文本字段

目前在 Maya 中编写一个简单的脚本来获取相机信息并将其呈现在 GUI 中。该脚本打印所选相机的相机数据没问题,但是我似乎无法让它在按下按钮时用数据更新文本字段。我确定它只是一个回调,但我不知道该怎么做。

继承人的代码:

谢谢!

0 投票
2 回答
4304 浏览

python - 如何导入 PyMEL 核心?

我正在导入maya.standalone、初始化它,然后导入pymel.core as pmc到我的 Maya Python 解释器中,该解释器在 powershell 中运行。在这一点上,我收到了很多警告。在我打电话后:xform, shape = pmc.polysphere(),我收到警告:name 'xform' is not defined

这是 pymel 导入的输出

我正在阅读《实用 Maya 编程》一书,这是书中的文字:

现在我们将开始深入研究 Maya 和 PyMEL。让我们从在 mayapy 解释器中初始化 Maya 开始,这样我们就可以使用更多的标准 Python 功能。我们通过调用 maya.standalone.initialize 来做到这一点,如以下代码所示:

pymel.core 的导入将自动隐式调用 maya.standalone.initialize,但我在这里明确地执行此操作,因此很清楚发生了什么。以后,您通常可以跳过对 maya.standalone.initialize 的调用,直接导入 pymel.core。

我们可以使用基本的 Python 发现很多关于这些代表 Maya 节点的 PyMEL 对象。例如,要查看任何一个对象的类型,我们可以使用内置的类型函数(我们将在本章后面更深入地研究类型)。

谁能解释我在口译员中遇到的错误并提供解决方案?

0 投票
1 回答
4382 浏览

python - 如何从 Maya 脚本中更改变形器的权重?

如何从 Maya 脚本中更改变形器的权重?

这个问题非常适合Pymelin Maya 2013,但如果不可能,我仍然有兴趣知道Python,MEL或使用 的答案C++ Maya-API

0 投票
2 回答
83 浏览

python - 这个 PyMEL 语句有什么作用?

这句话来自《实用玛雅编程》一书。作者后来继续使用 xform 和 shape 作为我理解的参数type()和函数。dir()

为什么/如何xform 和 shape等于 pmc.polysphere?...它们不是多余的吗?因为在实例化球体时无论如何都会创建变换和形状节点?这会在以后创建其他形状时引起并发症吗?

xform 在脚本编辑器中是蓝色的,这是什么意思以及如何将它用作变量的名称?

0 投票
1 回答
209 浏览

python - Python 类型方法和 Maya 变换节点上的类型函数有什么区别?

标题中的问题

示例代码:

0 投票
1 回答
309 浏览

python - 为什么在打印向量时隐式调用 str(vector)?

本段以下的所有内容均来自《实用 Maya 编程》一书。在倒数第二行中,作者说print带有参数的语句t隐式调用str(t),我想知道为什么,在第二个代码块中作者创建vect并将其分配给 value xform.translate.get(),他不能继续使用t哪个也分配给xform.translate.get()

突出显示的球体变换的平移值似乎是一个列表。它不是。翻译值是 pymel.core.datatypes.Vector 的一个实例。有时我们需要更积极地内省对象。我认为这是 PyMEL 犯错误的少数几个领域之一。调用 str(t) 会返回一个看起来像是来自列表的字符串,而不是看起来像是来自 Vector 的字符串。确保你有正确的类型。我花了几个小时寻找使用 Vector 而不是列表的错误,反之亦然。

0 投票
2 回答
1085 浏览

python - Maya Pymel:将 fileDialog2 的返回值传递给 UI 文本字段

我无法理解如何使用 fileDialog2 的“optionsUICommit”标志。当用户在文件对话框中点击“保存”时,我想运行命令on_save_dialog_file。但从帮助文件来看,似乎要我使用 MEL 命令。

http://help.autodesk.com/cloudhelp/2016/ENU/Maya-Tech-Docs/CommandsPython/index.html

仅限 MEL。该字符串被解释为 MEL 回调,在成功关闭对话框时调用。如果用户取消对话框,或者使用窗口标题栏控件或其他窗口系统方式关闭窗口,则不会调用它。回调的形式为: global proc MyCustomOptionsUICommit(string $parent)

parent 参数是使用 optionsUICreate 标志添加控件的父布局

这似乎……很复杂。

这是我的代码。

即使尝试作为一个奇怪的 Mel->Python 命令也不起作用。ocm="python \"on_save_dialog_file()\";"

在对话框中设置保存文件后,是否有更简单/更直接的方法来运行命令?

0 投票
1 回答
1207 浏览

math - 如何在两个对象之间找到相等距离的点?

我试图在 3D 空间中的其他 2 个点之间找到相等距离的点。例如,我的场景中有 2 个立方体。我想用 Pymel 在这两个球体之间的相等距离​​处添加 5 个(或 3 个或 80 个......)定位器。

我可以很容易地找到球体之间的中间点,如下所示:

但是,我似乎无法弄清楚如何在两个球体之间的线上获得多个点。

我试过这样的事情:

这确实在两个球体之间添加了 5 个定位器,但它们不在连接 3D 空间中的两个点的线上。

谁能指出我正确的方向?