nurbspy.nurbs_surface_revolution module#
- class nurbspy.nurbs_surface_revolution.NurbsSurfaceRevolution(generatrix, axis_point, axis_direction, angle_start, angle_end)[source]#
Bases:
objectCreate the NURBS surface obtained by revolving a generatrix NURBS curve C(u) about an axis
- Parameters:
- generatrixNURBS curve object
See NurbsSurface class documentation
- axis_pointndaray of with shape (3,)
Point that together with a direction defines the axis of rotation
- axis_directionndarrays with shape (3,)
Direction that together with a point defines the axis of rotation
- theta_startscalar
Start angle, measured with respect to the generatrix
- theta_endscalar
End angle, measured with respect to the generatrix
Methods
intersect_lines(P0, T0, P2, T2)Compute the point of intersection between two lines in 2D or 3D
Make a NURBS surface representation of the revolution surface
project_point_to_line(S, T, P)Compute the projection of a point P into the line given by S + u*T
References
The NURBS book. Chapter 8.5 L. Piegl and W. Tiller Springer, second edition