我写的一个产生灵异现象的代码,看我中华,有谁能解释这个灵异现象!
请大家将以下代码拷贝到一个窗体里,然后放一个Button1,将Button1的点击事件连接到button1_click,然后运行,点button1,看看到底发生了什么样的灵异现象!
Graphics picture;
int y0 = 0;
private void button1_Click(object sender, EventArgs e)
{
picture = this.CreateGraphics();
y0 = 0;
Draw(Brushes.Red, p(0, 5), p(8, 2), p(8, 5));
Draw(Brushes.Blue, p(8, 2), p(13, 0), p(13, 2));
Draw(Brushes.Yellow, p(8, 2), p(13, 2), p(13, 3), p(10, 3), p(10, 4), p(8, 4));
Draw(Brushes.Green, p(8, 4), p(10, 4), p(10, 3), p(13, 3), p(13, 5), p(8, 5));
y0 = 160;
Draw(Brushes.Blue, p(0, 5), p(5, 3), p(5, 5));
Draw(Brushes.Red, p(5, 3), p(13, 0), p(13, 3));
Draw(Brushes.Yellow, p(5, 3), p(10, 3), p(10, 4), p(7, 4), p(7, 5), p(5, 5));
Draw(Brushes.Green, p(8, 4), p(10, 4), p(10, 3), p(13, 3), p(13, 5), p(8, 5));
}
void Draw(Brush brush, params Point[] p)
{
picture.FillPolygon(brush, p);
}
Point p(int x, int y)
{
return new Point(x * 30 + 5, y * 30 + 5 + y0);
}
[解决办法]
LZ很无聊,这个很早就看过了!大三角的斜边并不是一条直线。所以才会这样!
------解决方案--------------------
红色三角和蓝色三角的斜边角度不一样,导致整个大三角的斜边不能成为一条直线,少掉的空白就被填充到这里来了!你自己好好看看!
[解决办法]
是的两个3角的角度不一样!就是应为这
[解决办法]
我用公式和角尺测出的结果!!不一样!!!
[解决办法]
我赢了!
把分给我!!!
[解决办法]
//图形输出的顺序换一下,并显示在同一个位置,自己看吧,边上多出的面积加在一起就是小方块的
y0 = 160;
Draw(Brushes.Blue, p(0, 5), p(5, 3), p(5, 5));
Draw(Brushes.Red, p(5, 3), p(13, 0), p(13, 3));
Draw(Brushes.Yellow, p(5, 3), p(10, 3), p(10, 4), p(7, 4), p(7, 5), p(5, 5));
Draw(Brushes.Green, p(8, 4), p(10, 4), p(10, 3), p(13, 3), p(13, 5), p(8, 5));
y0 = 160;
Draw(Brushes.Red, p(0, 5), p(8, 2), p(8, 5));
Draw(Brushes.Blue, p(8, 2), p(13, 0), p(13, 2));
Draw(Brushes.Yellow, p(8, 2), p(13, 2), p(13, 3), p(10, 3), p(10, 4), p(8, 4));
Draw(Brushes.Green, p(8, 4), p(10, 4), p(10, 3), p(13, 3), p(13, 5), p(8, 5));
[解决办法]
貌似大小相似 感觉很有意思
[解决办法]
大三角是长8,宽3
小三角是长5宽2
3/8!=2/5,即斜边不是直线
[解决办法]
这个问题我早研究过,它利用了人们的视觉错误来掩盖事实真相!
[解决办法]
严格说也不是视觉错觉
而是肉眼分辨率的问题,何况,人眼+脑子 对于角度的识别是很弱的,估计分辨率不会超过2度
也就是一个 31度的角度,和29度的角度,对于人眼估计都是1个值