2010-11-12 9 views
8

Mam GeometryDrawing podobnego tak:WPF: czy można renderować okrąg za pomocą GeometryDrawing?

<DrawingImage x:Key="{ComponentResourceKey TypeInTargetAssembly={x:Type wpfhlp:FokusGroupBox},ResourceId=IconTest}"> 
    <DrawingImage.Drawing> 
    <DrawingGroup> 
     <GeometryDrawing Brush="Black" Geometry="M0,260 L0,600 L110,670 L110,500 L190,550 L190,710 L300,775 L300,430 L150,175"/> 
    </DrawingGroup> 
    </DrawingImage.Drawing> 
</DrawingImage> 

teraz chciałbym narysować okrąg, a nie, ale mogę tylko znaleźć polecenia, aby przenieść, narysować linię, nic narysować okrąg.

Czy istnieje sposób, aby GeometryDrawing narysować okrąg?

Odpowiedz

17
.... 
<GeometryDrawing Brush="Black"> 
    <GeometryDrawing.Geometry> 
     <EllipseGeometry Center="0,0" RadiusX="1" RadiusY="1" /> 
    </GeometryDrawing.Geometry> 
</GeometryDrawing> 

Alternatywnie, można również użyć Path Markup Syntax narysować dwie eliptyczne łuki (górna i dolna połowa okręgu):

<GeometryDrawing Brush="Black" Geometry="M -1,0 A 1,1 0 1 1 1,0 M -1,0 A 1,1 0 1 0 1,0" /> 
+0

Dzięki, że działa - teraz mam tylko do znalezienia sposób na uzyskanie "pustego" koła (z przezroczystym środkiem). – Sam

7
<Path Stretch="Fill" 
     Fill="Transparent" 
     Stroke="Black" 
     StrokeThickness="5" 
     Data="M 0,0 A 180,180 180 1 1 1,1 Z"/> 
+1

Nie można dodać instrukcji ścieżki do kolekcji rysunków (przynajmniej według Kaxaml), ale widzę, że ta odpowiedź zawiera 5 wzwyż. Biorąc pod uwagę pytanie "GeometryDrawing", a nie Ścieżki, ta odpowiedź jest niewłaściwa. –