Реклама i
Стань нашим партнером - зарабатывай с нами!
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Отраслевые разделы > Прочее. Отраслевые разделы > Данные для раскроя (Мебель, и не только)

Данные для раскроя (Мебель, и не только)

Ответ
Поиск в этой теме
Непрочитано 21.05.2004, 22:08 #1
Данные для раскроя (Мебель, и не только)
Don Pedro
 
Designer
 
Кишинев
Регистрация: 21.05.2004
Сообщений: 24

Я (и не только я) использую АвтоКад для 3-х мерного моделирования мебели, применяя для этого солиды.
Само собой, весь ламинат (постоянная толщина - 18мм) находиться на отведенном для него слою.
Задача такова: получить размеры (X,Y) каждой ламинатной детали и записать эти размеры в внешний текстовой файл. Дальше эти данные обрабатываються спецпрограммами для раскроя листового материала (у меня Cutting2).
Сам я эту задачу никогда не решу. Просто не могу понять, как получить размеры детали у которой одна кромка - сплайн (см. пример)
Если бы все детали были прямоугольными тогда задача упростилась бы.

Реально ли сделать лисп для этих целей? Уверен что многим он бы пригодился. А может уже есть что-то готовое?
[ATTACH]1085162980.gif[/ATTACH]
__________________
Via est vita!
Просмотров: 24662
 
Непрочитано 21.05.2004, 22:35
#2
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


В свое время пытался сделать нечто аналогичное для 3d solid'ов, но увяз в расшифровке этого замудреного описания. Простые детали (типа кубика или аналогичные) еще как то можно "измерить", а на сплайновых контурах... В общем, ручками померить оказалось проще чем сделать 100% рабочую программу.

Сейчас думаю на Инвентор перейти с подобного рода вещами. Там это проще реализуется. Да и сама софтина куда более интеллектуальна.

Если же речь идет о плоской полилинии - контуре детали - то все значительно проще. Хотя, это мне показалось совсем не интересно, так как либо пропадает возможность анализа твердых тел на предмет пересечения и т.п., либо требуются дополнительные манипуляции для получения этой самой полилинии-контура и синхронизации с телом. А ведь кромка может быть срезана и под углом - это еще усложняет задачу :cry:
vk вне форума  
 
Непрочитано 23.05.2004, 00:49 Re: Данные для раскроя (Мебель, и не только)
#3
BigBrother

Design & programming :)
 
Регистрация: 14.02.2004
Новосибирск
Сообщений: 172
<phrase 1= Отправить сообщение для BigBrother с помощью Skype™


Цитата:
Сообщение от Don Pedro
Реально ли сделать лисп для этих целей? Уверен что многим он бы пригодился. А может уже есть что-то готовое?
Практически нереально (на lisp). Голый AutoCAD вообще мало пригоден для 3-х мерки. MDT или Inventor позволяют получать спецификации. Или использовать коммерческие приложения. Под AutoCAD очень неплохая программа есть 3D-Constructor.
www.elecran.com.ua

P.S. В известных мне приложениях под AutoCAD позволяющих решить такого рода задачи, солиды создаются и редактируются !только! самим приложением. Вручную ни-ни. Т.к. приложение пишет в солид свои данные, которые потом анализируются.
BigBrother вне форума  
 
Непрочитано 23.05.2004, 05:00
#4
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


Цитата:
В известных мне приложениях под AutoCAD позволяющих решить такого рода задачи.....
Вот с этого места поподробнее, если можно. Кроме упомянутого 3D-Constructor, какие еще приложения могут решать такого рода задачи. Интересует функциональность и гибкость моделирования и естественно автоматизация вывода данных в спецификацию или текстовый файл. Хотя у голого АКАДа моделирование не на высоте, тем не менее до сих пор практически хватало его возможностей (о геморое не говорю).
vk вне форума  
 
Непрочитано 23.05.2004, 20:35
#5
BigBrother

Design & programming :)
 
Регистрация: 14.02.2004
Новосибирск
Сообщений: 172
<phrase 1= Отправить сообщение для BigBrother с помощью Skype™


Цитата:
Сообщение от vk
Вот с этого места поподробнее, если можно..
К сожалению поподробнее не получится, давно это было. :?
Винт на котором демки и эта инфа была приказал долго жить. :cry:
В памяти осталось только, что 2 софтины были от французов и одна от испанцев. Ну и цена соответствующая от 2 до 6 K$. Причем приемлемую функциональность обеспечивала только самая дорогая.

Ну а для себе писал в свое время приложение. Прямоугольные и некоторые часто используемые фигурные детали отрисовывал программно и писал в X-Data нужную инфу. Плюс инструмент для ручного редактирования\внесения этих данных.
BigBrother вне форума  
 
Непрочитано 24.05.2004, 01:34
#6
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


>BigBrother
Мдя... писать все в X-Data - дело хорошее. Только тут уж не до функционала.... Впрочем, для шкафчиков-тумбочек, где детали относительно простые и стандартные, это может быть вполне реальным решением. У меня к сожалению стандартных конфигураций немного
vk вне форума  
 
Непрочитано 24.05.2004, 19:45
#7
BOZ


 
Сообщений: n/a


Если деталь ориентирована так, что направление ее осей совпадает с направлением осей X и Y мировой системы координат, то для определения габаритов параллелепипеда в который можно вписать Solid можно применить метод GetBoundingBox.
Для такого случая это и будет решением задачи.
 
 
Непрочитано 24.05.2004, 19:50
#8
BigBrother

Design & programming :)
 
Регистрация: 14.02.2004
Новосибирск
Сообщений: 172
<phrase 1= Отправить сообщение для BigBrother с помощью Skype™


>vk У меня к сожалению стандартных конфигураций немного

Советую в этом случае внимательнее присмотреться к 3D-Constructor.
Функциональность обеспечивается сплошной параметризацией сверху вниз. Практически MDT для мебельщика. Можно и для клиента "сделать красиво" и всю КД получить.
И самый главный плюс для меня то, что это привычный AutoCAD.
BigBrother вне форума  
 
Непрочитано 24.05.2004, 21:48
#9
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


>BOZ
Верно. А если не совпадает - то можно и установить ПСК по объекту. Только далеко не всегда она ставится так как хотелось бы. В этом главный минус такого метода.

>BigBrother
Спасибо за совет. Демку скачал еще вчера. Приятно удивлен объемом сопроводительной документации - свыше 300 страниц Еще не просмотрел все. Посмотрим что за зверь....
Но больно уж привык к тем методам, которыми пользуюсь. Например, паз в детали получать путем вычитания объекта, полученного в результате анализа пересечений деталей; для обрезки - SLICE по трем точкам или плоскости и точке; смещение грани для корректировки зазора и т.п.
vk вне форума  
 
Автор темы   Непрочитано 24.05.2004, 22:07
#10
Don Pedro

Designer
 
Регистрация: 21.05.2004
Кишинев
Сообщений: 24
<phrase 1=


А если попытаться определить плоскость с наибольшей площадью?
Сделать копию файла, найти все солиды с значением по одной из осей = 18mm (проверять надо по всем осям XYZ), взорвать первую деталь, получить габариты региона с наибольшей площадью (возможно ли? по принципу bounding box или, вернее, rectangle?), значения записать в внешний текстовый файл. Взорвать следующую деталь и.т.д.

Ну как? Реально?
__________________
Via est vita!
Don Pedro вне форума  
 
Непрочитано 24.05.2004, 22:47
#11
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


Лучше один эксперимент, чем куча рвссуждений. Сделайте в плоскости XY мировой ПСК например плоскую прямоугольную панель и отрежте солидный кусок с одного угла. Можно еще и кромку какую нить сделать не 90° а к примеру 45°....
Определите координаты через GetBoundingBox. Все получается ровненько...
Теперь покрутите эту панель по разным осям на разный угол, каждый раз проверяя координаты... и каждый раз получая новые значения.
Попробуйте установить ПСК по объекту, но не указывая мышкой ребро, а передавая указатель на объект, полученный например (entlast). Это поытка задействовать (trans) для пересчета координат. Увы, не всегда ПСК ставится так чтоб хотя бы одна из осей была вдоль какой то "базовой" стороны. Впрочем, такая же ерунда получается и с регионами после взрыва.
Воти выходит, что если требуется замерить размеры детали типа "кирпич", что лежит на полу в углу - то проблем практически нет, а если деталь сложная, да сориентирована в пространстве "от фонаря" - тут уж не до автоматизации (ИМХО).
vk вне форума  
 
Автор темы   Непрочитано 25.05.2004, 22:36
#12
Don Pedro

Designer
 
Регистрация: 21.05.2004
Кишинев
Сообщений: 24
<phrase 1=


Цитата:
Лучше один эксперимент, чем куча рассуждений.
Согласен на все 100%. Только в програмировании я полный ноль. Дайте плиз хотя-бы начальный пинок в виде скрипта который бы работал с GetBoundingBox. Я так понимаю, что GetBoundingBox можно применить и к региону? И он (GetBoundingBox) на выходе дает две точки (на примере a,b)? Ну, тогда мне кажется что достаточно вычислить расстояние между этими двумя точками, и не имеет значение под каким углом расположен регион относительно WCS. Ведь искомое число есть габариты плиты - длина и ширина при известной толщине. По теореме Пифагора очень просто можно вычислить длины катетов. Ч.т.д.
Так просто что даже не вериться. Значит, я где-то ошибаюсь.
Может кто-то сделать действующую программу?

На примере:
слева - регион лежащий в одной плоскостью с WCS
справа - тот же регион, но повернутый на произвольный угол
[ATTACH]1085510186.gif[/ATTACH]
__________________
Via est vita!
Don Pedro вне форума  
 
Непрочитано 26.05.2004, 00:07
#13
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Код:
[Выделить все]
(vl-load-com); загрузка ActiveX
(setq vlaObject(vlax-ename->vla-object Object));преобразование любого примитива в VLA-объект
(vla-getboundingbox vlaObject 'minpoint 'maxpoint); применение самого метода. Но результаты в виде типа данных Variant и нужно их преобразовать в списки из координат точек.
(setq minPT(vlax-safearray->list minpoint))
(setq maxPT(vlax-safearray->list maxpoint))
; как результат получаем координаты нижней левой и верхней правой точек.
Естественно это точки прямоугольного бокса ограничивающего объект, но ни как не не нижняя левая и верхняя правая точки его реальной геометрии. Т. е. если деталь не прямоугольная и не лежит параллельно осям то надо учитывать кучу факторов для вычисления ее реальных габаритов. Если же все в упрощенном варианте, то вы действительно получите габариты.
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 26.05.2004, 13:34
#14
Don Pedro

Designer
 
Регистрация: 21.05.2004
Кишинев
Сообщений: 24
<phrase 1=


Ээээ, а куда скрипт впихнуть, чтоб запустить? Извините за ламерский вопрос, но с англицким и с програмированием очень туго.
__________________
Via est vita!
Don Pedro вне форума  
 
Непрочитано 26.05.2004, 16:16
#15
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Это конечно только фрагмент. Давайте разберемся от начала и до конца что нужно, тогда можно будет что-нибудь написать. Я это понимаю так:

- вы сами заботитесь о том чтобы детали на момент начала программы были паралельны осям

- затем поочередно щелкаете по деталям, либо выбираете их рамкой и вся информация о размерах пишется в текстовый файл.

-перед окончанием работы, очевидно необходимо каким то методом пометить детали с которых были сделаны измерения (например временно изменить цвет) и выдать репортаж в текстовый экран для проверки.

-дополнительно можно предусмотреть переключение видов.

Так?

Интересует внутренний формат файла, расширение если оно критично или отличается от *.txt а также другие замечания по этому поводу.

На серьезную прогу расчитывать не надо, немогу уделить столько времени, но вполне приличный инструмент помогающий в работе соорудить можем.
{Smirnoff} вне форума  
 
Непрочитано 26.05.2004, 16:58
#16
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


Цитата:
- вы сами заботитесь о том чтобы детали на момент начала программы были паралельны осям
Это самое геморойное занятие - выравнивать объекты.... Можно попробовать копировать объект в другой файл, причем, перед копированием в текущем файле предложить установить ПСК по объекту в интерактивном режиме. В новом файле после вставки объект будет выровнен по осям (тут уже присутствует "пожелание" пользователя)
vk вне форума  
 
Непрочитано 26.05.2004, 17:31
#17
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Логично. Надо над этим поразмыслить... На ум приходит еще вариант сделать интерактивное выравнивание по указанию двух точек. Т. е. прога запрашивает две точки, щелкаем на крайних точках нужной грани и все выравнивается по определенной заранее оси.
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 26.05.2004, 20:00
#18
Don Pedro

Designer
 
Регистрация: 21.05.2004
Кишинев
Сообщений: 24
<phrase 1=


Цитата:
- вы сами заботитесь о том чтобы детали на момент начала программы были паралельны осям

- затем поочередно щелкаете по деталям, либо выбираете их рамкой и вся информация о размерах пишется в текстовый файл.

-перед окончанием работы, очевидно необходимо каким то методом пометить детали с которых были сделаны измерения (например временно изменить цвет) и выдать репортаж в текстовый экран для проверки.

-дополнительно можно предусмотреть переключение видов.

Так?
В принципе меня так устраивает. Еще бы нумерацию деталей сделать на фронтальном виде. Но это потом.
Еще можно вычислять объекты у которых по одной из осей нет толщины ламината (чаще всего 18мм) и помечать их красным. а потом, опционально, применять только к ним интерактивное выравнивание по указанию двух точек.
__________________
Via est vita!
Don Pedro вне форума  
 
Непрочитано 26.05.2004, 21:04
#19
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Желательно мне скинуть на [email protected] (8 Mb) или [email protected] (50 Mb):
1) пример текстового файла
2) каких нибудь реальных чертежей

Будем по тихоньку думать...
{Smirnoff} вне форума  
 
Непрочитано 26.05.2004, 22:02
#20
ASRW


 
Сообщений: n/a


Может и не к месту, но поставленную задачу выполняет bCAD.
Немного не привычно после AutoCAD но приноровится можно.
И размеры и раскрой и отходы материала учитываются, плюс вывод на печать карт раскроя и рабочих чертежей каждой детали.
Только желательно использовать лицензионный так как он позволяет работать с личными базами материалов.
Взолманный к сожалению не попадался.
 
Ответ
Вернуться   Форум DWG.RU > Отраслевые разделы > Прочее. Отраслевые разделы > Данные для раскроя (Мебель, и не только)

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск