/// <summary> /// Clone the new halfedge from the old halfedge. /// </summary> /// /// <remarks> The only thing set to this point is the initial vertex. No new halfedges /// or faces are available yet and should be set in Mesh.PatchClone. We have to set the /// face. opposite and nextEdge however so they can be references in PatchClone. </remarks> /// /// <param name="newHalfEdge"> New halfedge to clone into </param> /// <param name="halfEdge"> Old halfedge we're cloning from </param> /// <param name="oldToNewVertex"> Mapping from old vertices to new vertices </param> protected internal virtual void CloneHalfEdge(HalfEdge newHalfEdge, HalfEdge halfEdge, Dictionary <Vertex, Vertex> oldToNewVertex) { newHalfEdge.NextEdge = halfEdge.NextEdge; newHalfEdge.Face = halfEdge.Face; newHalfEdge.Opposite = halfEdge.Opposite; }
public virtual HalfEdge CreateHalfEdge(Vertex vertex, HalfEdge opposite, Face face, HalfEdge nextEdge) { return(new HalfEdge(vertex, opposite, face, nextEdge)); }