Haskell 如何使线条像圆一样粗?

Haskell 如何使线条像圆一样粗?,haskell,haskell-diagrams,Haskell,Haskell Diagrams,我想画一条宽度等于圆直径的圆线。 经过多次尝试和错误,这似乎产生了想要的输出 import Diagrams.Prelude import Diagrams.Backend.Cairo.CmdLine main = mainWith example path = fromVertices [p2 (0,0), p2 (3,0)] # lw 80 example :: Diagram B example = atPoints [p2 (0,0)] n <> (path # li

我想画一条宽度等于圆直径的圆线。 经过多次尝试和错误,这似乎产生了想要的输出

import Diagrams.Prelude
import Diagrams.Backend.Cairo.CmdLine
main = mainWith example

path = fromVertices [p2 (0,0), p2 (3,0)] # lw 80

example :: Diagram B
example = atPoints [p2 (0,0)] n
  <> (path # lineCap LineCapRound  . lineJoin LineJoinRound)
  <> atPoints [p2 (3,0)] n
  <> square 10 # lw none # fc white
 where
   n =[circle 1 # fc green # lw none]
导入图表。序曲
导入Diagrams.Backend.Cairo.CmdLine
main=main和示例
路径=从顶点[p2(0,0),p2(3,0)]#lw 80
示例::图B
示例=点[p2(0,0)]n
(路径#lineCap LineCapRound.lineJoin LineJoinRound)
点[p2(3,0)]n
方形10#lw无#fc白色
哪里
n=[圆圈1#fc绿色#lw无]
但是感觉不对。我希望
lw 2
对应于
圆1
,因为2是半径的两倍,但肯定不是
lw 80

为什么它与80一起工作?
假设我遗漏了一些东西,那么如何制作一条像圆一样宽的圆线呢

更多详情见,以下是相关摘录:

当地单位是最容易解释的。局部单位的值在局部向量空间的上下文中进行解释,就像大多数其他长度测量一样(例如圆和正方形等函数的参数)。例如,square 1#lwL 0.2指定了一个正方形,该正方形是用边长五分之一宽的线绘制的,并且即使按比例缩放,也将始终如此:线宽与正方形一起缩放。(lwL中的L代表“本地”。)