コード例 #1
0
        public void Load()
        {
            if (_habitatMap == null)
            {
                var fileManager = new HabitatMapFileManager();
                _habitatMap = fileManager.LoadHabitatMap(_filesConfiguration.HabitatDbFilePath);
            }
            var proxy = new HabitatMapDbProxy(new HabitatMapDb(new HabitatMapDb.HabitatMapDbInitializationInfo()
            {
                Map = _habitatMap
            }));

            _gameInitializationFields.SetField(proxy);
        }
コード例 #2
0
        public void Compute()
        {
            var loader = new HabitatMapOsmLoader();
            var fields = loader.Load(_filesConfiguration.OsmFilePath);

            var translator = new HabitatFieldPositionTranslator(_rootConfiguration.GeoCoordsToUnityTranslator);

            fields = fields.Select(c => translator.Translate(c)).ToList();

            var map = HabitatMap.Create(
                _habitatConfiguration.AreaOnMap,
                _habitatConfiguration.MapGridSize,
                fields,
                _habitatConfiguration.DefaultHabitatType,
                _habitatConfiguration.HabitatTypePriorityResolver);

            _habitatMap = map;

            var fileManager = new HabitatMapFileManager();

            fileManager.SaveHabitatMap(_filesConfiguration.HabitatDbFilePath, map);
        }