Важная информация

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 17

Тема: вопрос по формуле или алгоритму...

  1. #1
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию вопрос по формуле или алгоритму...

    как можно зная размер файла спрайта, получить (как то подсчитать) его высоту и ширину? особенно если учесть что спрайт могет быть или 8на8 или 512 на 256 к примеру...как то можно или универсальной формулы нет?
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Master
    Регистрация
    16.09.2005
    Адрес
    Дзержинск (DustCity)
    Сообщений
    919
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вопроса не понял...
    Pentagon1024sl2.2/TSFM/Z-Controller/GS128Kb/HDD/CDROM/Palcoder

  4. #3
    Veteran Аватар для GriV
    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну если речь про спекк, то берёшь по размер 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) - вторая часть отвечает за атрибуты.
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  5. #4
    Guru
    Регистрация
    16.11.2005
    Адрес
    Санкт-Петербург
    Сообщений
    2,893
    Спасибо Благодарностей отдано 
    1,125
    Спасибо Благодарностей получено 
    343
    Поблагодарили
    190 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от TmK Посмотреть сообщение
    вопроса не понял...
    +1

  6. #5
    Guru Аватар для Addison
    Регистрация
    07.01.2006
    Адрес
    г. Москва
    Сообщений
    3,442
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    +2

  7. #6
    --- Аватар для Shadow Maker
    Регистрация
    01.03.2005
    Адрес
    Саранск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    235
    Поблагодарили
    100 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    как можно зная размер файла спрайта, получить (как то подсчитать) его высоту и ширину? особенно если учесть что спрайт могет быть или 8на8 или 512 на 256 к примеру...как то можно или универсальной формулы нет?
    Никак не посчитаешь. Вон бери спрайт сканер какой-нить и визуально смотри. Потому шо спрайт у тебя он конечно кратный, а вот отличить 8x6 от 6x8 кроме как визуально никак.

    Мужчинам с плюсами - флуд отставить.
    Свирепый агрессивно-депрессивный мордовец!
    Не уверен - не напрягай!

    Не сдавайся. Дыши?

    Virtual TR-DOS

  8. #7
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    спрайт без заголовка. например файл имеет размер 15360. как можно расчитать размеры спрайта имея только подобные данные...в это и заключается вопрос.
    причём неорганичиваясь только на размерах экрана спектрума типа 32*192...
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  9. #8
    Banned
    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    неужели до сих пор не очевидно, что 100% решения не существует? если бы у тебя была длина файла равная произведению 2х ПРОСТЫХ чисел, тогда варианта всего 2. а в общем случае - раскладывать длину на простые множители и пробовать все комбинации (в т.ч. с произведениями множителей). и каждую комбинацию визуально проверить!

    возможно, это можно автоматизировать, анализируя изображение, но это сложно и тоже не даст 100% результата.

  10. #9
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    да я просто думал что за 10 лет местные знатоки придумали способ)))
    ладно, спасиба.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  11. #10
    Vitamin C++ Аватар для Vitamin
    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,254
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    34 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    да я просто думал что за 10 лет местные знатоки придумали способ)))
    Придумали. Sprite Tools называется.

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Вопрос по IDE
    от Пётр в разделе Внешние накопители
    Ответов: 67
    Последнее: 13.05.2007, 20:40
  2. Вопрос про ПЗУ
    от Eltaron в разделе Память
    Ответов: 14
    Последнее: 25.12.2005, 20:17

Ваши права

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