Tag: region

如何配置Visual Studio默认情况下折叠所有区域?

当我在新的代码窗口中打开代码文件时,我按Ctrl + M,O来折叠那里的所有内容。 据我所知,这可以默认完成,无需每次都按任何东西。 我想我做过一次,但不记得这个选项在哪里。

Region.IsVisible(PointF)对于大浮点值的性能非常慢

我遇到了一个奇怪的性能问题,对我正在经历的行为进行解释会很棒。 我正在使用System.Drawing.Region.IsVisible(PointF)来确定一个点是否在多边形内。 这通常效果很好,但昨天我注意到,如果多边形很复杂并且由大的x和y值组成,则IsVisible方法的性能会变得非常慢。 下面是一些重现问题的代码(以及显示多边形形状的图像),对于较大的数组大小而言,遗憾的是,在问题出现之前,多边形需要非常复杂。 当在原始点上调用IsVisible时,我的机器需要460 651毫秒才能完成,而当我首先将所有点除以1000,然后调用该方法时,它需要1毫秒。 为什么我在时间上看到如此大的差异? 我不认为浮动的实际值会影响性能。 using System; using System.Diagnostics; using System.Drawing; using System.Drawing.Drawing2D; using System.Linq; namespace PerformanceTest { class Program { static void Main(string[] args) { // Create complex polygon with large x and y values float[] xValues = {1.014498E+07f, 1.016254E+07f, 1.019764E+07f, 1.021519E+07f, 1.023274E+07f, 1.026785E+07f, 1.026785E+07f, 1.02854E+07f, 1.02854E+07f, 1.030295E+07f, 1.03205E+07f, 1.033805E+07f, 1.035561E+07f, […]