Render.ru

CV curve -> curves как ?

#1
Необходимо разбить созданную ломаную CV curve (одну) во множество курв... нужно для создания одежды (сшивать плэйны)... хелп весь перерыл,но безрезультатно :(

заранее спасибо
 
#2
Вот это рванул! Конечно, в хелпе ничего про это не сказано - табу... (специально для макс-юзеров)
 
#3
Выделяешь EP (или Curve Point-ы) курвы, где она должна делиться, Edit Curves -> Detach Curves. Должно помочь. :о)))
 
#4
Он видимо имеет в виду, что нужно разбить кривую первого порядка на сегменты. Это делается несложным скриптом.
 

Seerge

Активный участник
Рейтинг
19
#6
в майе все!!! делается скриптом, открой скриптэдитор и увидишь, что все действия - скрипты. Но для того, чтобы разбить кривую (как писали выше) существует такая команда detach curve, но при этом на закрытой кривой должно быть выделенно минимум две edit points, а на открытой - одна. В хелпе про это алиасы, конечно же как и обо всем другом, молчат.
 
#7
Я дико извиняюсь, но как можно разрезать бублик на две части, распилив его ножиком только с одной стороны от дырки? Может, я чего-то недопонимаю... :о)))))

З.Ы. Я себе представила размеры хелпа... :о)))
 
#8
именно! кривую первого порядка я и имел ввиду. И где можно увидеть этот скрипт? mel хоть и изучаем, но забрались пока не слишком глубоко...
 
#9
Не, видимо мне понять не дано, почему нельзя разбить кривую первого порядка ручками... Скриптом тоже можно, несомненно... Как тут верно рассказали, оказывается, все в Майе "все!!! делается скриптом, открой скриптэдитор и увидишь"...
 
#10
string $Cur[] = `ls -sl`; // массив из выделенных кривых
int $num = size ($Cur); // количество кривых
for ($i=0; $i<$num; $i++)
{
string $curEp = $Cur[$i] + ".spans";

// количество спанов кривой, а соответственно и EP точек минус первую...
int $eps = `getAttr $curEp`;

// кол-во EP точек, которые надо выделить для детача
int $epsDetNum = $eps - 1;

if ($epsDetNum>0)
// если равно 0, то значит у кривой один спан и детачить нечего
{
string $epsDet = $Cur[$i] + ".ep[1:" + $epsDetNum +"]";
detachCurve -replaceOriginal 1 $epsDet;
}
}

у меня работает... проверяй... :о))) Возможно громоздко, но как умеем... :о)))
 
Сверху