[AI CS4-CS6] Перемещение объекта с Opacity mask

  • Автор темы Автор темы hhandy
  • Дата начала Дата начала

hhandy

Участник
Топикстартер
Сообщения
38
Реакции
0
Добрый день.
При перемещении объекта с маской прозрачности меняется только положение самого объекта, элементы маски остаются на прежнем месте. Пробовал через присвоение координат и через translate. Как можно их двинуть совместно? А если такой элемент в группе и нужно изменить положение группы?
 
Мало данных
Как именно вы передвигаете объект, можно как можно более полный фрагмент кода?
 
Мало данных
Как именно вы передвигаете объект, можно как можно более полный фрагмент кода?
Да элементарно пока - просто изменяю положение выделенного элемента
JavaScript:
var doc = app.activeDocument;
var sel = doc.selection;
sel[0].position = [200,-150];

или sel[0].translate(50,50);
 
Каков тип sel[0] ?
 
Тестирую на pathItem, groupItem. В итоге объект будет в группе, те ориентируемся на нее
 
То есть вы передвигаете pathItem?
Однозначно маска двигаться не должна у pathItem нету маски по определению
В случае с groupItem маска тоже не движется? То есть, если объект с маской прозрачности сгруппировать с другими объектами (да хоть с самим собой) и попробовать переместить - будет двигаться с маской? Если да - то это костыльное решение если нет то это чертовски странно и я сходу не придумаю такому неведомому факту вразумеительного объяснения, надо копать вглубь.
 
Чтобы не осталось недопониманий
слева - объект с маской, справа - результат перемещиня группы
sel[0].translate(50,50);
Screenshot_8.jpg
 
Это сильно плохо, самый худший вариант из всех - подобная проблема в свое время заставила меня перейти со встроенных функций трансформации на вызов формируемых на лету экшнов, что ужасно портит код :(
 
А, вспомнил еще один вариант костыля - создать символ из маскированного объекта и двигать его
 
А как хоть докопаться до этой маски?
 
Тото и оно что никак вы не определите. :(
 
  • Спасибо
Реакции: hhandy
Мда... печально (
спасибо!
 
А цель то какова? :) Если просто переместить выделенный объект с маской скриптом, то это вроде как можно сделать... хоть и слегка заднепроходно :)
 
Последнее редактирование:
Через клипборд, вырезать вставить, перед этим поставив doc.views[0].centerPoint = [x,y] x,y - координаты куда он его влепит на артборде :)
 
Через клипборд, вырезать вставить, перед этим поставив doc.views[0].centerPoint = [x,y] x,y - координаты куда он его влепит на артборде :)
Ну ты уж совсем загнул! Через генерируемый экшн все ж проще
 
Через генерируемый экшн все ж проще
:)) Зато не портит код :)

Не по теме:
А вообще это ужасно, что не докопаться до маски... при всем при этом родителя выделенной маски получить можно, а вот обратиться к нему хренушки выходит :)
 
Перевставление через клипбоард портит код сильнее ;)
Вангую что лажать с координатами будет по черному, вдобавок, копипаст системнозависим и нетороплив