RegionCongruent[reg1,reg2]
tests whether the regions reg1 and reg2 are congruent.
RegionCongruent
RegionCongruent[reg1,reg2]
tests whether the regions reg1 and reg2 are congruent.
Details and Options
- The regions reg1 and reg2 are congruent if reg2 can be obtained from reg1 by a combination of translations, rotations and reflections.
- Typically used to test whether two regions have the same shape and size or whether one has the same shape and size as the mirror image of the other.
- RegionCongruent[reg1,reg2] gives True if there is an affine transformation from reg1 to reg2 with matrix m satisfying
.
Examples
open all close allBasic Examples (1)
Scope (10)
Basic Uses (2)
Special Regions (3)
RegionCongruent works in 1D:
RegionCongruent[Line[{{0}, {1}}], Interval[{0, 1}]]RegionCongruent[Point[{1, 1}], Point[{2, 2}]]Ball:
RegionCongruent[Ball[1], Interval[{-1, 1}]]RegionCongruent[InfiniteLine[{0}, {1}], FullRegion[1]]RegionCongruent works in 2D:
Subscript[ℛ, 1] = Point[Tuples[Range[3], 2]];
Subscript[ℛ, 2] = Point[Join@@Table[{i, j}, {j, 3}, {i, 3}]];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Subscript[ℛ, 1] = Disk[];
Subscript[ℛ, 2] = Ball[2];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Subscript[ℛ, 1] = Polygon[{{0, 0}, {1, 0}, {1, 1}, {0, 1}}];
Subscript[ℛ, 2] = Rectangle[];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]RegionCongruent works in 3D:
Subscript[ℛ, 1] = Point[Tuples[Range[5], 3]];
Subscript[ℛ, 2] = Point[Flatten[Table[{i, j, k}, {j, 5}, {k, 5}, {i, 5}], 2]];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Formula Regions (1)
Mesh Regions (3)
Test whether two mesh regions are congruent:
Subscript[ℛ, 1] = MeshRegion[{{0}, {1}}, Line[{1, 2}]];
Subscript[ℛ, 2] = MeshRegion[{{0}, {1 / 2}, {1}}, Line[{3, 2, 1}]];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Subscript[ℛ, 1] = MeshRegion[{{0, 0}, {1, 0}, {1, 1}, {0, 1}}, Polygon[{1, 2, 3, 4}]];
Subscript[ℛ, 2] = TriangulateMesh[Subscript[ℛ, 1]];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Test whether two boundary mesh regions are congruent:
Subscript[ℛ, 1] = BoundaryMeshRegion[{{0}, {1}}, Point[{1, 2}]];
Subscript[ℛ, 2] = BoundaryMeshRegion[{{0}, {1}}, Point[{2, 1}]];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Subscript[ℛ, 1] = BoundaryMeshRegion[{{0, 0}, {2, 0}, {2, 2}, {0, 2}}, Line[{1, 2, 3, 4, 1}]];
Subscript[ℛ, 2] = BoundaryMeshRegion[{{0, 0}, {1, 0}, {2, 0}, {2, 2}, {0, 2}}, Line[{1, 2, 3, 4, 5, 1}]];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Test whether a mesh region and a boundary mesh region are congruent:
Subscript[ℛ, 1] = DelaunayMesh[RandomReal[{-1, 1}, {25, 2}]];
Subscript[ℛ, 2] = BoundaryMesh[Subscript[ℛ, 1]];{Subscript[ℛ, 1], Subscript[ℛ, 2]}RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Subscript[ℛ, 1] = DelaunayMesh[RandomReal[{-1, 1}, {25, 3}]];
Subscript[ℛ, 2] = BoundaryMesh[Subscript[ℛ, 1]];RegionCongruent[Subscript[ℛ, 1], Subscript[ℛ, 2]]Derived Regions (1)
Applications (3)
Two disks with the same radius are congruent:
RegionCongruent[Disk[{0, 0}, 2], Disk[{2, 2}, 2]]RegionCongruent[Disk[{0, 0}, 2], Disk[{2, 2}, 3]]Two rectangles with the same width and height are congruent:
RegionCongruent[Rectangle[{0, 0}, {1, 3}], Rectangle[{2, 2}, {3, 5}]]RegionCongruent[Rectangle[{0, 0}, {1, 3}], Rectangle[{2, 1}, {4, 2}]]Two polygons with the same vertex angles and edge lengths are congruent:
p = RandomPolygon[{"Convex", 5}];
q = TransformedRegion[p, RotationTransform[Pi / 4]];RegionCongruent[p, q]r = TransformedRegion[p, ScalingTransform[Pi / 4, {1, 1}]];RegionCongruent[p, r]Properties & Relations (3)
RegionSimilar returns True for congruent regions:
RegionCongruent[Rectangle[], Polygon[{{0, 0}, {1, 0}, {1, 1}, {0, 1}}]]RegionSimilar[Rectangle[], Polygon[{{0, 0}, {1, 0}, {1, 1}, {0, 1}}]]Regions that are similar are not always congruent:
RegionSimilar[Rectangle[], Parallelogram[]]RegionCongruent[Rectangle[], Parallelogram[]]Two equal regions are congruent:
RegionEqual[Disk[], Ball[2]]RegionCongruent[Disk[], Ball[2]]FindRegionTransform gives an affine transformation m of the form
between two congruent regions:
RegionCongruent[Rectangle[{0, 0}, {2, 2}], Rectangle[{2, 2}, {4, 4}]]tr = FindRegionTransform[Rectangle[{0, 0}, {2, 2}], Rectangle[{2, 2}, {4, 4}]]m = tr["AffineMatrix"]Transpose[m] == Inverse[m]Related Guides
History
Text
Wolfram Research (2021), RegionCongruent, Wolfram Language function, https://reference.wolfram.com/language/ref/RegionCongruent.html.
CMS
Wolfram Language. 2021. "RegionCongruent." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/RegionCongruent.html.
APA
Wolfram Language. (2021). RegionCongruent. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/RegionCongruent.html
BibTeX
@misc{reference.wolfram_2026_regioncongruent, author="Wolfram Research", title="{RegionCongruent}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/RegionCongruent.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_regioncongruent, organization={Wolfram Research}, title={RegionCongruent}, year={2021}, url={https://reference.wolfram.com/language/ref/RegionCongruent.html}, note=[Accessed: 12-June-2026]}