コード例 #1
0
ファイル: Asteroid.cpp プロジェクト: jhpy1024/AsteroidAssault
Asteroid::Asteroid()
    : m_StartPosition(getRandomPosition())
    , m_Velocity(getRandomVelocity())
    , m_RotationSpeed(getRandomRotationSpeed())
    , m_Speed(getRandomSpeed())
    , m_Type(getRandomType())
    , m_HasBeenStruck(false)
{
    setupSprite();
    setupShape();
}
コード例 #2
0
ファイル: Asteroid.cpp プロジェクト: jhpy1024/AsteroidAssault
Asteroid::Asteroid(const glm::vec2& position, AsteroidType::Type type)
    : m_StartPosition(position)
    , m_Velocity(getRandomVelocity() * SUB_ASTEROID_VELOCITY_FACTOR)
    , m_RotationSpeed(getRandomRotationSpeed() * SUB_ASTEROID_ROTATION_SPEED_FACTOR)
    , m_Speed(getRandomSpeed() * SUB_ASTEROID_SPEED_FACTOR)
    , m_Type(type)
    , m_HasBeenStruck(false)
{
    setupSprite();
    setupShape();
}
コード例 #3
0
ファイル: particle.cpp プロジェクト: antonioaraujob/omopep
Particle::Particle(int numberOfApsDeployed, int maxSpeed)
{
    //qsrand((uint)QTime::currentTime().msec());

    // asignar el valor unico del identificador del individuo
    particleId = Simulation::getNewParticleId();


    // se deben crear los 33 parametros
    // C1,Min1,Max1,AP1,C2,Min2,Max2,AP2,...,C11,Min11,Max11,AP11


    // base de datos sqlite
    //QString database("/home/antonio/Copy/2014/pgcomp/ia/gridCells/gridCells/test_18.1.db");
    //QString database("/home/antonio/desarrollo/iaa/git/omocac/test_18.1.db");
    QString database("test_18.1.db");

    // tipo de experimento para extraer las muestras: full -> full scanning
    QString experiment("full");

    Scan scan(database.toStdString(),experiment.toStdString());
    scan.init();

    //Scan::ScanResults results = scan.execute(11, 10, 30);
    Scan::ScanResults results;

    std::cout << results.size() << " results: " << std::endl;

    int randomChannel = 0;
    double minChannelTime = 0;
    double maxChannelTime = 0;

    for (int i=0; i<11; i++)
    {
        randomChannel = getRandomChannel();
        parametersList.append(randomChannel);

        minChannelTime = getRandomMinChannelTime();
        maxChannelTime = getRandomMaxChannelTime();
        parametersList.append(minChannelTime);
        parametersList.append(maxChannelTime);

        //parametersList.append(getAPNumberOnChannel(numberOfApsDeployed, randomChannel));

        //qDebug("**channel: %d, min: %f, max: %f",randomChannel, minChannelTime, maxChannelTime);
        results = scan.execute(randomChannel, minChannelTime, maxChannelTime);
        //qDebug("**numero de APs encontrados en el canal %d: %d",randomChannel, results.size());
        //std::cout << " numero de APs encontrados en el canal: " << randomChannel << ": " << results.size() << std::endl;
        //qDebug("**scan.execute(%d, %f, %f)=%d",randomChannel, minChannelTime, maxChannelTime, results.size());
        parametersList.append(results.size());

        wonMatchesCounter = 0;
    }


    // lista de velocidades por parametro
    // ...
    for (int i=0; i<44; i++)
    {
        velocitityList.append(getRandomSpeed(maxSpeed));
    }


    // calcular el valor de desempeno para el individuo
    calculatePerformanceValue();

    // calcular el valor de desempeno para la descubierta
    //setPerformanceDiscovery(getRandomMaxChannelTime());
    calculateDiscoveryValue();

    // calcular el valor de desempeno para la latencia
    //setPerformanceLatency(getRandomMaxChannelTime());
    calculateLatencyValue();


    // inicializar el diccionario de canales utilizados en el vuelo en falso
    for (int i=1; i<=11;i++)
    {
        channelsUsedForFly[i]=false;
    }
}