示例#1
0
void PMSuperquadricEllipsoid::createViewStructure( )
{
   if( !m_pViewStructure )
   {
      m_pViewStructure = new PMViewStructure( defaultViewStructure( ) );
      m_pViewStructure->points( ).detach( );
   }

   int uStep = (int)( ( (float)s_uStep / 2 ) * ( displayDetail( ) + 1 ) );
   int vStep = (int)( ( (float)s_vStep / 2 ) * ( displayDetail( ) + 1 ) );
   int uStep2 = uStep * 4;
   int vStep2 = vStep * 8;
   unsigned ptsSize = vStep2 * ( uStep2 - 1 ) + 2;
   unsigned lineSize = vStep2 * ( uStep2 - 1 ) * 2 + vStep2;

   if( ptsSize != m_pViewStructure->points( ).size( ) )
      m_pViewStructure->points( ).resize( ptsSize );

   createPoints( m_pViewStructure->points( ), m_eastWestExponent,
                 m_northSouthExponent, uStep, vStep );

   if( lineSize != m_pViewStructure->lines( ).size( ) )
   {
      m_pViewStructure->lines( ).detach( );
      m_pViewStructure->lines( ).resize( lineSize );
      createLines( m_pViewStructure->lines( ), uStep2, vStep2 );
   }
}
示例#2
0
void PMTorus::createViewStructure( )
{
   if( !m_pViewStructure )
   {
      m_pViewStructure = new PMViewStructure( defaultViewStructure( ) );
      m_pViewStructure->points( ).detach( );
   }

   int uStep = (int)( ( (float)s_uStep / 2 ) * ( displayDetail( ) + 1 ) );
   int vStep = (int)( ( (float)s_vStep / 2 ) * ( displayDetail( ) + 1 ) );
   unsigned ptsSize = vStep * uStep;
   unsigned lineSize = vStep * uStep * 2;

   if( ptsSize != m_pViewStructure->points( ).size( ) )
      m_pViewStructure->points( ).resize( ptsSize );

   createPoints( m_pViewStructure->points( ), m_minorRadius, m_majorRadius, uStep, vStep );

   if( lineSize != m_pViewStructure->lines( ).size( ) )
   {
      m_pViewStructure->lines( ).detach( );
      m_pViewStructure->lines( ).resize( lineSize );
      createLines( m_pViewStructure->lines( ), uStep, vStep );
   }
}
示例#3
0
void MyBuildingCard::toggleDetail(cocos2d::CCNode *pSender) {
    CCMenuItemToggle* toggle = ((CCMenuItemToggle*)pSender);
    if(toggle->getSelectedIndex() == 1) {
        displayDetail(pSender);
    } else {
        cancelDetail(pSender);
    }
}
示例#4
0
文件: fonction.c 项目: Nic0/passcurse
int getFonctionMenu (unsigned char c, struct Entry *entry, int *nbrOfEntry, int *selected, char *passfilePath)
{
    switch (c)
    {
        case 'q':
            endwin();
            return 2;
        
        case '?':
            windowHelp();
            windowBasic(entry, *nbrOfEntry, selected, c);
            break;

        case ' ':
            displayDetail(entry[*selected], selected);
            windowBasic(entry, *nbrOfEntry, selected, c);
            break;

        case 'j':
            if(*selected < *nbrOfEntry)
                *selected = *selected + 1;
            windowBasic(entry, *nbrOfEntry, selected, c);
            break;

        case 'k':
            if(*selected >= 1)
                *selected = *selected - 1;
            windowBasic(entry, *nbrOfEntry, selected, c);
            break;

        case 'd':
            if(confirmationWindow() == 1)
                deleteEntry(selected, entry, nbrOfEntry, passfilePath);
            int row; row = 0;
            int col; col = 0;
            getmaxyx(stdscr, row, col);
            
            if(*nbrOfEntry <= (row -5))
            {
                /* if the one deleted is the last one   */
                if(*selected >= *nbrOfEntry)
                    *selected = *nbrOfEntry;
            }
            windowBasic(entry, *nbrOfEntry, selected, c);
            break;

        case 'a':
            addEntry(selected, entry, nbrOfEntry, passfilePath);
            windowBasic(entry, *nbrOfEntry, selected, c);
            break;

        default:
            windowBasic(entry, *nbrOfEntry, selected, c);
            break;
    }
return 0;
}
示例#5
0
void PMCone::createViewStructure( )
{
   if( !m_pViewStructure )
   {
      m_pViewStructure = new PMViewStructure(defaultViewStructure ( ) );
      m_pViewStructure->points( ).detach( );
   }

   int steps = (int)( ( (float)s_numSteps / 2 ) * ( displayDetail( ) + 1 ) );
   unsigned ptsSize = steps * 2;
   unsigned lineSize = steps * 3;

   if( ptsSize != m_pViewStructure->points( ).size( ) )
      m_pViewStructure->points( ).resize( ptsSize );

   createPoints( m_pViewStructure->points( ), m_end1, m_end2, m_radius1, m_radius2, steps );

   if( lineSize != m_pViewStructure->lines( ).size( ) )
   {
      m_pViewStructure->lines( ).detach( );
      m_pViewStructure->lines( ).resize( lineSize );
      createLines( m_pViewStructure->lines( ), steps );
   }
}