本文整理汇总了C++中LayerMRI::SetScale方法的典型用法代码示例。如果您正苦于以下问题:C++ LayerMRI::SetScale方法的具体用法?C++ LayerMRI::SetScale怎么用?C++ LayerMRI::SetScale使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LayerMRI
的用法示例。
在下文中一共展示了LayerMRI::SetScale方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: RespondTextScale
void DialogTransformVolume::RespondTextScale( int n )
{
if ( isVisible() )
{
bool bOK;
double dvalue = m_textScale[n]->text().toDouble(&bOK);
if ( bOK && dvalue > 0 )
{
LayerMRI* layer = ( LayerMRI* )MainWindow::GetMainWindow()->GetActiveLayer( "MRI" );
if ( layer )
{
double scale[3];
layer->GetScale( scale );
scale[n] = dvalue;
layer->SetScale( scale );
MainWindow::GetMainWindow()->RequestRedraw();
m_scrollScale[n]->blockSignals(true);
if ( dvalue >= 1 )
{
m_scrollScale[n]->setValue( 50 + (int)( (dvalue-1.0)*50 ) );
}
else
{
m_scrollScale[n]->setValue( 50 - (int)( (1.0-dvalue)*100 ) );
}
m_scrollScale[n]->blockSignals(false);
UpdateUI( 0 );
}
}
}
}
示例2: RespondScrollScale
void DialogTransformVolume::RespondScrollScale( int n )
{
LayerMRI* layer = ( LayerMRI* )MainWindow::GetMainWindow()->GetActiveLayer( "MRI" );
if ( layer )
{
double scale[3];
layer->GetScale( scale );
int npos = m_scrollScale[n]->value();
if ( npos >= 50 )
{
scale[n] = ( npos - 50 ) / 50.0 + 1.0;
}
else
{
scale[n] = ( npos - 50 ) / 100.0 + 1.0;
}
layer->SetScale( scale );
MainWindow::GetMainWindow()->RequestRedraw();
ChangeLineEditNumber( m_textScale[n], scale[n] );
UpdateUI( 0 );
}
}