1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
| [xS0,yS0,zS0] = sphere; % солнышко
[xJ0,yJ0,zJ0] = sphere; %Юпитер
[xT0,yT0,zT0] = sphere; %Титан
[xM0,yM0,zM0] = sphere; %moon
load detail
hemisphere1 = [ones(180,0), flipud(X), ones(180,0)];
RS = 25;
RJ = 20; % Radius Jup
RT = 10; % Radius Titan
RM = 5;
n=20;
dTheta = 10/n;
ROJ = 130;
ROT = 120; % Radius orb Titan
ROM = 20;
dxJ = ROJ; dyJ = 0;
dxT = dxJ+ROJ; dyT = 0;
dxM = dxT+ROM; dyM = 0;
xS = xS0*RS; yS = yS0*RS; zS = zS0*RS;
xJ = xJ0*RJ+dxJ; yJ = yJ0*RJ+dyJ; zJ = zJ0*RJ;
xT = xT0*RT+dxT; yT = yT0*RT+dyT; zT = zT0*RT;
xM = xM0*RM+dxM; yM = yM0*RM+dyM; zM = zM0*RM;
surf(xS,yS,zS);
hold on;
surf(xJ,yJ,zJ);
surf(xT,yT,zT);
surf(xM,yM,zM);
axis off;
axis equal;
axis([-400 400 -400 400 -400 400]);
zoom(2)
%axis([-2500 2500 -2500 2500 -2500 500]);
view(0, 100)
for i=0:1:1600
cla
dxJ = ROJ*2*cosd(-2.5*i);
dyJ = ROJ*sind(-2.5*i);
dxT = dxJ+ROT*2*cosd(-2.5*i);
dyT = dyJ+ROT*sind(-2.5*i);
dxM = dxT+ROM*4*cosd(2*i);
dyM = dyT+ROM*sind(2*i);
xS = xS0*RS; yS = yS0*RS; zS = zS0*RS;
xJ = xJ0*RJ+dxJ; yJ = yJ0*RJ+dyJ; zJ = zJ0*RJ;
xT = xT0*RT+dxT; yT = yT0*RT+dyT; zT = zT0*RT;
xM = xM0*RM+dxM; yM = yM0*RM+dyM; zM = zM0*RM;
shading flat
h1=surface(xS,yS,zS);
set(h1, 'CData', hemisphere1, ...
'FaceColor', 'texturemap')
surf(xJ,yJ,zJ);
surf(xT,yT,zT);
surf(xM,yM,zM);
camorbit(-dTheta*3, 0);
pause(0.05);
end;
Дмитрий Калошин
даже вот так,осталось только орбиты выровнять,помогите ребятки
20:04:44
[xS0,yS0,zS0] = sphere; % солнышко
[xJ0,yJ0,zJ0] = sphere; %Юпитер
[xT0,yT0,zT0] = sphere; %Титан
[xM0,yM0,zM0] = sphere; %moon
load detail
hemisphere1 = [ones(180,0), flipud(X), ones(180,0)];
RS = 25;
RJ = 15; % Radius Jup
RT = 7; % Radius Titan
RM = 3;
n=20;
dTheta = 10/n;
ROJ = 125;
ROT = 80; % Radius orb Titan
ROM = 20;
dxJ = ROJ; dyJ = 0;
dxT = dxJ+ROJ; dyT = 0;
dxM = dxT+ROM; dyM = 0;
xS = xS0*RS; yS = yS0*RS; zS = zS0*RS;
xJ = xJ0*RJ+dxJ; yJ = yJ0*RJ+dyJ; zJ = zJ0*RJ;
xT = xT0*RT+dxT; yT = yT0*RT+dyT; zT = zT0*RT;
xM = xM0*RM+dxM; yM = yM0*RM+dyM; zM = zM0*RM;
surf(xS,yS,zS);
hold on;
surf(xJ,yJ,zJ);
surf(xT,yT,zT);
surf(xM,yM,zM);
axis off;
axis equal;
axis([-400 400 -400 400 -400 400]);
zoom(2)
%axis([-2500 2500 -2500 2500 -2500 500]);
view(0, 100)
for i=0:1:1600
cla
dxJ = ROJ*2*sind(-2.5*i);
dyJ = ROJ*cosd(-2.5*i);
dxT = dxJ+ROT*cosd(-2.5*i);
dyT = dyJ+ROT*sind(-2.5*i);
dxM = dxT+ROM*2*cosd(2*i);
dyM = dyT+ROM*sind(2*i);
xS = xS0*RS; yS = yS0*RS; zS = zS0*RS;
xJ = xJ0*RJ+dxJ; yJ = yJ0*RJ+dyJ; zJ = zJ0*RJ;
xT = xT0*RT+dxT; yT = yT0*RT+dyT; zT = zT0*RT;
xM = xM0*RM+dxM; yM = yM0*RM+dyM; zM = zM0*RM;
shading flat
h1=surface(xS,yS,zS);
set(h1, 'CData', hemisphere1, ...
'FaceColor', 'texturemap')
surf(xJ,yJ,zJ);
surf(xT,yT,zT);
surf(xM,yM,zM);
camorbit(-dTheta*3, 0);
pause(0.05);
end; |