Files
2026-06-04 11:42:34 +02:00

53 lines
1.5 KiB
C#

using System;
using System.Collections.Generic;
using System.IO;
using TriangleNet.Geometry;
namespace TriangleNet.IO
{
// Token: 0x0200002B RID: 43
public class TriangleFormat : IGeometryFormat, IMeshFormat
{
// Token: 0x06000163 RID: 355 RVA: 0x00017B88 File Offset: 0x00015D88
public Mesh Import(string filename)
{
string extension = Path.GetExtension(filename);
if (extension == ".node" || extension == ".poly" || extension == ".ele")
{
InputGeometry inputGeometry;
List<ITriangle> list;
FileReader.Read(filename, out inputGeometry, out list);
if (inputGeometry != null && list != null)
{
Mesh mesh = new Mesh();
mesh.Load(inputGeometry, list);
return mesh;
}
}
throw new NotSupportedException("Could not load '" + filename + "' file.");
}
// Token: 0x06000164 RID: 356 RVA: 0x00017BF6 File Offset: 0x00015DF6
public void Write(Mesh mesh, string filename)
{
FileWriter.WritePoly(mesh, Path.ChangeExtension(filename, ".poly"));
FileWriter.WriteElements(mesh, Path.ChangeExtension(filename, ".ele"));
}
// Token: 0x06000165 RID: 357 RVA: 0x00017C1C File Offset: 0x00015E1C
public InputGeometry Read(string filename)
{
string extension = Path.GetExtension(filename);
if (extension == ".node")
{
return FileReader.ReadNodeFile(filename);
}
if (extension == ".poly")
{
return FileReader.ReadPolyFile(filename);
}
throw new NotSupportedException("File format '" + extension + "' not supported.");
}
}
}