# [name]

A doubly linked list of vertices.

## Constructor

### [name]()

Creates a new instance of [name].

## Properties

### [property:VertexNode head]

Reference to the first vertex of the linked list. Default is null.

### [property:VertexNode tail]

Reference to the last vertex of the linked list. Default is null.

## Methods

### [method:VertexNode first]()

Returns the head reference.

### [method:VertexNode last]()

Returns the tail reference.

### [[method:this clear]()

Clears the linked list.

### [[method:this insertBefore]( [param:Vertex target], [param:Vertex vertex] )

[page:Vertex target] - The target vertex. It's assumed that this vertex belongs to the linked list.
[page:Vertex vertex] - The vertex to insert.
Inserts a vertex before a target vertex.

### [[method:this insertAfter]( [param:Vertex target], [param:Vertex vertex] )

[page:Vertex target] - The target vertex. It's assumed that this vertex belongs to the linked list.
[page:Vertex vertex] - The vertex to insert.
Inserts a vertex after a target vertex.

### [[method:this append]( [param:Vertex vertex] )

[page:Vertex vertex] - The vertex to append.
Appends a vertex to the end of the linked list.

### [[method:this appendChain]( [param:Vertex vertex] )

[page:Vertex vertex] - The head vertex of a chain of vertices.
Appends a chain of vertices where the given vertex is the head.

### [[method:this remove]( [param:Vertex vertex] )

[page:Vertex vertex] - The vertex to remove.
Removes a vertex from the linked list.

### [[method:this removeSubList]( [param:Vertex a], [param:Vertex b] )

[page:Vertex a] - The head of the sublist.
[page:Vertex b] - The tail of the sublist.
Removes a sublist of vertices from the linked list.

### [method:Boolean isEmpty]()

Returns true if the linked list is empty.

## Source

[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/ConvexHull.js examples/jsm/math/ConvexHull.js]