RegionMember[reg,{x,y,…}]
RegionMember[reg,{x,y,…}]
给出点 {x,y,…} 作为 reg 的成员的条件.
RegionMember[reg]
返回一个可以被重复应用到不同点的 RegionMemberFunction[…].
RegionMember
RegionMember[reg,{x,y,…}]
RegionMember[reg,{x,y,…}]
给出点 {x,y,…} 作为 reg 的成员的条件.
RegionMember[reg]
返回一个可以被重复应用到不同点的 RegionMemberFunction[…].
更多信息
- RegionMember 又被称为点在区域内的检验,隶属检验和隶属条件.
- 一个恒定区域是 ConstantRegionQ[reg] 给出 True 的区域.
范例
打开所有单元 关闭所有单元基本范例 (3)
RegionMember[Polygon[{{0, 0}, {1, 0}, {0, 1}}], {1 / 3, 1 / 3}]RegionMember[Disk[], {x, y}]生成 RegionMemberFunction 应用到不同的点:
mf = RegionMember[Disk[{0, 0}, 3]]mf[RandomReal[4, {7, 2}]]范围 (23)
基本用途 (4)
ℛ = Rectangle[{0, 0}, {2, 2}];{RegionMember[ℛ, {1, 1}], RegionMember[ℛ, {3, 3}]}ℛ = Ball[{0, 0, 0}, 2];RegionMember[ℛ, RandomReal[2, {7, 3}]]ℛ = Rectangle[{0, 0}, {2, 2}];RegionMember[ℛ, {x, y}]生成 RegionMemberFunction 应用到不同的点:
ℛ = Disk[{0, 0}, 2];mf = RegionMember[ℛ]mf[RandomReal[3, {7, 2}]]特定区域 (6)
RegionMember[Point[{1}], {x}]RegionMember[Interval[{1, 5}], {x}]RegionMember[Interval[{1, 5}], {6}]RegionMember[Point[{1, 2}], {x, y}]RegionMember[Circle[{0, 0}, 2], {x, y}]RegionMember[Disk[{1, 2}, {3, 4}], {x, y}]RegionMember[Circle[{0, 0}, 2], {3, 3}]ℛ = Triangle[{{0, 0}, {1, 2}, {2, 1}}];bounds = RegionBounds[ℛ]pts = RandomVariate[UniformDistribution[bounds], 10 ^ 4];col = RegionMember[ℛ, pts] /. {False -> Gray, True -> Red};
Graphics[{AbsolutePointSize[1], {col, Point /@ pts}}]RegionMember[Point[{1, 2, 3}], {x, y, z}]RegionMember[Line[{{1, 2, 3}, {4, 5, 6}}], {x, y, z}]RegionMember[Polygon[{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}], {x, y, z}]RegionMember[Cylinder[{{0, 0, 0}, {1, 1, 1}}, 2], {x, y, z}]RegionMember[Ball[{0, 0, 0}, 2], {3, 3, 3}]ℛ = Cuboid[{-1, -1, -1}, {1, 1, 1}];
in = RegionCentroid[ℛ];
out = {2, 0, 0};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Graphics3D[{{Opacity[0.2], ℛ}, PointSize[Large], {Green, Point[in]}, {Red, Point[out]}}, Boxed -> False]RegionMember[Simplex[{{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 0}, {0, 0, 0, 1}}], {x, y, z, t}]RegionMember[Cuboid[{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}], {x, y, z, t, u}]RegionMember[Ball[{0, 0, 0, 0, 0, 0, 0}, 8], {1, 2, 3, 4, 5, 6, 7}]公式区域 (3)
RegionMember[ImplicitRegion[x^2 + y^2 ≤ 1, {x, y}], {x, y}]RegionMember[ImplicitRegion[x^2 + y^2 ≤ 1, {x, y, {z, 0, 2}}], {x, y, z}]ℛ = ImplicitRegion[x ^ 2 - 2y ^ 2 <= 1, {{x, -3, 3}, {y, -4, 4}}];bounds = RegionBounds[ℛ]pts = RandomVariate[UniformDistribution[bounds], 10 ^ 4];col = RegionMember[ℛ, pts] /. {False -> Gray, True -> Red};
Graphics[{AbsolutePointSize[1], {col, Point /@ pts}}]RegionMember[ParametricRegion[{(1 - t ^ 2) / (1 + t ^ 2), 2t / (1 + t ^ 2)}, {t}], {x, y}]RegionMember[ParametricRegion[{{u + v + w, u + v - w, u - v - w, -u - v - w}, -1 ≤ u ≤ 1 && -1 ≤ v ≤ 1 && -1 ≤ w ≤ 1}, {u, v, w}], {x, y, z, t}]网格区域 (4)
在二维的 MeshRegion:
ℛ = DelaunayMesh[RandomReal[8, {100, 2}]];
in = RegionCentroid[ℛ];
out = {9, 9};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[ℛ, Graphics[{PointSize[Large], {Green, Point[in]}, {Red, Point[out]}}]]ℛ = DelaunayMesh[RandomReal[8, {100, 3}]];
in = RegionCentroid[ℛ];
out = {9, 9, 9};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[HighlightMesh[RegionBoundary[ℛ], Style[2, Opacity[0.1]]], Graphics3D[{PointSize[Large], {Green, Point[in]}, {Red, Point[out]}}]]在二维的 BoundaryMeshRegion:
ℛ = ConvexHullMesh[RandomReal[8, {100, 2}]];
in = RegionCentroid[ℛ];
out = {9, 9};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[ℛ, Graphics[{PointSize[Large], {Green, Point[in]}, {Red, Point[out]}}]]在三维的 BoundaryMeshRegion:
ℛ = ConvexHullMesh[RandomReal[8, {1000, 3}]];
in = RegionCentroid[ℛ];
out = {9, 9, 9};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[HighlightMesh[ℛ, Style[2, Opacity[0.2]]], Graphics3D[{PointSize[Large], {Green, Point[in]}, {Red, Point[out]}}]]导出区域 (4)
两个区域的 RegionIntersection:
ℛ = RegionIntersection[Disk[{0, 0}, 1], Disk[{0, 1}, 1]];RegionMember[ℛ, {x, y}]bounds = RegionBounds[ℛ]pts = RandomVariate[UniformDistribution[bounds], 10 ^ 4];col = RegionMember[ℛ, pts] /. {False -> Gray, True -> Red};
Graphics[{AbsolutePointSize[1], {col, Point /@ pts}}]混合维度区域的 RegionUnion:
ℛ = RegionUnion[Circle[{1, 0}, 1], Disk[{0, 0}, 1]];
Region[ℛ]RegionMember[ℛ, {x, y}]ℛ = TransformedRegion[Disk[{0, 0}, 1], ShearingTransform[θ, {1, 0}, {0, 1}]];RegionMember[ℛ, {x, y}]ℛ = RegionBoundary[Disk[{0, 0}, 1]];
Region[ℛ]RegionMember[ℛ, {x, y}]CSG 区域 (1)
二维空间中的 CSGRegion:
ℛ = CSGRegion["Difference", {Disk[], Disk[{1 / 2, 1 / 2}]}];
in = {-1 / 2, -1 / 2};
out = {0, 0};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[ℛ, Graphics[{PointSize[Large], {StandardGreen, Point[in]}, {StandardRed, Point[out]}}]]ℛ = CSGRegion["Difference", {Cube[2], Cylinder[{{1, 1, 1}, {1, -1, 1}}]}];
in = {0, 0, 0};
out = {1, 1, 1};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[Region[BoundaryDiscretizeRegion[ℛ], BaseStyle -> Opacity[0.2]], Graphics3D[{Opacity[1], PointSize[Large], {StandardGreen, Point[in]}, {StandardRed, Point[out]}}]]细分区域 (1)
二维空间中的 SubdivisionRegion:
ℛ = SubdivisionRegion[Rectangle[]];
in = {1 / 2, 1 / 2};
out = {1, 1};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[ℛ, Graphics[{PointSize[Large], {StandardGreen, Point[in]}, {StandardRed, Point[out]}}]]ℛ = SubdivisionRegion[Tetrahedron[]];
in = {0, 0, 0};
out = {1 / 10, 1 / 10, 1 / 10};{RegionMember[ℛ, in], RegionMember[ℛ, out]}Show[Region[BoundaryDiscretizeRegion[ℛ], BaseStyle -> Opacity[0.2]], Graphics3D[{Opacity[1], PointSize[Large], {StandardGreen, Point[in]}, {StandardRed, Point[out]}}]]应用 (6)
基本应用 (2)
将给定国家的多边形数据转换成一个 MeshRegion:
ℛ = DiscretizeGraphics[CountryData["Austria", {"FullPolygon", "Mercator"}]]city = GeoGridPosition[GeoPosition[Entity["City", {"Vienna", "Vienna", "Austria"}]], "Mercator"]["Data"]RegionMember[ℛ, city]Show[ℛ, Epilog -> {Red, Point@city}]对一个参数化的区域,RegionMember 可以给出关于决定给定点是成员的参数的条件:
ℛ = Disk[{0, 0}, {Subscript[r, x], Subscript[r, y]}];
RegionMember[ℛ, {3, 4}]FindInstance[%, {Subscript[r, x], Subscript[r, y]}]Graphics[{LightGray, ℛ /. %, Red, Point[{3, 4}]}]区域中的随机点 (2)
ℛ = ImplicitRegion[1 < x ^ 2 + y ^ 2 < 3, {x, y}];bounds = RegionBounds[ℛ];pts = RandomVariate[UniformDistribution[bounds], 10 ^ 4];mpts = Select[pts, RegionMember[ℛ]];Graphics[{AbsolutePointSize[1], Point[mpts]}]将给定国家的多边形数据转换成一个 MeshRegion:
ℛ = [image];bounds = RegionBounds[ℛ]pts = RandomVariate[UniformDistribution[bounds], 10 ^ 4];col = RegionMember[ℛ, pts] /. {False -> Gray, True -> Red};
Graphics[{AbsolutePointSize[1], {col, Point /@ pts}}]Monte Carlo 积分 (2)
ℛ = Disk[{0, 0}, 1];
Region[ℛ]bounds = RegionBounds[ℛ]pts = RandomVariate[UniformDistribution[bounds], 10 ^ 4];col = RegionMember[ℛ, pts] /. {False -> Gray, True -> Red};
Graphics[{ℛ, AbsolutePointSize[1], {col, Point /@ pts}}]inside = Count[RegionMember[ℛ, pts], True]ratio = N[(inside/Length[pts])]area = Area[Cuboid@@(bounds)]area * ratioℛ = ImplicitRegion[2 ≤ x^2 + y^2 ≤ 4, {x, y}];
pts = Select[RandomVariate[UniformDistribution[RegionBounds[ℛ]], 10 ^ 5], RegionMember[ℛ, #]&];f[x_, y_] := x^3 + y^4;
intVal = Mean[f@@@pts]RegionMeasure[ℛ]Integrate[f[x, y], {x, y}∈ℛ]%//N属性和关系 (5)
Element 可以用来检验恒定区域的区域隶属:
ℛ = Disk[{0, 0}, 2];{RegionMember[ℛ, {0, 0}], {0, 0}∈ℛ}对成员 RegionDistance 为零:
ℛ = Disk[{0, 0}, 2];{RegionMember[ℛ, {0, 0}], RegionDistance[ℛ, {0, 0}]}对成员 SignedRegionDistance 为非正:
ℛ = Disk[{0, 0}, 1];{RegionMember[ℛ, {0, 0}], SignedRegionDistance[ℛ, {0, 0}]}对非成员 SignedRegionDistance 为正:
{RegionMember[ℛ, {-2, 0}], SignedRegionDistance[ℛ, {-2, 0}]}使用 RegionNearest 找到最近的成员:
ℛ = Disk[{0, 0}, 2];{RegionMember[ℛ, RegionNearest[ℛ, {3, 3}]], RegionMember[ℛ, {3, 3}]}Graphics[{{LightBlue, ℛ}, {Green, Point[RegionNearest[ℛ, {3, 3}]]}, {Red, Point[{3, 3}]}}]使用 FindInstance 找出特殊和公式区域的多个实例:
ℛ = ImplicitRegion[x ^ 2 - 2y ^ 2 <= 1, {{x, -3, 3}, {y, -4, 4}}];Region[ℛ]pts = FindInstance[{x, y}∈ℛ, {x, y}, 100];RegionPlot[ℛ, Epilog -> {Red, Point[{x, y} /. pts]}]文本
Wolfram Research (2014),RegionMember,Wolfram 语言函数,https://reference.wolfram.com/language/ref/RegionMember.html.
CMS
Wolfram 语言. 2014. "RegionMember." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/RegionMember.html.
APA
Wolfram 语言. (2014). RegionMember. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/RegionMember.html 年
BibTeX
@misc{reference.wolfram_2026_regionmember, author="Wolfram Research", title="{RegionMember}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/RegionMember.html}", note=[Accessed: 30-October-2026]}
BibLaTeX
@online{reference.wolfram_2026_regionmember, organization={Wolfram Research}, title={RegionMember}, year={2014}, url={https://reference.wolfram.com/language/ref/RegionMember.html}, note=[Accessed: 30-October-2026]}