Russian Qt Forum
Ноябрь 23, 2024, 16:48 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2] 3 4 ... 7   Вниз
  Печать  
Автор Тема: псевдослучайные числа типа float  (Прочитано 39809 раз)
m_ax
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2095



Просмотр профиля
« Ответ #15 : Июнь 30, 2011, 18:39 »

У меня сейчас под рукой нет ничего такого 3dшного, на чём можно было бы быстро отобразить результаты для сферы.
Сейчас попробую покурить на тему QGLWidget.. Там вроде это не сложно сделать (мало опыта в 3d).
Вобщем, советую Вам запастись терпением))
Записан

Над водой луна двурога. Сяду выпью за Ван Гога. Хорошо, что кот не пьет, Он и так меня поймет..

Arch Linux Plasma 5
BRE
Гость
« Ответ #16 : Июнь 30, 2011, 18:59 »

Набросал небольшой 2D-тест.
Буфер 500x500 точек, заполняется 20 000 точек.
Результаты, что бы понять насколько это плохо или хорошо.  Улыбающийся
« Последнее редактирование: Июль 03, 2011, 20:18 от BRE » Записан
m_ax
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2095



Просмотр профиля
« Ответ #17 : Июнь 30, 2011, 19:02 »

Набросал небольшой 2D-тест.
Буфер 500x500 точек, заполняется 20 000 точек.
Результаты:

А что за генератор?
А первый рисунок, на котором ничего нет - это что?
Записан

Над водой луна двурога. Сяду выпью за Ван Гога. Хорошо, что кот не пьет, Он и так меня поймет..

Arch Linux Plasma 5
BRE
Гость
« Ответ #18 : Июнь 30, 2011, 19:03 »

А что за генератор?
Mersenne Twister

А первый рисунок, на котором ничего нет - это что?
Исходная картинка - до генерации.  Улыбающийся
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #19 : Июнь 30, 2011, 20:42 »

У меня сейчас под рукой нет ничего такого 3dшного, на чём можно было бы быстро отобразить результаты для сферы.
Сейчас попробую покурить на тему QGLWidget.. Там вроде это не сложно сделать (мало опыта в 3d).
Вобщем, советую Вам запастись терпением))
m_ax, что за дешевый понт? Да шлепните точки в изометрии, делов 10 минут, я ж не прошу Вас делать реальную камеру.

Набросал небольшой 2D-тест.
Буфер 500x500 точек, заполняется 20 000 точек.
Результаты, что бы понять насколько это плохо или хорошо.  Улыбающийся
Ну у Вас с инструментарием все Ок (не сомневался), но точки распределены как бык поссал - а надо аккуратно (attachment)
Записан
BRE
Гость
« Ответ #20 : Июнь 30, 2011, 20:57 »

но точки распределены как бык поссал - а надо аккуратно (attachment)
Аккуратные случайные числа?  Улыбающийся
Записан
Denjs
Гость
« Ответ #21 : Июнь 30, 2011, 21:07 »

Набросал небольшой 2D-тест.
статистические исследования проводятся не так.
 берёте выборку, строите гистограмму распределения, потом считаете разные мат-параметры и т.п.

а это - на глаз. показывает имхо, только насколько генерируемые одно и другое число разнятся...

имхо, порядок у вас тоже важен. но как это считать - не помню.
а то выяснится что у ваш генератор  каждое второе число генерирует просто увеличивая на единицу значение - и так по циклу? картинку вы тоже похожую получите...

В общем случае - берите какой-алгоритм генерации случсйных чисел, подбирайте параметры, для каждого параметра проводите исследование и смотрите что бы у вас получилость равномерно-распределенная псевдо-случайная величина. а если у вас равномерно-распределенная величина - преобразовать её к величине с заданным графиком распреденеия - проблем не составит. именно пожтому ч не играю в азартные игры с компьютером - я знаю что статистически он всегда выигрывает))))
Записан
Denjs
Гость
« Ответ #22 : Июнь 30, 2011, 21:10 »

короче, господа. наш чайник-топик-стартер свалил , предлагаю и нам забить на тему))))
Записан
BRE
Гость
« Ответ #23 : Июнь 30, 2011, 21:11 »

Не-не. Мне этого не надо, это пусть Igors исследует, если нужно Подмигивающий
Мне было интересно посмотреть конкретный генератор и распределитель, что бы узнать будут ли образовываться скопления/пустоты.
Попробовал с различными количествами точек. На интересующий меня вопрос ответ получил.  Улыбающийся
Записан
ufna
Гость
« Ответ #24 : Июнь 30, 2011, 23:25 »

в картинках от Igors очень сильно проявляется определенный паттерн для точек
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #25 : Июль 01, 2011, 10:20 »

в картинках от Igors очень сильно проявляется определенный паттерн для точек
Есть такое дело, но картинки получены не размножением паттернов

Мне было интересно посмотреть конкретный генератор и распределитель, что бы узнать будут ли образовываться скопления/пустоты.
Попробовал с различными количествами точек. На интересующий меня вопрос ответ получил.  Улыбающийся
Ну так озвучьте ответ, или, еще лучше, предъявите картинку. Из того что Вы пока показали неясно как же сделать без скоплений и пустот.

статистические исследования проводятся не так.
Учитель, я не спрашивал как проводятся статистические исследования. Задача покрыть заданную поверхность заданным числом "самплов" (точек). А как это сделать - с генератором, дустом или без - ограничений нет, нужен результат. 

 
Записан
BRE
Гость
« Ответ #26 : Июль 01, 2011, 10:46 »

Ну так озвучьте ответ, или, еще лучше, предъявите картинку. Из того что Вы пока показали неясно как же сделать без скоплений и пустот.
Странно как-то.  Строит глазки
Я привел картинку и написал параметры ее получения. По моему субъективному мнению и при заданных параметрах явных скоплений/пустот лично(!) я не увидел.  Улыбающийся
Какую картинку еще нужно привести?  Я приведу.  Подмигивающий
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #27 : Июль 01, 2011, 11:17 »

Странно как-то.  Строит глазки
Я привел картинку и написал параметры ее получения. По моему субъективному мнению и при заданных параметрах явных скоплений/пустот лично(!) я не увидел.  Улыбающийся
А я увидел Улыбающийся Попробуйте получить имедж используя созданные точки. Используйте любой фильтр какой нравится, хотя бы так (псевдокод)
Код
C++ (Qt)
foreach pixel  {
float value = 0.0f;
foreach point {
 float d = distance(pixel, point);
 if (d < averageRadius) {
   value += 1.0f - d / averageRadius;
   if (value >= 1.0f) break;
 }
}
pixel.SetColor(value, 0, 0);
}
 
Ну с Вашей техникой это семечки  Улыбающийся
Однако Вы обнаружите что картинка получается "рябая", и радиус осреднения должен быть очень велик чтобы получить (приемлемую) равномерную закраску
« Последнее редактирование: Июль 01, 2011, 11:25 от Igors » Записан
BRE
Гость
« Ответ #28 : Июль 01, 2011, 12:09 »

Попробуйте получить имедж используя созданные точки. Используйте любой фильтр какой нравится, хотя бы так (псевдокод)
А для чего мне это пробовать?
Я проверил конкретный движок, с конкретным распределителем, с конкретными параметрами и сделал для себя определенные выводы по работе этой связки.
Если эта связка не подходит для каких то твоих задач... ну что-ж прискорбно.  Улыбающийся
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #29 : Июль 01, 2011, 12:40 »

А для чего мне это пробовать?
Я проверил конкретный движок, с конкретным распределителем, с конкретными параметрами и сделал для себя определенные выводы по работе этой связки.
Просто точки расставлены плохо, и простой тест на выглаживание это покажет. Ну а выводы там можно делать любые - но они ничего не меняют  Улыбающийся

Если эта связка не подходит для каких то твоих задач... ну что-ж прискорбно.  Улыбающийся
Неужели Вы серьезно думаете что я ищу решение на форуме? Улыбающийся Мне было бы интересно поговорить с человеком который тоже этим занимался, или, по крайней мере, имеет склонность к такой работе. А задачу эту я решал уже много лет назад  Улыбающийся
Записан
Страниц: 1 [2] 3 4 ... 7   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.138 секунд. Запросов: 23.