当前位置: 首页>>代码示例>>C#>>正文


C# PPos.ToFloat2方法代码示例

本文整理汇总了C#中PPos.ToFloat2方法的典型用法代码示例。如果您正苦于以下问题:C# PPos.ToFloat2方法的具体用法?C# PPos.ToFloat2怎么用?C# PPos.ToFloat2使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PPos的用法示例。


在下文中一共展示了PPos.ToFloat2方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Render

        public IEnumerable<Renderable> Render(WorldRenderer wr)
        {
            if (explosion != null)
                yield return new Renderable(explosion.Image, args.dest.ToFloat2() - .5f * explosion.Image.size,
                                            wr.Palette("effect"), (int)args.dest.Y);

            if (ticks >= info.BeamDuration)
                yield break;

            var rc = Color.FromArgb((info.BeamDuration - ticks)*255/info.BeamDuration, color);

            var src = new PPos(args.src.X, args.src.Y - args.srcAltitude);
            var dest = new PPos(args.dest.X, args.dest.Y - args.destAltitude);
            var wlr = Game.Renderer.WorldLineRenderer;
            wlr.LineWidth = info.BeamRadius * 2;
            wlr.DrawLine(src.ToFloat2(), dest.ToFloat2(), rc, rc);
            wlr.Flush();
            wlr.LineWidth = 1f;
        }
开发者ID:Tsher,项目名称:OpenRA,代码行数:19,代码来源:LaserZap.cs

示例2: DrawZapWandering

        static IEnumerable<Renderable> DrawZapWandering(WorldRenderer wr, PPos from, PPos to, Sequence s)
        {
            var z = float2.Zero;	/* hack */
            var dist = to - from;
            var norm = (1f / dist.Length) * new float2(-dist.Y, dist.X);

            var renderables = new List<Renderable>();
            if (Game.CosmeticRandom.Next(2) != 0)
            {
                var p1 = from.ToFloat2() + (1 / 3f) * dist.ToFloat2() + Game.CosmeticRandom.Gauss1D(1) * .2f * dist.Length * norm;
                var p2 = from.ToFloat2() + (2 / 3f) * dist.ToFloat2() + Game.CosmeticRandom.Gauss1D(1) * .2f * dist.Length * norm;

                renderables.AddRange(DrawZap(wr, from.ToFloat2(), p1, s, out p1));
                renderables.AddRange(DrawZap(wr, p1, p2, s, out p2));
                renderables.AddRange(DrawZap(wr, p2, to.ToFloat2(), s, out z));
            }
            else
            {
                var p1 = from.ToFloat2() + (1 / 2f) * dist.ToFloat2() + Game.CosmeticRandom.Gauss1D(1) * .2f * dist.Length * norm;

                renderables.AddRange(DrawZap(wr, from.ToFloat2(), p1, s, out p1));
                renderables.AddRange(DrawZap(wr, p1, to.ToFloat2(), s, out z));
            }

            return renderables;
        }
开发者ID:Tsher,项目名称:OpenRA,代码行数:26,代码来源:TeslaZap.cs


注:本文中的PPos.ToFloat2方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。