Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 224

Распил заготовки на бруски (детали)

16.09.2016, 10:47. Показов 1246. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
моя задача написать программу, я использую следующий алгоритм
1. сперва беру заготовку 6000х160х160 мм
2. режу сперва по ширине
3. удаляю сразу же (я перекидываю данные по заготовке или обрезку в структуру и переменную, только потом удаляю)
4. получаю два обрезка с разной шириной - толщина лезвия
5. проверяю первый обрезок, подойдет ли обрезок под деталь, если да то уменьшаю количество соответствующей детали на 1 и переношу ее, т.е. обрезок в таблицу готовые детали, а сам обрезок удаляю из таблицы обрезков и беру следующий, если в таблице деталей количество детали равно 0, то я удаляю эту деталь из таблицы, чтоб не путаться, если не подходит, то я пробую на другой детали и так до тех пор пока не закончится перебор. если перебор не помог, то я поворачиваю деталь (к примеру меняю ширину на высоту), если ничего, то еще делаю перебор с новым разворотом, до тех пор пока не пройдут все варианты разворотов, если ничего не вышло, то просто возвращаю обрезок обратно на разрез.
6. режу по высоте
7. пункт 4 только не ширина, а высота
8. пункт 5
9. пункт 4, длина
10. пункт 5
11 проверяю, можно ли этот обрезок еще раз порезать, если да то отправляю на резы, если нет, то разворачиваю его, если развороты не помогли то удаляю в отход

проблема в том, что у меня куча обрезков суммарно превышающих по объему заготовки
что в алгоритме может быть не так
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.09.2016, 10:47
Ответы с готовыми решениями:

Линейный алгоритм. Из прямоугольной заготовки необходимо вырезать круглые детали
Из прямоугольной заготовки размером a ´ b необходимо вырезать круглые детали, диаметр которых равен d (a = nd, b = md). Составить программу...

Задачка про бруски, лежащие друг на дружке
На гладком горизонтальном столе лежат один на другом два бруска массами m1 и m2. Коэффициент трения между брусками равен k. К нижнему...

Оптимальный распил палок
Д.в. Нужен алгоритм для решения следующей задачи или если он есть, то как называется? Есть доски длинной 2000 мм. Есть список с...

5
 Аватар для ProgJ
90 / 87 / 11
Регистрация: 20.11.2008
Сообщений: 724
16.09.2016, 21:39
Как вам помочь с задачей, если вы её даже не сформулировали. Детали одинаковые? Что значит резать по ширине? Почему это идёт первым пунктом? Сколько вы отрезаете?
0
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 224
17.09.2016, 09:27  [ТС]
по ширине - это когда через циркулярную пилу на пилораме пропускаете по ширине бруса, т.е. распиливываете его по полам

Добавлено через 4 минуты
детали могут быть любыми, количество деталей может быть разным к примеру, рейка 1000х40х20 20шт (размеры в милиметрах), брус 2000х40х40 3шт ну т.д. в пределах заготовки

Добавлено через 1 час 28 минут
детали могут быть любыми, количество деталей может быть разным к примеру, рейка 1000х40х20 20шт (размеры в милиметрах), брус 2000х40х40 3шт ну т.д. в пределах заготовки
0
 Аватар для ProgJ
90 / 87 / 11
Регистрация: 20.11.2008
Сообщений: 724
17.09.2016, 11:49
т.е. у вас трёхмерная задача раскроя
но если у вас один размер сильно больше других, то можно свести к обычной двумерной задаче
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
17.09.2016, 18:51
Цитата Сообщение от ramzes2012 Посмотреть сообщение
что в алгоритме может быть не так
Значит спасет только математический расчет как все резать, другого выхода нет =).
Вот в гугле ”трёхмерная задача раскроя” выдал такое
http://dehata.com/board/discus... ck-problem
Если нет готовой проги то реальней всего наверно будет заказать программисту запилить ее вам… иначе это ж какой убыток
Цитата Сообщение от ramzes2012 Посмотреть сообщение
куча обрезков суммарно превышающих по объему заготовки
0
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 224
18.09.2016, 18:35  [ТС]
я частично разобрался, у меня крутило заготовку не правильно, может посмотрите на саму программу
raspil_zagotovok_-_rabochaya(1).zip запускайте главную процедуру
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.09.2016, 18:35
Помогаю со студенческими работами здесь

Посоветуйте литературу по выполнению прямоугольной изометрии детали, эскиза детали
посоветуйте литературу по выполнению прямоугольной изометрии детали,эскиза детали

Задача оптимального раскроя: распил досок
Всем привет! Никак не могу разобраться с задачей. Требуются комплекты досок, каждый из которых состоит из 2 досок длиной 1,5 м и 5...

Рекурсивный распил доски, нужны комментарии к коду
Здравствуйте! Искал задачу в интернете о рекурсивном распиле доски. Нашел следующий код: #include <stdio.h> #include...

Распил радиатора ASUS K56CB ради починки мерцания экрана
Жил был ASUS K56CB, и что-то у него стала дергаться картинка. Парни решили снять с него радиатор и намазать новой термопасты. Так как...

Найти вероятность отказа узла
Узел содержит 2 независимо работающих детали. Вероятности отказа детали соответственно равны 0,05 и 0,08. Найти вероятность отказа узла,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru