Skip to content

Latest commit

 

History

History
28 lines (28 loc) · 4.48 KB

Readme.md

File metadata and controls

28 lines (28 loc) · 4.48 KB

Direct Enpack - прямоугольный раскрой

Это CPG-аддон к CorelDraw для компоновки прямоугольных объектов на лист - аналог функции "прямоугольный раскрой" из пакета ECut.

Системные требования

Операционная система:Windows XP или выше
Программное обеспечение:Corel Draw версии 13 или выше
Процессор:с поддержкой SSE4.1. Алгоритм многопоточный - большое количество ядер приветствуется.

Установка

x86: Скопировать файл DirectEnpackx86.cpg в каталог "Draw\Plugins", если такого каталога нет - его необходимо создать

x64: Скопировать файл DirectEnpackx64.cpg в каталог "Programs64\Addons"

Работа с аддоном

  1. Выделить объекты для компоновки
  2. Запустить аддон при помощи иконки на панели "Стандарт"
  3. В появившемся диалоговом окне настроить параметры компоновки:
    • В полях ширина и высота задаётся размер листа в миллиметрах
    • Отступ - это минимальное расстояние между объектами в миллиметрах
    • Галочка "Перемешать" рандомизирует порядок объектов перед компоновкой. Это влияет на конечный результат и может его как улучшить так и ухудшить.
    • Галочка "Добавить рамку" рисует прямоугольник сверхтонким чёрным абрисом вокруг каждого объекта с учётом отступа
  4. После нажатия кнопки "OK" начнётся процесс компоновки. Поиск решения может занять длительное время, но вы можете остановить поиск в любой момент просто закрыв диалоговое окно.
  5. По завершении работы слева будут располагаться объекты, размещённые в лист, а справа - объекты, которые не удалось разместить.

Известные проблемы и способы их решения

  • Если после запуска диалогового окна настройки панели команд (Инструменты->Параметры->Рабочее пространство->Настройка->Панели команд) выбрать "Отмена" - иконка аддона будет изменена на иконку по-умолчанию. Лечится перезапуском CorelDraw.
  • Максимальное количество потоков ограничено числом 256. Если появится необходимость увеличить это число - нужно перекомпилировать аддон, увеличив константу MAX_THREADS

Ссылки

  • A Greedy Algorithm with Forward-Looking Strategy - этот алгоритм взят за основу. В моей реализации изменена оценочная функция.
  • bin-packing - реализация вышеуказанного алгоритма на Python
  • FASM - компилятор ассемблера для сборки аддона (собиралось в версии 1.73.31)