список выбранных элементов в shapeEditor - PullRequest
2 голосов
/ 02 февраля 2020

Как мне вывести список выбранных элементов в редакторе форм {blend}? Я пытался использовать blendShapePanel , blendShapeEditor и shapeEditor , запрашивая следующие строки (панели, редакторы или windows):

  • blendShapeEditorTreeViewSelection
  • shapePanel1
  • shapePanel1Window

но напрасно.

Примечание: я получил вышеуказанные имена с помощью команды lsUI

1 Ответ

0 голосов
/ 05 апреля 2020

Вы можете использовать MEL pro c getShapeEditorTreeviewSelection. Чтобы получить текущие выбранные формы наложения:

getShapeEditorTreeviewSelection(1);
// Result: blendShape1 //

Затем, чтобы получить выбранные на данный момент цели:

getShapeEditorTreeviewSelection(4);
// Result: blendShape1.0 blendShape1.1 //

Это возвращает форму наложения и индекс каждой выбранной цели. Чтобы преобразовать индекс, мы можем сделать:

string $selectedTargetL[] = getShapeEditorTreeviewSelection(4);
string $convertedTargetL[] = {};
for($target in $selectedTargetL)
{
    string $subStrings[] = stringToStringArray($target, ".");
    $convertedTargetL[size($convertedTargetL)] = eval("aliasAttr -q " + $subStrings[0] + ".w[" + $subStrings[1] + "]");
}
print $convertedTargetL;
pSphere1
pSphere4

И это даст вам все, что было выбрано. Если вам нужна дополнительная информация о команде, в Autodesk есть много документации для этого pro c в файле, указанном с MEL whatIs getShapeEditorTreeviewSelection. Хотя я не уверен, что смогу опубликовать это здесь.

Я нашел эту команду, создав смешанные фигуры с помощью редактора форм и выполнив поиск <maya install directory>/scripts процедур, отображаемых в редакторе сценариев, а затем выполнив поиск по аналогичным командам.

Надеюсь, это поможет!

...