Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void button15_Click(object sender, EventArgs e)
- {
- Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
- Graphics gr = Graphics.FromImage(bmp);
- int x0 = pictureBox1.Width / 2, y0 = pictureBox1.Height / 2, r= (pictureBox1.Height / 2) - 20;
- double teta;
- int x1, y1;
- int R = (int)(pictureBox1.Width / 2.0 - 20);
- Point[] punkty = new Point[r];
- for (int j = 0; j < 4; j++)
- {
- teta = (j*90*Math.PI)/180.0;
- r = (pictureBox1.Height / 2) - 20;
- int i = 0;
- while (r > 0)
- {
- x1 = (int)(r * Math.Sin(teta) + x0);
- y1 = (int)(r * Math.Cos(teta) + y0);
- punkty[i++] = new Point(x1, y1);
- teta -= ((5.0 * Math.PI) / 180.0);
- r--;
- }
- gr.DrawCurve(pen1, punkty);
- }
- gr.DrawEllipse(pen1, 20, 20, 2 * R, 2 * R);
- pictureBox1.Image = bmp;
- }
- private void button16_Click(object sender, EventArgs e)
- {
- Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
- Graphics gr = Graphics.FromImage(bmp);
- int x0 = pictureBox1.Width / 2, y0 = pictureBox1.Height / 2, r = (pictureBox1.Height / 2) - 20;
- double teta = 0;
- int x1, y1;
- int ilePkt = 20;
- int.TryParse(textBox1.Text, out ilePkt);
- Point[] punkty = new Point[ilePkt];
- for (int i = 0; i < ilePkt; i++)
- {
- x1 = (int)(r * Math.Sin(teta) + x0);
- y1 = (int)(r * Math.Cos(teta) + y0);
- punkty[i] = new Point(x1, y1);
- teta += ((360.0/ilePkt) * Math.PI) / 180.0;
- }
- for (int i=0; i<ilePkt; i++)
- {
- for (int j=0; j<ilePkt-1; j++)
- {
- gr.DrawLine(pen1, punkty[i], punkty[j]);
- }
- }
- pictureBox1.Image = bmp;
- }
- private void button17_Click(object sender, EventArgs e)
- {
- Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
- Graphics gr = Graphics.FromImage(bmp);
- int ile = 29;
- int.TryParse(textBox1.Text, out ile);
- Point[][] tab = new Point[4][];
- tab[0] = new Point[ile];
- tab[1] = new Point[ile];
- tab[2] = new Point[ile];
- tab[3] = new Point[ile];
- for (int i=0; i<ile; i++)
- {
- tab[0][i] = new Point(i*(pictureBox1.Width/ile), 0);
- tab[1][i] = new Point(pictureBox1.Width, i*(pictureBox1.Height/ile));
- tab[2][i] = new Point(pictureBox1.Width- i*(pictureBox1.Width/ile), pictureBox1.Height);
- tab[3][i] = new Point(0, pictureBox1.Height - i*(pictureBox1.Height/ile));
- }
- int ileFib = 2, fib1=1, fib2=1, fib3=0;
- for (int i=0; i<ile*4; i++)
- {
- fib3 = fib1 + fib2;
- fib1 = fib2;
- fib2 = fib3;
- if (fib3 < ile*4) ileFib++;
- }
- int[] tabFib = new int[ileFib];
- tabFib[0] = 1;
- tabFib[1] = 1;
- for (int i=2; i<ileFib; i++)
- tabFib[i] = tabFib[i-1] + tabFib[i-2];
- bool czy = false;
- ///////////////1
- for (int i = 0; i < ile; i++)
- {
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[0][i], tab[1][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (2 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[0][i], tab[2][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (3 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[0][i], tab[3][j]);
- czy = false;
- }
- }
- //'
- for (int i = 0; i < ile; i++)
- {
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[1][i], tab[2][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (2 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[1][i], tab[3][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (3 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[1][i], tab[0][j]);
- czy = false;
- }
- }
- //'
- for (int i = 0; i < ile; i++)
- {
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[2][i], tab[3][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (2 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[2][i], tab[0][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (3 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[2][i], tab[1][j]);
- czy = false;
- }
- }
- //'
- for (int i = 0; i < ile; i++)
- {
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[3][i], tab[0][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (2 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[3][i], tab[1][j]);
- czy = false;
- }
- for (int j = 0; j < ile; j++)
- {
- for (int z = 0; z < ileFib; z++)
- if (3 * ile + j - i == tabFib[z])
- czy = true;
- if (czy) gr.DrawLine(pen1, tab[3][i], tab[2][j]);
- czy = false;
- }
- }
- pictureBox1.Image = bmp;
- }
- private void button22a_Click(object sender, EventArgs e)
- {
- Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
- Graphics gr = Graphics.FromImage(bmp);
- Point p1 = new Point(0,0);
- Point p2 = new Point(pictureBox1.Width, 0);
- Point p3 = new Point(pictureBox1.Width, pictureBox1.Height);
- Point p4 = new Point(0, pictureBox1.Height);
- Point tmp = p1;
- double mi = 0;
- Double.TryParse(textBox1.Text, out mi);
- for (int i=0; i<31; i++)
- {
- gr.DrawLine(pen1, p1, p2);
- gr.DrawLine(pen1, p2, p3);
- gr.DrawLine(pen1, p3, p4);
- gr.DrawLine(pen1, p4, p1);
- p1.X = (int)((1 - mi) * p1.X + mi * p2.X);
- p1.Y = (int)((1 - mi) * p1.Y + mi * p2.Y);
- p2.X = (int)((1 - mi) * p2.X + mi * p3.X);
- p2.Y = (int)((1 - mi) * p2.Y + mi * p3.Y);
- p3.X = (int)((1 - mi) * p3.X + mi * p4.X);
- p3.Y = (int)((1 - mi) * p3.Y + mi * p4.Y);
- p4.X = (int)((1 - mi) * p4.X + mi * tmp.X);
- p4.Y = (int)((1 - mi) * p4.Y + mi * tmp.Y);
- tmp = p1;
- }
- pictureBox1.Image = bmp;
- }
- private void button1_Click(object sender, EventArgs e)
- {
- Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
- Graphics gr = Graphics.FromImage(bmp);
- gr.DrawLine(pen3, 0, pictureBox1.Height / 2, pictureBox1.Width, pictureBox1.Height / 2);
- gr.DrawLine(pen3, pictureBox1.Width / 2, 0, pictureBox1.Width / 2, pictureBox1.Height);
- Point[] punkty = new Point[4];
- int tmp = 0;
- int.TryParse(textBox1.Text, out tmp);
- punkty[0].X = tmp;
- int.TryParse(textBox2.Text, out tmp);
- punkty[0].Y = tmp;
- int.TryParse(textBox3.Text, out tmp);
- punkty[1].X = tmp;
- int.TryParse(textBox4.Text, out tmp);
- punkty[1].Y = tmp;
- int.TryParse(textBox5.Text, out tmp);
- punkty[2].X = tmp;
- int.TryParse(textBox6.Text, out tmp);
- punkty[2].Y = tmp;
- int.TryParse(textBox7.Text, out tmp);
- punkty[3].X = tmp;
- int.TryParse(textBox8.Text, out tmp);
- punkty[3].Y = tmp;
- Point punkt_przeciecia = new Point();
- double delta = (double)(punkty[1].X - punkty[0].X) * (double)(punkty[2].Y - punkty[3].Y) - (double)(punkty[2].X - punkty[3].X) * (double)(punkty[1].Y - punkty[0].Y);
- double delta_mi = 0;
- double mi;
- gr.DrawLine(pen1, punkty[0].X + pictureBox1.Width / 2, (-1) * punkty[0].Y + pictureBox1.Height / 2, punkty[1].X + pictureBox1.Width / 2, (-1) * punkty[1].Y + pictureBox1.Height / 2);
- gr.DrawLine(pen2, punkty[2].X + pictureBox1.Width / 2, (-1) * punkty[2].Y + pictureBox1.Height / 2, punkty[3].X + pictureBox1.Width / 2, (-1) * punkty[3].Y + pictureBox1.Height / 2);
- if (delta != 0)
- {
- delta_mi = (double)(punkty[2].X - punkty[0].X) * (double)(punkty[2].Y - punkty[3].Y) - (double)(punkty[2].X - punkty[3].X) * (double)(punkty[2].Y - punkty[0].Y);
- mi = delta_mi / delta;
- punkt_przeciecia.X = (int)((1 - mi) * punkty[0].X + mi * punkty[1].X);
- punkt_przeciecia.Y = (int)((1 - mi) * punkty[0].Y + mi * punkty[1].Y);
- textBox9.Text = punkt_przeciecia.X.ToString();
- textBox10.Text = punkt_przeciecia.Y.ToString();
- gr.FillEllipse(pen4, punkt_przeciecia.X + pictureBox1.Width/2 - 5, -1 *punkt_przeciecia.Y + pictureBox1.Height/2 - 5, 10, 10);
- }
- else
- MessageBox.Show("Proste dla podanych punktów są równoległe.");
- pictureBox1.Image = bmp;
- }
- private void button2_Click(object sender, EventArgs e)
- {
- Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
- Graphics gr = Graphics.FromImage(bmp);
- gr.DrawLine(pen3, 0, pictureBox1.Height / 2, pictureBox1.Width, pictureBox1.Height / 2);
- gr.DrawLine(pen3, pictureBox1.Width / 2, 0, pictureBox1.Width / 2, pictureBox1.Height);
- Point po1 = new Point(), po2 = new Point();
- double a = 0, b = 0, c = 0, d = 0, teta = 0;
- double tmp = 0;
- double.TryParse(textBox11.Text, out tmp);
- po1.X = (int)tmp;
- double.TryParse(textBox12.Text, out tmp);
- po1.Y = (int)tmp;
- double.TryParse(textBox13.Text, out tmp);
- po2.X = (int)tmp;
- double.TryParse(textBox14.Text, out tmp);
- po2.Y = (int)tmp;
- double l1, l2;
- l1 = Math.Pow((Math.Pow(po1.X, 2) + Math.Pow(po1.Y, 2)),0.5);
- l2 = Math.Pow((Math.Pow(po2.X, 2) + Math.Pow(po2.Y, 2)), 0.5);
- a = po1.X / l1;
- b = po1.Y / l1;
- c = po2.X / l2;
- d = po2.Y / l2;
- double acbd = a * c + b * d;
- if (acbd > 0)
- teta = Math.Acos(acbd);
- else
- teta = Math.Acos(-1 * acbd);
- gr.DrawLine(pen2, pictureBox1.Width/2, pictureBox1.Height/2, po1.X + pictureBox1.Width/2, (-1)*po1.Y + pictureBox1.Height/2);
- gr.DrawLine(pen1, pictureBox1.Width/2, pictureBox1.Height/2, po2.X + pictureBox1.Width/2, (-1)*po2.Y + pictureBox1.Height/2);
- textBox15.Text = (teta * 180.0 / Math.PI).ToString();
- pictureBox1.Image = bmp;
- }
- private void button3_Click(object sender, EventArgs e)
- {
- Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
- Graphics gr = Graphics.FromImage(bmp);
- gr.DrawLine( pen3, pictureBox1.Width/2, pictureBox1.Height / 2, pictureBox1.Width, pictureBox1.Height / 2 );
- gr.DrawLine( pen3, pictureBox1.Width / 2, 0, pictureBox1.Width / 2, pictureBox1.Height/2 );
- gr.DrawLine( pen3, pictureBox1.Width / 2, pictureBox1.Height/2, 0, (int)(pictureBox1.Height*(Math.Pow(3, 0.5)/2.0)) );
- double p1x=0, p1y = 0, p1z = 0, p2x = 0, p2y = 0, p2z = 0, bx = 0, by = 0, bz = 0, dx = 0, dy = 0, dz = 0, nx = 0, ny = 0, nz = 0;
- double k = 0, mi = 0;
- double tmp=0;
- double.TryParse(textBox16.Text, out tmp);
- p1x = (int)tmp;
- double.TryParse(textBox17.Text, out tmp);
- p1y = (int)tmp;
- double.TryParse(textBox18.Text, out tmp);
- p1z = (int)tmp;
- double.TryParse(textBox19.Text, out tmp);
- p2x = (int)tmp;
- double.TryParse(textBox20.Text, out tmp);
- p2y = (int)tmp;
- double.TryParse(textBox21.Text, out tmp);
- p2z = (int)tmp;
- double.TryParse(textBox22.Text, out tmp);
- nx = (int)tmp;
- double.TryParse(textBox23.Text, out tmp);
- ny = (int)tmp;
- double.TryParse(textBox24.Text, out tmp);
- nz = (int)tmp;
- double.TryParse(textBox25.Text, out k);
- bx = p1x;
- by = p1y;
- bz = p1z;
- dx = p2x - p1x;
- dy = p2y - p1y;
- dz = p2z - p1z;
- double nxb, nxd;
- nxb = nx * bx + ny * by + nz * bz;
- nxd = nx * dx + ny * dy + nz * dz;
- if (nxd != 0)
- {
- mi = (k - nxb) / (nxd);
- textBox27.Text = ((bx + mi*dx).ToString());
- textBox28.Text = ((by + mi * dy).ToString());
- textBox29.Text = ((bz + mi * dz).ToString());
- textBox26.Text = mi.ToString();
- gr.DrawLine(pen1, (int)(p1x + pictureBox1.Width/2 - (Math.Pow(3, 0.5) / 2.0) * p1z), (int)(((-1)*p1y )+ pictureBox1.Height/ 2 + (Math.Pow(3, 0.5) / 2.0) * p1z), (int)(p2x + pictureBox1.Width/ 2 - (Math.Pow(3, 0.5) / 2.0) * p2z), (int)(((-1)*p2y) + pictureBox1.Height/ 2 + (Math.Pow(3, 0.5) / 2.0) * p2z));
- gr.DrawLine(pen2, (int)(nx + pictureBox1.Width/2), (int)(pictureBox1.Height / 2), (int)(pictureBox1.Width / 2), (int)(-1*ny + pictureBox1.Height / 2) );
- gr.DrawLine(pen2, (int)(nx + pictureBox1.Width / 2), (int)(pictureBox1.Height / 2), (int)(pictureBox1.Width / 2 - (Math.Pow(3, 0.5) / 2.0) * nz), (int)(pictureBox1.Height / 2 + (Math.Pow(2, 0.5) / 2.0) * nz));
- gr.DrawLine(pen2, (int)(pictureBox1.Width / 2), (int)(-1 * ny + pictureBox1.Height / 2), (int)(pictureBox1.Width / 2 - (Math.Pow(3, 0.5) / 2.0) * nz), (int)(pictureBox1.Height / 2 + (Math.Pow(2, 0.5) / 2.0) * nz));
- }
- else
- MessageBox.Show("b*d musi być różne 0");
- pictureBox1.Image = bmp;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement