Draw ofPlanePrimative из параметров плоскости

Я ищу простой способ нарисовать плоскость, как указано стандартным уравнением плоскости:

ax + by + cz + d = 0

У меня есть параметры плоскости (a, b, c и d), но мне трудно найти простой способ нарисовать эту плоскость в OpenFrameworks.

Самое близкое, что я получил, это ориентировать самолет, используя lookAt, чтобы установить его нормаль:

ofPlanePrimative plane;
plane.lookAt(ofVec3f(a, b, c));
plane.draw();

Это правильно ориентирует плоскость, но не позиционирует ее. Когда я попытался позиционировать с помощью plane.setPosition, кажется, что он сбрасывает ориентацию; я не могу связать эти операции?

Я уверен, что это относительно простая трехмерная векторная математика, но по какой-то причине я борюсь с этим. Возможно, мне не следует использовать ofPlanePrimative? Должен ли я вместо этого строить сетку? В идеале я хотел бы нарисовать бесконечную плоскость (возможно, с of3dUtils::drawGridPlane).

Любое направление было бы полезно в этот момент.


person Ethan Brown    schedule 19.07.2014    source источник


Ответы (1)


Вы можете использовать d, чтобы подкатить свой самолет после lookAt :

ofPlanePrimative plane;
plane.lookAt(ofVec3f(a, b, c));
plane.dolly(d);
plane.draw();
person kikko    schedule 04.08.2014