Proper files paths for debug only

This commit is contained in:
BOTLester 2020-06-15 01:45:16 +02:00
parent 9e07e0f6bd
commit 72a7a8aab3
3 changed files with 65 additions and 35 deletions

View File

@ -1,4 +1,6 @@
using System; using System;
using System.IO;
using System.Reflection;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
@ -24,6 +26,7 @@ class Farm
private float updateProgress = 0; private float updateProgress = 0;
private float nextUpdate = 0; private float nextUpdate = 0;
private int productionUpdate = 0; private int productionUpdate = 0;
private string path_base = FindPath();
//initializes the crops //initializes the crops
@ -84,8 +87,7 @@ class Farm
coef = 1.0f; coef = 1.0f;
WindSpeed.X = GetRandomNumber(0.9f, 1f) / 50 * coef; WindSpeed.X = GetRandomNumber(0.9f, 1f) / 50 * coef;
WindSpeed.Y = GetRandomNumber(0.9f, 1f) / 50 * coef; WindSpeed.Y = GetRandomNumber(0.9f, 1f) / 50 * coef;
//RainfallMap = PerlinNoise.LoadImage("C:\\Users\\Joel\\source\\repos\\Oskars Repo\\Game1\\Content\\Rainfall.png"); RainfallMap = PerlinNoise.LoadImage(System.IO.Path.Combine(path_base, "Content/Rainfall.png"));
RainfallMap = PerlinNoise.LoadImage("C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/Rainfall.png");
} }
public Rectangle getRainPosition(int TileSize, int x, int y, Vector2 Size) public Rectangle getRainPosition(int TileSize, int x, int y, Vector2 Size)
@ -331,4 +333,17 @@ class Farm
{ {
return (float)(Math.Round(r.NextDouble() * (maximum - minimum) + minimum, 2)); return (float)(Math.Round(r.NextDouble() * (maximum - minimum) + minimum, 2));
} }
private static string FindPath()
{
string path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location).ToString();
while (true)
{
path = Directory.GetParent(path).ToString();
if (path.EndsWith("\\Game1"))
{
return path;
}
}
}
} }

View File

@ -1,6 +1,7 @@
using System; using System;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Reflection;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.ML; using Microsoft.ML;
@ -12,22 +13,16 @@ class MLModel
{ {
private static MLContext mlContext = new MLContext(seed: 1); private static MLContext mlContext = new MLContext(seed: 1);
private static string path = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/Fertilizer_Prediction.csv"; private static string path_base = FindPath();
private static string modelpath = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/MLmodel";
private static string report = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/report";
private static string pathBig = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/BigFertPredict.csv"; private static string path = System.IO.Path.Combine(path_base, "Content/ML/Fertilizer_Prediction.csv");
private static string modelpathBig = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/MLmodelBig"; private static string modelpath = System.IO.Path.Combine(path_base, "Content/ML/MLmodel");
private static string reportBig = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/report_BigModel"; private static string report = System.IO.Path.Combine(path_base, "Content/ML/report");
/*
private static string pathBig = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/BigFertPredict.csv"; private static string pathBig = System.IO.Path.Combine(path_base, "Content/ML/BigFertPredict.csv");
private static string modelpathBig = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/MLmodelBig"; private static string modelpathBig = System.IO.Path.Combine(path_base, "Content/ML/MLmodelBig");
private static string reportBig = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/report_BigModel"; private static string reportBig = System.IO.Path.Combine(path_base, "Content/ML/report_BigModel");
private static string path = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/Fertilizer_Prediction.csv";
private static string modelpath = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/MLmodel";
private static string report = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/report";
*/
// Loading data, creatin and saving ML model for smaller dataset (100) // Loading data, creatin and saving ML model for smaller dataset (100)
public static void CreateModel() public static void CreateModel()
{ {
@ -167,11 +162,25 @@ class MLModel
return mlContext.Model.Load(modelpath, out DataViewSchema inputSchema); return mlContext.Model.Load(modelpath, out DataViewSchema inputSchema);
} }
public static Microsoft.ML.PredictionEngine<ModelInput, ModelOutput> CreateEngine() public static PredictionEngine<ModelInput, ModelOutput> CreateEngine()
{ {
ITransformer mlModel = LoadModel(false); ITransformer mlModel = LoadModel(false);
return mlContext.Model.CreatePredictionEngine<ModelInput, ModelOutput>(mlModel); return mlContext.Model.CreatePredictionEngine<ModelInput, ModelOutput>(mlModel);
} }
private static string FindPath()
{
string path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location).ToString();
while (true)
{
path = Directory.GetParent(path).ToString();
if (path.EndsWith("\\Game1"))
{
return path;
}
}
}
} }

View File

@ -1,6 +1,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Reflection;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
@ -14,23 +15,16 @@ namespace Game1.Sources.ML_Joel
{ {
private static MLContext mlContext = new MLContext(seed: 1); private static MLContext mlContext = new MLContext(seed: 1);
private static string path = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/Rainfall.csv"; private static string path_base = FindPath();
private static string modelpath = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/MLmodel_Joel";
private static string report = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/report_Joel";
private static string path_area = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/Rainfall_area.csv"; private static string path = System.IO.Path.Combine(path_base, "Content/ML/Rainfall.csv");
private static string modelpath_area = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/MLmodel_Joel_area"; private static string modelpath = System.IO.Path.Combine(path_base, "Content/ML/MLmodel_Joel");
private static string report_area = "C:/Users/Oskar/source/repos/PotatoPlanFinal/Game1/Content/ML/report_Joel_area"; private static string report = System.IO.Path.Combine(path_base, "Content/ML/report_Joel");
/* private static string path_area = System.IO.Path.Combine(path_base, "Content/ML/Rainfall_area.csv");
private static string path = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/Rainfall.csv"; private static string modelpath_area = System.IO.Path.Combine(path_base, "Content/ML/MLmodel_Joel_area");
private static string modelpath = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/MLmodel_Joel"; private static string report_area = System.IO.Path.Combine(path_base, "Content/ML/report_Joel_area");
private static string report = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/report_Joel";
private static string path_area = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/Rainfall_area.csv";
private static string modelpath_area = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/MLmodel_Joel_area";
private static string report_area = "C:/Users/Joel/source/repos/Oskars Repo/Game1/Content/ML/report_Joel_area";
*/
// Loading data, creatin and saving ML model for smaller dataset (100) // Loading data, creatin and saving ML model for smaller dataset (100)
public static void CreateModel() public static void CreateModel()
{ {
@ -163,7 +157,7 @@ namespace Game1.Sources.ML_Joel
return mlContext.Model.Load(modelpath, out DataViewSchema inputSchema); return mlContext.Model.Load(modelpath, out DataViewSchema inputSchema);
} }
public static Microsoft.ML.PredictionEngine<Input, Output> CreateEngine() public static PredictionEngine<Input, Output> CreateEngine()
{ {
ITransformer mlModel = LoadModel(); ITransformer mlModel = LoadModel();
return mlContext.Model.CreatePredictionEngine<Input, Output>(mlModel); return mlContext.Model.CreatePredictionEngine<Input, Output>(mlModel);
@ -174,11 +168,23 @@ namespace Game1.Sources.ML_Joel
return mlContext.Model.Load(modelpath_area, out DataViewSchema inputSchema); return mlContext.Model.Load(modelpath_area, out DataViewSchema inputSchema);
} }
public static Microsoft.ML.PredictionEngine<InputArea, OutputArea> CreateEngineArea() public static PredictionEngine<InputArea, OutputArea> CreateEngineArea()
{ {
ITransformer mlModel = LoadModelArea(); ITransformer mlModel = LoadModelArea();
return mlContext.Model.CreatePredictionEngine<InputArea, OutputArea>(mlModel); return mlContext.Model.CreatePredictionEngine<InputArea, OutputArea>(mlModel);
} }
private static string FindPath()
{
string path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location).ToString();
while(true)
{
path = Directory.GetParent(path).ToString();
if (path.EndsWith("\\Game1"))
{
return path;
}
}
}
} }
} }