public abstract class SeparatorSet
extends java.lang.Object
| Modifier and Type | Field and Description | 
|---|---|
| protected static int | ART_SEP_WIDTHThe width of the 'artificial' separators created by background colors | 
| protected java.util.Vector<Separator> | bsepList of separators comming from the box analysis | 
| protected java.util.Vector<Separator> | hsepList of horizontal separators | 
| protected static double | HSEP_MIN_HEIGHTThe minimal height of a horizontal separator in "em" units | 
| protected AreaImpl | rootThe root of the area tree that will be processed | 
| protected static double | SEP_MIN_RATIOThe minimal width/height ratio of the separator | 
| protected java.util.Vector<Separator> | vsepList of vertical separators | 
| protected static double | VSEP_MIN_WIDTHThe minimal width of a vertical separator in "em" units | 
| Constructor and Description | 
|---|
| SeparatorSet(AreaImpl root)Creates a new separator set with one horizontal and one vertical separator. | 
| SeparatorSet(AreaImpl root,
            Area filter)Creates a new separator set with one horizontal and one vertical separator. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | applyFinalFilters()Applies various filters on the current separator sets in order to remove irrelevant separators or adjust the sizes. | 
| protected void | applyRegularFilters()Applies various filters on the current separator sets in order to remove irrelevant separators or adjust the sizes. | 
| protected void | filterMarginalSeparators()Removes the separators that are placed on the area borders. | 
| protected void | filterSeparators()Removes all the separators where the weight is lower than the specified threshold. | 
| protected abstract void | findSeparators(AreaImpl area,
              Area filter)Finds the horizontal and vertical list of separators | 
| java.util.Vector<Separator> | getBoxsep() | 
| java.util.Vector<Separator> | getHorizontal() | 
| int | getMinHSepHeight()Computes the minimal height of a horizontal separator that is accepted with this separator set. | 
| int | getMinVSepWidth()Computes the minimal width of a vertical separator that is accepted with this separator set. | 
| Separator | getMostImportantSeparator()Obtains the most important (with the greatest weight) separator from all the separators. | 
| java.util.Vector<Separator> | getVertical() | 
| boolean | isSeparatorAt(int x,
             int y)Checks if a point is covered by a separator. | 
| protected void | processIntersections()Processes the separators so that they do not intersect. | 
| protected void | processIntersectionsRemoveHorizontal()Processes the separators so that they do not intersect. | 
| protected void | processIntersectionsSplitHorizontal()Processes the separators so that they do not intersect. | 
protected static final double HSEP_MIN_HEIGHT
protected static final double VSEP_MIN_WIDTH
protected static final double SEP_MIN_RATIO
protected static final int ART_SEP_WIDTH
protected AreaImpl root
protected java.util.Vector<Separator> hsep
protected java.util.Vector<Separator> vsep
protected java.util.Vector<Separator> bsep
public SeparatorSet(AreaImpl root)
public java.util.Vector<Separator> getHorizontal()
public java.util.Vector<Separator> getVertical()
public java.util.Vector<Separator> getBoxsep()
public Separator getMostImportantSeparator()
null when there are no separatorspublic int getMinHSepHeight()
public int getMinVSepWidth()
public boolean isSeparatorAt(int x,
                    int y)
x - the point x coordinatey - the point y coordinatetrue if any of the separators in this set covers the specified pointprotected abstract void findSeparators(AreaImpl area, Area filter)
area - the root areafilter - if not null, only the sub areas enclosed in the filter area
        are consideredprotected void applyRegularFilters()
public void applyFinalFilters()
protected void filterMarginalSeparators()
protected void filterSeparators()
protected void processIntersections()
protected void processIntersectionsSplitHorizontal()
protected void processIntersectionsRemoveHorizontal()