partition_rectanglepartition_rectanglePartitionRectanglePartitionRectanglepartition_rectangle (Operator)

Name

partition_rectanglepartition_rectanglePartitionRectanglePartitionRectanglepartition_rectangle — Partition a region into rectangles of approximately equal size.

Signature

partition_rectangle(Region : Partitioned : Width, Height : )

Herror partition_rectangle(const Hobject Region, Hobject* Partitioned, double Width, double Height)

Herror T_partition_rectangle(const Hobject Region, Hobject* Partitioned, const Htuple Width, const Htuple Height)

void PartitionRectangle(const HObject& Region, HObject* Partitioned, const HTuple& Width, const HTuple& Height)

HRegion HRegion::PartitionRectangle(double Width, double Height) const

static void HOperatorSet.PartitionRectangle(HObject region, out HObject partitioned, HTuple width, HTuple height)

HRegion HRegion.PartitionRectangle(double width, double height)

def partition_rectangle(region: HObject, width: float, height: float) -> HObject

Description

partition_rectanglepartition_rectanglePartitionRectanglePartitionRectanglepartition_rectangle partitions the input region into rectangles having an extent of WidthWidthWidthwidthwidth times HeightHeightHeightheightheight. The rectangles are returned in PartitionedPartitionedPartitionedpartitionedpartitioned. The region is always split into rectangles of approximately equal size. If this is not possible with the requested rectangle size, then WidthWidthWidthwidthwidth and HeightHeightHeightheightheight are adapted so that the size of the resulting rectangles is approximately equal. If the region is smaller than the given size, its output remains unchanged. A partition is only done if the size of the region is at least 1.5 times the size of the rectangle given by the parameters.

Execution Information

Parameters

RegionRegionRegionregionregion (input_object)  region(-array) objectHRegionHObjectHObjectHobject

Region to be partitioned.

PartitionedPartitionedPartitionedpartitionedpartitioned (output_object)  region(-array) objectHRegionHObjectHObjectHobject *

Partitioned region.

WidthWidthWidthwidthwidth (input_control)  extent.x HTuplefloatHTupleHtuple (real) (double) (double) (double)

Width of the individual rectangles.

HeightHeightHeightheightheight (input_control)  extent.y HTuplefloatHTupleHtuple (real) (double) (double) (double)

Height of the individual rectangles.

Result

partition_rectanglepartition_rectanglePartitionRectanglePartitionRectanglepartition_rectangle returns 2 ( H_MSG_TRUE) if all parameters are correct. 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>)set_system("no_object_result",<Result>), 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>)set_system("empty_region_result",<Result>), and the behavior in case of an empty result region via set_system('store_empty_region',<'true'/'false'>)set_system("store_empty_region",<"true"/"false">)SetSystem("store_empty_region",<"true"/"false">)SetSystem("store_empty_region",<"true"/"false">)set_system("store_empty_region",<"true"/"false">). If necessary, an exception is raised.

Possible Predecessors

thresholdthresholdThresholdThresholdthreshold, connectionconnectionConnectionConnectionconnection

Alternatives

partition_dynamicpartition_dynamicPartitionDynamicPartitionDynamicpartition_dynamic

See also

intersectionintersectionIntersectionIntersectionintersection, smallest_rectangle1smallest_rectangle1SmallestRectangle1SmallestRectangle1smallest_rectangle1, shape_transshape_transShapeTransShapeTransshape_trans, clip_regionclip_regionClipRegionClipRegionclip_region

Module

Foundation