s3dlib.surface.PolarSurface

class s3dlib.surface.PolarSurface(rez=0, basetype=None, minrad=None, name=None, **kwargs)[source]

Bases: s3dlib.surface.Surface3DCollection

Flat disk 3D surface in polar coordinates.

Methods are inherited from the Surface3DCollection. Polar surface geometries are created in this subclass.

Create flat disk surface of unit radius.

Parameters:
  • rez (integer, optional, default: 0) – Number of recursive subdivisions of the triangulated base faces. Rez values range from 0 to 7.
  • basetype ({'squ','hex','squ_s','hex_s','squ_c','hex_c'}, optional, default: 'hex') – Starting surface geometries from which the surface is constructed using recursive subdivisions of the triangular faces.
  • minrad (scalar, optional, default: 0.01) – For basetypes ‘squ_c’ and ‘hex_c, the minimum distance from the z-axis of any vertex coordinate.
  • name (string, optional, default: None.) – Descriptive identifier for the geometry.
Raises:

ValueError – If rez is not an integer in range 0 to 7. If basetype is not recognized for this surface constructor.

Other Parameters:
 

**kwargs – All other parameters are passed on to ‘s3dlib.surface.Surface3DCollection’.

static coor_convert(xyz, tocart=False)[source]

Tranformation between polar and Cartesian coordinates. The angular coordinate is in radians with domain 0 to 2pi.

Parameters:
  • xyz (3xN array) – N number of vectors in either polar or cartesian coordinates.
  • tocart ({ True, False }, default: False) – If True, input is polar and output is cartesian. If False, input is cartesian and output is polar.
Returns:

list (3xN array) – Transformed coordinates.

domain(radius=None, zcoor=None)[source]

Set the domain of the polar surface.

Used for setting the limits of the base polar plane.

Parameters:radius (number, default : 1) – Radius of the polar surface. If set to None, the radius is unchanged.
zcoor: number, default : 0
Z offset of the polar plane. If set to None, the Z offset is unchanged.
Returns:self (PolarSurface object)
classmethod grid(nrad, nang, basetype='d', minrad=None, name=None, **kwargs)[source]

PolarSurface with axial and radial faces.

Parameters:
  • nrad (integer, required.) – Number of radial subdivisions. Minimum value is 1
  • nang (integer, required.) – Number of angular subdivisions. Minimum value is 3.
  • basetype ({'d','s','q','w','r','x'}, optional, default: 'd') – Starting surface geometries from which the surface is constructed indicating face shape and if split.
  • minrad (scalar, optional, default: 0.01) – The minimum distance from the z-axis of any vertex coordinate. Use is dependent on basetype.
  • name (string, optional, default: None.) – Descriptive identifier.
Raises:

ValueError – If nrad is not an integer greater or equal to 1. If nang is not an integer greater or equal to 3.

Other Parameters:
 

**kwargs – All other parameters are passed on to ‘s3dlib.surface.Surface3DCollection’.

Returns:

surface (PolarSurface object.)

classmethod pntsurf(rtz_points, name=None, **kargs)[source]

PolarSurface from points in polar coordinates.

Parameters:
  • rtz_points (array, required.) – An N X 3 array of N polar coordinate points.
  • name (string, optional, default: None.) – Descriptive identifier for the point surface.
Returns:

surface (PolarSurface object)

static rand(rez=0, seed=None, name=None, kind=None, **kargs)[source]

PolarSurface with random triangular faces.

Parameters:
  • rez (number, optional, default: 0) – Number of ‘recursive’ subdivisions of the triangulated base faces. Rez values range from 0 to 7.
  • seed (integer, optional, default: None) – An initialization seed for random generation.
  • name (string, optional, default: None.) – Descriptive identifier for the geometry.
  • kind (string, optional, default: None) – (reserved, not implemented)
Raises:

ValueError – If rez is not an integer in range 0 to 7. If basetype is not recognized for this surface constructor.

Other Parameters:
 

**kwargs – All other parameters are passed on to ‘s3dlib.surface.Surface3DCollection’.

Returns:

surface (PolarSurface object.)