union2union2Union2Union2union2 (Operator)

Name

union2union2Union2Union2union2 — Return the union of two regions.

Signature

union2(Region1, Region2 : RegionUnion : : )

Herror union2(const Hobject Region1, const Hobject Region2, Hobject* RegionUnion)

Herror T_union2(const Hobject Region1, const Hobject Region2, Hobject* RegionUnion)

void Union2(const HObject& Region1, const HObject& Region2, HObject* RegionUnion)

HRegion HRegion::Union2(const HRegion& Region2) const

static void HOperatorSet.Union2(HObject region1, HObject region2, out HObject regionUnion)

HRegion HRegion.Union2(HRegion region2)

def union2(region_1: HObject, region_2: HObject) -> HObject

Description

union2union2Union2Union2Union2union2 computes the union of the region in Region1Region1Region1Region1region1region_1 with all regions in Region2Region2Region2Region2region2region_2. Internally, all regions of Region2Region2Region2Region2region2region_2 are united to a single region before the individual regions of Region1Region1Region1Region1region1region_1 are united with the already united region. This means that union2union2Union2Union2Union2union2 is not commutative!

Execution Information

Parameters

Region1Region1Region1Region1region1region_1 (input_object)  region(-array) objectHRegionHObjectHRegionHobject

Region for which the union with all regions in Region2 is to be computed.

Region2Region2Region2Region2region2region_2 (input_object)  region(-array) objectHRegionHObjectHRegionHobject

Regions which should be added to Region1.

RegionUnionRegionUnionRegionUnionRegionUnionregionUnionregion_union (output_object)  region(-array) objectHRegionHObjectHRegionHobject *

Resulting regions.

Number of elements: RegionUnion == Region1

Complexity

Let F be the sum of all areas of the input regions. Then the runtime complexity is O(log(sqrt(F)) * sqrt(F)).

Result

union2union2Union2Union2Union2union2 always returns 2 (H_MSG_TRUE). The behavior in case of empty input (no regions given) can be set via set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>) and the behavior in case of an empty input region via set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)set_system("empty_region_result",<Result>). If necessary, an exception is raised.

Possible Predecessors

thresholdthresholdThresholdThresholdThresholdthreshold, connectionconnectionConnectionConnectionConnectionconnection, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing, pouringpouringPouringPouringPouringpouring

Possible Successors

select_shapeselect_shapeSelectShapeSelectShapeSelectShapeselect_shape, disp_regiondisp_regionDispRegionDispRegionDispRegiondisp_region

Alternatives

union1union1Union1Union1Union1union1

See also

intersectionintersectionIntersectionIntersectionIntersectionintersection, complementcomplementComplementComplementComplementcomplement

Module

Foundation