(self, verts, u_set, set_len=None, inc_pos=None)
return cverts
Apply this color scheme to a
        set of vertices over a single
        independent variable u.
Apply this color scheme to a
        set of vertices over a single
        independent variable u.
Apply this color scheme to a set of vertices over a single independent variable u .
def apply_to_curve(self, verts, u_set, set_len=None, inc_pos=None):
        """
        Apply this color scheme to a
        set of vertices over a single
        independent variable u.
        """
        bounds = create_bounds()
        cverts = list()
        if callable(set_len):
            set_len(len(u_set)*2)
        # calculate f() = r,g,b for each vert
        # and find the min and max for r,g,b
        for _u in xrange(len(u_set)):
            if verts[_u] is None:
                cverts.append(None)
            else:
                x, y, z = verts[_u]
                u, v = u_set[_u], None
                c = self(x, y, z, u, v)
                if c is not None:
                    c = list(c)
                    update_bounds(bounds, c)
                cverts.append(c)
            if callable(inc_pos):
                inc_pos()
        # scale and apply gradient
        for _u in xrange(len(u_set)):
            if cverts[_u] is not None:
                for _c in range(3):
                    # scale from [f_min, f_max] to [0,1]
                    cverts[_u][_c] = rinterpolate(bounds[_c][0], bounds[_c][1],
                                                  cverts[_u][_c])
                # apply gradient
                cverts[_u] = self.gradient(*cverts[_u])
            if callable(inc_pos):
                inc_pos()
        return cverts
def apply_to_curve ( self , verts , u_set , set_len = None , inc_pos = None ) : bounds = create_bounds ( ) cverts = list ( ) if callable ( set_len ) : set_len ( len ( u_set ) * 2 ) # calculate f() = r,g,b for each vert # and find the min and max for r,g,b for _u in xrange ( len ( u_set ) ) : if verts [ _u ] is None : cverts . append ( None ) else : x , y , z = verts [ _u ] u , v = u_set [ _u ] , None c = self ( x , y , z , u , v ) if c is not None : c = list ( c ) update_bounds ( bounds , c ) cverts . append ( c ) if callable ( inc_pos ) : inc_pos ( ) # scale and apply gradient for _u in xrange ( len ( u_set ) ) : if cverts [ _u ] is not None : for _c in range ( 3 ) : # scale from [f_min, f_max] to [0,1] cverts [ _u ] [ _c ] = rinterpolate ( bounds [ _c ] [ 0 ] , bounds [ _c ] [ 1 ] , cverts [ _u ] [ _c ] ) # apply gradient cverts [ _u ] = self . gradient ( * cverts [ _u ] ) if callable ( inc_pos ) : inc_pos ( ) return cverts