blenderproc.python.sampler.Shell module
Samples a point from the volume between two spheres
- blenderproc.python.sampler.Shell.shell(center, radius_min, radius_max, elevation_min=-90, elevation_max=90, azimuth_min=-180, azimuth_max=180, uniform_volume=False)[source]
Samples a point from the volume between two spheres (radius_min, radius_max). Optionally the spheres can be constraint by setting elevation and azimuth angles. E.g. if you only want to sample in the upper hemisphere set elevation_min = 0.
- Parameters:
center (
Union
[Vector
,ndarray
,List
[float
]]) – Center shared by both spheres.radius_min (
float
) – Radius of the smaller sphere.radius_max (
float
) – Radius of the bigger sphere.elevation_min (
float
) – Minimum angle of elevation in degrees. Range: [-90, 90].elevation_max (
float
) – Maximum angle of elevation in degrees. Range: [-90, 90].azimuth_min (
float
) – Minimum angle of azimuth in degrees. Range: [-180, 180].azimuth_max (
float
) – Maximum angle of azimuth in degrees. Range: [-180, 180].uniform_volume (
bool
) – Instead of sampling the angles and radius uniformly, sample the shell volume uniformly. As a result, there will be more samples at larger radii.
- Return type:
ndarray
- Returns:
A sampled point.