2016-03-20 3 views
0

Ich bin auf der Suche nach einer Möglichkeit, um Figuren (sagen wir eine Polylinie) auf einer Leinwand zu zoomen, ohne das Leinwandhintergrundbild zu zoomen. Ich habe eine Lösung, die Figuren und das Hintergrundbild gleichzeitig vergrößert, indem ich die Scaletransformations-Leinwand verändere, jetzt möchte ich nur die Figur zoomen. Hier sind die Beispielbilder von dem, was ich gerne bekommen würde.WPF So vergrößern Sie die Figur auf einer Leinwand

image before zoom

image after zoom

Ich habe versucht, mit Layout verändern und variieren die transformscale der Figuren zu spielen, aber es hat nicht den Trick. Irgendwelche Ideen, wie ich das erreichen könnte?

+0

Verwenden Sie ein Pfadsteuerelement, weisen Sie seiner Data-Eigenschaft eine Geometrie zu und legen Sie die Transform-Eigenschaft der Geometrie fest/aktualisieren Sie sie. – Clemens

Antwort

0

Ich könnte Ihre Anfrage missverstehen, aber geht es so?

<Grid> 
    <Canvas x:Name="backgroundCanvas" /> 
    <Canvas x:Name="figureCanvas"> 
     <Canvas.RenderTransform> ... 
    </Canvas> 
</Grid> 

Zwei Canvas es werden überlagert und dann wird die Transformation separat durchgeführt.