(t, curve, **kwargs)
return curve_ctrlpts
Finds the control points involved in the evaluation of the curve point defined by the input parameter.

    This function uses a modified version of the algorithm *A3.1 CurvePoint* from The NURBS Book by Piegl & Tiller.

    :param t: parameter
    :type t: float
    :param curve: input curve object
    :type curve: abstract.Curve
    :return: 1-dimensional control points array
    :rtype: list
Finds the control points involved in the evaluation of the curve point defined by the input parameter.
Finds the control points involved in the evaluation of the curve point defined by the input parameter .
def find_ctrlpts_curve(t, curve, **kwargs):
    """ Finds the control points involved in the evaluation of the curve point defined by the input parameter.

    This function uses a modified version of the algorithm *A3.1 CurvePoint* from The NURBS Book by Piegl & Tiller.

    :param t: parameter
    :type t: float
    :param curve: input curve object
    :type curve: abstract.Curve
    :return: 1-dimensional control points array
    :rtype: list
    """
    # Get keyword arguments
    span_func = kwargs.get('find_span_func', helpers.find_span_linear)

    # Find spans and the constant index
    span = span_func(curve.degree, curve.knotvector, len(curve.ctrlpts), t)
    idx = span - curve.degree

    # Find control points involved in evaluation of the curve point at the input parameter
    curve_ctrlpts = [() for _ in range(curve.degree + 1)]
    for i in range(0, curve.degree + 1):
        curve_ctrlpts[i] = curve.ctrlpts[idx + i]

    # Return control points array
    return curve_ctrlpts
def find_ctrlpts_curve ( t , curve , * * kwargs ) : # Get keyword arguments span_func = kwargs . get ( 'find_span_func' , helpers . find_span_linear ) # Find spans and the constant index span = span_func ( curve . degree , curve . knotvector , len ( curve . ctrlpts ) , t ) idx = span - curve . degree # Find control points involved in evaluation of the curve point at the input parameter curve_ctrlpts = [ ( ) for _ in range ( curve . degree + 1 ) ] for i in range ( 0 , curve . degree + 1 ) : curve_ctrlpts [ i ] = curve . ctrlpts [ idx + i ] # Return control points array return curve_ctrlpts