powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Хранение изменяемой формы фигуры в бд
25 сообщений из 75, страница 1 из 3
Хранение изменяемой формы фигуры в бд
    #38210484
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать?

Спасибо.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38210494
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать?

Спасибо.

Забыл сказать, что именно хранить: координаты, площадь и др. данные, необходимые для вычитания фигур одна из другой.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38210817
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кто-нибудь здесь скажет, что я "дурак" хотя бы?
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38210923
PetrovVA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать?

Спасибо.
Может, Вам что-то из этого нужно?
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38210926
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetrovVA,

О! Буду рыть в этом направлении! Спс. )
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211177
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что-то мало в нете информации про эти пространственные бд... Похоже придется как-то спроектировать обычную бд для хранения геометрических 2d фигур...
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211389
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrypticЧто-то мало в нете информации про эти пространственные бд... Похоже придется как-то спроектировать обычную бд для хранения геометрических 2d фигур...
Любая современная БД поддерживает сырые типы данных (BLOB/RAW/LOB/LONG). Ты можешь создать таблицу:

Код: sql
1.
2.
3.
create table Figures(
id number primary key,
figure BLOB);



И спокойно кидать туда свои треугольники в сериализованном виде из языка программирования
с которым ты работаешь. Никто и слова не скажет. За проектирование ты отвечаешь сам.

Другой вопрос как индексировать эти данные и как их искать. Но это тема для отдельной
дискуссии потому-что неизвестно что ты собираешся искать и как. Выше предложили
использовать GS/GID. Это круть несусветная и стрельба из пушки по птичкам. Надо
оно тебе или не надо чтоб нарисовать квадрат Малевича - х.з ? Препода удивить разве что.

А нормализация/оптимизация геом-данных задача интересная и бесконечная.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211491
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mayton,

спасибо за ответ! Особенно понравилось про стрельбу из пушки по птичкам )))

Мне надо из плоских квадратных кусков дерева, например 3х3 м., брать кусок размером 2х2 м. и остаток запечатлить в бд.
Чтобы потом взять из этого кусочка квадратик размером 0.5х0.5 м. Простая, наверно задача, но у меня голова не может понять, как это сделать...
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211518
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это явно продолжение оттуда . Вот только смысл в хранении фигур для решения изложенной задачи? Или вы собираетесь управлять с помощью БД именно динамикой процесса раскроя вообще "на лету"? В противном случае (если вас всё же интересует именно поиск оптимальных раскроев) - придется разбить процесс на техоперации-транзакции: оприходовали материалы - собрали задание на раскрой - раскроили по текущему состоянию - списали раскрой на продукцию - пересчитали остатки. Плюс завели типовые операции (основные типоразмеры материалов->раскрой в основные виды продукции), чтобы каждый раз заново полностью не пересчитывать оптимальные раскрои. Плюс завели полное списание "неликвидных" остатков-кусков, ибо они только мешаться в алгоритме будут (безотходного прроизводства для вашего случая пока не придумано ).
В целом, ИМХО, задачка на оптимизацию использования материалов будет не самым главным пунктом в вашей задаче... Хотя, кто его знает,может вам задали решить именно её - но тогда надо выбирать средства реализации под (выбранный вами) алгоритм, а не наоборот.

А, заметил ответ ваш. А что же вы в той теме про всякие треугольники с кругами сообщали, если у вас "квадратики"?
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211717
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTMЭто явно продолжение оттуда . Вот только смысл в хранении фигур для решения изложенной задачи? Или вы собираетесь управлять с помощью БД именно динамикой процесса раскроя вообще "на лету"? В противном случае (если вас всё же интересует именно поиск оптимальных раскроев) - придется разбить процесс на техоперации-транзакции: оприходовали материалы - собрали задание на раскрой - раскроили по текущему состоянию - списали раскрой на продукцию - пересчитали остатки. Плюс завели типовые операции (основные типоразмеры материалов->раскрой в основные виды продукции), чтобы каждый раз заново полностью не пересчитывать оптимальные раскрои. Плюс завели полное списание "неликвидных" остатков-кусков, ибо они только мешаться в алгоритме будут (безотходного прроизводства для вашего случая пока не придумано ).
В целом, ИМХО, задачка на оптимизацию использования материалов будет не самым главным пунктом в вашей задаче... Хотя, кто его знает,может вам задали решить именно её - но тогда надо выбирать средства реализации под (выбранный вами) алгоритм, а не наоборот.

А, заметил ответ ваш. А что же вы в той теме про всякие треугольники с кругами сообщали, если у вас "квадратики"?

))) На самом деле и треугольники и квадратики и даже...КРУГИ, товарищи. Да-да, все настолько серьезно. Рабочие - коварные люди. Одному вздумалось отрезать от несчастного 3х3 треугольник, другому от того же - круг... Вот только совсем недавно до меня дошло, что проблема-то в оптимальном раскрое. И при том оказывается, мне надо сделать так, чтоб раскрой выбирал не я (что было бы лучше всего), а терминатор. Сейчас искал хоть одну опен сорс программу, да нет их на свете... Есть одна бесплатная - NCL. Написана неким Полевовым А. В. - кандидатом этих самых наук. Но саму программу с тех серверов, что гугл выдал - не скачать (bed gatewey), а про исходники - вообще как будто такого на свете нет.
На одном форуме питонистов, один парень для своего бизнеса заказал программу для автоматизации раскроя (по типу Астро-Раскрой) с учетом остатков в бд. Его попросили написать требования. После того, как он это сделал, ему назвали цену - не менее 5000$.
А мне надо дипломную работу написать. "Калькуляция материалов при производстве мебели". Как раз и надо, чтобы раскрой был примитивный, но был и что самое главное - остаточки в бд чтоб сливались.

Вот и вся история, грусная. )))
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211724
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,

AndreTMВот только смысл в хранении фигур для решения изложенной задачи?

Как мне сначала показалось, что надо написать енжин, который бы смог контролировать формы материалов. Форма изменилась - записал изменение в бд вместе с датой изменения. Суть в том, что надо типа в программе собрать шкаф. Чтобы при выборе деталей, программа сама расчитала все необходимые материалы (совершила раскрой), выдала цену и записала все остаточки в бд.
Это реально?
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211821
Фотография AlexandrPlus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать?

Спасибо.

То есть я на этот топик отвечал, а не на тот

Cryptic,

любая форма, в том числе трехмерная, имеет описание в виде системы уравнений

то, что одна форма может быть включена в другую - тоже отношение между системами уравнений
ЗЫ Из всех, которые включают, выбираем ту, с которой минимальная разница по площади (объему)

Также, если сразу много фигур надо вырезать - тоже системы уравнений.

Хитрость тогда - умнее строить приближенные решения.
ЗЫ В этом вроде и соревнуются метода (построения алгоритмы) оптимального раскроя.

Это можно назвать алгебраических подход.
И как думается дальше - если все кривые приближать многочленами, то в БД будут храниться коэффициенты многочленов, сгруппированные в системы уравнений.
...
ну и пошло поехало до товарного вида

ЗЫ И резать с краю, чтобы то, что осталось было более целое, - тоже можно описать формально-математически. С другой стороны могут понадобиться, например, куски длинные и узкие, а не квадратные. ...
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211873
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cryptic,

Если речь про раскрой для мебели, то по-хорошему там надо две фигуры хранить --- лист и его годная часть. Например, у листов при транпортировке часто слегка бьют углы или дерут кромки, эти части можно или нельзя пускать в крой в зависимости от того, уберутся они на последующих этапах или нет.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211904
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cryptic,

Поскольку это - курсовая, да ещё "реально-производственная", то не заморачивайтесь сильно с точным раскроем. Если ваш алгоритм будет экономить 5% материала, затрачивая на расчёт целый рабочий день - никто алгоритмом пользоваться не будет. Один из путей я вам приводил - сделайте таблицу "примитивов" раскроя (как можно порезать такой-то кусок на такие-то части), пусть эта таблица будет "справочником", пусть большим (БД стерпит), но позволяющим не заниматься математикой, а оперировать в OLAP. Тогда весь "алгоритм" будет сводиться к достаточно простым выборкам. А вот наполнение/дополнение этой таблицы - процесс длительный, но требуется редко , проводится как техоперация в нерабочее время, соответственно, там уже и привлекается математика. НО! В дипломе вы можете даже не заморачиваться этой самой математикой! - просто укажете принцип, а саму такую табличку IRL, может, фирма заказывает на кластерах посчитать/пересчитать, разово за денюшку...
У вас ведь тема - "Калькуляция материалов при производстве мебели", а отнюдь не "Математические методы оптимального раскроя".
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211927
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreTMсделайте таблицу "примитивов" раскроя (как можно порезать такой-то кусок на такие-то части), пусть эта таблица будет "справочником", пусть большим (БД стерпит), но позволяющим не заниматься математикой, а оперировать в OLAP. Тогда весь "алгоритм" будет сводиться к достаточно простым выборкам.То есть нумеруем возможные по-разному урезанные листы как возможные состояния марковского автомата, и держим в справочнике граф "переходов". "Изрезали весь лист, можно выбрасывать" --- поглощающее состояние.

Хотел бы я посмотреть на пример такого справочника, особенно для достаточно большого числа деталей, и простой вопрос вида "есть такие-то листы и такие-то заказы, раскидаь детали по листам" на SQL, без хранимки с довольно матерной эвристикой :)

P.S. Я не издеваюсь, просто разных программ раскроя в своё время перерыл кучу, и ни одной полностью хорошей не нашёл.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38211998
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrypticПодскажите, как хранить фигуру с переменной формой. Сегодня это квадрат, а завтра стал треугольником или кругом. Как организовать и какие поля таблицы необходимо создать?

Спасибо.авторSVG (от англ. Scalable Vector Graphics — масштабируемая векторная графика) — язык разметки масштабируемой векторной графики, созданный Консорциумом Всемирной паутины (W3C) и входящий в подмножество расширяемого языка разметки XML, предназначен для описания двумерной векторной и смешанной векторно/растровой графики в формате XML. Поддерживает как неподвижную, так и анимированную интерактивную графику — или, в иных терминах, декларативную и скриптовую

.. ну а если ваши фигуры, это только многоугольники, можно хранить координаты точек. Это сгодится для хранения и визуализации. А вот как сделать ваш автомат оптимального раскроя...
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38212003
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S.G.SVG...Издеваетесь? За глаза хватит мелкого подмножества DXF или, ещё проще, WKT.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38212005
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я сомневаюсь что автор придумает что-то принципиально новое в задаче оптимального
раскроя. Скорее всего дать возможность человеку просто вводить раскрой в БД
и всё. Или подключить внешние патентованные библиотеки и фреймворки
для решения проблемы.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38212085
пролетевший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrypticСейчас искал хоть одну опен сорс программу, да нет их на свете...

Посмотрите Drools Planner ( теперь Optaplanner , делает именно то что вам нужно. Но это библиотека, как хранить и подавать ей данные решать вам.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38212108
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mayton,
maytonЯ сомневаюсь что автор придумает что-то принципиально новое в задаче оптимального
раскроя. Скорее всего дать возможность человеку просто вводить раскрой в БД
и всё. Или подключить внешние патентованные библиотеки и фреймворки
для решения проблемы.

Да-да! Мне это и нужно. Чтобы из интерфейса програмы можно было указать, что мне нужен определенный кусок лисат, и затем изменение формы зафиксировалось в бд.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38212109
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
пролетевший,

спасибо! Вот этого я не нашел. Обязательно гляну.
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38212112
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iv_an_ru,

iv_an_ruCryptic,

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

Учту ваш совет. спс
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38212113
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот кстати тот форум, где парень хотел заказать подобную программу:

http://python.su/forum/topic/9425/?page=1#post-61904
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38213300
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Хранение изменяемой формы фигуры в бд
    #38215301
Cryptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть идея. Но прокомментируйте ее адекватность, пжлст, ув. программисты.

В таблице хранения материалов хранить двумерный массив булевского типа. Количество его элементов будет совпадать с количеством сантиметров в размерах листов материалов. Например 300x300 см. размер листа ДСП. И пока лист еще ни разу не резали, все элементы его массива будут равны true. Но как только отрезали четвертую часть, та область, которой не стало будет равна false. Тем самым форма, которая будет изменяться - фиксируется в бд.
Да кстати, еще и площади можно отнимать и записывать новое значение, чтобы по площади можно было автоматически проверять, имеет ли смысл вообще тот или иной лист кроить.

Как считаете, внес я новое слово в эту область? :)
...
Рейтинг: 0 / 0
25 сообщений из 75, страница 1 из 3
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Хранение изменяемой формы фигуры в бд
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]