void AddRectangle(CantorRectangle rect) { CantorRectangle temp1 = new CantorRectangle(rect.x, rect.y + 20, rect.width / 3.0f); CantorRectangle temp2 = new CantorRectangle(rect.x + 2 / 3.0f * rect.width, rect.y + 20, rect.width / 3.0f); group1 += temp1; group1 += temp2; group1 -= rect; }
private void button1_Click(object sender, EventArgs e) { graph.Clear(Color.Transparent); CantorRectangle rect1 = new CantorRectangle(0, 30, 1200); iter = TextBoxToInt(mainTextBox); foreach (CantorRectangle i in group1.group) { group1 -= i; } foreach (CantorRectangle i in group1.group) { group1 -= i; } group1 += rect1; group1.group[0].DrawRectangle(); CantorFractal(0); }
public static CantorRectangleGroup operator -(CantorRectangleGroup gr, CantorRectangle rect) { bool isFind = false; for (int i = 0; i < gr.group.Length; i++) { if (isFind) { CantorRectangle temp = gr.group[i]; gr.group[i] = gr.group[i - 1]; gr.group[i - 1] = temp; } if (gr.group[i] == rect) { isFind = true; } } if (isFind) { Array.Resize(ref gr.group, gr.group.Length - 1); } return(gr); }