24 lines
601 B
TypeScript
24 lines
601 B
TypeScript
import PathQueue from "./PathQueue";
|
|
import {FaceNode} from "./FaceNode";
|
|
import PathQueueNode from "./PathQueueNode";
|
|
import Edge from "../Circular/Edge";
|
|
|
|
export default class FaceQueue extends PathQueue<FaceNode> {
|
|
public Edge: Edge = null;
|
|
public Closed: boolean = false;
|
|
|
|
public get IsUnconnected(): boolean {
|
|
return this.Edge === null;
|
|
}
|
|
|
|
public override AddPush(node: PathQueueNode<FaceNode>, newNode: PathQueueNode<FaceNode>) {
|
|
if (this.Closed)
|
|
throw new Error("Can't add node to closed FaceQueue");
|
|
|
|
super.AddPush(node, newNode);
|
|
}
|
|
|
|
public Close() {
|
|
this.Closed = true;
|
|
}
|
|
} |