Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

многомерность [D2005, XP]


DFT ©   (2008-05-15 19:37:00) 

Подскажите пожалуйста, как лучше поступить?

Мне необходимо получать файл с координатами тела в трехмерном пространстве, сформированного из точек с определенными шагами по осям х у и z.
Тело может представлять собой цилиндр, пирамиду и т.п.
Подобные файлы с координатами точек тела можно без проблем создавать программно. Но возникает проблемма с тем что при малых шагах, например, 5 мкм, тело - куб 25х25х25 мм, требует трехмерного массива с размером в памяти больше гигабайта, что приводит к зависанию компьютера.
Можно ли как-то по другому подойти к решению этой задачи (может быть использовать не массив)?


Anatoly Podgoretsky   (2008-05-16 10:34:00) [1]


> Но возникает проблемма с тем что при малых шагах, например,
>  5 мкм, тело - куб 25х25х25 мм, требует трехмерного массива
> с размером в памяти больше гигабайта, что приводит к зависанию
> компьютера.
> Можно ли как-то по другому подойти к решению этой задачи
> (может быть использовать не массив)?

Вообще то - 1 000 000 000 000 байт, на 25 мм приходится 5000 точек, в кубе и умножить на 8, а это уже не гигабайт, а террабайт.


MBo   (2008-05-16 09:39:00) [2]

А что, необходимо весь массив держать в памяти?


Vlad Oshin   (2008-05-16 09:29:00) [3]

писал как то приятелю подобное: модель испарения молекул с твердого тела, какого-то, не помню какого, но молекулы очень нехило испарялись, от параллелепипеда оставался испещеренный элипсоид, который и далее таял

Пришлось заводить плоский файл. Трехмерный массив разложить в линейный и позиционироваться (seek), через функции преобразования одного массива в  другой и наоборот.


Vlad Oshin   (2008-05-16 09:29:00) [4]

Удалено модератором


Vlad Oshin   (2008-05-16 09:29:00) [5]

Удалено модератором


DFT   (2008-05-15 20:38:00) [6]

>Юрий Зотов

> Если Ваша программа будет иметь формулы, то она сможет вычислять
> по ним любые координаты с любым шагом. Их и отправляйте
> своему станку.


Спасибо. Действительно, наверное, стоит попробовать.


Юрий Зотов   (2008-05-15 20:19:00) [7]

> DFT   (15.05.08 20:16) [8]

> Он понимает только координаты точек, а мне нужно заставить его
> двигаться по нужным мне координатам.

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


DFT   (2008-05-15 20:16:00) [8]

файл с координатами точек который мне нужно получить необходим для лазерного станка с ЧПУ. Он понимает только координаты точек, а мне нужно заставить его двигаться по нужным мне координатам.
Это не ЧУШЬ, а реальная задача которую я пытаюсь решить!
Я не специалист в программировании поэтому прошу помощи у специалистов, а не спрашиваю чушью я занимаюсь или еще какой-то фигней.


Denis__   (2008-05-15 20:05:00) [9]

А если куб будет со стороной в километр? тогда что?


Denis__   (2008-05-15 20:04:00) [10]


> нужный мне куб должен состоять из точек с шагом по всем
> осям в 5 мкм (в 1 мм 1000 мкм), при этом он должен быть
> полностью заполнен такими точками.
> В результате куб 25х25х25 мм будет состоять из 25000х25000х25000
> = 15625*10^9 точек.

Это реально чушь! Зачем задавать каждую точку?!


DFT   (2008-05-15 20:01:00) [11]

нужный мне куб должен состоять из точек с шагом по всем осям в 5 мкм (в 1 мм 1000 мкм), при этом он должен быть полностью заполнен такими точками.
В результате куб 25х25х25 мм будет состоять из 25000х25000х25000 = 15625*10^9 точек.


San1   (2008-05-15 19:59:00) [12]

Удалено модератором
Примечание: Читать правила


Юрий Зотов   (2008-05-15 19:58:00) [13]

Если все тела - "правильной" формы, то вместо задания поверхности по точкам можно использовать ее задание формулой (или набором формул). А формулы взять из учебника по аналитической геометрии.


Сергей М.   (2008-05-15 19:56:00) [14]

Горбатого леплю)

Не 6, а 4 (!) параметра
- опорные координаты одной из вершин
- вектор ориентации (например, направления диагонали)


Сергей М.   (2008-05-15 19:50:00) [15]


> тело - куб 25х25х25 мм, требует трехмерного массива с размером
> в памяти больше гигабайта


Чушь собачья.

Для описания кубатребуется 6 параметров.


Наверх

Титульная страница Поиск, карта сайта Написать письмо