Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
В рамках улучшения понимания maxscripthelp, разбираемся с одним из методов.Содержание книги
Поиск на нашем сайте Модификатор EditPoly Из справки MaxScript: Geometry Data Methods <index>GetEdgeVertex <index>edgeID <index>end node:<node> node default value: undefined -- undefined - значение ноды по умолчанию Returns the indexed vertex shared by the specified edge. -- Возвращает индекс вершины, используемой ребром.
Разбираемся: Работающий код: p = Plane() -- создадим примитив плоскость addModifier p (Edit_Poly ()) -- применим модификатор Edit_Poly obj = $.modifiers[#Edit_Poly] -- засунем модификатор в переменную obj obj.GetEdgeVertex 1 1 -- Вернётся 6. Возвращается индекс первой из двух вершин указанного ребра obj.GetEdgeVertex 1 2 -- Вернётся 1. Возвращается индекс второй из двух вершин указанного ребра obj.GetEdgeVertex 39 1 -- Вернётся 25. Возвращается индекс первой из двух вершин указанного ребра obj.GetEdgeVertex 39 2 -- Вернётся 24. Возвращается индекс второй из двух вершин указанного ребра
Как видим, конструкцию из хэлпа, <index>GetEdgeVertex <index>edgeID <index>end node:<node> не возможно использовать прямо в том виде, как она представлена в качестве маски для подстановки переменных, поэтому разложим всё по порядку. <index> -- возвращаемое значение (в данном случае индекс вершины) GetEdgeVertex -- функция, которой передаются параметры <index>edgeID -- индекс ребра <index>end -- одна из двух вершин указанного ребра (в данном случае она есть или 1 или 2) node:<node> -- нода, или сам объект, в котором применяется эта функция
А вот получается как из этого можно сконструировать маску для сборки кода: <node>. GetEdgeVertex <index>edgeID <index>end <> - такие скобки в хэлпе означают, что это обязательный параметр, необходимый для работы функции. [] - квадратные скобки (если такие есть) - это опциональный (необязательный, дополнительный) параметр
Аналогичный метод есть и в Editable Poly Раздел Get Edge <index><EditablePoly>.GetEdgeVertex <index>edgeID <index>end Returns the vertex index used by the specified edge. -- Возвращает индекс вершины, используемой ребром. Since an edge has two vertices, the end argument is needed to define which of the two vertices of the edge to get. -- Поскольку ребро имеет две вершины, конечный аргумент нужен, чтобы определить, какой из двух вершин ребра получить.
EXAMPLE: p = convertToPoly(Plane()) --create a Plane, convert to Epoly p.GetEdgeVertex 1 1 --returns vertex 6 p.GetEdgeVertex 1 2 --returns vertex 1 p.GetEdgeVertex 4 1 --returns vertex 1 p.GetEdgeVertex 4 2 --returns vertex 2
_______________________________________________________________ А теперь рассмотрим ещё один грамм гранита науки касательно справки MaxScript и использования модификатора Edit_Poly
Из официальной справки MaxScript: <bitArray>GetSelection <enum>meshSelLevel node:<node> meshSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} -- параметры, один из которых нужно передавать функции GetSelection. node default value: undefined -- значение ноды по умолчанию
Returns the specified selection as bitArray value. Возвращает битовый массив выделенных объектов (подобъектов) If node: is supplied, returns the selection from the modifier instance assigned to the specified node. Если нода (объект): передана, возвращает выделение из подчинённого модификатора, относящимися к указанным нодам.
Пример кода: CurO = modPanel.getCurrentObject() -- в переменную помещаем объект панели модификаторов CurO.getSelection #Edge -- получим массив выделенных рёбер
Как видим, предложенная в справке конструкция <bitArray>GetSelection <enum>meshSelLevel node:<node> не может служить как маска для подстановки переменных. Но глядя на пример правильного применения, можно разобраться, как всё же нужно это использовать. Как то так
Таким же образом можно разбираться и с другими аналогами в хэлпе MaxScript _______________________________________________________________ Организуем структуру struct Menu -- в которой перечисляем параметры ЧЕРЕЗ ЗАПЯТУЮ _______________________________________________________________
|
||
|
Последнее изменение этой страницы: 2021-04-13; просмотров: 153; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.176 (0.007 с.) |