Operator Reference

transpose_regiontranspose_regionTransposeRegionTransposeRegiontranspose_region (Operator)

transpose_regiontranspose_regionTransposeRegionTransposeRegiontranspose_region — Reflect a region about a point.

Signature

transpose_region(Region : Transposed : Row, Column : )

Herror transpose_region(const Hobject Region, Hobject* Transposed, const Hlong Row, const Hlong Column)

Herror T_transpose_region(const Hobject Region, Hobject* Transposed, const Htuple Row, const Htuple Column)

void TransposeRegion(const HObject& Region, HObject* Transposed, const HTuple& Row, const HTuple& Column)

HRegion HRegion::TransposeRegion(Hlong Row, Hlong Column) const

static void HOperatorSet.TransposeRegion(HObject region, out HObject transposed, HTuple row, HTuple column)

HRegion HRegion.TransposeRegion(int row, int column)

def transpose_region(region: HObject, row: int, column: int) -> HObject

Description

transpose_regiontranspose_regionTransposeRegionTransposeRegiontranspose_region reflects a region about a point. The fixed point is given by ColumnColumnColumncolumncolumn and RowRowRowrowrow. The image P' of a point P is determined by the following requirement:

If P = S, then P' = S, i.e., the point S is the fixed point of the mapping. If , S is the center point of a line segment connecting P and P'. Therefore, the following equations result: If RowRowRowrowrow and ColumnColumnColumncolumncolumn are set to the origin, the in morphology often used transposition results. Hence transpose_regiontranspose_regionTransposeRegionTransposeRegiontranspose_region is often used to reflect (transpose) a structuring element.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Automatically parallelized on tuple level.

Parameters

RegionRegionRegionregionregion (input_object)  region(-array) objectHRegionHObjectHObjectHobject

Region to be reflected.

TransposedTransposedTransposedtransposedtransposed (output_object)  region(-array) objectHRegionHObjectHObjectHobject *

Transposed region.

RowRowRowrowrow (input_control)  point.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Row coordinate of the reference point.

Default: 0

Suggested values: 0, 64, 128, 256, 512

Value range: 0 ≤ Row Row Row row row ≤ 511 (lin)

Minimum increment: 1

Recommended increment: 1

ColumnColumnColumncolumncolumn (input_control)  point.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Column coordinate of the reference point.

Default: 0

Suggested values: 0, 64, 128, 256, 512

Value range: 0 ≤ Column Column Column column column ≤ 511 (lin)

Minimum increment: 1

Recommended increment: 1

Complexity

Let F be the area of the input region. Then the runtime complexity for one region is

Result

transpose_regiontranspose_regionTransposeRegionTransposeRegiontranspose_region returns 2 ( H_MSG_TRUE) if all parameters are correct. The behavior in case of empty or no input region can be set via:

Otherwise, an exception is raised.

Possible Successors

reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain, select_shapeselect_shapeSelectShapeSelectShapeselect_shape, area_centerarea_centerAreaCenterAreaCenterarea_center, connectionconnectionConnectionConnectionconnection

See also

dilation1dilation1Dilation1Dilation1dilation1, openingopeningOpeningOpeningopening, closingclosingClosingClosingclosing

Module

Foundation