On-Curve tangent point: state report?



  • In some cases (can't find a way to reproduce it now), I've experienced tangent (triangle shape) on-curve points not being updated, which means I need to double-click them to get the correct position of the node.
    Is there a way, a method/function, to check for such points.

    Thanks & best,

    Mathieu



  • I've found a case, when you move a tangent on-curve point, holding Cmd so that the off-curve point doesn't move.


  • admin

    when holding cmd down on a "smooth" point, tangent points are smooth points, will not move the bcp(s) but only the anchor points across the angle of the bcp(s)

    a small script that "corrects" wrong smooth points by toggling the smooth flag of each point

    # get the current glyph
    g = CurrentGlyph()
    
    # loop over all contours
    for c in g:
        # loop over all points
        for p in c.points:
            # deselect all points
            p.selected = False
            # if the point is off-curve, don't do anything
            if p.type == "offCurve":
                continue
            # if the point is smooth
            if p.smooth:
                # set smooth to false
                p.smooth = False
                # select the point
                p.selected = True
    
    # get the naked selection object and toggle the smoothness
    g.naked().selection.toggleSmoothness()
    
    # whoehoe, done
    g.update()
    

    good luck



  • Just tested it, no need for luck with your scripts ;-)
    Thanks!