как можно зная размер файла спрайта, получить (как то подсчитать) его высоту и ширину? особенно если учесть что спрайт могет быть или 8на8 или 512 на 256 к примеру...как то можно или универсальной формулы нет?
как можно зная размер файла спрайта, получить (как то подсчитать) его высоту и ширину? особенно если учесть что спрайт могет быть или 8на8 или 512 на 256 к примеру...как то можно или универсальной формулы нет?
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
вопроса не понял...
Pentagon1024sl2.2/TSFM/Z-Controller/GS128Kb/HDD/CDROM/Palcoder
Ну если речь про спекк, то берёшь по размер X спрайта кратен 8 точкам.
- если спрайт чёрно белый то получается - длина файла N. Если N - число простое, то очевидно что имеем дело с спрайтом X=8, Y=N. Если N не простое, то делаешь X=2..N-1 и делишь Y=N/X. Как только получается Y - целое вероятно что это оно и есть и ты нашёл параметры спрайта. Если не нашлось такого целого Y что Y=N/X при любом X из этого диапазона то очевидно что алгоритм программы сбоен - потому что число не простое :-) Соотвественно будет получено несколько значений для X и Y. Однако надо понимать, что если например N=27 то возможны варианты X=3 Y=9 и X=9 Y=3, в этом случае нужно уже делать эвристический анализ на то где плавнее меняется содержимое ("кривой" по параметрам спрайт будет содержать скорее шум чем изображение).
- если спрайт цветной то всё то же самое за исключением того, что имеет место N = X*Y+(X/8*Y) - вторая часть отвечает за атрибуты.
GMX для Scorpion'а можно приобрести здесь
ZX-BUS XTRaiser v2.1 (активный расширитель ZX-BUS здорового человека на 3 слота) можно приобрести здесь
SMUC 2.1 rev. C Black & White edition (v.2022) можно приобрести здесь
Scorpion ZS-256 Turbo, GMX 2048Kb, ZX-BUS XTRaiser v2.0, SMUC v2.0 rev. A, SDCard 32Gb, GS 2Mb,
ZXMC 2v28, TSFM, FDD 5'25 Teac x2, FDD 3'5 Sony, VGA&PALv2.09, PC Keyboard & Mouse
+2
Свирепый агрессивно-депрессивный мордовец!
Не уверен - не напрягай!
Не сдавайся. Дыши?
Virtual TR-DOS
спрайт без заголовка. например файл имеет размер 15360. как можно расчитать размеры спрайта имея только подобные данные...в это и заключается вопрос.
причём неорганичиваясь только на размерах экрана спектрума типа 32*192...
неужели до сих пор не очевидно, что 100% решения не существует? если бы у тебя была длина файла равная произведению 2х ПРОСТЫХ чисел, тогда варианта всего 2. а в общем случае - раскладывать длину на простые множители и пробовать все комбинации (в т.ч. с произведениями множителей). и каждую комбинацию визуально проверить!
возможно, это можно автоматизировать, анализируя изображение, но это сложно и тоже не даст 100% результата.
да я просто думал что за 10 лет местные знатоки придумали способ)))
ладно, спасиба.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)