Question

Ok,

J'ai donc essayé de faire une application qui repose sur les images étant mises à l'échelle par un facteur individuel. Ces images peuvent alors être retourné, mais l'utilisation d'une animation de travail sur la rotation de ProjectionPlane.

Le problème est là quand une image est à la fois mis à l'échelle et mis en rotation. Pour une raison quelconque, il commence à bluring, où une image non réduite ne brouillent pas.

En outre, si vous regardez l'image exemple ci-dessous (en haut est mise à l'échelle et rotation, fond est tourné) la projection du haut ne semble même pas droit. Son trop horizontal.

http://img43.imageshack.us/img43/5923/testimages.png http://img43.imageshack.us/img43/5923/testimages.png

ce code pour l'application de test:

<UserControl x:Class="SilverlightApplication1.Page"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Width="400" Height="300">
    <Canvas x:Name="LayoutRoot" Background="White">

            <Border Canvas.Top="25" Canvas.Left="50">

                <Border.RenderTransform>
                    <TransformGroup>
                        <ScaleTransform ScaleX="3" ScaleY="3" />
                    </TransformGroup>
                </Border.RenderTransform>

                <Border.Projection>
                    <PlaneProjection RotationY="45"/>
                </Border.Projection>

                <Image Source="bw-test-pattern.jpg" Width="50" Height="40"/>
            </Border>

            <Border Canvas.Top="150" Canvas.Left="50">
                <Border.RenderTransform>
                    <TransformGroup>
                        <ScaleTransform ScaleX="1" ScaleY="1" />
                    </TransformGroup>
                </Border.RenderTransform>

                <Border.Projection>
                    <PlaneProjection RotationY="45"/>
                </Border.Projection>

                <Image Source="bw-test-pattern.jpg" Width="150" Height="120"/>
            </Border>

    </Canvas>
</UserControl>

Donc, si quelqu'un pouvait possible faire la lumière sur pourquoi ce qui peut se passer, je serais très reconnaissant de bien vouloir. Suggestions bienvenues aussi! :)

** Mise à jour **

Pour préciser, si la rotation du plan de projection est égal à 0, l'image devient floue non, de sorte que son que pendant la rotation que l'image est floue.

Était-ce utile?

La solution

La largeur de l'image supérieure est définie à 50 et la hauteur à 40. Donc, il est à échelle réduite. Ensuite, vous agrandissez-à la bonne taille 150, 120. Je suppose que les échelles Silverlight l'image vers le bas et ne stocke pas la taille d'origine en raison de la performance optmization. Laisser l'échelle et à définir la largeur droite et la hauteur de la première image.

Autres conseils

Il ressemble à l'image du haut est filtré comme il est en cours d'élaboration. À partir de votre code que vous avez:

<Image Source="bw-test-pattern.jpg" Width="50" Height="40"/>

pour l'image supérieure et

<Image Source="bw-test-pattern.jpg" Width="150" Height="120"/>

pour celui du bas. Vous avez différentes tailles d'image si celle du haut peut être être zoomées et donc floue car il interpole les pixels manquants.

Je ne suis pas familier avec silverlight donc je ne sais pas comment vous contrôler les options de filtrage, mais le réglage de la première ligne ci-dessus pour le même que celui du bas peut le corriger.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top