scripts
This commit is contained in:
@@ -0,0 +1,146 @@
|
||||
using System;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x0200002C RID: 44
|
||||
public class BoundingBox
|
||||
{
|
||||
// Token: 0x06000167 RID: 359 RVA: 0x00017C6D File Offset: 0x00015E6D
|
||||
public BoundingBox()
|
||||
: this(double.MaxValue, double.MaxValue, double.MinValue, double.MinValue)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06000168 RID: 360 RVA: 0x00017C99 File Offset: 0x00015E99
|
||||
public BoundingBox(BoundingBox other)
|
||||
: this(other.MinX, other.MinY, other.MaxX, other.MaxY)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06000169 RID: 361 RVA: 0x00017CB9 File Offset: 0x00015EB9
|
||||
public BoundingBox(double xmin, double ymin, double xmax, double ymax)
|
||||
{
|
||||
this.xmin = xmin;
|
||||
this.xmax = xmax;
|
||||
this.ymin = ymin;
|
||||
this.ymax = ymax;
|
||||
}
|
||||
|
||||
// Token: 0x17000062 RID: 98
|
||||
// (get) Token: 0x0600016A RID: 362 RVA: 0x00017CDE File Offset: 0x00015EDE
|
||||
public double MinX
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.xmin;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000063 RID: 99
|
||||
// (get) Token: 0x0600016B RID: 363 RVA: 0x00017CE6 File Offset: 0x00015EE6
|
||||
public double MaxX
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.xmax;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000064 RID: 100
|
||||
// (get) Token: 0x0600016C RID: 364 RVA: 0x00017CEE File Offset: 0x00015EEE
|
||||
public double MinY
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.ymin;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000065 RID: 101
|
||||
// (get) Token: 0x0600016D RID: 365 RVA: 0x00017CF6 File Offset: 0x00015EF6
|
||||
public double MaxY
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.ymax;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000066 RID: 102
|
||||
// (get) Token: 0x0600016E RID: 366 RVA: 0x00017CFE File Offset: 0x00015EFE
|
||||
public double Width
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.xmax - this.xmin;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000067 RID: 103
|
||||
// (get) Token: 0x0600016F RID: 367 RVA: 0x00017D0D File Offset: 0x00015F0D
|
||||
public double Height
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.ymax - this.ymin;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06000170 RID: 368 RVA: 0x00017D1C File Offset: 0x00015F1C
|
||||
public void Resize(double dx, double dy)
|
||||
{
|
||||
this.xmin -= dx;
|
||||
this.xmax += dx;
|
||||
this.ymin -= dy;
|
||||
this.ymax += dy;
|
||||
}
|
||||
|
||||
// Token: 0x06000171 RID: 369 RVA: 0x00017D58 File Offset: 0x00015F58
|
||||
public void Expand(double x, double y)
|
||||
{
|
||||
this.xmin = Math.Min(this.xmin, x);
|
||||
this.ymin = Math.Min(this.ymin, y);
|
||||
this.xmax = Math.Max(this.xmax, x);
|
||||
this.ymax = Math.Max(this.ymax, y);
|
||||
}
|
||||
|
||||
// Token: 0x06000172 RID: 370 RVA: 0x00017DB0 File Offset: 0x00015FB0
|
||||
public void Expand(BoundingBox other)
|
||||
{
|
||||
this.xmin = Math.Min(this.xmin, other.xmin);
|
||||
this.ymin = Math.Min(this.ymin, other.ymin);
|
||||
this.xmax = Math.Max(this.xmax, other.xmax);
|
||||
this.ymax = Math.Max(this.ymax, other.ymax);
|
||||
}
|
||||
|
||||
// Token: 0x06000173 RID: 371 RVA: 0x00017E19 File Offset: 0x00016019
|
||||
public bool Contains(Point pt)
|
||||
{
|
||||
return pt.x >= this.xmin && pt.x <= this.xmax && pt.y >= this.ymin && pt.y <= this.ymax;
|
||||
}
|
||||
|
||||
// Token: 0x06000174 RID: 372 RVA: 0x00017E58 File Offset: 0x00016058
|
||||
public bool Contains(BoundingBox other)
|
||||
{
|
||||
return this.xmin <= other.MinX && other.MaxX <= this.xmax && this.ymin <= other.MinY && other.MaxY <= this.ymax;
|
||||
}
|
||||
|
||||
// Token: 0x06000175 RID: 373 RVA: 0x00017E97 File Offset: 0x00016097
|
||||
public bool Intersects(BoundingBox other)
|
||||
{
|
||||
return other.MinX < this.xmax && this.xmin < other.MaxX && other.MinY < this.ymax && this.ymin < other.MaxY;
|
||||
}
|
||||
|
||||
// Token: 0x040000EE RID: 238
|
||||
private double xmin;
|
||||
|
||||
// Token: 0x040000EF RID: 239
|
||||
private double ymin;
|
||||
|
||||
// Token: 0x040000F0 RID: 240
|
||||
private double xmax;
|
||||
|
||||
// Token: 0x040000F1 RID: 241
|
||||
private double ymax;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x0200002D RID: 45
|
||||
public class Edge
|
||||
{
|
||||
// Token: 0x17000068 RID: 104
|
||||
// (get) Token: 0x06000176 RID: 374 RVA: 0x00017ED3 File Offset: 0x000160D3
|
||||
// (set) Token: 0x06000177 RID: 375 RVA: 0x00017EDB File Offset: 0x000160DB
|
||||
public int P0 { get; private set; }
|
||||
|
||||
// Token: 0x17000069 RID: 105
|
||||
// (get) Token: 0x06000178 RID: 376 RVA: 0x00017EE4 File Offset: 0x000160E4
|
||||
// (set) Token: 0x06000179 RID: 377 RVA: 0x00017EEC File Offset: 0x000160EC
|
||||
public int P1 { get; private set; }
|
||||
|
||||
// Token: 0x1700006A RID: 106
|
||||
// (get) Token: 0x0600017A RID: 378 RVA: 0x00017EF5 File Offset: 0x000160F5
|
||||
// (set) Token: 0x0600017B RID: 379 RVA: 0x00017EFD File Offset: 0x000160FD
|
||||
public int Boundary { get; private set; }
|
||||
|
||||
// Token: 0x0600017C RID: 380 RVA: 0x00017F06 File Offset: 0x00016106
|
||||
public Edge(int p0, int p1)
|
||||
: this(p0, p1, 0)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x0600017D RID: 381 RVA: 0x00017F11 File Offset: 0x00016111
|
||||
public Edge(int p0, int p1, int boundary)
|
||||
{
|
||||
this.P0 = p0;
|
||||
this.P1 = p1;
|
||||
this.Boundary = boundary;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using TriangleNet.Data;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x0200002E RID: 46
|
||||
public class EdgeEnumerator : IEnumerator<Edge>, IDisposable, IEnumerator
|
||||
{
|
||||
// Token: 0x0600017E RID: 382 RVA: 0x00017F30 File Offset: 0x00016130
|
||||
public EdgeEnumerator(Mesh mesh)
|
||||
{
|
||||
this.triangles = mesh.triangles.Values.GetEnumerator();
|
||||
this.triangles.MoveNext();
|
||||
this.tri.triangle = this.triangles.Current;
|
||||
this.tri.orient = 0;
|
||||
}
|
||||
|
||||
// Token: 0x1700006B RID: 107
|
||||
// (get) Token: 0x0600017F RID: 383 RVA: 0x00017F8C File Offset: 0x0001618C
|
||||
public Edge Current
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.current;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06000180 RID: 384 RVA: 0x00017F94 File Offset: 0x00016194
|
||||
public void Dispose()
|
||||
{
|
||||
this.triangles.Dispose();
|
||||
}
|
||||
|
||||
// Token: 0x1700006C RID: 108
|
||||
// (get) Token: 0x06000181 RID: 385 RVA: 0x00017F8C File Offset: 0x0001618C
|
||||
object IEnumerator.Current
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.current;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06000182 RID: 386 RVA: 0x00017FA4 File Offset: 0x000161A4
|
||||
public bool MoveNext()
|
||||
{
|
||||
if (this.tri.triangle == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
this.current = null;
|
||||
while (this.current == null)
|
||||
{
|
||||
if (this.tri.orient == 3)
|
||||
{
|
||||
if (!this.triangles.MoveNext())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
this.tri.triangle = this.triangles.Current;
|
||||
this.tri.orient = 0;
|
||||
}
|
||||
this.tri.Sym(ref this.neighbor);
|
||||
if (this.tri.triangle.id < this.neighbor.triangle.id || this.neighbor.triangle == Mesh.dummytri)
|
||||
{
|
||||
this.p1 = this.tri.Org();
|
||||
this.p2 = this.tri.Dest();
|
||||
this.tri.SegPivot(ref this.sub);
|
||||
this.current = new Edge(this.p1.id, this.p2.id, this.sub.seg.boundary);
|
||||
}
|
||||
this.tri.orient = this.tri.orient + 1;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x06000183 RID: 387 RVA: 0x000180D2 File Offset: 0x000162D2
|
||||
public void Reset()
|
||||
{
|
||||
this.triangles.Reset();
|
||||
}
|
||||
|
||||
// Token: 0x040000F5 RID: 245
|
||||
private IEnumerator<Triangle> triangles;
|
||||
|
||||
// Token: 0x040000F6 RID: 246
|
||||
private Otri tri;
|
||||
|
||||
// Token: 0x040000F7 RID: 247
|
||||
private Otri neighbor;
|
||||
|
||||
// Token: 0x040000F8 RID: 248
|
||||
private Osub sub;
|
||||
|
||||
// Token: 0x040000F9 RID: 249
|
||||
private Edge current;
|
||||
|
||||
// Token: 0x040000FA RID: 250
|
||||
private Vertex p1;
|
||||
|
||||
// Token: 0x040000FB RID: 251
|
||||
private Vertex p2;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
using System;
|
||||
using TriangleNet.Data;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x02000033 RID: 51
|
||||
public interface ISegment
|
||||
{
|
||||
// Token: 0x17000083 RID: 131
|
||||
// (get) Token: 0x060001B5 RID: 437
|
||||
int P0 { get; }
|
||||
|
||||
// Token: 0x17000084 RID: 132
|
||||
// (get) Token: 0x060001B6 RID: 438
|
||||
int P1 { get; }
|
||||
|
||||
// Token: 0x17000085 RID: 133
|
||||
// (get) Token: 0x060001B7 RID: 439
|
||||
int Boundary { get; }
|
||||
|
||||
// Token: 0x060001B8 RID: 440
|
||||
Vertex GetVertex(int index);
|
||||
|
||||
// Token: 0x060001B9 RID: 441
|
||||
ITriangle GetTriangle(int index);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using TriangleNet.Data;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x02000030 RID: 48
|
||||
public interface ITriangle
|
||||
{
|
||||
// Token: 0x17000074 RID: 116
|
||||
// (get) Token: 0x06000197 RID: 407
|
||||
int ID { get; }
|
||||
|
||||
// Token: 0x17000075 RID: 117
|
||||
// (get) Token: 0x06000198 RID: 408
|
||||
int P0 { get; }
|
||||
|
||||
// Token: 0x17000076 RID: 118
|
||||
// (get) Token: 0x06000199 RID: 409
|
||||
int P1 { get; }
|
||||
|
||||
// Token: 0x17000077 RID: 119
|
||||
// (get) Token: 0x0600019A RID: 410
|
||||
int P2 { get; }
|
||||
|
||||
// Token: 0x0600019B RID: 411
|
||||
Vertex GetVertex(int index);
|
||||
|
||||
// Token: 0x17000078 RID: 120
|
||||
// (get) Token: 0x0600019C RID: 412
|
||||
bool SupportsNeighbors { get; }
|
||||
|
||||
// Token: 0x17000079 RID: 121
|
||||
// (get) Token: 0x0600019D RID: 413
|
||||
int N0 { get; }
|
||||
|
||||
// Token: 0x1700007A RID: 122
|
||||
// (get) Token: 0x0600019E RID: 414
|
||||
int N1 { get; }
|
||||
|
||||
// Token: 0x1700007B RID: 123
|
||||
// (get) Token: 0x0600019F RID: 415
|
||||
int N2 { get; }
|
||||
|
||||
// Token: 0x060001A0 RID: 416
|
||||
ITriangle GetNeighbor(int index);
|
||||
|
||||
// Token: 0x060001A1 RID: 417
|
||||
ISegment GetSegment(int index);
|
||||
|
||||
// Token: 0x1700007C RID: 124
|
||||
// (get) Token: 0x060001A2 RID: 418
|
||||
// (set) Token: 0x060001A3 RID: 419
|
||||
double Area { get; set; }
|
||||
|
||||
// Token: 0x1700007D RID: 125
|
||||
// (get) Token: 0x060001A4 RID: 420
|
||||
int Region { get; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,221 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using TriangleNet.Data;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x0200002F RID: 47
|
||||
public class InputGeometry
|
||||
{
|
||||
// Token: 0x06000184 RID: 388 RVA: 0x000180DF File Offset: 0x000162DF
|
||||
public InputGeometry()
|
||||
: this(3)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06000185 RID: 389 RVA: 0x000180E8 File Offset: 0x000162E8
|
||||
public InputGeometry(int capacity)
|
||||
{
|
||||
this.points = new List<Vertex>(capacity);
|
||||
this.segments = new List<Edge>();
|
||||
this.holes = new List<Point>();
|
||||
this.regions = new List<RegionPointer>();
|
||||
this.bounds = new BoundingBox();
|
||||
this.pointAttributes = -1;
|
||||
}
|
||||
|
||||
// Token: 0x1700006D RID: 109
|
||||
// (get) Token: 0x06000186 RID: 390 RVA: 0x00018141 File Offset: 0x00016341
|
||||
public BoundingBox Bounds
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.bounds;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700006E RID: 110
|
||||
// (get) Token: 0x06000187 RID: 391 RVA: 0x00018149 File Offset: 0x00016349
|
||||
public bool HasSegments
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.segments.Count > 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700006F RID: 111
|
||||
// (get) Token: 0x06000188 RID: 392 RVA: 0x00018159 File Offset: 0x00016359
|
||||
public int Count
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.points.Count;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000070 RID: 112
|
||||
// (get) Token: 0x06000189 RID: 393 RVA: 0x00018166 File Offset: 0x00016366
|
||||
public IEnumerable<Point> Points
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.points.Select((Vertex v) => v);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000071 RID: 113
|
||||
// (get) Token: 0x0600018A RID: 394 RVA: 0x00018192 File Offset: 0x00016392
|
||||
public ICollection<Edge> Segments
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.segments;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000072 RID: 114
|
||||
// (get) Token: 0x0600018B RID: 395 RVA: 0x0001819A File Offset: 0x0001639A
|
||||
public ICollection<Point> Holes
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.holes;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000073 RID: 115
|
||||
// (get) Token: 0x0600018C RID: 396 RVA: 0x000181A2 File Offset: 0x000163A2
|
||||
public ICollection<RegionPointer> Regions
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.regions;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600018D RID: 397 RVA: 0x000181AA File Offset: 0x000163AA
|
||||
public void Clear()
|
||||
{
|
||||
this.points.Clear();
|
||||
this.segments.Clear();
|
||||
this.holes.Clear();
|
||||
this.regions.Clear();
|
||||
this.pointAttributes = -1;
|
||||
}
|
||||
|
||||
// Token: 0x0600018E RID: 398 RVA: 0x000181DF File Offset: 0x000163DF
|
||||
public void AddPoint(double x, double y)
|
||||
{
|
||||
this.AddPoint(x, y, 0);
|
||||
}
|
||||
|
||||
// Token: 0x0600018F RID: 399 RVA: 0x000181EA File Offset: 0x000163EA
|
||||
public void AddPoint(double x, double y, int boundary)
|
||||
{
|
||||
this.points.Add(new Vertex(x, y, boundary));
|
||||
this.bounds.Expand(x, y);
|
||||
}
|
||||
|
||||
// Token: 0x06000190 RID: 400 RVA: 0x0001820C File Offset: 0x0001640C
|
||||
public void AddPoint(double x, double y, int boundary, double attribute)
|
||||
{
|
||||
this.AddPoint(x, y, 0, new double[] { attribute });
|
||||
}
|
||||
|
||||
// Token: 0x06000191 RID: 401 RVA: 0x00018224 File Offset: 0x00016424
|
||||
public void AddPoint(double x, double y, int boundary, double[] attribs)
|
||||
{
|
||||
if (this.pointAttributes < 0)
|
||||
{
|
||||
this.pointAttributes = ((attribs == null) ? 0 : attribs.Length);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (attribs == null && this.pointAttributes > 0)
|
||||
{
|
||||
throw new ArgumentException("Inconsitent use of point attributes.");
|
||||
}
|
||||
if (attribs != null && this.pointAttributes != attribs.Length)
|
||||
{
|
||||
throw new ArgumentException("Inconsitent use of point attributes.");
|
||||
}
|
||||
}
|
||||
this.points.Add(new Vertex(x, y, boundary)
|
||||
{
|
||||
attributes = attribs
|
||||
});
|
||||
this.bounds.Expand(x, y);
|
||||
}
|
||||
|
||||
// Token: 0x06000192 RID: 402 RVA: 0x000182A8 File Offset: 0x000164A8
|
||||
public void AddPoint(Vertex v)
|
||||
{
|
||||
double[] attributes = v.attributes;
|
||||
if (this.pointAttributes < 0)
|
||||
{
|
||||
this.pointAttributes = ((attributes == null) ? 0 : attributes.Length);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (attributes == null && this.pointAttributes > 0)
|
||||
{
|
||||
throw new ArgumentException("Inconsitent use of point attributes.");
|
||||
}
|
||||
if (attributes != null && this.pointAttributes != attributes.Length)
|
||||
{
|
||||
throw new ArgumentException("Inconsitent use of point attributes.");
|
||||
}
|
||||
}
|
||||
this.points.Add(v);
|
||||
this.bounds.Expand(v.x, v.y);
|
||||
}
|
||||
|
||||
// Token: 0x06000193 RID: 403 RVA: 0x00018329 File Offset: 0x00016529
|
||||
public void AddHole(double x, double y)
|
||||
{
|
||||
this.holes.Add(new Point(x, y));
|
||||
}
|
||||
|
||||
// Token: 0x06000194 RID: 404 RVA: 0x0001833D File Offset: 0x0001653D
|
||||
public void AddRegion(double x, double y, int id)
|
||||
{
|
||||
this.regions.Add(new RegionPointer(x, y, id));
|
||||
}
|
||||
|
||||
// Token: 0x06000195 RID: 405 RVA: 0x00018352 File Offset: 0x00016552
|
||||
public void AddSegment(int p0, int p1)
|
||||
{
|
||||
this.AddSegment(p0, p1, 0);
|
||||
}
|
||||
|
||||
// Token: 0x06000196 RID: 406 RVA: 0x0001835D File Offset: 0x0001655D
|
||||
public void AddSegment(int p0, int p1, int boundary)
|
||||
{
|
||||
if (p0 == p1 || p0 < 0 || p1 < 0)
|
||||
{
|
||||
throw new NotSupportedException("Invalid endpoints.");
|
||||
}
|
||||
this.segments.Add(new Edge(p0, p1, boundary));
|
||||
}
|
||||
|
||||
// Token: 0x040000FC RID: 252
|
||||
internal List<Vertex> points;
|
||||
|
||||
// Token: 0x040000FD RID: 253
|
||||
internal List<Edge> segments;
|
||||
|
||||
// Token: 0x040000FE RID: 254
|
||||
internal List<Point> holes;
|
||||
|
||||
// Token: 0x040000FF RID: 255
|
||||
internal List<RegionPointer> regions;
|
||||
|
||||
// Token: 0x04000100 RID: 256
|
||||
private BoundingBox bounds;
|
||||
|
||||
// Token: 0x04000101 RID: 257
|
||||
private int pointAttributes = -1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,148 @@
|
||||
using System;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x02000031 RID: 49
|
||||
public class Point : IComparable<Point>, IEquatable<Point>
|
||||
{
|
||||
// Token: 0x060001A5 RID: 421 RVA: 0x00018389 File Offset: 0x00016589
|
||||
public Point()
|
||||
: this(0.0, 0.0, 0)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060001A6 RID: 422 RVA: 0x000183A4 File Offset: 0x000165A4
|
||||
public Point(double x, double y)
|
||||
: this(x, y, 0)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060001A7 RID: 423 RVA: 0x000183AF File Offset: 0x000165AF
|
||||
public Point(double x, double y, int mark)
|
||||
{
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
this.mark = mark;
|
||||
}
|
||||
|
||||
// Token: 0x1700007E RID: 126
|
||||
// (get) Token: 0x060001A8 RID: 424 RVA: 0x000183CC File Offset: 0x000165CC
|
||||
public int ID
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.id;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700007F RID: 127
|
||||
// (get) Token: 0x060001A9 RID: 425 RVA: 0x000183D4 File Offset: 0x000165D4
|
||||
public double X
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.x;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000080 RID: 128
|
||||
// (get) Token: 0x060001AA RID: 426 RVA: 0x000183DC File Offset: 0x000165DC
|
||||
public double Y
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.y;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000081 RID: 129
|
||||
// (get) Token: 0x060001AB RID: 427 RVA: 0x000183E4 File Offset: 0x000165E4
|
||||
public int Boundary
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.mark;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000082 RID: 130
|
||||
// (get) Token: 0x060001AC RID: 428 RVA: 0x000183EC File Offset: 0x000165EC
|
||||
public double[] Attributes
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.attributes;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060001AD RID: 429 RVA: 0x000183F4 File Offset: 0x000165F4
|
||||
public static bool operator ==(Point a, Point b)
|
||||
{
|
||||
return a == b || (a != null && b != null && a.Equals(b));
|
||||
}
|
||||
|
||||
// Token: 0x060001AE RID: 430 RVA: 0x0001840B File Offset: 0x0001660B
|
||||
public static bool operator !=(Point a, Point b)
|
||||
{
|
||||
return !(a == b);
|
||||
}
|
||||
|
||||
// Token: 0x060001AF RID: 431 RVA: 0x00018418 File Offset: 0x00016618
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if (obj == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
Point point = obj as Point;
|
||||
return point != null && this.x == point.x && this.y == point.y;
|
||||
}
|
||||
|
||||
// Token: 0x060001B0 RID: 432 RVA: 0x00018454 File Offset: 0x00016654
|
||||
public bool Equals(Point p)
|
||||
{
|
||||
return p != null && this.x == p.x && this.y == p.y;
|
||||
}
|
||||
|
||||
// Token: 0x060001B1 RID: 433 RVA: 0x0001847C File Offset: 0x0001667C
|
||||
public int CompareTo(Point other)
|
||||
{
|
||||
if (this.x == other.x && this.y == other.y)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
if (this.x >= other.x && (this.x != other.x || this.y >= other.y))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
// Token: 0x060001B2 RID: 434 RVA: 0x000184D4 File Offset: 0x000166D4
|
||||
public override int GetHashCode()
|
||||
{
|
||||
return this.x.GetHashCode() ^ this.y.GetHashCode();
|
||||
}
|
||||
|
||||
// Token: 0x060001B3 RID: 435 RVA: 0x000184ED File Offset: 0x000166ED
|
||||
public override string ToString()
|
||||
{
|
||||
return string.Format("[{0},{1}]", this.x, this.y);
|
||||
}
|
||||
|
||||
// Token: 0x04000102 RID: 258
|
||||
internal int id;
|
||||
|
||||
// Token: 0x04000103 RID: 259
|
||||
internal double x;
|
||||
|
||||
// Token: 0x04000104 RID: 260
|
||||
internal double y;
|
||||
|
||||
// Token: 0x04000105 RID: 261
|
||||
internal int mark;
|
||||
|
||||
// Token: 0x04000106 RID: 262
|
||||
internal double[] attributes;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
using System;
|
||||
|
||||
namespace TriangleNet.Geometry
|
||||
{
|
||||
// Token: 0x02000032 RID: 50
|
||||
public class RegionPointer
|
||||
{
|
||||
// Token: 0x060001B4 RID: 436 RVA: 0x0001850F File Offset: 0x0001670F
|
||||
public RegionPointer(double x, double y, int id)
|
||||
{
|
||||
this.point = new Point(x, y);
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
// Token: 0x04000107 RID: 263
|
||||
internal Point point;
|
||||
|
||||
// Token: 0x04000108 RID: 264
|
||||
internal int id;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user