Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 26.05.2008, 20:02
Аватар для AXS
AXS AXS вне форума
Новичок
 
Регистрация: 26.11.2006
Адрес: РК г. Талдыкорган
Сообщения: 67
Репутация: 15
Лампочка Как хранить координаты точек?

Вопрос чисто теоретический.
Программа выводит на экран сложное трёхмерное изображение по точкам. Сам процесс прорисовки происходит в отдельной нити (Thread), потому что процесс тяжёлый и просто требует этого (хотя может я заблуждаюсь???).
Вопрос собственно вот в чём: Как лучше хранить координаты точек чтоб они быстрее (оперативнее) вводились/выводились? И/или использовали меньше ресурсов?
Два основных варианта - массив (Array) и поток (Stream)... Возможно у вас есть другие...
Ответить с цитированием
  #2  
Старый 26.05.2008, 21:10
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,097
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Record или Class. Одна точка - одна переменая. А в чем ты их будешь реально хранить - неважно. Только не в TStream, т.к. у тебя будут большие накладные на поиск и чтение/запись.

Я бы взял массив для записей и TObjectList для классов. Да, мои предпочтения отданы классу, но здесь это не так важно.
Ответить с цитированием
  #3  
Старый 26.05.2008, 21:30
Аватар для AXS
AXS AXS вне форума
Новичок
 
Регистрация: 26.11.2006
Адрес: РК г. Талдыкорган
Сообщения: 67
Репутация: 15
По умолчанию

С массивом не так всё просто... Количество точек очень большое и заранее неизвестно. Делать массив в 1000 значений по меньшей мере неэкономно, да и 1000-ей дело может неогрничится...
Как быть?
Ответить с цитированием
  #4  
Старый 26.05.2008, 22:17
Burka Burka вне форума
Начинающий
 
Регистрация: 10.06.2007
Сообщения: 163
Репутация: 10
По умолчанию

Ну вообще используется буфер специальный, если говорить про опенДжл или ДиректИкс.
Ответить с цитированием
  #5  
Старый 26.05.2008, 22:26
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,097
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Динамический массив или список (TList, TObjectList)
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:39.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025