hc_polygon-HilbertCurve-method {HilbertCurve} | R Documentation

## Add polygons to Hilbert curve

### Description

Add polygons to Hilbert curve

### Usage

    ## S4 method for signature 'HilbertCurve'
    hc_polygon(object, ir = NULL, x1 = NULL, x2 = NULL,
        gp = gpar(), end_type = c("expanding", "average", "shrinking"))

### Arguments

`object` | a `HilbertCurve-class` object.
`ir` | an `IRanges` object which specifies the input intervals.
`x1` | if start positions are not integers, they can be set by `x1`.
`x2` | if end positions are not integers, they can be set by `x2`.
`gp` | graphic parameters. It should be specified by `gpar`.
`end_type` | since two ends of a continuous interval do not necessarily completely overlap with the Hilbert curve segments, this argument controls how to determine the ends of the interval which will be presented on the curve. `average`: if the end covers more than half of the segment, the whole segment is included and if the end covers less than half of the segment, the segment is removed; `expanding`: segments are included as long as they are overlapped; `shrinking`: segments are removed if they are not completely covered.

### Details

Drawing polygons are quite visually similar as drawing rectangles. The major differences are: 1) for rectangles, colors for the ends of the interval can change if they are not completely covered by the Hilbert curve segments, and 2) polygons can have borders.

Normally polygons are used to mark areas in the Hilbert curve.

### Value

No value is returned.

### Author(s)

Zuguang Gu <z.gu@dkfz.de>

### Examples

    require(IRanges)
    ir = IRanges(10, 40)

    hc = HilbertCurve(0, 100, level = 4, reference = TRUE)
    hc_segments(hc, ir)
    hc_text(hc, x1 = 10:40, labels = 10:40)
    hc_polygon(hc, ir, gp = gpar(fill = "#FF000080", col = 1))

[Package HilbertCurve version 1.20.0 Index]