@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
136 lines • 3.11 kB
TypeScript
export class TopoEdge {
/**
* Unique ID
* @type {number}
*/
index: number;
/**
*
* @type {TopoVertex}
*/
v0: TopoVertex;
/**
*
* @type {TopoVertex}
*/
v1: TopoVertex;
/**
*
* @type {TopoTriangle[]}
*/
faces: TopoTriangle[];
/**
*
* @type {number}
*/
lengthSqr: number;
get byteSize(): number;
/**
*
* @param {number} i
* @returns {TopoVertex}
*/
getVertexByIndex(i: number): TopoVertex;
/**
*
* @param {TopoEdge} other
*/
copy(other: TopoEdge): void;
clone(): TopoEdge;
/**
*
* @param {function(reason:string)} error_consumer
* @return {boolean}
*/
validate(error_consumer: any): boolean;
/**
* Returns false if edge is not licked back to by it's vertices (v0 is used for the check)
* @return {boolean}
*/
isLinked(): boolean;
/**
* Remove self from the topology graph
*/
unlink(): void;
/**
*
* @returns {boolean}
*/
isDegenerateEdge(): boolean;
/**
* @deprecated use {@link query_edge_is_boundary} instead
* Is this a an edge of topology as a whole?
* @return {boolean}
*/
isTopologyBorder(): boolean;
/**
* Note: requires length square to be pre-computed
* @return {number}
*/
get length(): number;
computeSquaredLength(): void;
/**
* NOTE: does not update faces
* @param {TopoVertex} existing
* @param {TopoVertex} replacement
*/
replaceVertex(existing: TopoVertex, replacement: TopoVertex): void;
/**
* Absorb other edge, as a result other edge becomes redundant
* NOTE: edges MUST share vertices
* @param {TopoEdge} other
*/
merge(other: TopoEdge): void;
/**
*
* @param {TopoTriangle} face
* @return {boolean}
*/
containsFace(face: TopoTriangle): boolean;
/**
*
* @param {TopoTriangle} face
*/
addFace(face: TopoTriangle): void;
/**
*
* @param {TopoTriangle} face
*/
addUniqueFace(face: TopoTriangle): void;
/**
*
* @param {TopoTriangle} f
*/
removeFace(f: TopoTriangle): void;
/**
* @deprecated use {@link query_edge_other_vertex} instead
* @param {TopoVertex} v
* @return {TopoVertex}
*/
getOtherVertex(v: TopoVertex): TopoVertex;
/**
* @deprecated use {@link @query_vertex_in_edge} instead
* @param {TopoVertex} v
* @return {boolean}
*/
containsVertex(v: TopoVertex): boolean;
/**
* @deprecated use {@link query_vertices_in_edge} instead
* @param {TopoVertex} a
* @param {TopoVertex} b
* @return {boolean}
*/
containsBothVertices(a: TopoVertex, b: TopoVertex): boolean;
/**
*
* @param {TopoEdge} other
* @returns {boolean}
*/
containsSameVerticesAs(other: TopoEdge): boolean;
/**
* @readonly
* @type {boolean}
*/
readonly isTopoEdge: boolean;
}
//# sourceMappingURL=TopoEdge.d.ts.map