コード例 #1
0
ファイル: FMMMLayout.cpp プロジェクト: SiteView/NNMQT
void FMMMLayout :: update_low_level_options_due_to_high_level_options_settings()
{
  PageFormatType pf = pageFormat();
  double uel = unitEdgeLength();
  bool nip = newInitialPlacement();
  QualityVsSpeed qvs = qualityVersusSpeed();

  //update
  initialize_all_options();
  useHighLevelOptions(true);
  pageFormat(pf);
  unitEdgeLength(uel);
  newInitialPlacement(nip);
  qualityVersusSpeed(qvs);

  if(pageFormat() == pfSquare)
    pageRatio(1.0);
  else if(pageFormat() ==pfLandscape)
    pageRatio(1.4142);
  else //pageFormat() == pfPortrait
    pageRatio(0.7071);

  if(newInitialPlacement())
    initialPlacementForces(ipfRandomTime);
  else
    initialPlacementForces(ipfRandomRandIterNr);

  if(qualityVersusSpeed() == qvsGorgeousAndEfficient)
    {
      fixedIterations(60);
      fineTuningIterations(40);
      nmPrecision(6);
    }
  else if(qualityVersusSpeed() == qvsBeautifulAndFast)
    {
      fixedIterations(30);
      fineTuningIterations(20);
      nmPrecision(4);
    }
  else //qualityVersusSpeed() == qvsNiceAndIncredibleSpeed
    {
      fixedIterations(15);
      fineTuningIterations(10);
      nmPrecision(2);
    }
}
コード例 #2
0
FMMMLayout::FMMMLayout()
{
	initialize_all_options();   
}