//--------------------------------------------------------------------- public void InitializeSites(string initialCommunities, string initialCommunitiesMap) { Log.Info("Loading initial communities from file \"{0}\" ...", initialCommunities); InitialCommunities.DatasetParser parser = new InitialCommunities.DatasetParser(); InitialCommunities.IDataset communities = Data.Load <InitialCommunities.IDataset>(initialCommunities, parser); Log.Info("Reading initial communities map \"{0}\" ...", initialCommunitiesMap); IInputRaster <InitialCommunities.Pixel> map; map = Util.Raster.Open <InitialCommunities.Pixel>(initialCommunitiesMap); using (map) { foreach (Site site in Model.Landscape.AllSites) { InitialCommunities.Pixel pixel = map.ReadPixel(); ActiveSite activeSite = site as ActiveSite; if (activeSite == null) { continue; } byte mapCode = pixel.Band0; ICommunity community = communities.Find(mapCode); if (community == null) { throw Util.Raster.PixelException(activeSite.Location, "Unknown map code for initial community: {0}", mapCode); } InitializeSite(activeSite, community); } } }
//--------------------------------------------------------------------- public override void InitializeSites(string initialCommunities, string initialCommunitiesMap) { UI.WriteLine("Loading initial communities from file \"{0}\" ...", initialCommunities); InitialCommunities.DatasetParser parser = new InitialCommunities.DatasetParser(Timestep, Model.Core.Species); InitialCommunities.IDataset communities = Data.Load <InitialCommunities.IDataset>(initialCommunities, parser); UI.WriteLine("Reading initial communities map \"{0}\" ...", initialCommunitiesMap); IInputRaster <InitialCommunities.Pixel> map; map = Model.Core.OpenRaster <InitialCommunities.Pixel>(initialCommunitiesMap); using (map) { foreach (Site site in Model.Core.Landscape.AllSites) { InitialCommunities.Pixel pixel = map.ReadPixel(); ActiveSite activeSite = site as ActiveSite; if (activeSite == null) { continue; } ushort mapCode = pixel.Band0; ICommunity community = communities.Find(mapCode); if (community == null) { throw new PixelException(activeSite.Location, "Unknown map code for initial community: {0}", mapCode); } InitializeSite(activeSite, community); } } base.Cohorts = Model.Core.SuccessionCohorts; }
//--------------------------------------------------------------------- public override void InitializeSites(string initialCommunities, string initialCommunitiesMap) { UI.WriteLine("Loading initial communities from file \"{0}\" ...", initialCommunities); InitialCommunities.DatasetParser parser = new InitialCommunities.DatasetParser(Timestep, Model.Core.Species); communities = Data.Load <InitialCommunities.IDataset>(initialCommunities, parser); UI.WriteLine("Reading initial communities map \"{0}\" ...", initialCommunitiesMap); IInputRaster <InitialCommunities.Pixel> map; map = Model.Core.OpenRaster <InitialCommunities.Pixel>(initialCommunitiesMap); InputMap.ReadWithMajorityRule(map, Model.Core.Landscape, InitializeSite); base.Cohorts = Model.Core.SuccessionCohorts; }
//--------------------------------------------------------------------- public override void InitializeSites(string initialCommunities, string initialCommunitiesMap, ICore modelCore) { Model.Core.UI.WriteLine(" Loading initial communities from file \"{0}\" ...", initialCommunities); InitialCommunities.DatasetParser parser = new InitialCommunities.DatasetParser(Timestep, Model.Core.Species); InitialCommunities.IDataset communities = Landis.Data.Load <InitialCommunities.IDataset>(initialCommunities, parser); Model.Core.UI.WriteLine(" Reading initial communities map \"{0}\" ...", initialCommunitiesMap); IInputRaster <uintPixel> map; map = Model.Core.OpenRaster <uintPixel>(initialCommunitiesMap); using (map) { uintPixel pixel = map.BufferPixel; foreach (Site site in Model.Core.Landscape.AllSites) { map.ReadBufferPixel(); uint mapCode = pixel.MapCode.Value; if (!site.IsActive) { continue; } //if (!modelCore.Ecoregion[site].Active) // continue; //modelCore.Log.WriteLine("ecoregion = {0}.", modelCore.Ecoregion[site]); ActiveSite activeSite = (ActiveSite)site; ICommunity community = communities.Find(mapCode); if (community == null) { throw new ApplicationException(string.Format("Unknown map code for initial community: {0}", mapCode)); } InitializeSite(activeSite, community); } } }
//--------------------------------------------------------------------- public override void InitializeSites(string initialCommunities, string initialCommunitiesMap) { UI.WriteLine("Loading initial communities from file \"{0}\" ...", initialCommunities); InitialCommunities.DatasetParser parser = new InitialCommunities.DatasetParser(Timestep, Model.Core.Species); communities = Data.Load<InitialCommunities.IDataset>(initialCommunities, parser); UI.WriteLine("Reading initial communities map \"{0}\" ...", initialCommunitiesMap); IInputRaster<InitialCommunities.Pixel> map; map = Model.Core.OpenRaster<InitialCommunities.Pixel>(initialCommunitiesMap); InputMap.ReadWithMajorityRule(map, Model.Core.Landscape, InitializeSite); base.Cohorts = Model.Core.SuccessionCohorts; }