Видео по проблематике макросов

Обновление руководств пользователя

В связи с тем, что я начал распространять макрос «Конструктор узоров», который не самый легкий в понимании, очень актуальным стал вопрос на создание руководства пользователя! Да и руководство для «Конструктора шкатулок» так же не обновлялось ну очень уж давно, ещё с середины 2018 года. Поэтому, всю предыдущую неделю я посвятил созданию и обновлению руководств. Как обычно, они доступны для прочтения в справочном разделе . Ну или вот прямые для скачивания:
Руководство пользователя «Конструктор шкатулок»

Руководство пользователя «Конструктор узоров»

Задаваемая средняя линия. Гильошь — бордюр. Обновление 0.64

Это обновление макроса Конструктор узоров, за номером 0.64, будет достаточно глобальным, и статья о нём вышла большой. Но, в ней я стараюсь пояснить многие тонкие моменты, которые нашёл в ходе работы и поэтому, надеюсь, она будет полезной!
Основные нововведения  это: линейный гильош, который иначе ещё называют «бордюр» и добавлена возможность задавать модулирующую среднюю линию в качестве независимой отдельной линии. Начну со второго.
Что делает модулирующая линия? Давайте рассмотрим на примере. Вот простейшая розетка, с такими вот параметрами и ортогональным притяжением (это означает, что модулирования заполняющей кривой не происходит!).
Если убрать галочку у пункта «Ортогональное притяжение к границами», то картинка изменится существенно!

Внешне выглядит очень хаотично, но главное, даёт понять наглядно, что происходит. А именно — направление заполняющей кривой теперь отклоняется дополнительно согласно нормали к кривой, которая образована как среднее между линиями образующими границу гильоша. Звучит сложно (и это и правда понять не легко!), но в целом разобраться можно. Ясное дело, нам такой узор не особо нужен, но и отрегулировать его сложно, так как центральная модулирующая линия напрямую зависит от амплитуды кривых (да и их частоты), обрамляющих гильош. А значит, тяжело что либо с этим поделать напрямую. Но, если задавать независимую центральную линию, то появляется возможность полностью контролировать модуляцию заполняющей линии:
Хорошо видно, что розетка преобразилась и стала и не скучной, и не хаотично выглядящей.
Чтобы добиться этого, надо поставить чекбокс «Задаваемая центральная линия», то разблокируется кнопка «Выбор централи», в которой появляется и задаётся требуемая линия.  При нажатии на неё, появляется форма «Узор»:

В принципе, она полностью повторяет задание линии обрамления (по существу используются те же самые алгоритмы и возможности). Но есть очень важный момент: надо очень аккуратно задавать значение параметров периода и главное — амплитуды! Период желательно задавать кратный периодам обрамляющих кривых. А амплитуда в очень редких случаях должна быть больше  1/5 или даже 1/10 максимальной амплитуды у любой из обрамляющих кривых! А наилучшие результаты выходят при значениях меньших 1 (иногда намного меньших)! Иначе, вместо модуляции алгоритм создаст хаотическое награмождение кривых!
Можно поэкспериментировать с разными типами кривых и их параметрами:

Не всегда результат получается реально красивым, но как говорится — есть широкое поле для эксперимента и для создания чего то своего уникального!
И напоследок, что касается централи для именно розеток, хочу добавить, что эксцентриситет кривой будет средним между эксцентриситетами внешней и внутренней обрамляющими кривыми.

Бордюры.

Бордюры, по существу используют тот же алгоритм построения что и розетки, и отличаются тем, что вместо радиуса теперь используется два параметра: длина огибающей (и соответственно бордюра) и смещение. И есть два важных пункта в задании параметров огибающих линий:

    • Длина линий огибающих должна совпадать
    • Верхняя линия должна быть смещена выше нижней, причем желательно таким образом, чтобы форма огибающей кривой, с учётом заданной ей амплитуде, не пересекалась с формой нижней огибающей.

Иначе, алгоритм даст сбой!
В остальном, в принципе работа с кривыми повторяет работу с розетками:

Работа с централями так же повторяет (почти!) работу с таковыми у розеток:

Конечно, на этом возможности и особенности работы с бордюрами далеко не разобраны, но это будет лучше сделать в видеоуроках, которые я надеюсь скоро выйдут!

Небольшая работа над ошибками (обновления КШ 1.14 и КБК 0.42)

Меня всегда радует положительная обратная связь с моими пользователями! Особенно, если они помогают мне найти ошибки. Вот и на этот раз, было найдено несколько ошибок в Конструкторе бумажных коробок и одна в Конструкторе шкатулок. Я сделал исправления и выкладываю обновления.
В Конструкторе шкатулок, неверно рассчитывалась высота стенок в прямоугольных изделиях (ящики и шкатулки), когда задавался расчет внешних размеров по заданным внутренним, в условии, когда отсутствует крышка.
В Конструкторе бумажных коробок, неверно рисовались нижние клапаны и одна из крышек в склеиваемых коробках, коробка номер 2 и исправил ошибку расчёта клапанов в простых коробках, коробка номер 4.

Так же хочу добавить, что пользователем моего макроса Николаем, ака Claus, с моего разрешения был создан телеграмм канал t.me/cncsoft, посвященный макросам. Кому так проще следить за новостями — подписывайтесь!

Видео обзоры макроса «Конструктор шкатулок» Общий обзор и изделие «Ящик»

Очень долго не решался этого сделать, но в итоге, я всё таки пришёл к тому, что проще записать видео, и объяснить что и как работает в макросе, чем долго и нудно отвечать на одни и те же вопросы. Прошу сразу прощение за не слишком качественную речь, так как дикторскому искусству не обучался, но надеюсь, мысли свои донести смог.
Поскольку видео получились длинными. пришлось их разбивать на части.
Первый обзор посвящён общим вопросам и краткому обзору всех видов изделий. генерируемых макросом.

Во втором, я описываю изделие «Ящик» и рассматриваю почти все моменты, которые нужно знать, чтобы понимать, как генерируется этот вид изделия.

Надеюсь, видео хотя и длинные, но достаточно актуальные чтобы снять большую часть вопросов, и помогут тем, кто только начинает работать с макросом. Ну, и конечно, надеюсь станет понятнее что и как было задумано мною и почему реализовано тем или иным способом, а не так, как мне предлагают.

 

Ножки у прямоугольных изделий. Обновление 1.13

Обновление добавляет в прямоугольных изделиях (коробках и шкатулках), возможность добавить ножки, чтобы приподнять корпус изделия. Для коробок наверное это не слишком актуально, а вот в разных шкатулках такая возможность встречается достаточно часто. Но, важным моментом является тот, что конечная высота изделия не учитывает высоту ножек! Так же должен предупредить, что при наличии перегородок с креплением ко дну, макрос так же не производит проверку на пересечение креплений перегородок и ножек! Так что, следите внимательнее за итоговым чертежом и корректируйте настройки смещения шипа при таких ситуациях. Кстати говоря, смещение шипа, дабы не плодить лишних полей настроек, отвечает ещё и за смещение ножек от места крепления стенок по направлению к центру дна изделия!.
Добавляются ножки очень просто. На вкладке «Дно» появилась кнопка «Сделать ножки»При нажатии на неё, можно будет выбрать (или отключить) создание ножек, а так же , по каким сторонам их генерировать:

Пока разновидностей ножек три.  Они все простые, но думаю, в дальнейшем я немного разноображу их внешний вид. Ширина «пяток» во втором и третьем типе ножек, равна высоте ножки (опять же, чтобы не плодить лишних параметров).

Крепление ножек всегда внутри стенок. Правая и левая ножки, при наличии передней и задней, по длине становятся уже на толщину материала. Толщина же материала ножек, принимается равной толщине материала передней стенки изделия.
На чертеже ножки генерируются «над» соответствующими боковыми стенками.
Вот такое незатейливое, но надеюсь, полезное обновление.

Гильошь-розетка. Обновление конструктора узоров 0.58

«Ударим работой по карантину!»

В.Шумаков

Данное обновление не совсем относится к обычной тематики моего софта для станков чпу, но с другой стороны, никто ведь не говорит, что гильошные узоры нельзя к примеру выгравировать, или например распечатать на бумаге как раскраску материала и потом порезать из бумажную коробку!
Итак, как понятно из названия заметки, новое обновление направлено на интересный тип оформления, которое применяется очень часто например на денежных купюрах — а именно гильошным сеткам. Почему они гильошные, и как были изобретены, можно посмотреть в той же Википедии.  Данное обновление (0.58), позволяет создавать как полноценную гильошную сетку на основе параметрических формул, так и не совсем честный гильош, основанный на перетекании форм, инструмента Blend CorelDraw. Скажу сразу, на текущий момент, правильные гильоши реализованы только на базовом уровне, но в принципе, достаточно полно, чтобы начать ими пользоваться в полной мере. Несомненно, я продолжу расширять функционал, до уровня более профессиональных инструментов, представленных на рынке (хотя понимаю что и не составлю им конкуренции, но и цели у меня не эти).

Итак, гильош как и все остальные типы паттернов, создаётся отдельной формой:
На текущий момент можно создавать две перетекающие розетки. Возможной я добавлю ещё, но пока не вижу надобности. Каждое заполнение розетки определяется двумя ограничительными контурами, которые я буду называть границами. На текущий момент, доступно три типа границ:

  • видоизмененные вершины у многоугольника по встроенным механизмам CorelDraw
  • многоугольники с различными кривыми на гранях
  • параметрические кривые заданные тригонометрическими формулами


Первые два типа будут хорошо знакомы пользователям Конструктора шкатулок, так как они в общем-то взяты оттуда. Третий это просто синусоида запущенная по окружности. Ограничений на использование сочетаний в качестве границ нет! И это позволяет создавать достаточно нетипичные узоры.

Внутреннее заполнение, между созданными контурами, как я уже писал выше, двух типов:

  • перетекание от одного контура к другому средствами CorelDraw
  • заполнение параметрически заданными кривыми

Причем, ограничений на совместное использование этих заполнений так же нет!

Или даже так:

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

Само собой,  что без ошибок в макросе не обошлось (нашел пару пока делал галерею примеров). Да и вообщем-то, достаточно сложно в понимании что как формируется. Например, некоторые сочетания параметров приводят к хаотическому нагромождению кривых, вместо красивой сетки. Так что, наверное придётся сделать несколько уроков. Но в целом, наверное можно признать что более менее работает.
Далее будет линейные гильоши, тангирные сетки и целый бланк (тангирное заполнение, гильошные границы и розетка в центре) . Но когда дойдут до этого руки — пока не знаю. Надеюсь, в долгий ящик не отложится.

Усовершенствованная защелка. Обновление 1.12

Мне посоветовали внести некоторые конструктивные изменения в конструкцию защелки, для соединений прямоугольных изделий. Суть нововведения (его можно включать или пользоваться старым) в том, что в основании язычка защелки, делается круглый подрез, который по идее, должен облегчать сгибание язычка и тем самым упрощать процесс сборки и разборки таких изделий. Включается данная новелла в общих настройках макроса. А поскольку, я достаточно много вынес туда подобных настроек, я понял, что когда всё на одной форме, то и найти сложнее, и как то логика работы страдает. Поэтому, на форме общих настроек я сделал разделение по вкладкам. Нужную настройку можно найти на новой вкладке дополнительные настройки.

В итоге, на чертеже, получим такой вариант:

Так же я исправил ошибку в шкатулке с накладками, которая заключалась в том, что при указании диаметра луча лазера равным нулю, в накладных пластинах появлялась ошибка формирования чертежа.

Языковое обновление макросов. Встроенный английский язык интерфейса пользователя

Сегодня небольшая, но важная заметка. Для русскоговорящих пользователей, данное обновление не особо  и нужное, но мне оно весьма важно! У меня периодически появляются пользователи, из далёкого зарубежья (были например из Бразилии, ЮАР, Португалии, Италии, Израиля, Китая и т.д.). Им конечно использовать русскоязычный интерфейс проблематично. Для макроса конструктор шкатулок у меня есть файл языкового перевода на английский язык, но всё таки было более желательными иметь хотя бы английский интерфейс прямо «из коробки». Чем я собственно и занимался последнюю неделю. В итоге, теперь зарубежные пользователи могут использовать макросы на английском языке, без необходимости использования внешний файл перевода Eng_lng.ini!

Смена языка интерфейса на английский
Надеюсь, это существенно расширит географию использования моих разработок!
Номера версий со встроенным интерфейсом:
Конструктор шкатулок 1.11
Конструктор бумажных коробок 0.41
Конструктор узоров 0.52

Обновление 0. 40 Конструктора бумажных коробок. Простая коробка с отдельной крышкой

Вслед за декоративной коробкой с откидными бортиками, решил добавить и аналогичную коробку, но со склейкой. Собственно, особо писать тут ничего. Просто покажу где выбирать:
и каков чертёж:

Делаем подарочную коробочку к 8 марта. Обновления макроса Конструктор бумажных коробок 0.39

После волнительного для меня падения моего хостера, в результате которого этот сайт был недоступен с 2 по 5 марта, я продолжил работу над маросами, и сделал небольшое добавление к макросу «Конструктор бумажных коробок». Заключается оно в добавлении простой, но довольно популярной коробки для поздравлений, с крышкой и откидными стенками. Я до этого вручную уже несколько раз делал такие коробки по самым разным случаям, но решил в итоге, что это будет достаточно неплохим добавлением в коллекцию проектируемых изделий макроса для бумажных форм. Тем более, я давно ничего туда не добавлял. Ну а заодно, покажу как можно комбинировать работу этого макроса, с моим новым макросом «Конструктор узоров» (версия 0.51).
Сразу покажу, что получится в итоге:
Внешне неказисто, поскольку я не готовился особо к этому  уроку, и вырезал не из скрап бумаги, а из того что было — плотных листов желтого и розового цветов размера А4. Но если использовать именно хорошо оформленную бумагу, да ещё добавить что-нибудь в стиле скрапбукинга или декупажа, то получится конечно совсем другое дело! Но это уже вне интересов этого блога.

Итак, преступим. Перво-наперво, открываем в кореле макрос «Конструктор бумажных коробок» версии 0.39 и в разделе «Декоративные коробки» выбираем новый тип коробок:

Поскольку, мой плоттер может резать не слишком большие листы, я изначально выбрал габариты коробочки как 80 на 80 на 80мм (правда, потом я понял что ошибся, так как развертка вышла больше стандартной ширины листа А 4, а скрапбумаги с размерами 30.22мм не оказалось, но я покажу как я выкрутился чуть ниже). В доп. настройках надо ещё указать что число внутренних вкладышей 1 (то есть внешняя стенка, плюс ещё одна внутренняя).

Так же, задаём высоту крышки в 20 мм. Это оказалось довольно много , но это я понял уже после сборки. Но вообще, чем больше, тем надёжнее будут фиксироваться клапаны стенок в собранном состоянии!
Делаем чертёж:

В целом всё просто, и если есть красивая скрап бумага в тему подарка, или же будут делаться наклейки на клапаны коробки и крышку, то на этом можно было бы и закончить с чертежами. Но у меня под рукой только обычная плотная цветная бумага, поэтому призову в помощь свой второй макрос  «Конструктор узоров»
Я хочу создать накладную розетку из сердечек на крышку, и такую же прорезку, (в инверсном виде), для стенок.
Замеряю размер крышки и стенок, и записываю что ширина крышки 82 мм а стенок- 80мм (крышка больше, так как должна вместить внутри после склейки толщину клапанов вклейки и сами стенки коробки).
Захожу в макрос узоров, выбираю радиальные узоры. Сразу ставлю размер по размеру стенок (проще так, чем дважды подбирать ещё и для крышки, тем более что разница в размерах не такая и большая) и выбираю элементом узора сердечко. Размер сердечка и число элементов по окружности и вдоль радиуса придётся подобрать вручную, с учётом того, что слишком мелкие элементы плоттер не сможет вырезать а просто помнёт и порвёт стенки.

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

Получше, но внутренний ряд не соединяется. Можно исправить либо задав другой коэффициент уменьшения элементов вдоль радиуса, либо изменив коэффициент изменения шага. Но внешние две окружности узоров меня вполне устраивают, а при изменении коэффициентов они неизбежно изменятся. Поэтому применю трюк с отрицательным смещением вдоль радиуса. Поставлю для начала -1мм:
Смотрю:

Ближе к цели, но всё равно мало! Значит поставлю -3 (с запасом!) и этого должно хватить, поэтому сразу сделаю и объединение в один узор:

То что надо! Но я получил узор только для разетки на крышку, а я хочу аналогичные добавить и на стенки! Значит, надо задать параметр присоединенной стенки, и задать отступ  в 3 мм (узор сместился от исходного размера  на -3мм  для получения слитности внутреннего ряда, и  значит надо компенсировать это смещение) :

Снова делаю чертёж:

То что он имеет такие большие границы — не важно, это специальная фича, дабы учитывать возможный разброс при вариациях, но это не про сейчас, поэтому просто не обращаем внимание! Тем более, я выделил чекбокс «копировать в буфер обмена» и нужный мне внутренний рисунок уже скопирован туда! Значит,я могу  перейти в исходный чертёж коробки и просто сделать вставку:

Дальше рутинно ровняю, дублирую 3 раза и снова  ровняю. Пока не выходит такой вот чертёж:
Дальше я начал по-детально переносить в программу с которой работает мой плоттер и как раз только тут понял, что я ошибся с размерами! Можно конечно по новой всё прогнать через макросы, но зачем? Я знаю, что мне надо получить размер детали с клапанами не более 200 мм. А у меня вышло 240. Значит, я могу изменить на какой то процент (благо Корел это позволяет), а затем этот процент применить ко всем остальным деталям. В итоге, я пропорционально уменьшу исходный чертёж. Попробовал 80% и получил 192 мм. Отлично! Хоть коробка и стала меньше на 20%, но в принципе для урока это не критично!
Дальше последовала резка и склейка:

А итог  я показал в начале!

В принципе, достаточно быстро и удобно. Точно такую же процедуру можно проделать и на лазерном станке. Но на моём углекислотном, мне  не нравится нагар. Хотя, он вроде как убирается сам собой если используется хороший компрессор на продувке воздуха, а не такой как у меня, от аквариума.  В общем, владельцам таких станков, думаю мои макросы также могут оказаться полезными!

Ещё хочу добавить, что в макросе «Конструктор бумажных коробок» (версия 0.39) изменена система контроля активации, она теперь более устойчива к оборудованию. Так же изменен а и система сохранения параметров. Теперь все параметры каждого изделия независимы и сохраняются отдельно! Так же исправлено несколько мелких багов.
В макросе «Конструктор узоров» (версия 0.51) исправлена ошибка в вариациях для радиальных узоров. При вариации смещений вдоль окружности, не учитывался поворот элементов.