Как реализовать реляционную базу данных в контексте САПР - PullRequest
0 голосов
/ 02 октября 2018

Я занимаюсь разработкой клиентского программного обеспечения для реляционной базы данных в контексте САПР, но меня немного смущает правильная стратегия реализации, поскольку у меня нет достаточных знаний о том, как использовать реляционные базы данных.

Следующая ситуация: я получил несколько поверхностей, которые ограничены другими поверхностями.Скажем, поверхность A ограничена поверхностями B и C, поверхность B ограничена поверхностями A и D и так далее.По умолчанию поверхности - это (бесконечные) плоскости, которые затем обрезаются соответствующими граничными поверхностями.

Я получил эти отношения, представленные в моей реляционной базе данных, это нормально.

Теперь я должен разобратьсяс ситуацией, когда поверхность, скажем, А, меняется.В этом случае я хотел бы знать, какие поверхности ограничены A, и обновить их геометрию.Я вижу две возможные стратегии реализации:

  • Я запускаю запрос в своей БД, чтобы получить все поверхности, ограниченные A.
  • Я строю граф отношений из моей БД при запуске, а затемиспользуйте этот график, чтобы найти все поверхности, ограниченные A.

Насколько я вижу, первый вариант - это скорее "реальное" клиентское программное обеспечение для манипулирования БД, тогда как второй вариант кажетсяболее традиционное программное обеспечение CAD (загрузить модель при запуске, изменить ее и сохранить обратно в файл / базу данных).

Что вы думаете?Какой путь мне выбрать?

...