public class PolySweepMerge extends GeometryHandler
GeometryHandler.GHMode
areaSort, shapeSort
Constructor and Description |
---|
PolySweepMerge()
Method to create a new "merge" object.
|
PolySweepMerge(int initialSize)
Method to create a new "merge" object.
|
Modifier and Type | Method and Description |
---|---|
void |
add(Layer key,
java.lang.Object element) |
void |
addAll(GeometryHandler subMerge,
java.awt.geom.AffineTransform tTrans) |
java.util.List<java.awt.geom.Area> |
getAreas(Layer layer) |
java.util.Collection<PolyBase> |
getObjects(java.lang.Object layer,
boolean modified,
boolean simple)
To retrieve leave elements from internal structure
|
java.util.Collection<PolyBase> |
getPolyPartition(java.lang.Object layer) |
java.util.Collection<PolyBase.PolyBaseTree> |
getTreeObjects(java.lang.Object layer)
To retrieve the roots containing all loops from the internal structure.
|
void |
postProcess(boolean merge)
Method to perform operations after no more elemenets will
be added.
|
void |
setMode(int mode)
Method to switch between a sweep algorithm with one
or two frontiers
|
void |
subtract(java.lang.Object key,
java.lang.Object element)
Method to subtract a geometrical object from the merged collection.
|
void |
subtractAll(java.util.HashMap<Layer,java.util.List<PolyBase>> map)
Method to subtract all geometries stored in hash map from corresponding layers
|
createGeometryHandler, getKeySet, subtractAll
public PolySweepMerge()
public PolySweepMerge(int initialSize)
public void setMode(int mode)
mode
- public void add(Layer key, java.lang.Object element)
add
in class GeometryHandler
public void subtract(java.lang.Object key, java.lang.Object element)
subtract
in class GeometryHandler
key
- the key that this Object sits on.element
- the Object to merge.public void subtractAll(java.util.HashMap<Layer,java.util.List<PolyBase>> map)
map
- public void addAll(GeometryHandler subMerge, java.awt.geom.AffineTransform tTrans)
addAll
in class GeometryHandler
public void postProcess(boolean merge)
GeometryHandler
postProcess
in class GeometryHandler
merge
- true if polygons must be merged otherwise non-overlapping polygons will be generated.public java.util.Collection<PolyBase> getObjects(java.lang.Object layer, boolean modified, boolean simple)
getObjects
in class GeometryHandler
layer
- current layer under analysismodified
- to avoid retrieving original polygonssimple
- to obtain simple polygonspublic java.util.List<java.awt.geom.Area> getAreas(Layer layer)
public java.util.Collection<PolyBase.PolyBaseTree> getTreeObjects(java.lang.Object layer)
getTreeObjects
in class GeometryHandler
layer
- current layer under analysispublic java.util.Collection<PolyBase> getPolyPartition(java.lang.Object layer)