BooleanRegion[bfunc,{reg1,reg2,…}]
領域 reg1, reg2, …の論理結合 bfunc を表す.
BooleanRegion
BooleanRegion[bfunc,{reg1,reg2,…}]
領域 reg1, reg2, …の論理結合 bfunc を表す.
詳細とオプション
- bfunc[p∈reg1,p∈reg2,…]がTrueなら,点 p はBooleanRegion[bfunc,{reg1,reg2,…}]に属する.
- BoundaryMeshRegion regiについて,BooleanRegionは領域 regiの論理結合を含む最小のBoundaryMeshRegionを表す.
- MeshRegion regiについて,BooleanRegionは領域 regiの論理結合を含む最小のMeshRegionを与える.
- 次の関数は同等である.
-
RegionIntersection[reg1,reg2,…] BooleanRegion[And, {reg1,reg2,…}] RegionUnion[reg1,reg2,…] BooleanRegion[Or, {reg1,reg2,…}] RegionDifference[reg1,reg2] BooleanRegion[And[#1,Not[#2]]&, {reg1,reg2}] RegionSymmetricDifference[reg1,…] BooleanRegion[Xor, {reg1,…}] - BooleanRegionはRegionと同じオプションを取る.
例題
すべて開く すべて閉じる例 (2)
2つの円板の論理Xor:
BooleanRegion[Xor, {Disk[{-1 / 3, 0}, 1], Disk[{1 / 3, 0}, 1]}];Region[%]MeshRegionオブジェクトに適用されたブール関数:
BooleanRegion[¬#2∧#1&, {[image], [image]}]スコープ (11)
特別な領域 (5)
ℛ = BooleanRegion[Or, {Line[{{1}, {2}}], Line[{{3}, {4}}], Line[{{5}, {6}}]}];Region[ℛ]Polygon領域に適用されたBooleanCountingFunction:
pts = {{-5, 0}, {1, -2}, {-1, 0}, {1, 2}};
{p1, p2, p3, p4} = Polygon /@ {pts, -pts, Reverse /@ pts, -Reverse /@ pts};ℛ = BooleanRegion[BooleanCountingFunction[{1, 2}, 4], {p1, p2, p3, p4}];このAreaを計算する:
Area[ℛ]ℛ = BooleanRegion[Xor, {Disk[{0, 0}, 1], Disk[{1, 0}, 1]}];Region[ℛ]ℛ = BooleanRegion[Or, {Cuboid[], Cuboid[{0.5, 0.5, 0.5}]}];Region[ℛ]RegionDimensionが異なる領域の論理And:
ℛ = BooleanRegion[And, {Disk[{0, 0}, 1], Circle[{0, 1}, 1]}];Region[ℛ]数式定義領域 (2)
ImplicitRegionオブジェクトの論理XorはImplicitRegionである:
Subscript[ℛ, 1] = ImplicitRegion[x ≤ 1, {x}];
Subscript[ℛ, 2] = ImplicitRegion[x ≥ -1, {x}];BooleanRegion[Xor, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]Subscript[ℛ, 1] = ImplicitRegion[x^2 + y^2 ≤ 1, {x, y}];
Subscript[ℛ, 2] = ImplicitRegion[x^2 + (y - 1)^2 ≤ 1, {x, y}];BooleanRegion[Xor, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]Subscript[ℛ, 1] = ImplicitRegion[x^2 + y^2 + z^2 ≤ 1, {x, y, z}];
Subscript[ℛ, 2] = ImplicitRegion[(x - 1)^2 + y^2 + z^2 ≤ 1, {x, y, z}];BooleanRegion[Xor, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]Subscript[ℛ, 1] = ImplicitRegion[x^2 + y^2 + z^2 + u^2 + v^2 ≤ 1, {x, y, z, u, v}];
Subscript[ℛ, 2] = ImplicitRegion[(x - 1)^2 + y^2 + z^2 + u^2 + v^2 ≤ 1, {x, y, z, u, v}];BooleanRegion[Xor, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]ParametricRegionオブジェクトに適用されたブール関数:
Subscript[ℛ, 1] = ParametricRegion[{u, v, w}, {{u, 0, 2}, {v, 0, 2}, {w, 0, 2}}];
Subscript[ℛ, 2] = ParametricRegion[{u - 1, v + 1, w - 1}, {{u, 0, 2}, {v, 0, 2}, {w, 0, 2}}];ℛ = BooleanRegion[¬#1∧#2&, {Subscript[ℛ, 1], Subscript[ℛ, 2]}];Region[ℛ]メッシュ領域 (2)
BoundaryMeshRegionオブジェクトのブール関数はBoundaryMeshRegionである:
BooleanRegion[¬#2∧#1&, {[image], [image]}]BoundedRegionQ[%]BooleanRegion[¬#2∧#1&, {[image], [image]}]BoundedRegionQ[%]BooleanRegion[¬#2∧#1&, {[image], [image]}]BoundedRegionQ[%]全次元のMeshRegionオブジェクトのブール関数はMeshRegionである:
BooleanRegion[¬#2∧#1&, {[image], [image]}]MeshRegionQ[%]BooleanRegion[¬#2∧#1&, {[image], [image]}]MeshRegionQ[%]BooleanRegion[¬#2∧#1&, {[image], [image]}]MeshRegionQ[%]派生領域 (2)
BooleanRegionオブジェクトのブール関数:
Subscript[ℛ, 1] = BooleanRegion[Or, {Triangle[{{0, 0}, {2, 3}, {-2, 3}}], Triangle[{{0, 2}, {2, -1}, {-2, -1}}]}];
Subscript[ℛ, 2] = BooleanRegion[And, {Triangle[{{0, 0}, {2, 3}, {-2, 3}}], Triangle[{{0, 2}, {2, -1}, {-2, 2}}]}];ℛ = BooleanRegion[¬#2∧#1&, {Subscript[ℛ, 1], Subscript[ℛ, 2]}];Region[ℛ]論理OrまたはTransformedRegionオブジェクト:
Subscript[ℛ, 1] = TransformedRegion[Cuboid[], RotationTransform[Pi / 8, {1, 0, 0}]];
Subscript[ℛ, 2] = TransformedRegion[Cuboid[], RotationTransform[Pi / 8, {0, 1, 0}]];ℛ = BooleanRegion[Or, {Subscript[ℛ, 1], Subscript[ℛ, 2]}];Region[ℛ]アプリケーション (1)
特性と関係 (2)
RegionUnionは,領域の論理結合結合Orである:
{Subscript[ℛ, 1], Subscript[ℛ, 2]} = {[image], [image]};RegionUnion[Subscript[ℛ, 1], Subscript[ℛ, 2]] == BooleanRegion[Or, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]RegionIntersection[Subscript[ℛ, 1], Subscript[ℛ, 2]] == BooleanRegion[And, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]RegionDifference[Subscript[ℛ, 1], Subscript[ℛ, 2]] == BooleanRegion[¬#2∧#1&, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]RegionSymmetricDifference[Subscript[ℛ, 1], Subscript[ℛ, 2]] == BooleanRegion[Xor, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]ブール演算子AndのRegionMeasureは単純な式に従う:
Subscript[ℛ, 1] = Disk[{0, 0}, 1];
Subscript[ℛ, 2] = Disk[{1, 0}, 1];
Subscript[ℛ, 3] = BooleanRegion[And, {Subscript[ℛ, 1], Subscript[ℛ, 2]}];RegionUnionの測度を測度の話から引く:
RegionMeasure[Subscript[ℛ, 3]] == RegionMeasure[Subscript[ℛ, 1]] + RegionMeasure[Subscript[ℛ, 2]] - RegionMeasure[RegionUnion[Subscript[ℛ, 1], Subscript[ℛ, 2]]]考えられる問題 (3)
BooleanRegionは,RegionEmbeddingDimensionが等しい領域についてのみ定義される:
Subscript[ℛ, 1] = Disk[];
Subscript[ℛ, 2] = Ball[{0, 0, 1}, 1];BooleanRegion[Or, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]Subscript[ℛ, 1] = MeshRegion[{{0, 0, 0}, {2, 0, 0}, {2, 2, 0}, {1, 1, 2}}, Tetrahedron[{1, 2, 3, 4}]];
Subscript[ℛ, 2] = MeshRegion[{{0, 0, 0}, {2, 2, 0}, {0, 2, 0}, {1, 1, 2}}, Tetrahedron[{1, 2, 3, 4}], PlotTheme -> "Web"];Show[{Subscript[ℛ, 1], Subscript[ℛ, 2]}]BooleanRegion[And, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]On[BooleanRegion::drc]BooleanRegion[And, {Subscript[ℛ, 1], Subscript[ℛ, 2]}]BooleanRegionは,より低い次元の重なり合う成分を含むことがある:
Subscript[ℛ, 1] = Sphere[];
Subscript[ℛ, 2] = Ball[{1 / 2, 0, 0}];Graphics3D[{Yellow, Subscript[ℛ, 1], Green, Opacity@.5, Subscript[ℛ, 2]}]Subscript[ℛ, 3] = BooleanRegion[Or, {DiscretizeGraphics[Subscript[ℛ, 1]], BoundaryDiscretizeGraphics[Subscript[ℛ, 2]]}]ConnectedMeshComponents[Subscript[ℛ, 3]]おもしろい例題 (1)
2つの螺線多角形のブール演算Xor:
BooleanRegion[Xor, {[image], [image]}]テキスト
Wolfram Research (2014), BooleanRegion, Wolfram言語関数, https://reference.wolfram.com/language/ref/BooleanRegion.html (2017年に更新).
CMS
Wolfram Language. 2014. "BooleanRegion." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2017. https://reference.wolfram.com/language/ref/BooleanRegion.html.
APA
Wolfram Language. (2014). BooleanRegion. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/BooleanRegion.html
BibTeX
@misc{reference.wolfram_2026_booleanregion, author="Wolfram Research", title="{BooleanRegion}", year="2017", howpublished="\url{https://reference.wolfram.com/language/ref/BooleanRegion.html}", note=[Accessed: 17-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_booleanregion, organization={Wolfram Research}, title={BooleanRegion}, year={2017}, url={https://reference.wolfram.com/language/ref/BooleanRegion.html}, note=[Accessed: 17-August-2026]}