СПОСОБ ПРОСТРАНСТВЕННОГО ХРАНЕНИЯ ОБЪЕКТА ПОСРЕДСТВОМ ГИБКОЙ ИЕРАРХИЧЕСКОЙ СТРУКТУРЫ И ПОСТОЯННЫЙ НОСИТЕЛЬ ИНФОРМАЦИИ

1. Способ пространственного хранения объекта посредством гибкой иерархической структуры, содержащей множество элементов n-дерева, включающий:
- получение из памяти компьютера объекта для размещения в одном из множества элементов n-дерева;
- определение наиболее подходящего элемента n-дерева для размещения объекта;
- определение выхода границы объекта за границы наиболее подходящего элемента n-дерева;
- определение при выходе границы объекта за границы наиболее подходящего элемента n-дерева границы наиболее подходящего элемента n-дерева, пересеченной частью объекта при расположении объекта в этом элементе n-дерева;
- увеличение размера наиболее подходящего элемента n-дерева посредством добавления к нему зоны присутствия объекта, при этом граница зоны присутствия объекта удалена от указанной границы наиболее подходящего элемента n-дерева на максимальную величину выступа объекта за пределы наиболее подходящего элемента n-дерева.
2. Способ по п. 1, включающий получение запроса пользователя посредством выбора пользователем фрагмента пространства, предоставление пользователю объекта, ассоциированного с элементом n-дерева, посредством пользовательского интерфейса компьютера.
3. Способ по п. 2, в котором указанный фрагмент пространства соответствует одному из:
- элементу n-дерева, содержащему по меньшей мере один объект, находящийся в выбранном пользователем фрагменте пространства;
- зоне присутствия объекта, увеличивающей размер соседнего элемента n-дерева.
4. Способ по п. 3, который включает при соответствии выбранного фрагмента пространства указанной зоне присутствия объекта осуществление поиска объекта в
- элементе n-дерева, содержащем по меньшей мере один объект, находящийся в выбранном пользователем фрагменте пространства, и в
- соседнем элементе n-дерева, увеличенном зоной присутствия объекта, соответствующей выбранному указанному фрагменту пространства.
5. Способ по п. 1, в котором множество элементов n-дерева включает в себя по меньшей мере одно из:
- множество узлов n-дерева, каждый из которых имеет предопределенное число элементов n-дерева следующего уровня, и
- множество листьев n-дерева.
6. Способ по п. 1, в котором определение наиболее подходящего элемента n-дерева для размещения объекта осуществляют посредством определения центра объекта.
7. Способ по п. 1, который включает определение количества объектов в элементе n-дерева.
8. Способ по п. 1, в котором предопределяют максимально допустимое количество объектов, расположенных в одном элементе n-дерева.
9. Способ по п. 8, который включает формирование предопределенного количества элементов n-дерева следующего уровня при числе объектов, соответствующих данному элементу n-дерева, превышающему максимально допустимое количество.
10. Способ по п. 9, который включает перераспределение объекта между элементами n-дерева разных уровней.
11. Способ по п. 10, в котором перераспределение объекта осуществляют между предшествующим элементом n-дерева и одним из множества сформированных элементов n-дерева следующего уровня.
12. Способ по п. 10, в котором перераспределение объектов между предшествующим элементом n-дерева и одним из множества сформированных элементов n-дерева следующего уровня осуществляют с учетом размера перераспределяемых объектов.
13. Способ по п. 10, в котором перераспределение объектов между предшествующим элементом n-дерева и одним из множества сформированных элементов n-дерева следующего уровня осуществляют с учетом потенциального пересечения перераспределяемых объектов границами элементов n-дерева следующего уровня.
14. Способ по п. 8, включающий упразднение предопределенного количества элементов n-дерева следующего уровня при сумме объектов во всех этих элементах n-дерева указанного следующего уровня и в предшествующем элементе n-дерева, меньшей или равной максимально допустимому количеству объектов предшествующего элемента n-дерева.
15. Способ по п. 14, включающий перемещение объектов из предопределенного количества упраздненных элементов n-дерева следующего уровня в предшествующий элемент n-дерева.
16. Способ по п. 1, в котором по меньшей мере одна зона присутствия объекта, увеличивающая размер элемента n-дерева, по меньшей мере частично перекрывает другой элемент n-дерева того же уровня.
17. Способ по п. 1, в котором по меньшей мере одна зона присутствия объекта, увеличивающая размер элемента n-дерева следующего уровня, выходит за пределы предшествующего элемента n-дерева.
18. Способ по п. 1, в котором каждый объект размещен только в одном элементе n-дерева.
19. Способ по п. 1, в котором
- n-дерево является деревом квадрантов и
- предопределенное число элементов дерева квадрантов следующего уровня равно четырем.
20. Способ по п. 19, в котором определение наиболее подходящего элемента дерева квадрантов для размещения объекта осуществляется посредством выбора элемента дерева квадрантов, имеющего наименьший прирост площади после увеличения размера наиболее подходящего элемента дерева квадрантов посредством добавления к нему зоны присутствия объекта.
21. Способ по п. 1, в котором
- n-дерево является деревом октантов, и
- предопределенное число элементов дерева октантов следующего уровня равно восьми.
22. Способ по п. 21, в котором определение наиболее подходящего элемента дерева октантов для размещения объекта осуществляется посредством выбора элемента дерева октантов, имеющего наименьший прирост объема после увеличения размера наиболее подходящего элемента дерева октантов посредством добавления к нему зоны присутствия объекта.
23. Способ по п. 1, в котором
- n-дерево является бинарным деревом и
- предопределенное число элементов бинарного дерева следующего уровня равно двум.
24. Способ по п. 23, в котором определение наиболее подходящего элемента бинарного дерева для размещения объекта осуществляется посредством выбора элемента бинарного дерева, имеющего наименьший прирост длины после увеличения размера наиболее подходящего элемента бинарного дерева посредством добавления к нему зоны присутствия объекта.
25. Постоянный носитель информации, включающий базу данных, содержащую гибкую иерархическую структуру с группой элементов n-дерева, и машиночитаемые коды, выполненные с возможностью их осуществления компьютером способа по п. 1.
26. Носитель по п. 25, в котором машиночитаемые коды выполнены с возможностью получения запроса пользователя посредством выбора пользователем фрагмента пространства, предоставления пользователю объекта, ассоциированного с элементом n-дерева, посредством пользовательского интерфейса компьютера.
27. Носитель по п. 26, в котором указанный фрагмент пространства соответствует одному из:
- элементу n-дерева, содержащему по меньшей мере один объект, находящийся в выбранном пользователем фрагменте пространства, и
- зоне присутствия объекта, увеличивающей размер соседнего элемента n-дерева.
28. Носитель по п. 26, в котором машиночитаемые коды выполнены с возможностью при соответствии выбранного указанного фрагмента указанной зоне присутствия объекта осуществления поиска объекта в
- элементе n-дерева, содержащем по меньшей мере один объект, находящийся в выбранном пользователем фрагменте пространства, и в
- соседнем элементе n-дерева, увеличенном зоной присутствия объекта, соответствующей выбранному указанному фрагменту пространства.
29. Носитель по п. 26, в котором машиночитаемые коды и компьютер выполнены с возможностью получения запроса пользователя посредством пользовательского интерфейса компьютера.
30. Носитель по п. 25, в котором группа элементов n-дерева содержит по меньшей мере одно из:
- множество узлов n-дерева, причем каждый из множества узлов n-дерева имеет предопределенное число элементов n-дерева следующего уровня (дочерних элементов), и
- множество листьев n-дерева.
31. Носитель по п. 25, в котором машиночитаемые коды и компьютер выполнены с возможностью определения наиболее подходящего элемента n-дерева для размещения объекта посредством определения центра объекта.
32. Носитель п. 25, в котором машиночитаемые коды и компьютер выполнены с возможностью определения количества объектов в элементе n-дерева.
33. Носитель по п. 25, в котором максимальное допустимое количество объектов, расположенных в одном элементе n-дерева, предопределено.
34. Носитель по п. 33, в котором машиночитаемые коды и компьютер выполнены с возможностью создания предопределенного количества элементов n-дерева следующего уровня в случае при превышении максимально допустимого количества объектов, соответствующих данному элементу n-дерева любого уровня.
35. Носитель по п. 25, в котором машиночитаемые коды и компьютер выполнены с возможностью перераспределения объекта между элементами n-дерева разных уровней.
36. Носитель по п. 35, в котором машиночитаемые коды и компьютер выполнены с возможностью перераспределения объекта между предшествующим элементом n-дерева и одним из группы сформированных элементов n-дерева следующего уровня.
37. Носитель по п. 36, в котором машиночитаемые коды и компьютер выполнены с возможностью перераспределения объектов с учетом размера перераспределяемых объектов.
38. Носитель по п. 36, в котором машиночитаемые коды и компьютер выполнены с возможностью перераспределения объектов с учетом потенциального пересечения перераспределяемых объектов границами элементов n-дерева следующего уровня.
39. Носитель по п. 33, в котором машиночитаемые коды и компьютер выполнены с возможностью упразднения предопределенного числа элементов n-дерева следующего уровня при сумме объектов во всех этих элементах n-дерева указанного следующего уровня и в предшествующем элементе n-дерева, не превышающей максимальное допустимое количество объектов предшествующего элемента n-дерева.
40. Носитель по п. 40, в котором машиночитаемые коды и компьютер выполнены с возможностью перемещения объектов из предопределенного числа упраздненных элементов n-дерева следующего уровня в предшествующий элемент n-дерева.
41. Носитель по п. 25, в котором по меньшей мере одна зона присутствия объекта, увеличивающая размер элемента n-дерева, по меньшей мере частично перекрывает другой элемент n-дерева этого же уровня.
42. Носитель по п. 25, в котором по меньшей мере одна зона присутствия объекта, увеличивающая размер элемента n-дерева следующего уровня, выходит за пределы предшествующего элемента n-дерева.
43. Носитель по п. 25, в котором каждый объект размещен только в одном элементе n-дерева.
44. Носитель по п. 25, в котором
- n-дерево является деревом квадрантов и
- предопределенное число элементов дерева квадрантов следующего уровня равно четырем.
45. Носитель по п. 44, в котором машиночитаемые коды и компьютер выполнены с возможностью определения наиболее подходящего элемента дерева квадрантов для размещения объекта посредством выбора элемента дерева квадрантов, имеющего наименьший прирост площади после увеличения размера наиболее подходящего элемента дерева квадрантов.
46. Носитель по п. 25, в котором
- n-дерево является деревом октантов и
- предопределенное число элементов дерева октантов следующего уровня равно восьми.
47. Носитель по п. 46, в котором машиночитаемые коды и компьютер выполнены с возможностью определения наиболее подходящего элемента дерева октантов для размещения объекта посредством выбора элемента дерева октантов, имеющего наименьший прирост объема после увеличения размера наиболее подходящего элемента дерева октантов.
48. Носитель по п. 25, в котором
- n-дерево является бинарное деревом и
- предопределенное число элементов бинарного дерева следующего уровня равно двум.
49. Носитель по п. 49, в котором машиночитаемые коды и компьютер выполнены с возможностью определения наиболее подходящего элемента бинарного дерева для размещения объекта посредством выбора элемента бинарного дерева, имеющего наименьший прирост длины после увеличения размера наиболее подходящего элемента бинарного дерева.