LINUX.ORG.RU

Inkscape - компактно расположить объекты на листе

 


2

3

Имеем: Inkscape 0.91 и большое количество объектов различой формы и размеров.

Задача: расположить объекты на листе максимально плотно. Объекты могут касаться друг друга контурами, их можно вращать и зеркалировать.

Что есть, но не подходит: можно автоматически расставить так, чобы объекты соприкасались рамками, но нужно именно контурами.

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

peregrine ★★★★★ ()

«максимально плотно» - понятие растяжимое :). Например можно расположить все объекты без зазоров друг от друга, но при этом охватывающий прямоугольник займёт весь лист. А можно эти же объекты поместить на половине листа, но получить множество мелких промежутков. А вообще задачи о раскрое и упаковке - это в общем случае довольно большая область и вряд ли она будет решена в Inkscape.

Elyas ★★★★★ ()

Что есть, но не подходит: можно автоматически расставить так, чобы объекты соприкасались рамками, но нужно именно контурами.

Ты про диалог выравнивания и расстановки объектов?

AP ★★★★★ ()

Если надо в долгосрочной перспективе, попробуй ещё потеребить Linfan. По идее, это как раз задачка для его https://github.com/sk1project/lincutter. Когда он только до него доберётся...

AP ★★★★★ ()

Тоже хочу нестинг в инке.

Deleted ()
Ответ на: комментарий от AP

Lincutter будет смерджен в sK1 как диалог порезки (на манер диалога печати).

Linfan ★★★★★ ()
Ответ на: комментарий от AP

Если надо в долгосрочной перспективе, попробуй ещё потеребить Linfan

Что-то затих он в последнее время.

По идее, это как раз задачка для его https://github.com/sk1project/lincutter

«lincutter» вроде для управления резательным принтером, а не для раскроя листового материала.

Как вариант

http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=2159

Для раскроя вот несколько программ

http://freesoft.ru/orion_raskroy_listovyh_materialov/download

http://www.exactcam.com/ru/

http://www.elecran.com.ua/mebel/download/category/5-2d-place

atsym ★★★★★ ()
Ответ на: комментарий от atsym

«lincutter» вроде для управления резательным принтером, а не для раскроя листового материала.

Напоминаю задачу ТС: «компактно расположить объекты на листе».

LinCutter придуман ровно для того, чтобы расположить объекты на листе для последующей нарезки плоттером. По словам самого же Игоря, это должен был быть аналог Roland CutStudio, PostCut и пр.

AP ★★★★★ ()
Последнее исправление: AP (всего исправлений: 1)
Ответ на: комментарий от atsym

И кстати, плоттером не управляют, а готовят для него PLT файл. Который по сути, «размещение объектов на листе».

Linfan ★★★★★ ()
Ответ на: комментарий от Linfan

... PLT файл. Который по сути, «размещение объектов на листе».

Нет же. PLT это набор инструкций по управлению печатной/режущей головкой принтера или плоттера.

http://www.corel-x5.pp.ua/HPGL_Plotter_File_PLT.html

atsym ★★★★★ ()
Последнее исправление: atsym (всего исправлений: 2)
Ответ на: комментарий от Linfan

PLT файл. Который по сути, «размещение объектов на листе».

Эээ, нет :) HP-GL — это язык, оперирующий понятиями типа «опусти нож, отчерти вот столько в абсолютных или относительных координатах, используй линию с таким-то шаблоном».

AP ★★★★★ ()
Последнее исправление: AP (всего исправлений: 1)
Ответ на: комментарий от AP

У режущего плоттера три вида команд - PD,PU и координаты точки. Это не управление напрямую пером и механизмом прокрутки. Это просто данные, которые отправляет комп. И интерпретироваться они могут весьма по-разному, в зависимости от настроек плоттера. И даже порезка бывает идёт с разной скоростью на одинаковых элементах. По сути, можно было бы и в SVG отправлять, просто железяка стоила бы дороже из-за анализатора SVG.

Linfan ★★★★★ ()
Ответ на: комментарий от Linfan

Это несущественно. Речь о том, что это команды плоттеру, а не описание, что где лежит на листе :)

AP ★★★★★ ()
Ответ на: комментарий от AP

Это и есть описание того, что лежит на листе :) PD - начало path, PU - конец path и координаты точек. А плоттер их преобразует матрицей аффиной трансформации и генерирует уже реальные команды механизмам.

Linfan ★★★★★ ()
Ответ на: комментарий от AP

+1

P.S.: Мне кажется или Linfan таки действительно «набрасывает на вентилятор»? )))

atsym ★★★★★ ()
Ответ на: комментарий от atsym

Подумай сам - генерируя постскрипт файл ты управляешь принтером, или все-таки скармливаешь ему данные? Тоже самое и с PLT - это всего лишь данные для плоттера.

Linfan ★★★★★ ()
Ответ на: комментарий от Linfan

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

HPGL PLT это по сути «скрипт», «программа» для плоттера. Рекомендую почитать немного литературы по теме станков с ЧПУ (плоттер и принтер это по сути и есть станки с ЧПУ)

P.S.: у меня техническое образование с уклоном на САПР, поэтому я знаю о чём говорю в данной теме.

atsym ★★★★★ ()
Последнее исправление: atsym (всего исправлений: 1)
Ответ на: комментарий от atsym

)))) Если бы ты имел опыт работы с плоттерами, ты бы не спорил :) И таки да, постскрипт это тоже «набор команд» и многие другие форматы аля wmf/emf. Но они интерпретируются девайсами, а не выполняются один к одному.

Linfan ★★★★★ ()
Ответ на: комментарий от atsym

А вот в станки ЧПУ действительно запрявляют управляющие коды. Это немного разные вещи, в сравнении с плоттерами/принтерами.

Linfan ★★★★★ ()
Ответ на: комментарий от Linfan

Но они интерпретируются девайсами

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

Лучше объясни для чего Lincutter: для компоновки деталей на листе или же для создания набора команд для плоттера из файла векторной графики?

atsym ★★★★★ ()
Последнее исправление: atsym (всего исправлений: 1)
Ответ на: комментарий от atsym

Драйверами девайсов

«Таки не расчесывайте мне нервы - у меня и так есть их куда потратить» (с ) )))

Драйвера девайсов - это дешевое софтверное решение. Серьезная техника сама переваривает встроенными RIP'ами. Тоже самое и про плоттеры - HPGL это обобщенное описание работы плоттера. И команды HPGL интерпретируются мозгами железяки в зависимости от возможностей: часть команд тупо отбрасывается, часть интерпретируется.

Смысл Lincutter - расположить эффективно элементы на рулоне материала и при этом в наглядном виде, чтобы оператор плоттера не зарезал материал по ошибке. Аппликуха генерит PLT файл, который копируется на плоттер (можно несколько раз, если требуются повторы). Реального управления плоттером тут нет.

Linfan ★★★★★ ()
Ответ на: комментарий от Linfan

А можно просто расположить детали на листе и сохранить это всё в svg или dxf? Мне нужен просто нестинг. Такое есть?

И кстати, почему sk1 не открывает svg файлов? (в арче/манджаро по крайней мере)

Deleted ()
Ответ на: комментарий от Deleted

почему sk1 не открывает svg файлов?

Фильтры импорта/экспорта разрабатываются сейчас (RC3 стадия). В RC2 их еще не было. Поэтому нужно собрать текущий master из репозитория, чтобы была поддержка SVG как на чтение, так и на запись. Для Ubuntu 14.04 есть night builds пакеты на сайте проекта.

Linfan ★★★★★ ()
Ответ на: комментарий от Linfan

От всей души благодарю! Действительно, пусть это и не Inkscape, но это то, что мне нужно.

Hrundix ()
Ответ на: комментарий от Linfan

Скорее бы, а то за 1 квартал 2017 года никаких сдвигов в коде sK1 2.0 на Github'е... :-(

atsym ★★★★★ ()
Ответ на: комментарий от atsym

Та ладно, а поддержка ACO уже не считается? :)

Linfan ★★★★★ ()
Ответ на: комментарий от Linfan

Ну, это же внеплановая функция. И она не оказала сильного влияния на интерфейс или же функционал векторного редактора.

atsym ★★★★★ ()
Ответ на: комментарий от atsym

В RC3 интерфейс изменяться скорее всего не будет.

Linfan ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.