int deltaF = 0, deltaV = 0;
int elem0dSize = 1;
int ballSize = 1;
- int ballScale = 1;
+ double ballScale = 1.0;
int edgeWidth = 1;
int outlineWidth = 1;
double shrinkCoef = 0.0;
anActor->GetBallColor( color[0], color[1], color[2] );
ballColor.setRgbF( color[0], color[1], color[2] );
ballSize = qMax( (int)anActor->GetBallSize(), 1 ); // minimum allowed size is 1
- ballScale = qMax( (int)anActor->GetBallScale(), 1 ); // minimum allowed size is 1
+ ballScale = qMax( (double)anActor->GetBallScale(), 1e-2 ); // minimum allowed scale is 1e-2
// outlines: color
anActor->GetOutlineColor( color[0], color[1], color[2] );
outlineColor.setRgbF( color[0], color[1], color[2] );
LightApp_Preferences::IntSpin, "SMESH", "elem0d_size");
int ballSize = addPreference(tr("PREF_BALL_SIZE"), elemGroup,
LightApp_Preferences::IntSpin, "SMESH", "ball_elem_size");
- int ballScale = addPreference(tr("PREF_BALL_SCALE"), elemGroup,
- LightApp_Preferences::IntSpin, "SMESH", "ball_elem_scale");
+ double ballScale = addPreference(tr("PREF_BALL_SCALE"), elemGroup,
+ LightApp_Preferences::DblSpin, "SMESH", "ball_elem_scale");
int elemW = addPreference(tr("PREF_WIDTH"), elemGroup,
LightApp_Preferences::IntSpin, "SMESH", "element_width");
int outW = addPreference(tr("PREF_OUTLINE_WIDTH"), elemGroup,
setPreferenceProperty( ballSize, "min", 1 );
setPreferenceProperty( ballSize, "max", 10 );
- setPreferenceProperty( ballScale, "min", 1 );
- setPreferenceProperty( ballScale, "max", 10 );
+ setPreferenceProperty( ballScale, "min", 1e-2 );
+ setPreferenceProperty( ballScale, "max", 1e7 );
+ setPreferenceProperty( ballScale, "step", 0.5 );
setPreferenceProperty( elemW, "min", 1 );
setPreferenceProperty( elemW, "max", 5 );
sizeStr << QString::number((int)aSmeshActor->Get0DSize());
sizeStr << "ball";
sizeStr << QString::number((int)aSmeshActor->GetBallSize());
- sizeStr << QString::number((int)aSmeshActor->GetBallScale());
+ sizeStr << QString::number((double)aSmeshActor->GetBallScale());
sizeStr << "shrink";
sizeStr << QString::number(aSmeshActor->GetShrinkFactor());
sizeStr << "orientation";
int outlineWidth = -1;
int elem0dSize = -1;
int ballSize = -1;
- int ballScale = -1;
+ double ballScale = -1.0;
double shrinkSize = -1;
double orientationSize = -1;
bool orientation3d = false;
else if ( type == "ball" ) {
// balls are specified by two values: size:scale, where
// - size - is a integer value specifying size
- // - scale - is a integer value specifying scale factor
- if ( i+1 >= sizes.count() ) break; // format error
- int v1 = sizes[i+1].toInt( &bOk ); if ( !bOk ) break; // format error
- if ( i+2 >= sizes.count() ) break; // format error
- int v2 = sizes[i+2].toInt( &bOk ); if ( !bOk ) break; // format error
+ // - scale - is a double value specifying scale factor
+ if ( i+1 >= sizes.count() ) break; // format error
+ int v1 = sizes[i+1].toInt( &bOk ); if ( !bOk ) break; // format error
+ if ( i+2 >= sizes.count() ) break; // format error
+ double v2 = sizes[i+2].toDouble( &bOk ); if ( !bOk ) break; // format error
ballSize = v1;
ballScale = v2;
i += 2;
if ( ballSize > 0 )
aSmeshActor->SetBallSize( ballSize );
// ball scale
- if ( ballScale > 0 )
+ if ( ballScale > 0.0 )
aSmeshActor->SetBallScale( ballScale );
// shrink factor
if ( shrinkSize > 0 )