⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 factionview.cpp

📁 V《牛顿法解方程之混沌情况》源代码(C完整应用程序代码)
💻 CPP
📖 第 1 页 / 共 3 页
字号:
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow(log(fabs(atan(log(fabs(sin(dL2)*sin(Hssx)+cos(Hssy))))))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((fabs(temp2)-fabs(temp1))*2, Kn2) )%512-256));
				break;
			case 13:
				M = 10;
				nM = 9;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f + 3;

				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow(log(fabs(sin(cos(dL3))))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow(log(fabs(cos(sin(dL3))))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow(log(fabs(sin(dL3)))*2, Kn2) )%512-256));
				break;
			case 14:
				M = 1000;
				nM = 1;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f + 3;

				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow(log(fabs(sin(cos(log(dL4)))))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow(log(fabs(cos(sin(log(dL4)))))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow(log(fabs(sin(log(dL4))))*2, Kn2) )%512-256));
				break;
			case 15:
				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;
				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;
				M = 23;
				nM = 21;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 3.5f;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs(Hssx*Hssx+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((10 * log((dL2+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs(Hssy*Hssy+0.000001)))*2, Kn2) )%512-256));
				break;
			case 16:
				M = 1000;
				nM = 11;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9] + 12;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((sin(M-i/1000 + log(fabs(dL2) + log(fabs(dL1)))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((cos(M-i/1000 + log(fabs(dL2) + log(fabs(dL3)))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((sin(M-i/1000 + (fabs(dL2))))*2, Kn2)/M )%512-256));
				break;
			case 17:
				M = 1000;
				nM = 11;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i

				Kn2 = (float)G.m_dSeData[0][9] + 9;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(dL1+0.001*dL2))*2, Kn2)/M)%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((log(dL1+0.001*dL2))*2, Kn2)/M)%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(dL2+0.001*dL2))*2, Kn2)/M)%512-256));
				break;
			case 18:
				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;
				temp1 = sin(x0);
				temp2 = sin(y0);
				x0 = temp1;
				y0 = temp2;
				M = 23;
				nM = 21;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 3.5f;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs(Hssx*Hssx+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((10 * log((dL2+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs(Hssy*Hssy+0.000001)))*2, Kn2) )%512-256));
				break;
			case 19:
				M = 1000;
				nM = 11;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i

				Kn2 = (float)G.m_dSeData[0][9] + 9;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow(tan(fabs(log(log(dL2+dL3) + sin(log(dL1+dL3)))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow(tan(fabs(log(log(dL2+dL3) + sin(log(dL1+dL3)))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow(tan(fabs(log(log(dL2+dL3) + sin(log(dL1+dL3)))))*2, Kn2)/M )%512-256));
				break;
			case 20:
				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;

				M = 5;
				nM = 3;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 1;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs((Hssx+Hssy)*(Hssx+Hssy)+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((log((dL2*100+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs((Hssx+Hssy)*(Hssx+Hssy)+0.000001)))*2, Kn2) )%512-256));
				break;
			case 21:
				M = 1000;
				nM = 15;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				if(!i) i=21;
				Kn2 = (float)G.m_dSeData[0][9] + 10;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((sin(log(1/i) + log(fabs(dL2))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((cos(log(1/i) + log(fabs(dL2))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((sin(log(1/i) + log(fabs(dL2))))*2, Kn2)/M )%512-256));
				break;
			case 22:
				M = 1000;
				nM = 15;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				if(!i) i=22;
				Kn2 = (float)G.m_dSeData[0][9] + 10;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((sin(log(10/i) + log(fabs(log(fabs(dL2))))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((cos(log(10/i) + log(fabs(log(fabs(dL2))))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((sin(log(10/i) + log(fabs(log(fabs(dL2))))))*2, Kn2)/M )%512-256));
				break;
			case 23:
				temp1 = (x0*x0) - (y0*y0);
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;
				G.Zshang(0.7, 0, x0, y0, &temp1, &temp2);
				x0 = temp1;
				y0 = temp2;

				M = 1000;
				nM = 30;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				if(!i) i=23;
				Kn2 = (float)G.m_dSeData[0][9] + 10;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((sin(log(100/i) + sin(fabs(log(fabs(dL2))))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((cos(log(100/i) + sin(fabs(log(fabs(dL2))))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((sin(log(100/i) + cos(fabs(log(fabs(dL2))))))*2, Kn2)/M )%512-256));
				break;
			case 24:
				M = 1000;
				nM = 30;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				if(!i) i=24;
				Kn2 = (float)G.m_dSeData[0][9] + 10;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((sin(log(100/i)+1/(sin(fabs(log(fabs(dL2)))))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((cos(log(100/i)+1/(sin(fabs(log(fabs(dL2)))))))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((sin(log(100/i)+1/(cos(fabs(log(fabs(dL2)))))))*2, Kn2)/M )%512-256));
				break;
			case 25:
				M = 1000;
				nM = 10;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				if(!i) i=25;
				Kn2 = (float)G.m_dSeData[0][9] + 11;
				temp1 = tan(fabs(sin(fabs(log(fabs(dL4))))));
				temp2 = tan(fabs(sin(fabs(log(fabs(dL2))))));
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((sin(log(100/i)+temp1))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((cos(log(100/i)+temp2))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((sin(log(100/i)+temp1))*2, Kn2)/M )%512-256));
				break;
			case 26:
				M = 1000;
				nM = 30;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				if(!i) i=26;
				Kn2 = (float)G.m_dSeData[0][9] + 11;
				temp1 = tan(fabs(sin(fabs(log(fabs(dL4))))));
				temp2 = tan(fabs(sin(fabs(log(fabs(dL2))))));
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((sin(log(100/i)+temp1))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((cos(log(100/i)+temp2))*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((sin(log(100/i)+temp1))*2, Kn2)/M )%512-256));
				break;
			case 27:
				temp1 = (x0*x0) - (y0*y0);
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;
				G.Zshang(0.7, 0, x0, y0, &temp1, &temp2);
				x0 = temp1;
				y0 = temp2;

				M = 5;
				nM = 3;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 1;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs((Hssy*Hssy)/(Hssx*Hssx)+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((log((dL2+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs((Hssx+Hssy)*(Hssx+Hssy)+0.000001)))*2, Kn2) )%512-256));
				break;
			case 28:

				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;

				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;

				M = 4;
				nM = 2;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 1.5f;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs(Hssx*Hssx+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((log((dL2*100+Hssy+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs(Hssy*Hssy+0.000001)))*2, Kn2) )%512-256));
				break;
			case 29:
				temp1 = tan(x0 / 1.5);
				temp2 = tan(y0);
				x0 = temp1;
				y0 = temp2;
				M = 13;
				nM = 11;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 1.5f;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs(pow(Hssy, 2.5)+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((log((dL2+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs(pow(Hssx, 2.5)+0.000001)))*2, Kn2) )%512-256));
				break;
			case 30:
				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;
				M = 23;
				nM = 21;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 3.5f;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs(Hssx*Hssx+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((3 * log((dL2+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs(Hssy*Hssy+0.000001)))*2, Kn2) )%512-256));
				break;
			case 31:

				G.fz2(x0, y0, 0, 1, &temp1, &temp2, 2);
				x0 = temp1;
				y0 = temp2;

				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;
				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;

				M = 5;
				nM = 3;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 1;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs((Hssx+Hssy)*(Hssx+Hssy)+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((log((dL2 * 100+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs((Hssx+Hssy)*(Hssx+Hssy)+0.000001)))*2, Kn2) )%512-256));
				break;
			case 32:
				G.fz2(y0, x0, 0.3, 0.3, &temp1, &temp2, 4);
				x0 = temp1;
				y0 = temp2;

				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;

				temp1 = x0*x0 - y0*y0;
				temp2 = 2*x0*y0;
				x0 = temp1;
				y0 = temp2;

				M = 4;
				nM = 2;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9]*0.5f - 1.5f;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((log(fabs(Hssx*Hssx+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((log((dL2*100+Hssy+0.000001)))*2, Kn2) )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((log(fabs(Hssy*Hssy+0.000001)))*2, Kn2) )%512-256));
				break;
			default:
				M = 10000;
				nM = 11;
				i = G.MMi(x0, y0, int(G.m_dSeData[0][13]), M, nM, &Hssx, &Hssy, &dL1, &dL2, &dL3, &dL4); //i
				Kn2 = (float)G.m_dSeData[0][9] + 11.5f;
				se = RGB(256 - abs((int)fabs(Se1 - (2*Se2-256) * pow((M-i)*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se2 - (2*Se3-256) * pow((M-i)*2, Kn2)/M )%512-256), 
								 256 - abs((int)fabs(Se3 - (2*Se1-256) * pow((M-i)*2, Kn2)/M )%512-256));
			}
			//temp = memDC.SetPixelV(A, B, se);
			temp = pDC->SetPixelV(A, B, se);
			//因为单独的绘图操作占整个显示图像的时间比很少,所以这里没有做优化, _
			//但用API的函数还是比VB自带的快很多倍,(SetPixelV比SetPixel快)

		}
		MSG msg;
		while(PeekMessage(&msg,NULL,0,0,PM_REMOVE))//post all messages
		{
			TranslateMessage(&msg);
			DispatchMessage(&msg);
		}
		if(G.m_bESCStop)
			break;
		/*
		DoEvents
		If Mang <> Tmang Then  //防止同时运行多个本线程的代码
			Mang = -1
			Exit Sub
		End If
		*/
		//Picture2保存绘制的图像(实际的图形),Picture1用来显示,以下代码实现显示,并尽量减少绘图操作。
		/*tempA = int(A * frmMain.Picture1.ScaleWidth / frmMain.Picture2.ScaleWidth)
		If (tempA <> temp1 And tempA <> temp2) Then
			temp2 = temp1: temp1 = tempA
			frmMain.Picture1.PaintPicture frmMain.Picture2.Image, _
							 tempA, _
							 0, _
							 int(1# * frmMain.Picture1.ScaleWidth / frmMain.Picture2.ScaleWidth + 0.999999999999), _
							 frmMain.Picture1.ScaleHeight, _
							 A, _
							 0, _
							 1, _
							 frmMain.Picture2.ScaleHeight, _
							 &HCC0020
		Else
			tempA = -1
		End If
		*/
	}
    
    //整幅图像全部刷新显示
    /*frmMain.Picture1.PaintPicture frmMain.Picture2.Image, 0, 0, _
                     frmMain.Picture1.ScaleWidth, frmMain.Picture1.ScaleHeight, _
                     0, _
                     0, frmMain.Picture2.ScaleWidth, _
                     frmMain.Picture2.ScaleHeight, &HCC0020
    frmMain.Picture1.Refresh

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -