本文整理汇总了C#中Microsoft.Graphics.Canvas.CanvasDrawingSession.DrawCachedGeometry方法的典型用法代码示例。如果您正苦于以下问题:C# CanvasDrawingSession.DrawCachedGeometry方法的具体用法?C# CanvasDrawingSession.DrawCachedGeometry怎么用?C# CanvasDrawingSession.DrawCachedGeometry使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Graphics.Canvas.CanvasDrawingSession
的用法示例。
在下文中一共展示了CanvasDrawingSession.DrawCachedGeometry方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Draw
public void Draw(ICanvasAnimatedControl sender, CanvasTimingInformation timingInformation, CanvasDrawingSession ds)
{
ds.DrawCachedGeometry(clockFaceCachedFill, backgroundBrush);
double fractionSecond;
int seconds;
if (sender.IsFixedTimeStep)
{
double updatesPerSecond = 1000.0 / sender.TargetElapsedTime.TotalMilliseconds;
seconds = (int)((timingInformation.UpdateCount / updatesPerSecond) % 10);
double updates = (double)timingInformation.UpdateCount;
fractionSecond = (updates / updatesPerSecond) % 1.0;
}
else
{
double totalMilliseconds = timingInformation.TotalTime.TotalMilliseconds;
double millisecondsThisIteration = totalMilliseconds % 1000;
fractionSecond = millisecondsThisIteration / 1000.0f;
seconds = (int)timingInformation.TotalTime.TotalSeconds % 10;
}
hueRotationEffect.Angle = (float)Math.PI * (seconds / 10.0f) * 2.0f;
using (var timeSegmentGeometry = CreateTimeSegmentGeometry(ds, fractionSecond))
{
ds.FillGeometry(timeSegmentGeometry, foregroundBrush);
DrawSecondsText(ds, new Vector2(center), seconds);
ds.DrawGeometry(timeSegmentGeometry, Colors.White, 1, hairlineStrokeStyle);
}
ds.DrawCachedGeometry(clockFaceCachedStroke18, Colors.White);
ds.DrawCachedGeometry(clockFaceCachedStroke16, Colors.Black);
}
示例2: Draw
/// <summary>
/// user needs to call "ds.Clear(Colors.Transparent);" before this function if necessary
/// </summary>
/// <param name="ds"></param>
/// <param name="lineColor"></param>
/// <param name="lineWidth"></param>
/// <param name="fillColor"></param>
/// <param name="m"></param>
public void Draw(CanvasDrawingSession ds, Color lineColor, float lineWidth, Color fillColor, Matrix3x2 m)
{
/*if (m != null)
_cg = _cg.Transform(m);
if (!(lineColor == Colors.Transparent))
{
ds.DrawGeometry(_cg, lineColor, lineWidth);
}
if (fillColor != null)
ds.FillGeometry(_cg, fillColor);//*/
ds.Transform = m;
if (_ccgStroke != null && lineColor != Colors.Transparent)
ds.DrawCachedGeometry(_ccgStroke, lineColor);
if (_ccgFill != null && fillColor != Colors.Transparent)
ds.DrawCachedGeometry(_ccgFill, fillColor);
ds.Transform = Matrix3x2.Identity;
}