@@ -64,19 +64,25 @@ glyph-block Letter-Latin-O : begin
64
64
create-glyph 'cyrl/BroadOn' 0x47A : glyph-proc
65
65
define df : include : DivFrame [mix 1 para.diversityM 0.5] 3
66
66
include : df.markSet.capital
67
- local gap : Math.max (0.25 * (df.rightSB - df.leftSB)) : HSwToV (rBroadOn * Math.SQRT2)
68
- local ada : ArchDepthA * df.div
69
- local adb : ArchDepthB * df.div
67
+ local dist : df.rightSB - df.leftSB
68
+ local gap : Math.min
69
+ Math.max (0.25 * dist) [HSwToV : Math.SQRT2 * rBroadOn]
70
+ Math.max (dist - [HSwToV : 3 * df.mvs]) [HSwToV df.mvs]
71
+ local ada : df.archDepthA ArchDepth df.mvs
72
+ local adb : df.archDepthB ArchDepth df.mvs
70
73
include : OShapeFlatTB CAP 0 df.leftSB df.rightSB df.mvs ada adb gap
71
74
include : DotAt df.middle (df.mvs / 2 + O) rBroadOn
72
75
include : DotAt df.middle (CAP - df.mvs / 2 - O) rBroadOn
73
76
74
77
create-glyph 'cyrl/broadOn' 0x47B : glyph-proc
75
78
define df : include : DivFrame [mix 1 para.diversityM 0.5] 3
76
79
include : df.markSet.e
77
- local gap : Math.max (0.25 * (df.rightSB - df.leftSB)) : HSwToV (rBroadOn * Math.SQRT2)
78
- local ada : ArchDepthA * df.div
79
- local adb : ArchDepthB * df.div
80
+ local dist : df.rightSB - df.leftSB
81
+ local gap : Math.min
82
+ Math.max (0.25 * dist) [HSwToV : Math.SQRT2 * rBroadOn]
83
+ Math.max (dist - [HSwToV : 3 * df.mvs]) [HSwToV df.mvs]
84
+ local ada : df.archDepthA SmallArchDepth df.mvs
85
+ local adb : df.archDepthB SmallArchDepth df.mvs
80
86
include : OShapeFlatTB XH 0 df.leftSB df.rightSB df.mvs ada adb gap
81
87
include : DotAt df.middle (df.mvs / 2 + O) rBroadOn
82
88
include : DotAt df.middle (XH - df.mvs / 2 - O) rBroadOn
@@ -183,15 +189,15 @@ glyph-block Letter-Latin-O : begin
183
189
local ada : ArchDepthA * df.div
184
190
local adb : ArchDepthB * df.div
185
191
local innerDist : dist - [HSwToV : 5 * df.mvs]
186
- local arcXL1 : df.leftSB + innerDist * (1 / 4) + [HSwToV : 1 * df.mvs]
187
- local arcXR1 : df.leftSB + innerDist * (3 / 4) + [HSwToV : 4 * df.mvs]
192
+ local arcXL : df.leftSB + innerDist * (1 / 4) + [HSwToV : 1 * df.mvs]
193
+ local arcXR : df.leftSB + innerDist * (3 / 4) + [HSwToV : 4 * df.mvs]
188
194
local heightGap : Math.min (df.mvs + (CAP - df.mvs * 4) / 5) (innerDist / 4 + df.mvs)
189
195
local heightInner : CAP - 2 * heightGap
190
196
local smInner : clamp (df.mvs * 1.5) (0.499 * heightInner) (ArchDepth * heightInner / CAP)
191
- local adaInner : [ArchDepthAOf smInner : arcXR1 - arcXL1 + df.leftSB * 2] * df.div
192
- local adbInner : [ArchDepthBOf smInner : arcXR1 - arcXL1 + df.leftSB * 2] * df.div
197
+ local adaInner : [ArchDepthAOf smInner : arcXR - arcXL + df.leftSB * 2] * df.div
198
+ local adbInner : [ArchDepthBOf smInner : arcXR - arcXL + df.leftSB * 2] * df.div
193
199
include : OShapeFlatTB CAP 0 df.leftSB df.rightSB df.mvs ada adb gap
194
- include : OShapeFlatTB (CAP - heightGap) (0 + heightGap) arcXL1 arcXR1 df.mvs adaInner adbInner gapInner
200
+ include : OShapeFlatTB (CAP - heightGap) (0 + heightGap) arcXL arcXR df.mvs adaInner adbInner gapInner
195
201
include : VBar.m df.middle (df.mvs / 2) (CAP - df.mvs / 2) df.mvs
196
202
197
203
create-glyph 'romanHundredThousand' 0x2188 : glyph-proc
0 commit comments