gpt4 book ai didi

java - 生成分形漩涡

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:08:46 26 4
gpt4 key购买 nike

<分区>

我需要使用算法 Iterated Function System 绘制分形漩涡.

Targeted Fractal Image

这个分形有系数:

0.745455 -0.459091  0.406061  0.887121 1.460279 0.691072 0.912675
-0.424242 -0.065152 -0.175758 -0.218182 3.809567 6.741476 0.087325

这是我的代码:

import java.awt.Graphics;
import javax.swing.JPanel;

public class Surface extends JPanel {
double a1 = 0.745455;
double b1 = -0.459091;
double d1 = 0.406061;
double e1 = 0.887121;
double c1 = 1.460279;
double f1 = 0.691072;
double p1 = 0.912675;

double a2 = -0.424242;
double b2 = -0.065152;
double d2 = -0.175758;
double e2 = -0.218182;
double c2 = 3.809567;
double f2 = 6.741476;
double p2 = 0.087325;

double x1(double x, double y) {
return a1 * x + b1 * y + c1;
}

double y1(double x, double y) {
return d1 * x + e1 * y + f1;
}

double x2(double x, double y) {
return a2 * x + b2 * y + c2;
}

double y2(double x, double y) {
return d2 * x + e2 * y + f2;
}

public void paint(Graphics g) {
drawFractal(g);
}

void drawFractal(Graphics g) {
double x1 = 300;
double y1 = 300;
double x2 = 0;
double y2 = 0;
g.fillOval(300 + (int) x1, 300 + (int) y1, 3, 3);
for (int i = 0; i < 10000; i++) {
double p = Math.random();
if (p < 0.91675) {
x2 = x1(x1, y1);
y2 = y1(x1, y1);
g.fillOval(300 + (int) x2, 300 + (int) y2, 3, 3);
x1 = x2;
y1 = y2;
} else {
x2 = x2(x1, y1);
y2 = y2(x1, y1);
g.fillOval(300 + (int) x2, 300 + (int) y2, 3, 3);
x1 = x2;
y1 = y2;
}
}
}
}

不幸的是,使用这段代码我得到了错误的图片:

Current Fractal Image

如果有人能指出我的错误就太好了。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com