|
|
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Подскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 10:27 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать? Спасибо. Забыл сказать, что именно хранить: координаты, площадь и др. данные, необходимые для вычитания фигур одна из другой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 10:34 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Кто-нибудь здесь скажет, что я "дурак" хотя бы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 12:24 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать? Спасибо. Может, Вам что-то из этого нужно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 12:55 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
PetrovVA, О! Буду рыть в этом направлении! Спс. ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 12:57 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Что-то мало в нете информации про эти пространственные бд... Похоже придется как-то спроектировать обычную бд для хранения геометрических 2d фигур... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 14:36 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
CrypticЧто-то мало в нете информации про эти пространственные бд... Похоже придется как-то спроектировать обычную бд для хранения геометрических 2d фигур... Любая современная БД поддерживает сырые типы данных (BLOB/RAW/LOB/LONG). Ты можешь создать таблицу: Код: sql 1. 2. 3. И спокойно кидать туда свои треугольники в сериализованном виде из языка программирования с которым ты работаешь. Никто и слова не скажет. За проектирование ты отвечаешь сам. Другой вопрос как индексировать эти данные и как их искать. Но это тема для отдельной дискуссии потому-что неизвестно что ты собираешся искать и как. Выше предложили использовать GS/GID. Это круть несусветная и стрельба из пушки по птичкам. Надо оно тебе или не надо чтоб нарисовать квадрат Малевича - х.з ? Препода удивить разве что. А нормализация/оптимизация геом-данных задача интересная и бесконечная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 15:48 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
mayton, спасибо за ответ! Особенно понравилось про стрельбу из пушки по птичкам ))) Мне надо из плоских квадратных кусков дерева, например 3х3 м., брать кусок размером 2х2 м. и остаток запечатлить в бд. Чтобы потом взять из этого кусочка квадратик размером 0.5х0.5 м. Простая, наверно задача, но у меня голова не может понять, как это сделать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 16:21 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Это явно продолжение оттуда . Вот только смысл в хранении фигур для решения изложенной задачи? Или вы собираетесь управлять с помощью БД именно динамикой процесса раскроя вообще "на лету"? В противном случае (если вас всё же интересует именно поиск оптимальных раскроев) - придется разбить процесс на техоперации-транзакции: оприходовали материалы - собрали задание на раскрой - раскроили по текущему состоянию - списали раскрой на продукцию - пересчитали остатки. Плюс завели типовые операции (основные типоразмеры материалов->раскрой в основные виды продукции), чтобы каждый раз заново полностью не пересчитывать оптимальные раскрои. Плюс завели полное списание "неликвидных" остатков-кусков, ибо они только мешаться в алгоритме будут (безотходного прроизводства для вашего случая пока не придумано ). В целом, ИМХО, задачка на оптимизацию использования материалов будет не самым главным пунктом в вашей задаче... Хотя, кто его знает,может вам задали решить именно её - но тогда надо выбирать средства реализации под (выбранный вами) алгоритм, а не наоборот. А, заметил ответ ваш. А что же вы в той теме про всякие треугольники с кругами сообщали, если у вас "квадратики"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 16:36 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
AndreTMЭто явно продолжение оттуда . Вот только смысл в хранении фигур для решения изложенной задачи? Или вы собираетесь управлять с помощью БД именно динамикой процесса раскроя вообще "на лету"? В противном случае (если вас всё же интересует именно поиск оптимальных раскроев) - придется разбить процесс на техоперации-транзакции: оприходовали материалы - собрали задание на раскрой - раскроили по текущему состоянию - списали раскрой на продукцию - пересчитали остатки. Плюс завели типовые операции (основные типоразмеры материалов->раскрой в основные виды продукции), чтобы каждый раз заново полностью не пересчитывать оптимальные раскрои. Плюс завели полное списание "неликвидных" остатков-кусков, ибо они только мешаться в алгоритме будут (безотходного прроизводства для вашего случая пока не придумано ). В целом, ИМХО, задачка на оптимизацию использования материалов будет не самым главным пунктом в вашей задаче... Хотя, кто его знает,может вам задали решить именно её - но тогда надо выбирать средства реализации под (выбранный вами) алгоритм, а не наоборот. А, заметил ответ ваш. А что же вы в той теме про всякие треугольники с кругами сообщали, если у вас "квадратики"? ))) На самом деле и треугольники и квадратики и даже...КРУГИ, товарищи. Да-да, все настолько серьезно. Рабочие - коварные люди. Одному вздумалось отрезать от несчастного 3х3 треугольник, другому от того же - круг... Вот только совсем недавно до меня дошло, что проблема-то в оптимальном раскрое. И при том оказывается, мне надо сделать так, чтоб раскрой выбирал не я (что было бы лучше всего), а терминатор. Сейчас искал хоть одну опен сорс программу, да нет их на свете... Есть одна бесплатная - NCL. Написана неким Полевовым А. В. - кандидатом этих самых наук. Но саму программу с тех серверов, что гугл выдал - не скачать (bed gatewey), а про исходники - вообще как будто такого на свете нет. На одном форуме питонистов, один парень для своего бизнеса заказал программу для автоматизации раскроя (по типу Астро-Раскрой) с учетом остатков в бд. Его попросили написать требования. После того, как он это сделал, ему назвали цену - не менее 5000$. А мне надо дипломную работу написать. "Калькуляция материалов при производстве мебели". Как раз и надо, чтобы раскрой был примитивный, но был и что самое главное - остаточки в бд чтоб сливались. Вот и вся история, грусная. ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 18:09 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
AndreTM, AndreTMВот только смысл в хранении фигур для решения изложенной задачи? Как мне сначала показалось, что надо написать енжин, который бы смог контролировать формы материалов. Форма изменилась - записал изменение в бд вместе с датой изменения. Суть в том, что надо типа в программе собрать шкаф. Чтобы при выборе деталей, программа сама расчитала все необходимые материалы (совершила раскрой), выдала цену и записала все остаточки в бд. Это реально? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 18:15 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать? Спасибо. То есть я на этот топик отвечал, а не на тот Cryptic, любая форма, в том числе трехмерная, имеет описание в виде системы уравнений то, что одна форма может быть включена в другую - тоже отношение между системами уравнений ЗЫ Из всех, которые включают, выбираем ту, с которой минимальная разница по площади (объему) Также, если сразу много фигур надо вырезать - тоже системы уравнений. Хитрость тогда - умнее строить приближенные решения. ЗЫ В этом вроде и соревнуются метода (построения алгоритмы) оптимального раскроя. Это можно назвать алгебраических подход. И как думается дальше - если все кривые приближать многочленами, то в БД будут храниться коэффициенты многочленов, сгруппированные в системы уравнений. ... ну и пошло поехало до товарного вида ЗЫ И резать с краю, чтобы то, что осталось было более целое, - тоже можно описать формально-математически. С другой стороны могут понадобиться, например, куски длинные и узкие, а не квадратные. ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 19:51 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Cryptic, Если речь про раскрой для мебели, то по-хорошему там надо две фигуры хранить --- лист и его годная часть. Например, у листов при транпортировке часто слегка бьют углы или дерут кромки, эти части можно или нельзя пускать в крой в зависимости от того, уберутся они на последующих этапах или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 20:59 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Cryptic, Поскольку это - курсовая, да ещё "реально-производственная", то не заморачивайтесь сильно с точным раскроем. Если ваш алгоритм будет экономить 5% материала, затрачивая на расчёт целый рабочий день - никто алгоритмом пользоваться не будет. Один из путей я вам приводил - сделайте таблицу "примитивов" раскроя (как можно порезать такой-то кусок на такие-то части), пусть эта таблица будет "справочником", пусть большим (БД стерпит), но позволяющим не заниматься математикой, а оперировать в OLAP. Тогда весь "алгоритм" будет сводиться к достаточно простым выборкам. А вот наполнение/дополнение этой таблицы - процесс длительный, но требуется редко , проводится как техоперация в нерабочее время, соответственно, там уже и привлекается математика. НО! В дипломе вы можете даже не заморачиваться этой самой математикой! - просто укажете принцип, а саму такую табличку IRL, может, фирма заказывает на кластерах посчитать/пересчитать, разово за денюшку... У вас ведь тема - "Калькуляция материалов при производстве мебели", а отнюдь не "Математические методы оптимального раскроя". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 21:45 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
AndreTMсделайте таблицу "примитивов" раскроя (как можно порезать такой-то кусок на такие-то части), пусть эта таблица будет "справочником", пусть большим (БД стерпит), но позволяющим не заниматься математикой, а оперировать в OLAP. Тогда весь "алгоритм" будет сводиться к достаточно простым выборкам.То есть нумеруем возможные по-разному урезанные листы как возможные состояния марковского автомата, и держим в справочнике граф "переходов". "Изрезали весь лист, можно выбрасывать" --- поглощающее состояние. Хотел бы я посмотреть на пример такого справочника, особенно для достаточно большого числа деталей, и простой вопрос вида "есть такие-то листы и такие-то заказы, раскидаь детали по листам" на SQL, без хранимки с довольно матерной эвристикой :) P.S. Я не издеваюсь, просто разных программ раскроя в своё время перерыл кучу, и ни одной полностью хорошей не нашёл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 22:19 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать? Спасибо.авторSVG (от англ. Scalable Vector Graphics — масштабируемая векторная графика) — язык разметки масштабируемой векторной графики, созданный Консорциумом Всемирной паутины (W3C) и входящий в подмножество расширяемого языка разметки XML, предназначен для описания двумерной векторной и смешанной векторно/растровой графики в формате XML. Поддерживает как неподвижную, так и анимированную интерактивную графику — или, в иных терминах, декларативную и скриптовую .. ну а если ваши фигуры, это только многоугольники, можно хранить координаты точек. Это сгодится для хранения и визуализации. А вот как сделать ваш автомат оптимального раскроя... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 23:51 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
S.G.SVG...Издеваетесь? За глаза хватит мелкого подмножества DXF или, ещё проще, WKT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 23:55 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Я сомневаюсь что автор придумает что-то принципиально новое в задаче оптимального раскроя. Скорее всего дать возможность человеку просто вводить раскрой в БД и всё. Или подключить внешние патентованные библиотеки и фреймворки для решения проблемы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2013, 23:58 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
CrypticСейчас искал хоть одну опен сорс программу, да нет их на свете... Посмотрите Drools Planner ( теперь Optaplanner , делает именно то что вам нужно. Но это библиотека, как хранить и подавать ей данные решать вам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 05:35 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
mayton, maytonЯ сомневаюсь что автор придумает что-то принципиально новое в задаче оптимального раскроя. Скорее всего дать возможность человеку просто вводить раскрой в БД и всё. Или подключить внешние патентованные библиотеки и фреймворки для решения проблемы. Да-да! Мне это и нужно. Чтобы из интерфейса програмы можно было указать, что мне нужен определенный кусок лисат, и затем изменение формы зафиксировалось в бд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 07:05 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
пролетевший, спасибо! Вот этого я не нашел. Обязательно гляну. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 07:06 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
iv_an_ru, iv_an_ruCryptic, Если речь про раскрой для мебели, то по-хорошему там надо две фигуры хранить --- лист и его годная часть. Например, у листов при транпортировке часто слегка бьют углы или дерут кромки, эти части можно или нельзя пускать в крой в зависимости от того, уберутся они на последующих этапах или нет. Учту ваш совет. спс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 07:07 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
Вот кстати тот форум, где парень хотел заказать подобную программу: http://python.su/forum/topic/9425/?page=1#post-61904 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 07:09 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
И вот ещё трёп был: http://www.sql.ru/forum/actualthread.aspx?tid=832227 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 17:10 |
|
||
|
Хранение изменяемой формы фигуры в бд
|
|||
|---|---|---|---|
|
#18+
У меня есть идея. Но прокомментируйте ее адекватность, пжлст, ув. программисты. В таблице хранения материалов хранить двумерный массив булевского типа. Количество его элементов будет совпадать с количеством сантиметров в размерах листов материалов. Например 300x300 см. размер листа ДСП. И пока лист еще ни разу не резали, все элементы его массива будут равны true. Но как только отрезали четвертую часть, та область, которой не стало будет равна false. Тем самым форма, которая будет изменяться - фиксируется в бд. Да кстати, еще и площади можно отнимать и записывать новое значение, чтобы по площади можно было автоматически проверять, имеет ли смысл вообще тот или иной лист кроить. Как считаете, внес я новое слово в эту область? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2013, 08:40 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=38210923&tid=1341836]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
56ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
| others: | 278ms |
| total: | 451ms |

| 0 / 0 |
