Skip to content

Commit 41fbcbe

Browse files
authoredMar 26, 2021
Merge pull request #42450 from m-kuhn/qt6_rand
[qt6] Switch from qrand to std::rand
2 parents f98ab57 + b024eea commit 41fbcbe

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed
 

‎src/core/qgscolorramp.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,7 @@ QList<QColor> QgsLimitedRandomColorRamp::randomColors( int count,
401401
int safeValMin = std::min( valMin, valMax );
402402

403403
//start hue at random angle
404-
double currentHueAngle = 360.0 * static_cast< double >( qrand() ) / RAND_MAX;
404+
double currentHueAngle = 360.0 * static_cast< double >( std::rand() ) / RAND_MAX;
405405

406406
colors.reserve( count );
407407
for ( int i = 0; i < count; ++i )
@@ -412,8 +412,8 @@ QList<QColor> QgsLimitedRandomColorRamp::randomColors( int count,
412412
currentHueAngle += 137.50776;
413413
//scale hue to between hueMax and hueMin
414414
h = std::clamp( std::round( ( std::fmod( currentHueAngle, 360.0 ) / 360.0 ) * ( safeHueMax - safeHueMin ) + safeHueMin ), 0.0, 359.0 );
415-
s = std::clamp( ( qrand() % ( safeSatMax - safeSatMin + 1 ) ) + safeSatMin, 0, 255 );
416-
v = std::clamp( ( qrand() % ( safeValMax - safeValMin + 1 ) ) + safeValMin, 0, 255 );
415+
s = std::clamp( ( static_cast<int>( std::rand() ) % ( safeSatMax - safeSatMin + 1 ) ) + safeSatMin, 0, 255 );
416+
v = std::clamp( ( static_cast<int>( std::rand() ) % ( safeValMax - safeValMin + 1 ) ) + safeValMin, 0, 255 );
417417
colors.append( QColor::fromHsv( h, s, v ) );
418418
}
419419
return colors;
@@ -451,9 +451,9 @@ QColor QgsRandomColorRamp::color( double value ) const
451451
}
452452

453453
//can't use precalculated hues, use a totally random hue
454-
int h = static_cast< int >( 360.0 * qrand() / ( RAND_MAX + 1.0 ) );
455-
int s = ( qrand() % ( DEFAULT_RANDOM_SAT_MAX - DEFAULT_RANDOM_SAT_MIN + 1 ) ) + DEFAULT_RANDOM_SAT_MIN;
456-
int v = ( qrand() % ( maxVal - minVal + 1 ) ) + minVal;
454+
int h = static_cast< int >( 360.0 * std::rand() / ( RAND_MAX + 1.0 ) );
455+
int s = ( std::rand() % ( DEFAULT_RANDOM_SAT_MAX - DEFAULT_RANDOM_SAT_MIN + 1 ) ) + DEFAULT_RANDOM_SAT_MIN;
456+
int v = ( std::rand() % ( maxVal - minVal + 1 ) ) + minVal;
457457
return QColor::fromHsv( h, s, v );
458458
}
459459

@@ -467,7 +467,7 @@ void QgsRandomColorRamp::setTotalColorCount( const int colorCount )
467467
//similar colors being picked. TODO - investigate alternative "n-visually distinct color" routines
468468

469469
//random offsets
470-
double hueOffset = ( 360.0 * qrand() / ( RAND_MAX + 1.0 ) );
470+
double hueOffset = ( 360.0 * std::rand() / ( RAND_MAX + 1.0 ) );
471471

472472
//try to maximise difference between hues. this is not an ideal implementation, as constant steps
473473
//through the hue wheel are not visually perceived as constant changes in hue
@@ -479,8 +479,8 @@ void QgsRandomColorRamp::setTotalColorCount( const int colorCount )
479479
for ( int idx = 0; idx < colorCount; ++ idx )
480480
{
481481
int h = static_cast< int >( std::round( currentHue ) ) % 360;
482-
int s = ( qrand() % ( DEFAULT_RANDOM_SAT_MAX - DEFAULT_RANDOM_SAT_MIN + 1 ) ) + DEFAULT_RANDOM_SAT_MIN;
483-
int v = ( qrand() % ( DEFAULT_RANDOM_VAL_MAX - DEFAULT_RANDOM_VAL_MIN + 1 ) ) + DEFAULT_RANDOM_VAL_MIN;
482+
int s = ( std::rand() % ( DEFAULT_RANDOM_SAT_MAX - DEFAULT_RANDOM_SAT_MIN + 1 ) ) + DEFAULT_RANDOM_SAT_MIN;
483+
int v = ( std::rand() % ( DEFAULT_RANDOM_VAL_MAX - DEFAULT_RANDOM_VAL_MIN + 1 ) ) + DEFAULT_RANDOM_VAL_MIN;
484484
mPrecalculatedColors << QColor::fromHsv( h, s, v );
485485
currentHue += hueStep;
486486
}

0 commit comments

Comments
 (0)
Please sign in to comment.