Refactor code used to build arches and bowls (#2336)
* Refactor code used to build arches and bowls * Bump to a minor version update
This commit is contained in:
parent
82aee0a5b6
commit
503a1c8448
71 changed files with 512 additions and 719 deletions
|
@ -10,7 +10,7 @@ glyph-block Letter-Latin-Upper-B : begin
|
|||
glyph-block-import Common-Derivatives
|
||||
glyph-block-import Mark-Adjustment : LeaningAnchor
|
||||
glyph-block-import Letter-Shared-Metrics : BowlXDepth
|
||||
glyph-block-import Letter-Shared-Shapes : ShoulderMidKnotRhs LetterBarOverlay SerifFrame LeftHook
|
||||
glyph-block-import Letter-Shared-Shapes : LetterBarOverlay SerifFrame LeftHook
|
||||
glyph-block-import Letter-Blackboard : BBS BBD
|
||||
|
||||
define BArcMix 0.93
|
||||
|
@ -33,21 +33,21 @@ glyph-block Letter-Latin-Upper-B : begin
|
|||
include : sink
|
||||
widths.rhs stroke
|
||||
flat (barleft - O) (top - offset) [heading Rightward]
|
||||
curl (curvleftTop - CorrectionOMidX * stroke) (top - offset)
|
||||
curl [arch.adjust-x.top curvleftTop (sw -- stroke)] (top - offset)
|
||||
archv
|
||||
g4 (xTopArcRight - offset) [YSmoothMidR top (bowl - stroke) adaTop adbTop]
|
||||
arcvh
|
||||
flat (curvleftTop + CorrectionOMidX * stroke) (bowl - fine + offset) [widths.rhs fine]
|
||||
flat [arch.adjust-x.bot curvleftTop (sw -- stroke)] (bowl - fine + offset) [widths.rhs fine]
|
||||
curl (barleft - O) (bowl - fine + offset) [heading Leftward]
|
||||
|
||||
include : sink
|
||||
widths.rhs fine
|
||||
flat (barleft - O) (bowl - stroke + fine - offset) [heading Rightward]
|
||||
curl (curvleft - CorrectionOMidX * stroke) (bowl - stroke + fine - offset)
|
||||
curl [arch.adjust-x.top curvleft (sw -- stroke)] (bowl - stroke + fine - offset)
|
||||
archv
|
||||
g4 (RightSB - OX * 2 - offset) [YSmoothMidR bowl 0 ada adb] [widths.rhs stroke]
|
||||
arcvh
|
||||
flat (curvleft + CorrectionOMidX * stroke) offset
|
||||
flat [arch.adjust-x.bot curvleft (sw -- stroke)] offset
|
||||
curl (barleft - O) offset [heading Leftward]
|
||||
|
||||
return : object bowl
|
||||
|
@ -217,14 +217,10 @@ glyph-block Letter-Latin-Upper-B : begin
|
|||
curl Middle (midy - (fine - stroke / 2)) [heading Rightward]
|
||||
archv
|
||||
g4 (RightSB - (OX - O)) (top - adb) [widths.lhs stroke]
|
||||
arcvh
|
||||
g4 (Middle + stroke * 0.06 - CorrectionOMidS) (top - O)
|
||||
archv
|
||||
arch.lhs top
|
||||
flat (SB + O) (top - SmallArchDepthA)
|
||||
curl (SB + O) SmallArchDepthB
|
||||
arcvh
|
||||
g4 (Middle + stroke * 0.06 + CorrectionOMidS) O
|
||||
archv
|
||||
arch.lhs 0
|
||||
g4 (RightSB - (OX - O) - O * 2) (ada)
|
||||
arcvh
|
||||
flat Middle (midy + (fine - stroke / 2)) [widths.heading fine 0 Leftward]
|
||||
|
@ -246,17 +242,15 @@ glyph-block Letter-Latin-Upper-B : begin
|
|||
define pBar 0.55
|
||||
define fine : Stroke * CThin
|
||||
define yMiddle : [mix 0 Ascender pBar] - Stroke * 0.7 # Bottom edge
|
||||
define ada : ArchDepthAOf (ArchDepth * 0.75) Width
|
||||
define adb : ArchDepthBOf (ArchDepth * 0.75) Width
|
||||
define ada : ArchDepthAOf (ArchDepth * 0.75) (0.5 * Width)
|
||||
define adb : ArchDepthBOf (ArchDepth * 0.75) (0.5 * Width)
|
||||
define xMidLeft : mix (SB + [HSwToV Stroke]) (RightSB - [HSwToV Stroke]) 0.3
|
||||
define xMidArc : Math.max [mix xMidLeft RightSB 0.1] [mix SB RightSB 0.5]
|
||||
include : dispiro
|
||||
widths.rhs
|
||||
flat SB Descender [heading Upward]
|
||||
curl SB (Ascender - SmallArchDepthA)
|
||||
arcvh
|
||||
g4 ([mix SB (RightSB - OX + O * 3) 0.5] - CorrectionOMidS) (Ascender - O)
|
||||
archv
|
||||
arch.rhs Ascender
|
||||
g4 (RightSB - OX + O * 3) [YSmoothMidR yMiddle Ascender ada adb]
|
||||
arcvh
|
||||
flat xMidArc (yMiddle + Stroke - fine) [widths.rhs.heading fine Leftward]
|
||||
|
@ -267,12 +261,8 @@ glyph-block Letter-Latin-Upper-B : begin
|
|||
curl xMidArc (yMiddle + fine) [heading Rightward]
|
||||
archv
|
||||
g4 (RightSB - OX) [YSmoothMidR 0 (yMiddle + Stroke) ada adb] [widths.rhs]
|
||||
arcvh
|
||||
ShoulderMidKnotRhs Middle O ShoulderFine Stroke (-1) 1
|
||||
archv
|
||||
arch.rhs 0 (swAfter -- ShoulderFine)
|
||||
g4.up.end (SB + HVContrast * (Stroke - ShoulderFine)) adb [widths.rhs ShoulderFine]
|
||||
# flat (RightSB - ymiddle / 2 - HalfStroke) 0
|
||||
# curl (SB + HalfStroke) 0 [heading Leftward]
|
||||
|
||||
derive-composites 'latn/beta' 0xA7B5 'grek/beta'
|
||||
if SLAB [SerifFrame.fromDf [DivFrame 1] XH Descender].lb.fullSide [no-shape]
|
||||
|
@ -291,28 +281,16 @@ glyph-block Letter-Latin-Upper-B : begin
|
|||
|
||||
include : dispiro
|
||||
g4 (cx + rx - OX) [YSmoothMidR.cr cyt ry] [widths.lhs fine]
|
||||
arcvh
|
||||
g4 (cx - CorrectionOMidX * fine) (cyt + ry - O)
|
||||
archv
|
||||
arch.lhs (cyt + ry) (sw -- fine)
|
||||
g4 (cx - rx + OX) [YSmoothMidL.cr cyt ry]
|
||||
arcvh
|
||||
g4 (cx + CorrectionOMidX * fine) (cyt - ry + O)
|
||||
archv
|
||||
arch.lhs (cyt - ry) (sw -- fine)
|
||||
g4 (cx + rx - OX) [YSmoothMidR.cr cyt ry]
|
||||
arcvh
|
||||
g4 (Middle - CorrectionOMidS) (XH - O) [widths.lhs]
|
||||
archv
|
||||
arch.lhs XH (swBefore -- fine)
|
||||
flat SB (XH - SmallArchDepthA)
|
||||
curl SB (0 + SmallArchDepthB)
|
||||
arcvh
|
||||
g4 (Middle + CorrectionOMidS) O
|
||||
archv
|
||||
arch.lhs 0 (swAfter -- fine)
|
||||
g4 (cx + rx - OX) [YSmoothMidR.cr cyb ry] [widths.lhs fine]
|
||||
arcvh
|
||||
g4 (cx - CorrectionOMidX * fine) (cyb + ry - O)
|
||||
archv
|
||||
arch.lhs (cyb + ry) (sw -- fine)
|
||||
g4 (cx - rx + OX) [YSmoothMidL.cr cyb ry]
|
||||
arcvh
|
||||
g4 (cx + CorrectionOMidX * fine) (cyb - ry + O)
|
||||
archv
|
||||
arch.lhs (cyb - ry) (sw -- fine)
|
||||
g4 (cx + rx - OX) [YSmoothMidR.cr cyb ry]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue