Skip to content

Shapemetry API


Shapemetry API / MeshEdge

Class: MeshEdge

Defined in: mesh/MeshEdge.ts:23

MeshEdge.

  • vertex1, vertex2: endpoint vertices (unordered).
  • corner: entry into radial cycle (any MeshCorner using this edge).
  • disk1, disk2: disk-link pointers for the two endpoints.

Constructors

Constructor

new MeshEdge(vertex1, vertex2): MeshEdge

Defined in: mesh/MeshEdge.ts:32

Parameters

vertex1

MeshVertex

vertex2

MeshVertex

Returns

MeshEdge

Properties

index

index: number = -1

Defined in: mesh/MeshEdge.ts:24


flag

flag: number = 0

Defined in: mesh/MeshEdge.ts:25


vertex1

vertex1: MeshVertex

Defined in: mesh/MeshEdge.ts:26


vertex2

vertex2: MeshVertex

Defined in: mesh/MeshEdge.ts:27


corner

corner: MeshCorner | null = null

Defined in: mesh/MeshEdge.ts:28


disk1

disk1: DiskLink

Defined in: mesh/MeshEdge.ts:29


disk2

disk2: DiskLink

Defined in: mesh/MeshEdge.ts:30

Methods

diskLink(vertex): DiskLink

Defined in: mesh/MeshEdge.ts:40

Disk link of given endpoint.

Parameters

vertex

MeshVertex

Returns

DiskLink


diskNext()

diskNext(vertex): MeshEdge | null

Defined in: mesh/MeshEdge.ts:45

Disk edge next from vertex.

Parameters

vertex

MeshVertex

Returns

MeshEdge | null


diskPrev()

diskPrev(vertex): MeshEdge | null

Defined in: mesh/MeshEdge.ts:50

Disk edge prev from vertex.

Parameters

vertex

MeshVertex

Returns

MeshEdge | null


otherVertex()

otherVertex(vertex): MeshVertex

Defined in: mesh/MeshEdge.ts:55

Returns the endpoint that is not vertex.

Parameters

vertex

MeshVertex

Returns

MeshVertex


faces()

faces(): IterableIterator<MeshFace>

Defined in: mesh/MeshEdge.ts:62

Iterate faces incident to this edge (radial cycle).

Returns

IterableIterator<MeshFace>


faceCount()

faceCount(): number

Defined in: mesh/MeshEdge.ts:70

Number of faces incident to this edge (radial cycle length). Returns -1 if cycle is malformed.

Returns

number


adjacentFaceNormals()

adjacentFaceNormals(): [Vector | null, Vector | null]

Defined in: mesh/MeshEdge.ts:83

Normals of the two faces adjacent to this edge (manifold assumed).

Returns

[Vector | null, Vector | null]


isCoplanarDiagonal()

isCoplanarDiagonal(): boolean

Defined in: mesh/MeshEdge.ts:96

True if this edge is a "phantom" coplanar diagonal - its two adjacent faces have the same normal direction (within tolerance). Such edges exist when a logical polygon was triangulated (e.g. poly2tri). Bevel pipelines must ignore them.

Returns

boolean


closestPointToLine()

closestPointToLine(a, b): Point

Defined in: mesh/MeshEdge.ts:108

Closest point on this edge (as an infinite line through its endpoints) to the line through (a, b). Falls back to vertex1.position if parallel.

Parameters

a

Point

b

Point

Returns

Point