本文整理汇总了C++中WindowPtr::draw方法的典型用法代码示例。如果您正苦于以下问题:C++ WindowPtr::draw方法的具体用法?C++ WindowPtr::draw怎么用?C++ WindowPtr::draw使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WindowPtr
的用法示例。
在下文中一共展示了WindowPtr::draw方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: glutGet
void
display(void)
{
Matrix m1, m2;
m1.setRotate( tball.getRotation() );
m2.setTranslate( tball.getPosition() );
m1.mult( m2 );
cam_trans->editSFMatrix()->setValue( m1 );
// move the object
float t = glutGet(GLUT_ELAPSED_TIME);
Quaternion q;
q.setValueAsAxisDeg(0, 1, 0, t / 5000);
m1.setTransform(Vec3f(osgsin(t / 500.), 0, osgcos(t / 500)), q);
tr->setMatrix(m1);
if ( doRender )
win->render( ract );
else
win->draw( dact );
}
示例2: fprintf
void
display(void)
{
Matrix m1, m2, m3;
Quaternion q1;
#ifdef PAR_SCHEDULER
if(pVSCThread == NULL)
{
pVSCThread = ExternalThread::find("VSCScheduler");
}
VSC::VSCScheduler::the()->enterSyncBarrier(2);
pVSCThread->getChangeList()->applyToCurrent();
pVSCThread->getChangeList()->clearAll();
// VSC::vsc_sleep(100);
VSC::VSCScheduler::the()->enterSyncBarrier(2);
#endif
// tball.getRotation().getValue(m3);
// q1.setValue(m3);
// m1.setRotate(q1);
// cout << "TBROT" << endl << tball.getRotation() << endl;
// cout << "M3" << endl << m3 << endl;
// cout << "Q1" << endl << q1 << endl;
// cout << "M1" << endl << m1 << endl;
// m1.setRotate( tball.getRotation() );
// m2.setTranslate( tball.getPosition() );
//cout << "Pos: " << tball.getPosition() << ", Rot: " << tball.getRotation() << endl;
// cout << tball.getRotation() << endl;
// m1.mult( m2 );
cam_trans->getSFMatrix()->setValue(tball.getFullTrackballMatrix());
/*
fprintf(stderr, "%d %d %d %d | %d | %d\r",
glutGet(GLUT_WINDOW_RED_SIZE),
glutGet(GLUT_WINDOW_GREEN_SIZE),
glutGet(GLUT_WINDOW_BLUE_SIZE),
glutGet(GLUT_WINDOW_ALPHA_SIZE),
glutGet(GLUT_WINDOW_DEPTH_SIZE),
glutGet(GLUT_WINDOW_STENCIL_SIZE));
*/
win->draw( ract );
}
示例3: display
void display(void)
{
Matrix m1, m2, m3;
Quaternion q1;
tball.getRotation().getValue(m3);
q1.setValue(m3);
m1.setRotate(q1);
m2.setTranslate( tball.getPosition() );
m1.mult( m2 );
cam_trans->editSFMatrix()->setValue( m1 );
window->draw( drAct );
}
示例4:
void
display(void)
{
Matrix m1, m2, m3;
m1=trackball.getMatrix();
// m1.transpose();
// m2.setTranslate(0,0,8);
// m1.mult(m2);
cam_trans->editSFMatrix()->setValue( m1 );
win->draw( ract );
}
示例5: display
void display(void)
{
Matrix m1, m2;
m1.setRotate(tball.getRotation());
m2.setTranslate(tball.getPosition());
m1.mult(m2);
cam_trans->editSFMatrix()->setValue(m1);
if(doRender)
win->render(ract);
else
win->draw(dact);
}