_deleteFaceVertices( face, absorbingFace ) {

		const faceVertices = this._removeAllVerticesFromFace( face );

		if ( faceVertices !== undefined ) {

			if ( absorbingFace === undefined ) {

				// mark the vertices to be reassigned to some other face

				this.unassigned.appendChain( faceVertices );


			} else {

				// if there's an absorbing face try to assign as many vertices as possible to it

				let vertex = faceVertices;

				do {

					// we need to buffer the subsequent vertex at this point because the 'vertex.next' reference
					// will be changed by upcoming method calls

					const nextVertex = vertex.next;

					const distance = absorbingFace.distanceToPoint( vertex.point );

					// check if 'vertex' is able to see 'absorbingFace'

					if ( distance > this.tolerance ) {

						this._addVertexToFace( vertex, absorbingFace );

					} else {

						this.unassigned.append( vertex );

					}

					// now assign next vertex

					vertex = nextVertex;

				} while ( vertex !== null );

			}

		}

		return this;

	}
Removes all the visible vertices that `face` is able to see.

- If `absorbingFace` doesn't exist, then all the removed vertices will be added to the 'unassigned' vertex list.
- If `absorbingFace` exists, then this method will assign all the vertices of 'face' that can see 'absorbingFace'.
- If a vertex cannot see `absorbingFace`, it's added to the 'unassigned' vertex list.

@private
@param {Face} face - The given face.
@param {Face} [absorbingFace] - An optional face that tries to absorb the vertices of the first face.
@return {ConvexHull} A reference to this convex hull.