private static void extract(string inputFolder, string outputFile, double latitude, double longitude, string projection, double size) { var converter = new Oware.LatLngUTMConverter(projection); var coordinates = converter.convertLatLngToUtm(latitude, longitude); var extractor = new SquareExtractor(coordinates.Easting, coordinates.Northing, size); Console.WriteLine("Reading all .xyz files in " + inputFolder + "..."); foreach (var file in new DirectoryInfo(inputFolder).GetFiles()) { Console.WriteLine(extractor.Count + " " + file.Name); if (file.Extension != ".xyz") { continue; } extractor.ProcessXYZFile(file, ','); } var points = extractor.GetCenteredPoints(); Console.WriteLine("Writing output file..."); XYZFile.Write(outputFile, points); Console.WriteLine("Complete."); }
public void ProcessXYZFile(FileInfo file) { if (this.outOfRange(file.Name)) { Console.WriteLine("Skipping " + file.Name + " since it contains an unrelated tile."); return; } foreach (var point in XYZFile.ReadContinuously(file.FullName)) { this.handlePoint(point); } }
private static void fix(string filename, string heightmapFile) { Console.WriteLine("Reading input file..."); var points = XYZFile.Read(filename); PointcloudTool.createPatches(points, filename); Console.WriteLine("Creating heightmap..."); var pointHashSet = new PointHashSet(1d, points); XYZFile.Write(heightmapFile, pointHashSet.GetHeightMap(), pointHashSet.GetHeightMapNormals()); Console.WriteLine("Complete."); }
public void initHemes(string filename) { my_babies = new List <Heme>(); center = new Vector3(0, 0, 0); XYZFile file = new XYZFile(filename); XYZFile.Frame hemeCoords = file.Frames[0]; //there should only be 1 frame in this particular file foreach (KeyValuePair <string, Vector3> coord in hemeCoords.Positions) { Heme newHeme = ((GameObject)Instantiate(spawnHeme, transform.position + coord.Value, transform.rotation)).GetComponent <Heme>(); newHeme.transform.SetParent(transform); center += newHeme.transform.position; my_babies.Add(newHeme); } center /= my_babies.Count; startPos = center; startRot = transform.eulerAngles; }
private static void extract(string inputFolder, string outputFile, double x, double y, double size) { var extractor = new SquareExtractor(x, y, size); Console.WriteLine("Reading all .xyz files in " + inputFolder + "..."); foreach (var file in new DirectoryInfo(inputFolder).GetFiles()) { Console.WriteLine(extractor.Count + " " + file.Name); if (file.Extension != ".xyz") { continue; } extractor.ProcessXYZFile(file); } var points = extractor.GetCenteredPoints(); Console.WriteLine("Writing output file..."); XYZFile.Write(outputFile, points); Console.WriteLine("Complete."); }
private static void fix(string inputFile, string outputFile, string heightmapFile) { Console.WriteLine("Reading input file... "); var points = XYZFile.Read(inputFile); Console.WriteLine("Fixing holes... "); var holeFixer = new HoleFixer(points); var edgePoints = holeFixer.GetEdgePoints().ToArray(); var patches = holeFixer.CreatePatches(edgePoints).ToArray(); points = patches.Concat(points).ToArray(); Console.WriteLine("Writing output files... "); XYZFile.Write(outputFile, points); var pointHashSet = new PointHashSet(1d, points); XYZFile.Write(heightmapFile, pointHashSet.GetHeightMap(), pointHashSet.GetHeightMapNormals()); Console.WriteLine("Complete."); }
public static Vector3[] Read(string fileName, char separator = ' ') { return(File.ReadAllLines(fileName).Select(line => XYZFile.parseLine(line, separator)).ToArray()); }
public static Vector3[] Read(string fileName, char separator = ' ') { return(XYZFile.ReadContinuously(fileName, separator).ToArray()); }
public static Vector3[] Read(string fileName) { return(XYZFile.ReadContinuously(fileName).ToArray()); }