как показано на рисунке ниже, я хотел бы найти случайную позицию в синей области (B), а не в красной области (A). Как я могу это достичь? В настоящее время A и B являются 2 коллайдерами. Мне просто нужна позиция внутри B, но она не может быть в пределах A. Спасибо заранее.Единство, получить случайное положение в пределах области?
ответ
одно решение такое же, как Нико Schertler отметил в комментарии
- Получить координаты каждой вершины как прямоугольника.
- возьмите координату x min x синего треугольника и минимальную координату красного треугольника как пару (xminBlue, xminRed). Возьмите координату x max x красного треугольника и максимальную координату синего треугольника как пару. (XmaxRed, xmaxBlue)
- Сделайте то же самое для координаты Y и получите (yminBlue, yminRed). (YmaxRed, ymaxBlue)
- Использование
if(Random.value < GetRatio(xminBlue-xminRed),xmaxRed-xmaxBlue){ x= Random.Range(xminBlue,xminRed); }else { x= Random.Range(xmaxRed,xmaxBlue); } float GetRatio (float distance_1,float distance_2){ return distance_1/distance_1 + distance_2;
} - Сделайте то же самое, как 4, чтобы получить значение у
В этом решении и не нужно отвергать любую координатную
Большое спасибо за это решение, его то, что мне нужно и очень просто понять. – programmerdude619
Я тестировал его, и он отлично работает, только один вопрос, почему <0.5f? – programmerdude619
Извините, не используйте random.value <0.5f вместо этого используйте приведенный выше код, который я редактировал. Это поможет вам получить значение с равной вероятностью, если бы все были в синей области – sagar
- 1. Единство; Случайное перемещение объекта
- 2. Единство - Оставайтесь в пределах экрана
- 3. Случайное положение элементов списка затухания
- 4. случайное положение изображений
- 5. CSS Случайное положение фонового изображения в пределах диапазона и приращения; случайное число для времени преобразования
- 6. случайное перемещение в пределах круга
- 7. Случайное число не в пределах
- 8. получить значение в пределах области rails
- 9. Случайное положение без перекрытия
- 10. Случайное положение кнопки
- 11. Случайное положение func
- 12. ApiController в пределах области
- 13. Области в пределах петель
- 14. случайное положение элементов в контейнере
- 15. как найти положение элемента в пределах DIV
- 16. Получить базовое положение строки в пределах своей ограничивающей рамки
- 17. Положение видимой области
- 18. Случайное положение для кнопки отправки
- 19. Пользовательские маршрутизации в пределах области
- 20. Переупорядочить плитки в пределах области
- 21. Открываются нотацию в пределах области
- 22. Единство - Жесткое соединение, наследующее только положение?
- 23. Создать случайное число в пределах диапазона?
- 24. Случайное перемещение в пределах ROI изображения
- 25. JQuery определить положение мыши в пределах DIV
- 26. Как переместить кнопку в случайное положение? (Swift)
- 27. Как установить случайное положение шара в Spritekit?
- 28. Выберите случайное положение в слове - IllegalArgumentException?
- 29. Пытается переместить объект черепахи в случайное положение
- 30. добавление div в случайное положение внутри окна
Найти позицию в B, и если он также находится в A, повторите попытку (т.е. выборку отбраковки). –