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


C# BoundingBox.Grow方法代码示例

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


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

示例1: TestVarious

		public void TestVarious()
		{
			BoundingBox b1 = new BoundingBox(20, 30, 40, 55);
			Assert.AreEqual(20, b1.Left);
			Assert.AreEqual(20, b1.Min.X);
			Assert.AreEqual(40, b1.Right);
			Assert.AreEqual(40, b1.Max.X);
			Assert.AreEqual(30, b1.Bottom);
			Assert.AreEqual(30, b1.Min.Y);
			Assert.AreEqual(55, b1.Top);
			Assert.AreEqual(55, b1.Max.Y);
			Assert.AreEqual(20, b1.Width);
			Assert.AreEqual(25, b1.Height);
			Assert.AreNotSame(b1, b1.Clone());
			Assert.IsTrue(b1.Contains(new Point(30, 40)));
			Assert.IsTrue(b1.Contains(new Point(20, 40)));
			Assert.IsFalse(b1.Contains(new Point(10, 10)));
			Assert.IsFalse(b1.Contains(new Point(50, 60)));
			Assert.IsFalse(b1.Contains(new Point(30, 60)));
			Assert.IsFalse(b1.Contains(new Point(50, 40)));
			Assert.IsFalse(b1.Contains(new Point(30, 15)));
			Assert.IsTrue(b1.Equals(new BoundingBox(20, 30, 40, 55)));
			Assert.AreEqual(new Point(30, 42.5), b1.GetCentroid());
			Assert.AreEqual(1, b1.LongestAxis);
			Assert.AreEqual(new BoundingBox(19, 29, 41, 56), b1.Grow(1));
			Assert.IsFalse(b1.Equals(null));
			Assert.IsFalse(b1.Equals((object)new Polygon()));
			Assert.AreEqual("20,30 40,55", b1.ToString());
			Assert.AreEqual(b1,new BoundingBox(40,55,20,30));
			Assert.AreEqual(Math.Sqrt(200), b1.Distance(new BoundingBox(50,65,60,75)));
		}
开发者ID:lishxi,项目名称:_SharpMap,代码行数:31,代码来源:BoundingBoxTests.cs

示例2: GetFeaturesInView

        public virtual IEnumerable<IFeature> GetFeaturesInView(BoundingBox box, double resolution)
        {
            lock (_syncRoot)
            {
                var features = Features.ToList();

                // Use a larger extent so that symbols partially outside of the extent are included
                var grownBox = box.Grow(resolution*SymbolSize*0.5);

                foreach (var feature in features)
                {
                    if (feature.Geometry == null)
                        continue;

                    if (grownBox.Intersects(feature.Geometry.GetBoundingBox()))
                    {
                        yield return feature;
                    }
                }
            }
        }
开发者ID:dobauer,项目名称:Mapsui,代码行数:21,代码来源:MemoryProvider.cs

示例3: RenderBox

        private static UIElement RenderBox(BoundingBox box, IViewport viewport)
        {
            const int symbolSize = 32; // todo: determine margin by symbol size
            const int boxMargin = symbolSize / 2;

            var path = new Path
            {
                Stroke = new SolidColorBrush(Colors.White),
                StrokeThickness = 2,
                Data = new RectangleGeometry()
            };

            // offset the bounding box left and up by the box margin
            var offsetBox = box.Grow(boxMargin * viewport.Resolution);

            GeometryRenderer.PositionRaster(path, offsetBox, viewport);

            return path;
        }
开发者ID:jdeksup,项目名称:Mapsui.Net4,代码行数:19,代码来源:StackedLabelLayerRenderer.cs

示例4: StartNewFetch

        protected void StartNewFetch(BoundingBox extent, double resolution)
        {
            IsFetching = true;
            NeedsUpdate = false;

            extent = Transform(extent);

            if (Enabled)
            {
                _fetched = true;
                Overscan = Overscan > 1 ? Overscan : 1;
                var fetcher = new FeatureFetcher(extent.Grow(extent.Width * Overscan, extent.Height * Overscan), resolution, DataSource, DataArrived);
                Task.Factory.StartNew(() => fetcher.FetchOnThread(null));
            }
        }
开发者ID:jdeksup,项目名称:Mapsui.Net4,代码行数:15,代码来源:Layer.cs

示例5: GrowAndShrinkTest

		public void GrowAndShrinkTest()
		{
			BoundingBox b1 = new BoundingBox(20, 30, 40, 55);
			Assert.AreEqual(new BoundingBox(19, 29, 41, 56), b1.Grow(1));
		}
开发者ID:sridhar19091986,项目名称:sharpmapcf,代码行数:5,代码来源:BoundingBoxTests.cs

示例6: GrowBox

 private static BoundingBox GrowBox(BoundingBox box, double resolution)
 {
     const int symbolSize = 32; // todo: determine margin by symbol size
     const int boxMargin = symbolSize/2;
     return box.Grow(boxMargin*resolution);
 }
开发者ID:pauldendulk,项目名称:Mapsui,代码行数:6,代码来源:StackedLabelProvider.cs


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