Я создал сетку с 40 x 40 vertex3D (маленький, но полезный)
Я могу выбрать единственную вершину из той сетки путем простого вызывания функции с массивом положения [X] [Y] И поэтому граничу также. Как я могу поднять соседнюю вершину Z значение, таким образом, они отчасти похожи на пузырь или вид сферы штуки?
Мое первое жесткое должно было использовать:
Neighbor_vertex.Z = sin(PI/4 * 1 - ( 1/ distance_between_Neighbor_and_Pivot) ) * desired_Max_Height
Но все, что я получил, является чем-то как волна...., и я хотел бы иметь пузырь или Сферу как форма.
СПАСИБО чуваки и dudettes
Ваша формула выглядит не совсем правильно. Попробуйте так:
Neighbor_vertex.Z = cos (PI / 2 * distance_between_Neighbor_and_Pivot) * desired_Max_Height;
Возможно, вы захотите изменить значение Z только если расстояние меньше 1.0.
Используете ли вы приложение Grapher для проверки формул? Я рекомендую его. Оно поставляется вместе с Mac.
Ребята, если вы хотите сделать сферическую форму пузыря, вам нужна обратная (дуговая) функция...
Итак, формула должна быть такой: Neighbor_vertex.Z = sin( arccos( distance_between_Neighbor_and_Pivot / Buble_Radius ) ) * Buble_Radius.
Изображение ниже поясняет формулу.