Name
intersectionintersectionIntersectionintersectionIntersectionIntersection — Calculate the intersection of two regions.
intersectionintersectionIntersectionintersectionIntersectionIntersection calculates the intersection of the regions
in Region1Region1Region1Region1Region1region1 with the regions in Region2Region2Region2Region2Region2region2. Each
region in Region1Region1Region1Region1Region1region1 is intersected with all regions in
Region2Region2Region2Region2Region2region2. That is, internally all regions of Region2Region2Region2Region2Region2region2
are united to a single region before the individual regions of
Region1Region1Region1Region1Region1region1 are intersected with the united region. The order of
regions in RegionIntersectionRegionIntersectionRegionIntersectionRegionIntersectionRegionIntersectionregionIntersection is identical to the order
of regions in Region1Region1Region1Region1Region1region1.
Empty input regions are permitted. Because empty result regions are
possible, the system flag 'store_empty_region'"store_empty_region""store_empty_region""store_empty_region""store_empty_region""store_empty_region" should be
set appropriately.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Regions to be intersected with all regions in Region2.
Regions with which Region1 is intersected.
Result of the intersection.
Number of elements: RegionIntersection <= Region1
Let N be the number of regions in Region1Region1Region1Region1Region1region1, F1 be
their average area, and F2 be the total area of all regions in
Region2Region2Region2Region2Region2region2. Then the runtime complexity is
O(F1 log((F1)) + N * (sqrt(F1) + sqrt(F2))).
intersectionintersectionIntersectionintersectionIntersectionIntersection 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>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("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>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>).
If necessary, an exception is raised.
thresholdthresholdThresholdthresholdThresholdThreshold,
connectionconnectionConnectionconnectionConnectionConnection,
regiongrowingregiongrowingRegiongrowingregiongrowingRegiongrowingRegiongrowing,
pouringpouringPouringpouringPouringPouring
select_shapeselect_shapeSelectShapeselect_shapeSelectShapeSelectShape,
disp_regiondisp_regionDispRegiondisp_regionDispRegionDispRegion
union1union1Union1union1Union1Union1,
union2union2Union2union2Union2Union2,
complementcomplementComplementcomplementComplementComplement
Foundation