Subversion Repositories public iLand

Rev

Rev 1104 | Rev 1114 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1104 Rev 1111
Line 40... Line 40...
40
#include "climate.h"
40
#include "climate.h"
41
#include "speciesset.h"
41
#include "speciesset.h"
42
#include "standloader.h"
42
#include "standloader.h"
43
#include "tree.h"
43
#include "tree.h"
44
#include "management.h"
44
#include "management.h"
-
 
45
#include "saplings.h"
45
#include "modelsettings.h"
46
#include "modelsettings.h"
46
#include "standstatistics.h"
47
#include "standstatistics.h"
47
#include "mapgrid.h"
48
#include "mapgrid.h"
48
#include "modelcontroller.h"
49
#include "modelcontroller.h"
49
#include "modules.h"
50
#include "modules.h"
Line 145... Line 146...
145
   mTimeEvents = 0;
146
   mTimeEvents = 0;
146
   mStandGrid = 0;
147
   mStandGrid = 0;
147
   mModules = 0;
148
   mModules = 0;
148
   mDEM = 0;
149
   mDEM = 0;
149
   mGrassCover = 0;
150
   mGrassCover = 0;
-
 
151
   mSaplings=0;
150
}
152
}
151
153
152
/** sets up the simulation space.
154
/** sets up the simulation space.
153
*/
155
*/
154
void Model::setupSpace()
156
void Model::setupSpace()
Line 342... Line 344...
342
            GlobalSettings::instance()->controller()->addGrid(mDEM->slopeGrid(), "DEM slope", GridViewRainbow, 0, 3);
344
            GlobalSettings::instance()->controller()->addGrid(mDEM->slopeGrid(), "DEM slope", GridViewRainbow, 0, 3);
343
            GlobalSettings::instance()->controller()->addGrid(mDEM->aspectGrid(), "DEM aspect", GridViewRainbow, 0, 360);
345
            GlobalSettings::instance()->controller()->addGrid(mDEM->aspectGrid(), "DEM aspect", GridViewRainbow, 0, 360);
344
            GlobalSettings::instance()->controller()->addGrid(mDEM->viewGrid(), "DEM view", GridViewGray, 0, 1);
346
            GlobalSettings::instance()->controller()->addGrid(mDEM->viewGrid(), "DEM view", GridViewGray, 0, 1);
345
347
346
        }
348
        }
-
 
349
-
 
350
        // setup of saplings
-
 
351
        if (mSaplings) {
-
 
352
            delete mSaplings; mSaplings=0;
-
 
353
        }
-
 
354
        if (settings().regenerationEnabled) {
-
 
355
            mSaplings = new Saplings();
-
 
356
            mSaplings->setup();
-
 
357
        }
-
 
358
347
359
348
        // setup of the grass cover
360
        // setup of the grass cover
349
        if (!mGrassCover)
361
        if (!mGrassCover)
350
            mGrassCover = new GrassCover();
362
            mGrassCover = new GrassCover();
351
        mGrassCover->setup();
363
        mGrassCover->setup();
Line 398... Line 410...
398
    // delete the grids
410
    // delete the grids
399
    if (mGrid)
411
    if (mGrid)
400
        delete mGrid;
412
        delete mGrid;
401
    if (mHeightGrid)
413
    if (mHeightGrid)
402
        delete mHeightGrid;
414
        delete mHeightGrid;
-
 
415
    if (mSaplings)
-
 
416
        delete mSaplings;
403
    if (mManagement)
417
    if (mManagement)
404
        delete mManagement;
418
        delete mManagement;
405
    if (mEnvironment)
419
    if (mEnvironment)
406
        delete mEnvironment;
420
        delete mEnvironment;
407
    if (mTimeEvents)
421
    if (mTimeEvents)
Line 480... Line 494...
480
494
481
    // setup of modules
495
    // setup of modules
482
    if (mModules)
496
    if (mModules)
483
        delete mModules;
497
        delete mModules;
484
    mModules = new Modules();
498
    mModules = new Modules();
-
 
499
-
 
500
    changeSettings().regenerationEnabled = xml.valueBool("model.settings.regenerationEnabled", false);
-
 
501
485
502
486
    setupSpace();
503
    setupSpace();
487
    if (mRU.isEmpty())
504
    if (mRU.isEmpty())
488
        throw IException("Setup of Model: no resource units present!");
505
        throw IException("Setup of Model: no resource units present!");
489
506
Line 495... Line 512...
495
        ScriptGlobal::loadScript(script_file);
512
        ScriptGlobal::loadScript(script_file);
496
        g->controller()->setLoadedJavascriptFile(script_file);
513
        g->controller()->setLoadedJavascriptFile(script_file);
497
    }
514
    }
498
515
499
    // (3.2) setup of regeneration
516
    // (3.2) setup of regeneration
500
    changeSettings().regenerationEnabled = xml.valueBool("model.settings.regenerationEnabled", false);
-
 
501
    if (settings().regenerationEnabled) {
517
    if (settings().regenerationEnabled) {
502
        foreach(SpeciesSet *ss, mSpeciesSets)
518
        foreach(SpeciesSet *ss, mSpeciesSets)
503
            ss->setupRegeneration();
519
            ss->setupRegeneration();
504
    }
520
    }
505
    Sapling::setRecruitmentVariation(xml.valueDouble("model.settings.seedDispersal.recruitmentDimensionVariation",0.1));
521
    Sapling::setRecruitmentVariation(xml.valueDouble("model.settings.seedDispersal.recruitmentDimensionVariation",0.1));