WPF 绘图悖论
Posted
技术标签:
【中文标题】WPF 绘图悖论【英文标题】:WPF Drawing Paradox 【发布时间】:2010-11-19 14:51:20 【问题描述】:怎么可能,2 个具有相同半径的椭圆(在视觉上)不具有相同的半径?
在下图中,黑色和红色椭圆具有相同的 RadiusX... 但请看图片!
<GeometryDrawing Brush="Red">
<GeometryDrawing.Pen>
<Pen Brush="Yellow" Thickness="1"/>
</GeometryDrawing.Pen>
<GeometryDrawing.Geometry>
<GeometryGroup>
<EllipseGeometry x:Name="MediumCircle"
Center="0,0" RadiusX="4" RadiusY="4" />
</GeometryGroup>
</GeometryDrawing.Geometry>
</GeometryDrawing>
<GeometryDrawing Brush="Black">
<GeometryDrawing.Geometry>
<GeometryGroup>
<EllipseGeometry x:Name="SmallCircle"
Center="0,0" RadiusX="4" RadiusY="2"/>
</GeometryGroup>
</GeometryDrawing.Geometry>
</GeometryDrawing>
【问题讨论】:
【参考方案1】:一个有描边边框,另一个没有。您会注意到半径与描边边框的中心对齐。
【讨论】:
【参考方案2】:看起来应该怪厚度。使它们对两者都相同。
【讨论】:
【参考方案3】:我想我找到了答案,但不确定...椭圆的厚度并不完全围绕椭圆。如果我们将厚度设置为 4,我们将只看到 2 个像素的椭圆,如果我们设置为 8,我们将不再看到红色圆圈...
【讨论】:
以上是关于WPF 绘图悖论的主要内容,如果未能解决你的问题,请参考以下文章