Разбить пунктир на отдельные отрезки в Illustrator

  • Автор темы Автор темы drawline
  • Дата начала Дата начала
Как раз то и есть, только было это летом 2015. В Corel-е (13), кстати, через Trim все и решилось. Но на тот момент больше работ было в Illustrator (CS2), поэтому и встала такая задача, да и перекидывать постоянно из одной программы в другую...
Ну в иллюстраторе разве аналогично не получится?
 
Ну в иллюстраторе разве аналогично не получится?
Вся фишка в том, что Corel-то "курвит" пунктир в группу объектов сразу (Convert Outline to Object), а в Illustrator-е Flatten Transparency это не явное преобразование для подобной разборки пунктира (речь о CS2, прошу заметить). В дополнение, Illustrator не понимает, как можно линию обрезать объектом, что легко можно сделать в Corel. Потому и геморрой. Но даже теперь, даже в CC без описанного алгоритма в некоторых случаях будет не обойтись. Надеюсь, кому-то пригодится.
 
Последнее редактирование:
В общем, самое дельное решение оттуда - назначить толщину 0.0001 pt и сделать Expand
 
Последнее редактирование модератором:
В общем, самое дельное решение оттуда - назначить толщину 0.0001 pt и сделать Expand

Оно вроде не всегда срабатывает. Там могут пропасть некоторые сегменты, насколько я помню, а некоторые так и остаться многоугольниками.
 
Последнее редактирование модератором:
Оно вроде не всегда срабатывает.
Именно. Из-за особенностей математического выражения кривых в компьютерной графике.

Я бы оставил свой вариант и предложенный КоньЕстДетей с помощью Brush, остальное обсуждение просто не имеет смысла и практического применения.
К тому же первый способ, как мне кажется, достаточно легко может быть реализован с помощью скрипта, тем кто в этом спец, конечно.
Забавно, что такое, на первый взгляд, простое действие Разбить пунктирную линию на штрихи вызывает такие большие трудности и дискуссии.
 
Последнее редактирование:
Скриптом гораздо проще закодить преобразование экспандированной кривой в линию
 
А вообще, раз уж мы заговорили о скрипте, то проще всего разбить линию на участки заданной длины и убрать промежутки между ними.
 
Последнее редактирование модератором:
с адобовского форума?
Вот "оттуда":
"1- create a single line i.e. 12pt long 1pt thick
2- make a pattern brush from the line
3- In pattern brush options dialog box, put 50% in spacing box.
4- apply the pattern brush to your desired shape.
5- you can still adjust the gaps in spacing box and hit apply to stroke
6- You can also change stroke weight !
7- go to object -> expand appearance."

По сути, это просто чуть более расширенное пояснение третьего способа, но, "поигравшись" - появились вопросы:
  1. Почему не получается выставить в опциях Start и End? Хотелось бы иметь возможность начинать и заканчивать незамкнутую линию штрихом, а не промежутком;
  2. Не понял, чем отличаются Stretch Fit (Растягивать до заполнения) от Approximate Path (Усреднять путь).
    (прим. Add space to fit - Добавлять интервалы до заполнения - здесь все понятно).

    2018-09-30_13-07-00.png
 
Я, наверное, сейчас глупость спрошу, а как этот пунктир этот как в постскрипт записывается?
 
А в level 1? ;)
 
Не разумею, чем вам все таки не угодил данный способ?
  1. Set thickness of line to 0.0001 pt
  2. Menu Object > Expand (if greyed out, choose Object Expand Appearance first, as the object has appearance attributes applied to it)
  3. Set thickness back to original value

Проверил у себя - прекрасно разбивает на отрезки. Единственно что - потом надо полученную группу раскомбинировать и отрезки разомкнуть
 
Ты просто не заметил что некоторые отрезки на самом деле фигуры с заливкой
 
чем вам все таки не угодил данный способ?
Это скорее побочные эффекты "несовершенства", точнее особенностей алгоритма, так как Illustrator вроде не оперирует такими величинами - 0,000035 мм. Да и не только он. И ввиду того, что в подобных программах сплошь и рядом используется аппроксимация, такие величины просто будут местами "удалены" из-за сопоставимости с ее (аппроксимации) погрешностями, отчего, кстати, при булевых операциях можно наблюдать получающуюся разорванность контура.
По этим причинам, думаю, такой способ даже рассматривать не стОит. Это как с пунктиром точками несколько ранее в "Хитрости, приемы и советы" - вот задавать "0" для длины я бы скорее всего не стал "от греха подальше". Самую минимальную взял бы, ну например 0,001 достаточно.
Мне кажется, это несколько не комильфо. )) Скорее это баги программы. Как считаете?
 
Последнее редактирование:
Типа того
вкцйкц.gif
 
Самую минимальную взял бы, ну например 0,001 достаточно.
Вот не надо самодеятельности, умные люди с адобовского комьюнити нашли за вас минимальный порог, начиная с которого данный метод работает
. It does NOT work with a thicker line (like 0.001)