Привет, я создаю симуляцию движения Брауна на 3D-поверхности, поэтому я попытался связать 3dplot и функцию анимации. Все компилируется без ошибок, но моя проблема в том, что сфера, которую я хочу произвольно перемещать по поверхности, не отображается (и, конечно, не анимируется). В чем может быть проблема? Вот код:
Z[x_, y_] := 4 x + 3 y - 2
r = 0.05
Bok = 100
X[1] = RandomReal[{0, Bok}]
Y[1] = RandomReal[{0, Bok}]
Z[1] := Z[X1, Y1]
P[1] = Point[{X1, Y1, Z1}]
For[i = 1, i < 1000, i++, X[i + 1] = X[i] + RandomChoice[{0.1, -0.1}];
Y[i + 1] = Y[i] + RandomChoice[{0.1, -0.1}];
Z[i + 1] = Z[X[i + 1], Y[i + 1]];
P[i + 1] := Table[ Point[{X[i + 1], Y[i + 1], Z[i + 1]}], {i, 1000}];
(*Print[P[i+1]]*)
]
Animate[
Show[
Plot3D[Z[x, y], {x, 0, Bok}, {y, 0, Bok},
ColorFunction -> "DarkRainbow", Mesh -> None],
Graphics3D[
Black, Sphere[P[i], r]
]
],
{i, 1, 1000}
]
Sphere
в качестве аргумента нужен список координат, а неPoint
. Это должно вызвать ошибку (ваше графическое поле розовое?) - person agentp   schedule 07.05.2017