package { import flash.geom.Point; /** * Represents a Voronoi Node; i.e. one of the points in the Voronoi * Diagram. After construction of the Vorononi Diagram, a Voronoi Node * is equidistant to at least three Voronoi Sites. * @author Chad Nelson */ public class VoronoiNode extends Point { public var edges : Vector. = new Vector.(); public var name : String; public function VoronoiNode(name:String, x:Number = 0, y:Number = 0) { this.name = name; super(x, y); } public override function toString():String { var o : String = ""; o += "v" + name; o += " (" + x + ", " + y + ") "; var e1 : String = "?"; var e2 : String = "?"; if (edges.length > 0) { if (edges[0].node1 != null) e1 = edges[0].node1.name; if (edges[0].node2 != null) e2 = edges[0].node2.name; } o += "e" + e1 + "," + e2 + "\n"; return o; } public function toStringFace():String { var index : String = "c" + name; var edge : String = "e"; var e1 : String = "?"; var e2 : String = "?"; if (edges.length > 0) { if (edges[0].node1 != null) e1 = edges[0].node1.name; if (edges[0].node2 != null) e2 = edges[0].node2.name; } return index + " nil e" + e1 + "," + e2 + "\n"; } } }