import VertexUv, { VertexUvInterface } from './VertexUv.js'; export interface TriangleUvInterface { a: VertexUvInterface; area: number; b: VertexUvInterface; c: VertexUvInterface; id: number; inverted: boolean; islandIndex: number; maxU: number; maxV: number; minU: number; minV: number; overlapping: boolean; calculateIslandIndex(): void; lineIntersects(p1: VertexUvInterface, p2: VertexUvInterface): boolean; overlapsTriangle(triagle: TriangleUvInterface): boolean; vertexInside(point: VertexUvInterface): boolean; } export default class TriangleUv implements TriangleUvInterface { a: VertexUvInterface; area: number; b: VertexUvInterface; c: VertexUvInterface; id: number; inverted: boolean; islandIndex: number; maxU: number; maxV: number; minU: number; minV: number; overlapping: boolean; constructor(id: number, a: VertexUv, b: VertexUv, c: VertexUv); calculateIslandIndex(): void; lineIntersects(p1: VertexUvInterface, p2: VertexUvInterface): boolean; vertexInside(point: VertexUvInterface): boolean; overlapsTriangle(otherTriangle: TriangleUvInterface): boolean; private calculateArea; private calculateInverted; private static edgesIntersect; private static isCounterClockwise; private loadMinMax; private pointInside; }