Some more technical symbols (#2338)
* hourglass * bell * extra clock stuff * doc
This commit is contained in:
parent
d6a49822d3
commit
553da2df08
8 changed files with 248 additions and 23 deletions
|
@ -1,5 +1,8 @@
|
||||||
* Reduce fully-serifed variants of turned m (`U+019C`, `U+026F`, `U+0270`) and Cyrillic Italic Lower {Sha|Scha} (`U+0448`, `U+0449`) under monospace.
|
* Reduce fully-serifed variants of turned m (`U+019C`, `U+026F`, `U+0270`) and Cyrillic Italic Lower {Sha|Scha} (`U+0448`, `U+0449`) under monospace.
|
||||||
* Add characters:
|
* Add characters:
|
||||||
|
- WATCH (`U+231A`).
|
||||||
|
- HOURGLASS (`U+231B`).
|
||||||
|
- ALARM CLOCK (`U+23F0`) ... HOURGLASS WITH FLOWING SAND (`U+23F3`).
|
||||||
- SQUAT BLACK RIGHTWARDS ARROW (`U+27A7`).
|
- SQUAT BLACK RIGHTWARDS ARROW (`U+27A7`).
|
||||||
- CYRILLIC CAPITAL LETTER CCHE (`U+A686`).
|
- CYRILLIC CAPITAL LETTER CCHE (`U+A686`).
|
||||||
- CYRILLIC SMALL LETTER CCHE (`U+A687`).
|
- CYRILLIC SMALL LETTER CCHE (`U+A687`).
|
||||||
|
@ -9,5 +12,7 @@
|
||||||
- LATIN SMALL LETTER U BAR WITH SHORT RIGHT LEG (`U+AB4F`).
|
- LATIN SMALL LETTER U BAR WITH SHORT RIGHT LEG (`U+AB4F`).
|
||||||
- LATIN SMALL LETTER DEZH DIGRAPH WITH PALATAL HOOK (`U+1DF12`).
|
- LATIN SMALL LETTER DEZH DIGRAPH WITH PALATAL HOOK (`U+1DF12`).
|
||||||
- LATIN SMALL LETTER TESH DIGRAPH WITH PALATAL HOOK (`U+1DF17`).
|
- LATIN SMALL LETTER TESH DIGRAPH WITH PALATAL HOOK (`U+1DF17`).
|
||||||
|
- WINE GLASS (`U+1F377`).
|
||||||
|
- BELL (`U+1F514`).
|
||||||
- LEFTWARDS ARROW WITH SMALL TRIANGLE ARROWHEAD (`U+1F800`) ... DOWNWARDS ARROW WITH LARGE TRIANGLE ARROWHEAD (`U+1F80B`).
|
- LEFTWARDS ARROW WITH SMALL TRIANGLE ARROWHEAD (`U+1F800`) ... DOWNWARDS ARROW WITH LARGE TRIANGLE ARROWHEAD (`U+1F80B`).
|
||||||
- LEFTWARDS ARROW WITH SMALL EQUILATERAL ARROWHEAD (`U+1F810`) ... DOWNWARDS HEAVY ARROW (`U+1F847`).
|
- LEFTWARDS ARROW WITH SMALL EQUILATERAL ARROWHEAD (`U+1F810`) ... DOWNWARDS HEAVY ARROW (`U+1F847`).
|
||||||
|
|
|
@ -359,8 +359,8 @@ glyph-block CommonShapes : begin
|
||||||
widths.center sw
|
widths.center sw
|
||||||
flat x ydown [heading : if (ydown < yup) Upward Downward]
|
flat x ydown [heading : if (ydown < yup) Upward Downward]
|
||||||
curl x yup [heading : if (ydown < yup) Upward Downward]
|
curl x yup [heading : if (ydown < yup) Upward Downward]
|
||||||
export : define [l x yd yu _sw] : m (x + [fallback _sw Stroke] * 0.5 * HVContrast) yd yu _sw
|
export : define [l x yd yu _sw] : m (x + [HSwToV : [fallback _sw Stroke] * 0.5]) yd yu _sw
|
||||||
export : define [r x yd yu _sw] : m (x - [fallback _sw Stroke] * 0.5 * HVContrast) yd yu _sw
|
export : define [r x yd yu _sw] : m (x - [HSwToV : [fallback _sw Stroke] * 0.5]) yd yu _sw
|
||||||
|
|
||||||
glyph-block-export HOverlayBar
|
glyph-block-export HOverlayBar
|
||||||
define [HOverlayBar xleft xright y s] : dispiro
|
define [HOverlayBar xleft xright y s] : dispiro
|
||||||
|
|
|
@ -44,9 +44,9 @@ glyph-block Letter-Latin-Lower-R : begin
|
||||||
local rSerifRightJut : rSerifLeftJut * 1.20
|
local rSerifRightJut : rSerifLeftJut * 1.20
|
||||||
export : local [rBottomSerif y] : glyph-proc
|
export : local [rBottomSerif y] : glyph-proc
|
||||||
include : tagged 'serifLB' : union
|
include : tagged 'serifLB' : union
|
||||||
HSerif.lb rSerifX y (rSerifLeftJut + [HSwToV: 0.5 * strokeBar])
|
HSerif.lb rSerifX y (rSerifLeftJut + [HSwToV : 0.5 * strokeBar])
|
||||||
HSerif.rb rSerifX y (rSerifRightJut + [HSwToV: 0.5 * strokeBar])
|
HSerif.rb rSerifX y (rSerifRightJut + [HSwToV : 0.5 * strokeBar])
|
||||||
local xAtt : rSerifX + rSerifRightJut + [HSwToV: 0.5 * strokeBar]
|
local xAtt : rSerifX + rSerifRightJut + [HSwToV : 0.5 * strokeBar]
|
||||||
set-base-anchor 'palatalHookAttach' xAtt y
|
set-base-anchor 'palatalHookAttach' xAtt y
|
||||||
set-base-anchor 'palatalHookPos' xAtt y
|
set-base-anchor 'palatalHookPos' xAtt y
|
||||||
|
|
||||||
|
|
|
@ -195,7 +195,7 @@ glyph-block Symbol-Math-Arith : begin
|
||||||
intersection
|
intersection
|
||||||
CoMultiplyMask HourglassStretch 1 1
|
CoMultiplyMask HourglassStretch 1 1
|
||||||
union
|
union
|
||||||
HBar.t (Middle - Size) (Middle + Size) (SymbolMid + HourglassStretch * Size) swBowtieHv
|
HBar.t (Middle - Size) (Middle + Size) (SymbolMid + HourglassStretch * Size) swBowtieHv
|
||||||
HBar.b (Middle - Size) (Middle + Size) (SymbolMid - HourglassStretch * Size) swBowtieHv
|
HBar.b (Middle - Size) (Middle + Size) (SymbolMid - HourglassStretch * Size) swBowtieHv
|
||||||
intersection
|
intersection
|
||||||
Rect (SymbolMid + HourglassStretch * Size) (SymbolMid - HourglassStretch * Size) (-Width) (2 * Width)
|
Rect (SymbolMid + HourglassStretch * Size) (SymbolMid - HourglassStretch * Size) (-Width) (2 * Width)
|
||||||
|
|
|
@ -5,6 +5,7 @@ export : define [apply] : begin
|
||||||
|
|
||||||
run-glyph-module "./pictograph/astronomy.mjs"
|
run-glyph-module "./pictograph/astronomy.mjs"
|
||||||
run-glyph-module "./pictograph/atom.mjs"
|
run-glyph-module "./pictograph/atom.mjs"
|
||||||
|
run-glyph-module "./pictograph/bell.mjs"
|
||||||
run-glyph-module "./pictograph/bolt-symbol.mjs"
|
run-glyph-module "./pictograph/bolt-symbol.mjs"
|
||||||
run-glyph-module "./pictograph/checking-marks.mjs"
|
run-glyph-module "./pictograph/checking-marks.mjs"
|
||||||
run-glyph-module "./pictograph/clock.mjs"
|
run-glyph-module "./pictograph/clock.mjs"
|
||||||
|
@ -13,6 +14,7 @@ export : define [apply] : begin
|
||||||
run-glyph-module "./pictograph/flags.mjs"
|
run-glyph-module "./pictograph/flags.mjs"
|
||||||
run-glyph-module "./pictograph/game-sprite.mjs"
|
run-glyph-module "./pictograph/game-sprite.mjs"
|
||||||
run-glyph-module "./pictograph/heart.mjs"
|
run-glyph-module "./pictograph/heart.mjs"
|
||||||
|
run-glyph-module "./pictograph/hourglass.mjs"
|
||||||
run-glyph-module "./pictograph/i-ching.mjs"
|
run-glyph-module "./pictograph/i-ching.mjs"
|
||||||
run-glyph-module "./pictograph/iec-power-and-playback.mjs"
|
run-glyph-module "./pictograph/iec-power-and-playback.mjs"
|
||||||
run-glyph-module "./pictograph/keyboard.mjs"
|
run-glyph-module "./pictograph/keyboard.mjs"
|
||||||
|
|
44
packages/font-glyphs/src/symbol/pictograph/bell.ptl
Normal file
44
packages/font-glyphs/src/symbol/pictograph/bell.ptl
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
$$include '../../meta/macros.ptl'
|
||||||
|
|
||||||
|
import [mix linreg clamp fallback] from "@iosevka/util"
|
||||||
|
import [Box] from "@iosevka/geometry/box"
|
||||||
|
|
||||||
|
glyph-module
|
||||||
|
|
||||||
|
glyph-block Symbol-Pictograph-Bell : begin
|
||||||
|
glyph-block-import CommonShapes
|
||||||
|
glyph-block-import Common-Derivatives
|
||||||
|
glyph-block-import Symbol-Geometric-Shared : GeometricDim
|
||||||
|
|
||||||
|
for-width-kinds WideWidth1 : begin
|
||||||
|
define Geom : GeometricDim MosaicUnitWidth MosaicWidth
|
||||||
|
|
||||||
|
define clapperRad : Geom.Size * 0.2
|
||||||
|
|
||||||
|
define top : mix PictBot PictTop (0.7 + 0.1 * MosaicWidthScalar)
|
||||||
|
define bot : mix PictBot PictTop (0.3 - 0.1 * MosaicWidthScalar)
|
||||||
|
define bellTop : mix bot top 0.9
|
||||||
|
define bellBot : mix bot top 0.2
|
||||||
|
define px1 0.2
|
||||||
|
define py1 : 1 / 3
|
||||||
|
define py2 : 2 / 3
|
||||||
|
|
||||||
|
create-glyph [MangleName 'bell'] [MangleUnicode 0x1F514] : glyph-proc
|
||||||
|
set-width Geom.Width
|
||||||
|
|
||||||
|
include : spiro-outline
|
||||||
|
straight.right.start Geom.Left bellBot
|
||||||
|
archv
|
||||||
|
flat [mix Geom.Left Geom.Right px1] [mix bellBot bellTop py1]
|
||||||
|
curl [mix Geom.Left Geom.Right px1] [mix bellBot bellTop py2]
|
||||||
|
arcvh
|
||||||
|
g4 Geom.MidX bellTop
|
||||||
|
archv
|
||||||
|
flat [mix Geom.Right Geom.Left px1] [mix bellBot bellTop py2]
|
||||||
|
curl [mix Geom.Right Geom.Left px1] [mix bellBot bellTop py1]
|
||||||
|
arcvh
|
||||||
|
straight.right.end Geom.Right bellBot
|
||||||
|
|
||||||
|
include : HBar.t Geom.Left Geom.Right bellBot GeometryStroke
|
||||||
|
include : DotAt Geom.MidX (bot + clapperRad) clapperRad
|
||||||
|
include : VBar.m Geom.MidX bellBot top GeometryStroke
|
|
@ -14,29 +14,99 @@ glyph-block Symbol-Geometric-Clock : for-width-kinds WideWidth1
|
||||||
|
|
||||||
define pHour 0.6
|
define pHour 0.6
|
||||||
define pMin 0.8
|
define pMin 0.8
|
||||||
|
define pSec 0.9
|
||||||
|
|
||||||
|
define extLightSw : UnicodeWeightGrade 2 Geom.Scalar
|
||||||
define lightSw : UnicodeWeightGrade 3 Geom.Scalar
|
define lightSw : UnicodeWeightGrade 3 Geom.Scalar
|
||||||
define mediumSw : UnicodeWeightGrade 5 Geom.Scalar
|
define mediumSw : UnicodeWeightGrade 5 Geom.Scalar
|
||||||
|
|
||||||
|
define dotSize : Math.max (0.6 * mediumSw) (0.1 * Geom.Size)
|
||||||
|
|
||||||
define [patterns min su] : foreach [hr: range 0 12] : begin
|
define [ClockRing] : glyph-proc
|
||||||
local name : 'clock' + [(hr + 1).toString 10 :.padStart 2 '0'] + [min.toString 10 :.padStart 2 '0']
|
include : RingStrokeAt Geom.MidX Geom.MidY Geom.Size mediumSw
|
||||||
create-glyph [MangleName name] [MangleUnicode (su + hr)] : glyph-proc
|
include : Circle.Outline.At Geom.MidX Geom.MidY dotSize
|
||||||
|
|
||||||
|
define [ClockHand angle pLen sw _swTip] : glyph-proc
|
||||||
|
local swTip : fallback _swTip sw
|
||||||
|
|
||||||
|
include : dispiro
|
||||||
|
corner Geom.MidX Geom.MidY [widths.center sw]
|
||||||
|
corner
|
||||||
|
Geom.MidX + (Geom.Size - mediumSw) * pLen * [Math.sin angle]
|
||||||
|
Geom.MidY + (Geom.Size - mediumSw) * pLen * [Math.cos angle]
|
||||||
|
widths.center swTip
|
||||||
|
|
||||||
|
define [ClockShape hr min] : glyph-proc
|
||||||
|
local minAngle : 2 * Math.PI * (min / 60)
|
||||||
|
local hrAngle : 2 * Math.PI * ((min / 60 + hr) / 12)
|
||||||
|
|
||||||
|
include : ClockRing
|
||||||
|
|
||||||
|
include : ClockHand hrAngle pHour mediumSw
|
||||||
|
include : ClockHand minAngle pMin lightSw
|
||||||
|
|
||||||
|
define [patterns min su] : foreach [hr : range 1 till 12] : begin
|
||||||
|
local name : 'clock' + [hr.toString 10 :.padStart 2 '0'] + [min.toString 10 :.padStart 2 '0']
|
||||||
|
create-glyph [MangleName name] [MangleUnicode (su + hr - 1)] : glyph-proc
|
||||||
set-width MosaicWidth
|
set-width MosaicWidth
|
||||||
|
|
||||||
include : RingStrokeAt Geom.MidX Geom.MidY Geom.Size mediumSw
|
include : ClockShape hr min
|
||||||
include : Circle.Outline.At Geom.MidX Geom.MidY [Math.max (0.6 * mediumSw) (0.1 * Geom.Size)]
|
|
||||||
local minAngle : 2 * Math.PI * (min / 60)
|
|
||||||
include : dispiro
|
|
||||||
corner Geom.MidX Geom.MidY [widths.center lightSw]
|
|
||||||
corner
|
|
||||||
Geom.MidX + (Geom.Size - mediumSw) * pMin * [Math.sin minAngle]
|
|
||||||
Geom.MidY + (Geom.Size - mediumSw) * pMin * [Math.cos minAngle]
|
|
||||||
local hrAngle : 2 * Math.PI * ((min / 60 + hr + 1) / 12)
|
|
||||||
include : dispiro
|
|
||||||
corner Geom.MidX Geom.MidY [widths.center mediumSw]
|
|
||||||
corner
|
|
||||||
Geom.MidX + (Geom.Size - mediumSw) * pHour * [Math.sin hrAngle]
|
|
||||||
Geom.MidY + (Geom.Size - mediumSw) * pHour * [Math.cos hrAngle]
|
|
||||||
|
|
||||||
patterns 0 0x1F550
|
patterns 0 0x1F550
|
||||||
patterns 30 0x1F55C
|
patterns 30 0x1F55C
|
||||||
|
|
||||||
|
create-glyph [MangleName 'watch'] [MangleUnicode 0x231A] : glyph-proc
|
||||||
|
set-width MosaicWidth
|
||||||
|
|
||||||
|
include : ClockShape 10 10
|
||||||
|
include : difference
|
||||||
|
Rect PictTop PictBot (Geom.MidX - Geom.Size / 2) (Geom.MidX + Geom.Size / 2)
|
||||||
|
RingAt Geom.MidX Geom.MidY (Geom.Size - 1)
|
||||||
|
|
||||||
|
create-glyph [MangleName 'alarm'] [MangleUnicode 0x23F0] : glyph-proc
|
||||||
|
set-width MosaicWidth
|
||||||
|
|
||||||
|
include : ClockShape 7 0
|
||||||
|
include : difference
|
||||||
|
union
|
||||||
|
dispiro
|
||||||
|
corner (Geom.MidX - Geom.Size * 0.6) Geom.Bot [widths.center.heading lightSw Upward]
|
||||||
|
corner (Geom.MidX - Geom.Size * 0.3) Geom.MidY
|
||||||
|
dispiro
|
||||||
|
corner (Geom.MidX + Geom.Size * 0.6) Geom.Bot [widths.center.heading lightSw Upward]
|
||||||
|
corner (Geom.MidX + Geom.Size * 0.3) Geom.MidY
|
||||||
|
dispiro
|
||||||
|
corner Geom.MidX Geom.MidY [widths.center lightSw]
|
||||||
|
corner Geom.MidX (Geom.MidY + Geom.Size * 1.15)
|
||||||
|
RingAt Geom.MidX Geom.MidY (Geom.Size - 1)
|
||||||
|
include : difference
|
||||||
|
union
|
||||||
|
dispiro
|
||||||
|
corner (Geom.MidX - Geom.Size * 0.6) (Geom.MidY + Geom.Size * 1.1) [widths.center (Geom.Size / 3)]
|
||||||
|
corner (Geom.MidX - Geom.Size * 0.3) Geom.MidY
|
||||||
|
dispiro
|
||||||
|
corner (Geom.MidX + Geom.Size * 0.6) (Geom.MidY + Geom.Size * 1.1) [widths.center (Geom.Size / 3)]
|
||||||
|
corner (Geom.MidX + Geom.Size * 0.3) Geom.MidY
|
||||||
|
RingAt Geom.MidX Geom.MidY (Geom.Size + extLightSw)
|
||||||
|
|
||||||
|
create-glyph [MangleName 'stopwatch'] [MangleUnicode 0x23F1] : glyph-proc
|
||||||
|
set-width MosaicWidth
|
||||||
|
|
||||||
|
include : ClockRing
|
||||||
|
include : ClockHand 0 pSec extLightSw
|
||||||
|
|
||||||
|
include : difference
|
||||||
|
union
|
||||||
|
dispiro
|
||||||
|
corner Geom.MidX Geom.MidY [widths.center (Geom.Size / 3)]
|
||||||
|
corner Geom.MidX (Geom.MidY + Geom.Size * 1.25 + extLightSw * 0.5)
|
||||||
|
dispiro
|
||||||
|
corner Geom.MidX Geom.MidY [widths.center mediumSw]
|
||||||
|
corner (Geom.MidX + Geom.Size * 0.95) (Geom.MidY + Geom.Size * 0.95)
|
||||||
|
RingAt Geom.MidX Geom.MidY (Geom.Size + extLightSw)
|
||||||
|
|
||||||
|
create-glyph [MangleName 'timer'] [MangleUnicode 0x23F2] : glyph-proc
|
||||||
|
set-width MosaicWidth
|
||||||
|
|
||||||
|
include : ClockRing
|
||||||
|
include : ClockHand (Math.PI * 5 / 3) pMin (2 * dotSize) lightSw
|
||||||
|
|
104
packages/font-glyphs/src/symbol/pictograph/hourglass.ptl
Normal file
104
packages/font-glyphs/src/symbol/pictograph/hourglass.ptl
Normal file
|
@ -0,0 +1,104 @@
|
||||||
|
$$include '../../meta/macros.ptl'
|
||||||
|
|
||||||
|
import [mix linreg clamp fallback] from "@iosevka/util"
|
||||||
|
import [Box] from "@iosevka/geometry/box"
|
||||||
|
|
||||||
|
glyph-module
|
||||||
|
|
||||||
|
glyph-block Symbol-Pictograph-Hourglass : begin
|
||||||
|
glyph-block-import CommonShapes
|
||||||
|
glyph-block-import Common-Derivatives
|
||||||
|
glyph-block-import Symbol-Geometric-Shared : GeometricDim
|
||||||
|
|
||||||
|
define [HourglassShape bound sw _swRef] : begin
|
||||||
|
local swRef : fallback _swRef sw
|
||||||
|
local left : bound.left + [HSwToV : 0.5 * swRef]
|
||||||
|
local right : bound.right - [HSwToV : 0.5 * swRef]
|
||||||
|
|
||||||
|
local curveL : list
|
||||||
|
straight.down.start left bound.top [heading Downward]
|
||||||
|
alsoThru 0 0.45
|
||||||
|
flat [bound.mixX 0.3] [bound.mixY 0.6]
|
||||||
|
curl [bound.mixX 0.7] [bound.mixY 0.4]
|
||||||
|
alsoThru 1 0.55
|
||||||
|
straight.down.end right bound.bottom [heading Downward]
|
||||||
|
|
||||||
|
local curveR : list
|
||||||
|
straight.up.start left bound.bottom [heading Upward]
|
||||||
|
alsoThru 0 0.45
|
||||||
|
flat [bound.mixX 0.3] [bound.mixY 0.4]
|
||||||
|
curl [bound.mixX 0.7] [bound.mixY 0.6]
|
||||||
|
alsoThru 1 0.55
|
||||||
|
straight.up.end right bound.top [heading Upward]
|
||||||
|
|
||||||
|
return : if sw
|
||||||
|
union
|
||||||
|
HBar.t bound.left bound.right bound.top [mix sw swRef 0.5]
|
||||||
|
HBar.b bound.left bound.right bound.bottom [mix sw swRef 0.5]
|
||||||
|
dispiro [widths.center sw] curveL
|
||||||
|
dispiro [widths.center sw] curveR
|
||||||
|
spiro-outline curveL curveR
|
||||||
|
|
||||||
|
for-width-kinds WideWidth1 : begin
|
||||||
|
define Geom : GeometricDim MosaicUnitWidth MosaicWidth
|
||||||
|
|
||||||
|
define Bound : new Box PictTop PictBot Geom.Left Geom.Right
|
||||||
|
define sandSlope 0.3
|
||||||
|
define sandFill1 0.33
|
||||||
|
define sandFill2 0.15
|
||||||
|
define sandFill3 0.8
|
||||||
|
|
||||||
|
create-glyph [MangleName 'hourglass'] [MangleUnicode 0x231B] : glyph-proc
|
||||||
|
set-width Geom.Width
|
||||||
|
|
||||||
|
include : HourglassShape Bound GeometryStroke
|
||||||
|
|
||||||
|
local mask : HourglassShape Bound (GeometryStroke * 2) GeometryStroke
|
||||||
|
local mask2 : HourglassShape Bound 0 GeometryStroke
|
||||||
|
local sandBot : Bound.bottom + GeometryStroke
|
||||||
|
local sandTop : mix sandBot (Bound.top - GeometryStroke) sandFill1
|
||||||
|
local sandRad : (Bound.top - Bound.bottom - GeometryStroke) * sandFill1 / sandSlope
|
||||||
|
local sand : spiro-outline
|
||||||
|
corner (Bound.xMid - sandRad) sandBot
|
||||||
|
corner (Bound.xMid + sandRad) sandBot
|
||||||
|
corner Bound.xMid sandTop
|
||||||
|
|
||||||
|
include : difference [intersection sand mask2] mask
|
||||||
|
|
||||||
|
create-glyph [MangleName 'hourglassFlowing'] [MangleUnicode 0x23F3] : glyph-proc
|
||||||
|
set-width Geom.Width
|
||||||
|
|
||||||
|
include : HourglassShape Bound GeometryStroke
|
||||||
|
|
||||||
|
local mask : HourglassShape Bound (GeometryStroke * 2) GeometryStroke
|
||||||
|
local mask2 : HourglassShape Bound 0 GeometryStroke
|
||||||
|
local sandBot : Bound.bottom + GeometryStroke
|
||||||
|
local sandTop : mix sandBot (Bound.top - GeometryStroke) sandFill2
|
||||||
|
local sandRad : (Bound.top - Bound.bottom - GeometryStroke) * sandFill2 / sandSlope
|
||||||
|
local sand : union
|
||||||
|
spiro-outline
|
||||||
|
corner (Bound.xMid - sandRad) sandBot
|
||||||
|
corner (Bound.xMid + sandRad) sandBot
|
||||||
|
corner Bound.xMid sandTop
|
||||||
|
Rect [Bound.mixY sandFill3] Bound.yMid Bound.left Bound.right
|
||||||
|
VBar.m Bound.xMid Bound.bottom Bound.yMid [AdviceStroke 10]
|
||||||
|
|
||||||
|
include : difference [intersection sand mask2] mask
|
||||||
|
|
||||||
|
create-glyph [MangleName 'wineglass'] [MangleUnicode 0x1F377] : glyph-proc
|
||||||
|
set-width Geom.Width
|
||||||
|
|
||||||
|
include : HBar.b Geom.Left Geom.Right PictBot GeometryStroke
|
||||||
|
include : HBar.t Geom.Left Geom.Right PictTop GeometryStroke
|
||||||
|
include : VBar.m Geom.MidX PictBot SymbolMid GeometryStroke
|
||||||
|
|
||||||
|
include : dispiro
|
||||||
|
widths.lhs GeometryStroke
|
||||||
|
straight.down.start Geom.Left PictTop [heading Downward]
|
||||||
|
curl Geom.Left (SymbolMid - GeometryStroke / 2 + ArchDepthB)
|
||||||
|
arcvh
|
||||||
|
g4 Geom.MidX (SymbolMid - GeometryStroke / 2)
|
||||||
|
archv
|
||||||
|
flat Geom.Right (SymbolMid - GeometryStroke / 2 + ArchDepthA)
|
||||||
|
straight.up.end Geom.Right PictTop [heading Upward]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue