Избавьтесь от перенасыщенных функций для рисования твердых объектов в Qt QGlWidget

Мне нужно нарисовать сферу, цилиндры и конусы в 3D внутри QGlWidget.

Теперь я использую glutSolidSphere, glutSolidCone и этот ужасный трюк gluQuadric для рисования цилиндров.

Я просто хочу использовать только один фреймворк для 3D-рисования — в данном случае Qt — и избавиться от всех этих функций Glut.

Есть ли какие-нибудь классы Qt для этого в Qt ‹= 4.6?

Это также позволило бы мне распространять мой исполняемый файл без библиотеки переполнения и избавиться от функций glutInit!


person linello    schedule 30.05.2012    source источник
comment
qt-project.org/doc/qt-5.0/qt3d-reference. html - Qt5; Я думаю, что где-то есть подмножество этого, доступное на Qt4, но не в основных сборках, насколько мне известно.   -  person Mat    schedule 30.05.2012


Ответы (3)


Есть ли какие-нибудь классы Qt для этого в Qt ‹= 4.6?

Строить примитивы? Нет, но их довольно просто сконструировать самостоятельно.

person cmannett85    schedule 30.05.2012

Нет, не то чтобы я в курсе.

QGLSphere и QGLCylinder появился в документации 5.0 (хотя заявлено, что он появился в 4.8).

Если вам абсолютно необходимо придерживаться 4.6, вы можете попробовать реализовать эти классы самостоятельно, но если вы делаете что-то трехмерное, вам все равно лучше перейти на 5.0.

person Samuel Harmer    schedule 30.05.2012

Если вы не переходите на Qt 5 в то время, используйте исходный код какой-либо перенасыщенной реализации, чтобы узнать, как устроены примитивы.

person Stefan Majewsky    schedule 30.05.2012