本文整理汇总了Python中random.seed_function函数的典型用法代码示例。如果您正苦于以下问题:Python seed_function函数的具体用法?Python seed_function怎么用?Python seed_function使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了seed_function函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: populate_polygon
def populate_polygon(polygon, number_of_points, seed=None, exclude=None):
"""Populate given polygon with uniformly distributed points, on a 2D
surface.
Input:
polygon - list of vertices of polygon
number_of_points - (optional) number of points
seed - seed for random number generator (default=None)
exclude - list of polygons (inside main polygon) from where points
should be excluded
Output:
points - list of points inside polygon
Examples:
populate_polygon( [[0,0], [1,0], [1,1], [0,1]], 5 )
will return five randomly selected points inside the unit square
"""
if seed is not None:
seed_function(seed)
points = []
# Find outer extent of polygon
max_x = min_x = polygon[0][0]
max_y = min_y = polygon[0][1]
for point in polygon[1:]:
x = point[0]
if x > max_x:
max_x = x
if x < min_x:
min_x = x
y = point[1]
if y > max_y:
max_y = y
if y < min_y:
min_y = y
while len(points) < number_of_points:
x = uniform(min_x, max_x)
y = uniform(min_y, max_y)
append = False
if is_inside_polygon([x, y], polygon):
append = True
# Check exclusions
if exclude is not None:
for ex_poly in exclude:
if is_inside_polygon([x, y], ex_poly):
append = False
if append is True:
points.append([x, y])
return points
开发者ID:dynaryu,项目名称:eqrm,代码行数:58,代码来源:polygon.py
示例2: populate_polygon
def populate_polygon(polygon, number_of_points, seed=None, exclude=None):
"""Populate given polygon with uniformly distributed points.
Input:
polygon - list of vertices of polygon
number_of_points - (optional) number of points
seed - seed for random number generator (default=None)
exclude - list of polygons (inside main polygon) from where points
should be excluded
Output:
points - list of points inside polygon
Examples:
populate_polygon( [[0,0], [1,0], [1,1], [0,1]], 5 )
will return five randomly selected points inside the unit square
"""
polygon = ensure_numeric(polygon)
# Find outer extent of polygon
minpx = min(polygon[:, 0])
maxpx = max(polygon[:, 0])
minpy = min(polygon[:, 1])
maxpy = max(polygon[:, 1])
# Generate random points until enough are in polygon
seed_function(seed)
points = []
while len(points) < number_of_points:
x = uniform(minpx, maxpx)
y = uniform(minpy, maxpy)
append = False
if is_inside_polygon([x, y], polygon):
append = True
#Check exclusions
if exclude is not None:
for ex_poly in exclude:
if is_inside_polygon([x, y], ex_poly):
append = False
if append is True:
points.append([x, y])
return points
开发者ID:meymeynard,项目名称:angularsafe,代码行数:50,代码来源:polygon.py
示例3: populate_polygon
def populate_polygon(polygon, number_of_points, seed=None, exclude=None):
"""Populate given polygon with uniformly distributed points.
Input:
polygon - list of vertices of polygon
number_of_points - (optional) number of points
seed - seed for random number generator (default=None)
exclude - list of polygons (inside main polygon) from where points
should be excluded
Output:
points - list of points inside polygon
Examples:
populate_polygon( [[0,0], [1,0], [1,1], [0,1]], 5 )
will return five randomly selected points inside the unit square
"""
from random import uniform, seed as seed_function
seed_function(seed)
points = []
# Find outer extent of polygon
extents = AABB(polygon)
while len(points) < number_of_points:
rand_x = uniform(extents.xmin, extents.xmax)
rand_y = uniform(extents.ymin, extents.ymax)
append = False
if is_inside_polygon([rand_x, rand_y], polygon):
append = True
#Check exclusions
if exclude is not None:
for ex_poly in exclude:
if is_inside_polygon([rand_x, rand_y], ex_poly):
append = False
if append is True:
points.append([rand_x, rand_y])
return points
开发者ID:MattAndersonPE,项目名称:anuga_core,代码行数:45,代码来源:polygon.py
示例4: generate_random_points_in_bbox
def generate_random_points_in_bbox(polygon, N, seed=None):
"""Generate random points in polygon bounding box
"""
# Find outer extent of polygon
minpx = min(polygon[:, 0])
maxpx = max(polygon[:, 0])
minpy = min(polygon[:, 1])
maxpy = max(polygon[:, 1])
seed_function(seed)
points = []
for _ in range(N):
x = uniform(minpx, maxpx)
y = uniform(minpy, maxpy)
points.append([x, y])
return numpy.array(points)
开发者ID:gvallarelli,项目名称:inasafe,代码行数:19,代码来源:polygon.py
注:本文中的random.seed_function函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论