Aetheria/Assets/Plugins/MSAGL/Routing/Spline/Bundling/SdVertex.cs
Reinier Vens dbc522a224 Weapos Rejiggered
Modified weapon scripts to eliminate specialized projectile behavior - allows charged weapons to have projectiles and modify weapon stats when charged
Added machine gun weapon & VFX
Moved third party code to Plugins folder to improve compile times
2021-01-31 03:52:32 +00:00

48 lines
No EOL
1.4 KiB
C#

using System;
using System.Collections.Generic;
using Microsoft.Msagl.Core.Geometry;
using Microsoft.Msagl.Routing.ConstrainedDelaunayTriangulation;
using Microsoft.Msagl.Routing.Visibility;
namespace Microsoft.Msagl.Routing.Spline.Bundling {
internal class SdVertex {
internal VisibilityVertex VisibilityVertex;
internal List<SdBoneEdge> InBoneEdges = new List<SdBoneEdge>();
internal List<SdBoneEdge> OutBoneEdges = new List<SdBoneEdge>();
internal SdVertex Prev {
get {
if (PrevEdge == null) return null;
return PrevEdge.Source == this ? PrevEdge.Target : PrevEdge.Source;
}
}
internal SdBoneEdge PrevEdge { get; set; }
internal SdVertex(VisibilityVertex visibilityVertex) {
VisibilityVertex = visibilityVertex;
}
internal CdtTriangle Triangle;
internal bool IsSourceOfRouting { get; set; }
internal bool IsTargetOfRouting { get; set; }
internal Point Point { get { return VisibilityVertex.Point; } }
double cost;
internal double Cost {
get {
if (IsSourceOfRouting) return cost;
return Prev == null ? double.PositiveInfinity : cost;
}
set { cost = value; }
}
public void SetPreviousToNull() {
PrevEdge = null;
}
}
}