Windows Phone 8中剪辑的自定义形状

时间:2014-06-12 15:55:45

标签: windows-phone-8 geometry clip pathgeometry rendertransform

我试图在Windows Phone 8中使用自定义形状制作剪辑蒙版。

我有形状的路径数据,所以我可以设置

<Grid x:Name="gridMain" Clip="M2,54.597 L100.15,101.27 .....
</Grid>

并将网格正确剪切到自定义路径。

我接下来需要做的是应用变换,因此可以移动或缩放等等。

我通常会在代码中执行以下操作

// slide transform
TranslateTransform translateTransform = new TranslateTransform();
gridMain.Clip.Transform = translateTransform;

然后使用故事板执行移动。

但是,问题是gridMain.Clip.Transform不是RenderTransform,因此动画不会运行。没有错误,只是没有动画。

如果我的自定义形状是像EllipseGeometry这样的内置几何体,那么我可以在XAML中设置变换并使用clipRT在代码中对其进行动画

    <Grid x:Name="gridMain" Grid.Row="1" >
        <Grid.Clip>
            <GeometryGroup x:Name="clipGroup">

                <EllipseGeometry RadiusX="100" RadiusY="100"/>

                <GeometryGroup.Transform>
                    <CompositeTransform x:Name="clipRT" />
                </GeometryGroup.Transform>
            </GeometryGroup>
        </Grid.Clip>
    </Grid>

我知道有一个PathGeometry,但不是我的Path数据M2,54.597 L100.15,101.27 .....作为Path Markup。它需要设置东西,这对我的自定义形状没有好处。

所以,总结一下。如何设置自定义形状(从路径数据)以执行剪切蒙版,并且还能够执行平移/缩放等...从代码转换它???

注意:我剪裁了一张图片,并知道我可以定义路径它填充图像的路径,但这里没有好处,因为如果我移动路径周围的路径图像将随之而来。

0 个答案:

没有答案