Категории пазлов

Животные Транспорт
Картины и рисунки Портреты
Компьютерная графика Люди
Быт Юмор
Эротика Пейзаж
Постройки Разное
Растения Для маленьких
Аниме Кино и мультфильмы
Игры Микро
Призовые Коллаж
Великая куча! Катeгория 0
Мегасложные!
Статьи!

Новые сообщения на форуме


Ответа дан 03.06.2025 14:58:02 Как теперь можно добавить новые картинки?
Ответа дан 12.05.2025 12:17:01 Глюки, ошибки, перебои в работе
Ответа дан 26.11.2024 17:22:05 Сбор денег на работу сайта
Ответа дан 07.10.2024 2:32:37 проблема со сбором пазлов
Ответа дан 07.09.2024 12:59:02 Что делать? Ошибки и прочее.
Ответа дан 03.04.2024 19:01:00 Есть контакт
Ответа дан 31.03.2024 17:07:02 И мы снова в 2015
Ответа дан 29.03.2024 15:11:01 Картинки не открываются
Ответа дан 03.12.2015 9:03:43 Остановка сайта
Ответа дан 02.12.2015 13:34:00 Срочно помогите!!!

Пазлы: Форум

 
Форум Вопросы связанные с работой сайта puzz
Тема от Посмотреть профайл Пупсик

Я вас люблю!
1167 Отв.
Глюки, ошибки, перебои в работе
Сообщайте обо всем! Время когда была ошибка на какой странице и прочее.

Цитировать выделенное



   _______________________________
0

 Посмотреть профайл slavko11

Юзер
185 Отв.
И так проведя анализ работы скрипта я пришел к выводу, что при не целочисленном делении картинки на элементы, существует два пути решения: 1. оставлять картинку целиком и тогда возникнут элементы черной подложке (как было раньше с черной рамкой) или 2. ряд будет убираться (как это происходит сейчас),

Это совершенно не так
В абсолютном большинстве паззлов целочисленного деления нет и в помине. Укажите мне хоть один паззл на первой странице великой кучи, где есть хоть одно целочисленное деление. Следовательно, у большинства пазлов должно не хватать либо строчки, либо столбца, а это не так.
Согласен, что проблема апроксимации размеров существует. Я сегодня-завтра поэкспериментирую и попытаюсь все же доказать, что я прав относительно пропадания строк и столбцов даже без наличия всего кода. И одновременно подумаю, как решается проблема корректного разбиения картинки сейчас и как это можно сделать.


10.11.2010 11:33:03

Цитировать выделенное




   _______________________________
Не всем дано быть бизнесменами. Некотрые так и помрут математиками.
 Посмотреть профайл Vredina

Модер
545 Отв.
а есть и третий вариант... делить с концом ноль)))) Рамка не нужна - слишком облегчает.. ну и кохда ряда нет обЫднооо

10.11.2010 10:44:02

Цитировать выделенное




   _______________________________
Против глупости сами Боги бороться бессильны
 Посмотреть профайл Собиратель
Юзер
33 Отв.
Я знаю что Int. И так проведя анализ работы скрипта я пришел к выводу, что при не целочисленном делении картинки на элементы, существует два пути решения: 1. оставлять картинку целиком и тогда возникнут элементы черной подложке (как было раньше с черной рамкой) или 2. ряд будет убираться (как это происходит сейчас), другого пути решения проблемы не найдено. Это происходит в результате специфики работы с изображениями по целочисленным пикселям (по другому просто не бывает).
Я прошу пользователей определиться вернуть мне полуэлементы с черными краями (надеюсь вы все еще помните что это?) или оставить все как есть.

10.11.2010 10:30:01

Цитировать выделенное



 Посмотреть профайл slavko11

Юзер
185 Отв.
будет ли делиться картинка на куски если размер элемента дробный

аргументы у функции imagecopy - имеют тип int
поэтому если не знаете, как работает функция с дробными числами, преобразуйте их в целое самостоятельно

09.11.2010 19:18:05

Цитировать выделенное




   _______________________________
Не всем дано быть бизнесменами. Некотрые так и помрут математиками.
 Посмотреть профайл slavko11

Юзер
185 Отв.
Я использовал такой странный алгоритм чтобы вычислить не только количество строк и столбов, но и вычислить размер элемента пазла максимально приближенного к заданному пользователем:
$rows1 = $height/$cellheight; тут используется размер пользователя
$cols1 = $width/$cellwidth; и тут тоже

$cellheight=$height/floor($rows1); а тут делаем приблежение
$cellwidth=$width/floor($cols1); и тут

и получаем новый размер элемента

а уже затем исходя из этого посчитать количество строк и столбов:
$rows = floor($height/$cellheight);
$cols = floor($width/$cellwidth);

так что ни чего выкинуть нельзя.



Я Вашу задумку, физический смысл - понял. Но реализация неверная. Ибо делает двойное тождественное вычисление. Вот если бы вместо
$cellheight=$height/floor($rows1);
$cellwidth=$width/floor($cols1);
использовать
$cellheight=floor($height/floor($rows1));
$cellwidth=floor($width/floor($cols1));

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

в любом случае дальнейший алгоритм мне неизвестен, а почему в моей картинке обрезало нижнюю строку - я показал, проверил у себя на сервере.

09.11.2010 17:01:00

Цитировать выделенное




   _______________________________
Не всем дано быть бизнесменами. Некотрые так и помрут математиками.
 Посмотреть профайл slavko11

Юзер
185 Отв.
Из-за этого двойного преобразования ошибка и возникла. Попробуйте с моей картинкой и указанными размерами элементов первый и второй вариант скрипта, и увидите, что дело только в этом.

09.11.2010 16:40:01

Цитировать выделенное




   _______________________________
Не всем дано быть бизнесменами. Некотрые так и помрут математиками.
 Посмотреть профайл Собиратель
Юзер
33 Отв.
Собственно да, я догадался кажется в чем дело

09.11.2010 16:39:02

Цитировать выделенное



 Посмотреть профайл slavko11

Юзер
185 Отв.
Показываю с точки зрения математики:
пусть
а=floor($rows1)
в=$height
с=$cellheight
d=$rows
тогда вместо
$cellheight=$height/floor($rows1);
$rows = floor($height/$cellheight);
можно записать:
c=b/a;
d=b/c;
во второе уравнение вместо с подставляем его значение из первого уравнения:
d=b/(b/a)=a
то есть
$rows=floor($rows1)=floor($height/$cellheight);



Эта конструкция
$rows1 = $height/$cellheight;
$cols1 = $width/$cellwidth;

$cellheight=$height/floor($rows1);
$cellwidth=$width/floor($cols1);

лишняя
Она делает то же, при этом вносятся особенности вычислений с плавающей запятой в виде вышеназванной ошибки.
Поверьте мне



09.11.2010 16:37:02

Цитировать выделенное




   _______________________________
Не всем дано быть бизнесменами. Некотрые так и помрут математиками.
 Посмотреть профайл Admin
Юзер
6 Отв.
у меня есть мнение, что я не до конца понимаю, как работают некоторые функции в php будет ли делиться картинка на куски если размер элемента дробный и как происходит округление внутри функции, функция imagecopy

09.11.2010 16:25:05

Цитировать выделенное



 Посмотреть профайл Admin
Юзер
6 Отв.
Я использовал такой странный алгоритм чтобы вычислить не только количество строк и столбов, но и вычислить размер элемента пазла максимально приближенного к заданному пользователем:
$rows1 = $height/$cellheight; тут используется размер пользователя
$cols1 = $width/$cellwidth; и тут тоже

$cellheight=$height/floor($rows1); а тут делаем приблежение
$cellwidth=$width/floor($cols1); и тут

и получаем новый размер элемента

а уже затем исходя из этого посчитать количество строк и столбов:
$rows = floor($height/$cellheight);
$cols = floor($width/$cellwidth);

так что ни чего выкинуть нельзя.

09.11.2010 16:21:00

Цитировать выделенное



Ответить

[:)] [:oops:] [;)] [:star:] [o)] [xx(] [:D] [|)] [:errr:] [:V:] [:(] [:^:] [:x] [}:)] [:o)] [8D]
html теги: Жирный текст Курсив
Прикрепить файл: 
 
   


Всего 62 стр.   
На стр.
   <<   32  |  33  |  34  |  35  |  36  |  37  |  38  |  39  |  40  |  41  >>  Пред. стр. | След. стр. | Обновить

Лаборатория Соломонова