T - the type of all objects mapped to Subdivision.faces()U - the type of all objects mapped to Subdivision.edges()V - the type of all objects mapped to Subdivision.vertices()public interface SubdivisionFullMap<T,U,V> extends SubdivisionMap<T>
Subdivision to arbitrary objects.
Provides an application-specific mapping of all Subdivision.faces(),
Subdivision.edges(), and Subdivision.vertices() of a planar
Subdivision to arbitrary objects.
All conversion methods have a default implementation that throws
UnsupportedOperationException so that clients may selectively
implement actual conversion methods for any desired element types.
Since the Subdivision has no knowledge of any SubdivisionFullMap
instances that reference it, clients must manually update any such instances
whenever the underlying Subdivision changes.
| Modifier and Type | Method and Description |
|---|---|
default U |
fromEdge(SubdivisionEdge edge)
Converts the specified
SubdivisionEdge into the associated U instance. |
default V |
fromVertex(PointD vertex)
Converts the specified
PointD vertex into the associated V instance. |
default SubdivisionEdge |
toEdge(U value)
Converts the specified U instance into the associated
SubdivisionEdge. |
default PointD |
toVertex(V value)
Converts the specified V instance into the associated
PointD vertex. |
fromFace, source, target, toFacedefault U fromEdge(SubdivisionEdge edge)
SubdivisionEdge into the associated U instance.edge - the SubdivisionEdge to convertedgejava.lang.IllegalArgumentException - if SubdivisionMap.source() does not contain edgejava.lang.UnsupportedOperationException - if not overridden by an implementing classjava.lang.NullPointerException - if edge is nulldefault SubdivisionEdge toEdge(U value)
SubdivisionEdge.value - the U instance to convertSubdivisionEdge associated with valuejava.lang.IllegalArgumentException - if value does not map to any
SubdivisionEdge within SubdivisionMap.source()java.lang.UnsupportedOperationException - if not overridden by an implementing classdefault V fromVertex(PointD vertex)
PointD vertex into the associated V instance.vertex - the PointD vertex to convertvertexjava.lang.IllegalArgumentException - if SubdivisionMap.source() does not contain vertexjava.lang.UnsupportedOperationException - if not overridden by an implementing classjava.lang.NullPointerException - if vertex is nulldefault PointD toVertex(V value)
PointD vertex.value - the V instance to convertPointD vertex associated with valuejava.lang.IllegalArgumentException - if value does not map to any
PointD vertex within SubdivisionMap.source()java.lang.UnsupportedOperationException - if not overridden by an implementing class