Макросы для СС2
Название | Разрывы на линии |
Автор | Morgan Olden |
Команда | randombreaks |
Описание | Этот макрос ставит вместо указанной линии или плавной линии разрывы различной длинны.
|
Инструкции | Другие объекты пересекающие рабочую линию нарушают работу макроса. Рекомендую оставить рабочий объект в отдельном слое, спрятать остальные, а по окончании работы макроса переместить результат в нужный слой. |
Код
MACRO randombreaks
ecoff
gv mcominskip 0
gv mcomaxskip 1
gv
mcomingap 0
gv mcomaxgap 1
gv mcominskip ^DMin segment length: (0)
gv
mcomaxskip ^DMax segment length: (1)
gv mcomingap ^DMin gap length: (0)
gv
mcomaxgap ^DMax gap length: (1)
:mcodoagain
ge mcoentity ^DSelect line to
split:
iferr mcodone
gdist mcolen % 0 mcoentity % 1 mcoentity
gp mcoP1
% 0 mcoentity
:mcoloop
ge mcoentity mcoP1
gdist mcolen % 0 mcoentity %
1 mcoentity
gv mcounit 1/mcolen
RANDOM mcogap
RANDOM mcoskip
gv
mcoskippc (mcominskip+((mcomaxskip-mcominskip)*mcoskip))*mcounit
gv mcogappc
((mcominskip+((mcomaxskip-mcominskip)*mcoskip))+(mcomingap+((mcomaxgap-mcomingap)*mcogap)))*mcounit
ifp
mcogappc-100 mcodoneloop
gp mcoP2 % mcoskippc mcoentity
gp mcoP3 %
mcogappc mcoentity
break mcoentity mcoP2 mcoP3
gp mcoP1 mcoP3
go
mcoloop
:mcodoneloop
go
mcodoagain
:mcodone
econ
endm
Copyright © AD&Den`s Lair Все права защищены.