Ignore:
Timestamp:
11/30/19 01:30:22 (4 years ago)
Author:
Maciej Komosinski
Message:

Replaced #defined macros for popular random-related operations with functions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpp/frams/genetics/fH/fH_oper.cpp

    r803 r896  
    107107        for (unsigned int i = 0; i < parent1->sticks.size(); i++)
    108108        {
    109                 if (randomN(2) == 0)
     109                if (rndUint(2) == 0)
    110110                {
    111111                        child1->sticks.push_back(parent1->sticks[i]);
     
    120120        for (unsigned int i = 0; i < parent2->sticks.size(); i++)
    121121        {
    122                 if (randomN(2) == 0)
     122                if (rndUint(2) == 0)
    123123                {
    124124                        child1->sticks.push_back(parent2->sticks[i]);
     
    140140        for (unsigned int i = 0; i < parent1->neurons.size(); i++)
    141141        {
    142                 if ((randomN(2) == 0 || skip2) && !skip1)
     142                if ((rndUint(2) == 0 || skip2) && !skip1)
    143143                {
    144144                        child1->neurons.push_back(parent1->neurons[i]);
     
    153153        for (unsigned int i = 0; i < parent2->neurons.size(); i++)
    154154        {
    155                 if ((randomN(2) == 0 || skip2) && !skip1)
     155                if ((rndUint(2) == 0 || skip2) && !skip1)
    156156                {
    157157                        child1->neurons.push_back(parent2->neurons[i]);
     
    166166        for (unsigned int i = 0; i < parent1->connections.size(); i++)
    167167        {
    168                 if ((randomN(2) == 0 || skip2) && !skip1)
     168                if ((rndUint(2) == 0 || skip2) && !skip1)
    169169                {
    170170                        child1->connections.push_back(parent1->connections[i]);
     
    179179        for (unsigned int i = 0; i < parent2->connections.size(); i++)
    180180        {
    181                 if ((randomN(2) == 0 || skip2) && !skip1)
     181                if ((rndUint(2) == 0 || skip2) && !skip1)
    182182                {
    183183                        child1->connections.push_back(parent2->connections[i]);
     
    338338        if (changedimensions)
    339339        {
    340                 int i = randomN(2 * dimensions);
     340                int i = rndUint(2 * dimensions);
    341341                changeDoubleProperty(i, par, handle->type);
    342342        }
     
    344344        if (changeproperties)
    345345        {
    346                 int i = 2 * dimensions + randomN(par.getPropCount() - 2 * dimensions);
     346                int i = 2 * dimensions + rndUint(par.getPropCount() - 2 * dimensions);
    347347                changeDoubleProperty(i, par, handle->type);
    348348        }
     
    360360        for (int i = 0; i < dimensions; i++)
    361361        {
    362                 par.setDouble(i, min + rnd0N(max - min));
    363                 par.setDouble(i + dimensions, min + rnd0N(max - min));
     362                par.setDouble(i, min + rndDouble(max - min));
     363                par.setDouble(i + dimensions, min + rndDouble(max - min));
    364364        }
    365365        handle->loadProperties(par);
    366366        if (handle->type != fHBodyType::NEURON)
    367367        {
    368                 int i = 2 * dimensions + randomN(par.getPropCount() - 2 * dimensions);
     368                int i = 2 * dimensions + rndUint(par.getPropCount() - 2 * dimensions);
    369369                changeDoubleProperty(i, par, handle->type);
    370370        }
     
    406406                allhandlescount += creature->sticks.size();
    407407        }
    408         unsigned int toselect = randomN(allhandlescount);
     408        unsigned int toselect = rndUint(allhandlescount);
    409409        if (toselect < creature->connections.size())
    410410        {
     
    436436        if (par.getPropCount() > 0)
    437437        {
    438                 int i = randomN(par.getPropCount());
     438                int i = rndUint(par.getPropCount());
    439439                if (*par.type(i) == 'f')
    440440                {
Note: See TracChangeset for help on using the changeset viewer.