случайная точка внутри кривосторонего треугольника
собсно вот :
надо равномерное распределение полученых точек ps. кривая сторона может быть и не гиперболой .. просто кривая по форме идентична той что на рисунке |
Re: случайная точка внутри кривосторонего треугольника
Надо знать уравнение гиперболы. Если же оно неизвестно, как вариант, можно заполнить нужную область какими-то данными (одним цветом). Затем построить апроксимирующую кривую - можно просто прямую, чтобы получился треугольник. И проверять цвет в полученной точке. Если не попал, выбираешь новую точку.
Если уравнение задано, должно быть понятно, как делать. |
Re: случайная точка внутри кривосторонего треугольника
хм, ладно :) можно значит немного упростить случай
разбить параболу на прямые линии и проводить расчет с етой областью ................. в общем разобрался : (если кривая заданна f(x) ) x = rand(x0,x1) y = rand(f(x-x0)+y0,y1) осталось подобрать такую кривую :) |
Re: случайная точка внутри кривосторонего треугольника
f(x) = -a/x не катит типа?)
|
Re: случайная точка внутри кривосторонего треугольника
alcoSHoLiK
не катит типа :) |
Re: случайная точка внутри кривосторонего треугольника
Навскидку, тупейший вариант- это генерировать точки до тех пор, пока одна из них не попадёт внутрь фигуры.
Код:
REPEAT Код:
RndX=RND(FigWidth) |
Re: случайная точка внутри кривосторонего треугольника
вот примерно то что мне надо :)
Код:
Graphics 800,600,0,0 |
Re: случайная точка внутри кривосторонего треугольника
ИМХО сначала следует вычислить случайную точку в пределах прямоугольника (0,высота фигуры, 0, -ширина фигуры), а затем проверить, принадлежит ли она этому эмм, треугольнику, и только если принадлежит, то рисовать её - хоть это и не слишком-то рационально, но зато поможет избавиться от скопления точек в левой части фигуры.
|
Re: случайная точка внутри кривосторонего треугольника
ABTOMAT
это тупо, перечитай тему |
Часовой пояс GMT +4, время: 14:34. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot