Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.23;
Скачать: CL | DM;

Вниз

Оптимизация хранения данных для транслятора, который рисует фигур   Найти похожие ветки 

 
MVP   (2006-04-05 22:16) [0]

Смотрите, написал транслятор. Он рисует различного рода фигуры. Принцип действия таков. Мы задаем какую фигуру нам надо построить, программа обращается в текстовый файл, ищет в нем необходимое название, после которого идут команды параметры отрисовки. Например линия, которую содержит эта фигура и она характеризуется буквой L. Строка с этой буквой разбивается на части, и потом рисуется с помощью функций Канвы. Для этих фигур есть разные параметры, кроме лтиний, круги, квадраты, эллипсы. При выводе таких 20 значков, скорость отрисовки очень медленная. Подскажите как оптимизировать хранение таких данных, чтобы повысить анализ файла.


 
Юрий Зотов ©   (2006-04-05 22:26) [1]

Скорее всего, тормозит не анализ файла, а сама отрисовка. Ее и надо оптимизировать в первую очередь. А анализ файла по сравнению с рисованием - копейки.


 
MVP   (2006-04-06 01:07) [2]

Смотри просто как происходит. Для каждой прорисовки рисунка открывается текстовый файл, в нем ведется поиск строки, потом идет анализ директив для этой строки и так каждый значек, а их у меня штук 70.


 
MVP   (2006-04-06 11:25) [3]

а что такое  Windows-Format Metafiles?


 
Amoeba ©   (2006-04-06 11:28) [4]


> MVP   (06.04.06 11:25) [3]
> а что такое  Windows-Format Metafiles?

Примитивно говоря, это файл, содержащий последовательность команд GDI для отрисовки на контексте устройства (Canvas), а не сам рисунок (как BMP или ICO).


 
ЮЮ ©   (2006-04-06 11:32) [5]


> Смотрите, написал транслятор.

Не вижу, как не всматриваюсь.

Теперь пиши компилятор :)
После подъема всех текстовых файлов запиши все объекты в бинарном формате в один файл.


 
MVP   (2006-04-06 12:09) [6]

Код написанного просто на работе.

> После подъема всех текстовых файлов запиши все объекты в
> бинарном формате в один файл.

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

Но не лучше использовать wmf и emf, как их формировать, как с ними работать?



Страницы: 1 вся ветка

Текущий архив: 2006.04.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.052 c
15-1144046356
ORMADA
2006-04-03 10:39
2006.04.23
Delphi7+sp1


15-1143812834
WondeRu
2006-03-31 17:47
2006.04.23
Есть варианты перевода "Uhn Tiss Uhn Tiss Uhn Tiss"?


15-1143905550
unknown
2006-04-01 19:32
2006.04.23
Эльбрус 6к


15-1143701676
balepa
2006-03-30 10:54
2006.04.23
Try if and GetLastError


8-1132999209
Stany
2005-11-26 13:00
2006.04.23
Определение типа изображения путем сравнения