add some overshoot

This commit is contained in:
be5invis 2017-01-23 03:24:04 +08:00
parent 583e8bfe5f
commit a6128aab7a
2 changed files with 18 additions and 12 deletions

View File

@ -36,11 +36,11 @@ export : define [apply] : begin
sketch # parenLeft
include : dispiro
widths.lhs
g4 [mix SB RIGHTSB designParameters.parenInside] parenTop
g4 [mix SB RIGHTSB designParameters.parenInside] [mix parenMid parenTop (1 + designParameters.parenOvershoot)]
quadcontrols 1 (1 - designParameters.parenCurliness)
g4 [mix SB RIGHTSB designParameters.parenOutside] parenMid
quadcontrols 0 designParameters.parenCurliness
g4 [mix SB RIGHTSB designParameters.parenInside] parenBot
g4 [mix SB RIGHTSB designParameters.parenInside] [mix parenMid parenBot (1 + designParameters.parenOvershoot)]
save 'parenLeft' '('
sketch # parenRight
@ -62,19 +62,21 @@ export : define [apply] : begin
sketch # braceLeft.straight
local parenCenter [mix SB RIGHTSB [mix designParameters.braceInside designParameters.braceOutside 0.5]]
local radius : [mix SB RIGHTSB designParameters.braceInside] - parenCenter
local top : mix parenMid parenTop (1 + designParameters.braceOvershoot)
local bot : mix parenMid parenBot (1 + designParameters.braceOvershoot)
include : dispiro
straight.left.start [mix SB RIGHTSB designParameters.braceInside] (parenTop - HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
straight.left.start [mix SB RIGHTSB designParameters.braceInside] (top - HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
archv
flat parenCenter (parenTop - radius) [heading DOWNWARD]
flat parenCenter (top - radius) [heading DOWNWARD]
curl parenCenter (parenMid + radius) [heading DOWNWARD]
arcvh
straight.left.end [mix SB RIGHTSB designParameters.braceOutside] parenMid [heading LEFTWARD]
include : dispiro
straight.left.start [mix SB RIGHTSB designParameters.braceInside] (parenBot + HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
straight.left.start [mix SB RIGHTSB designParameters.braceInside] (bot + HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
archv
flat parenCenter (parenBot + radius) [heading UPWARD]
flat parenCenter (bot + radius) [heading UPWARD]
curl parenCenter (parenMid - radius) [heading UPWARD]
arcvh
straight.left.end [mix SB RIGHTSB designParameters.braceOutside] parenMid [heading LEFTWARD]
@ -89,19 +91,21 @@ export : define [apply] : begin
local radius1 : Math.min (xIns - m1) braceRadiusLowLimit
local radius2 : [Math.min (m2 - xOus) braceRadiusLowLimit] - HALFSTROKE
local ess : mix STROKE ESS 0.25
local top : mix parenMid parenTop (1 + designParameters.braceOvershoot)
local bot : mix parenMid parenBot (1 + designParameters.braceOvershoot)
include : dispiro
straight.left.start xIns (parenTop - HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
straight.left.start xIns (top - HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
archv
g4.down.mid m1 (parenTop - radius1) [heading DOWNWARD]
g4.down.mid m1 (top - radius1) [heading DOWNWARD]
alsothru 0.5 0.5 [widths (ess / 2) (ess / 2)]
g4.down.mid m2 (parenMid + radius2) [widths.heading HALFSTROKE HALFSTROKE DOWNWARD]
arcvh
straight.left.end xOus parenMid [heading LEFTWARD]
include : dispiro
straight.left.start xIns (parenBot + HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
straight.left.start xIns (bot + HALFSTROKE) [widths.heading HALFSTROKE HALFSTROKE LEFTWARD]
archv
g4.up.mid m1 (parenBot + radius1) [heading UPWARD]
g4.up.mid m1 (bot + radius1) [heading UPWARD]
alsothru 0.5 0.5 [widths (ess / 2) (ess / 2)]
g4.up.mid m2 (parenMid - radius2) [widths.heading HALFSTROKE HALFSTROKE UPWARD]
arcvh

View File

@ -184,9 +184,10 @@ export : define designParameters : object
geometric_small_x (3 / 5)
arrow_size (3 / 8)
# ()
parenOutside 0.1
parenOutside 0.15
parenInside 0.9
parenCurliness 0.72
parenOvershoot 0.0375
# []
bracketOutside 0.05
bracketInside (1)
@ -194,4 +195,5 @@ export : define designParameters : object
braceOutside 0
braceInside 1
braceCurlyM1 0.6
braceCurlyM2 0.45
braceCurlyM2 0.45
braceOvershoot 0.02