void ListControll::update() { emit updateSignal(); if (this->getMaxTrackTime() < getPlayTime()) { emit stopSignal(); isPlayPauseStop = 3; } }
void Model::draw() { #if RENDERMODE_MOVING getPlayTime( 1, 0, m_fTotalTime , true); updateJoints(fTime); modifyVertexByJoint(); #endif GLboolean texEnabled = glIsEnabled( GL_TEXTURE_2D ); if(m_bDrawMesh) { // Draw by group for ( int i = 0; i < m_usNumMeshes; i++ ) { #if ENABLE_CROSSARRAY glInterleavedArrays(GL_T2F_N3F_V3F, 0, m_meshVertexData.m_pMesh[i].pVertexArrayDynamic); #else glVertexPointer(3, GL_FLOAT, 12, m_meshVertexData.m_pMesh[i].pVertexArrayDynamic); glEnableClientState( GL_VERTEX_ARRAY ); #endif #if RENDERMODE_POINT glDrawArrays(GL_POINTS, 0, m_pMeshes[i].m_usNumTris * 3 ); #else glDrawElements(GL_TRIANGLES, m_meshVertexData.m_pMesh[i].numOfVertex, GL_UNSIGNED_INT , m_pIndexArray); #endif #if !ENABLE_CROSSARRAY glDisableClientState( GL_VERTEX_ARRAY ); #endif } } if ( texEnabled ) glEnable( GL_TEXTURE_2D ); else glDisable( GL_TEXTURE_2D ); }
void ListControll::calcPointedBlocksAtTime( ) { int ms = getPlayTime(); pointed_block.clear(); for (int i=0; i<tracks.size(); i++) { int blockXstart = 0; for (int y=0; y<tracks[i].block.size(); y++ ) { int blockXend =blockXstart + tracks[i].block[y].draw_element->getLifeTime(); if (ms <= blockXend) { pointed_block.append(tracks[i].block[y]); //// qDebug() << "POP: " << i<< " "<<y; break; } blockXstart = blockXend; } } }