@@ -13,25 +13,26 @@ Note: can use `@setup darts` block to hide some implementation code
1313using Meshes
1414using MeshIntegrals
1515using Unitful
16+ using Unitful.DefaultSymbols: mm, m
1617```
1718
1819## Modeling the Dartboard
1920
2021Define a dartboard coordinate system
2122``` @example darts
22- dartboard_center = Point(0u"m", 0u"m" , 1.5u"m" )
23+ dartboard_center = Point(0m, 0m , 1.5m )
2324dartboard_plane = Plane(dartboard_center, Meshes.Vec(1, 0, 0))
2425
2526function point(r::Unitful.Length, ϕ)
26- t = ustrip(r, u"m" )
27+ t = ustrip(r, m )
2728 dartboard_plane(t * sin(ϕ), t * cos(ϕ))
2829end
2930```
3031
3132Model the bullseye region
3233``` @example darts
33- bullseye_inner = (geometry = Circle(dartboard_plane, 6.35u"mm" ), points = 50)
34- bullseye_outer = (geometry = Circle(dartboard_plane, 16u"mm" ), points = 25)
34+ bullseye_inner = (geometry = Circle(dartboard_plane, 6.35mm ), points = 50)
35+ bullseye_outer = (geometry = Circle(dartboard_plane, 16mm ), points = 25)
3536# TODO subtract center circle region from outer circle region -- or replace with another annular geometry
3637```
3738
@@ -48,8 +49,9 @@ board_points = hcat(ring1, ring2, ring3, ring4)
4849sector_width = 2π/20
4950phis_a = range(0, 2π, 20) .- sector_width/2
5051phis_b = range(0, 2π, 20) .+ sector_width/2
51- rs_inner = [16, 99, 107, 162]u"mm"
52- rs_outer = [99, 107, 162, 170]u"mm"
52+ phis = Iterators.zip(phis_a, phis_b)
53+ rs = [ (16mm, 99mm), (99mm, 107mm), (107mm, 162mm), (162mm, 170mm) ]
54+ grid = Iterators.product(phis, rs)
5355```
5456
5557Define a struct to manage sector data
0 commit comments