Чувствую себя дико тупым. Пытался применить это к своему коду, но ничего хорошего кроме обычного вращения без нормального поворота не получается.
Может кто сможет подпнуть меня в нужное направление?
В общем мой кусок кода:
Код:
var
i,j: Integer;
angle: Single;
begin
angle:=a*5000;
//for planes
for i:=1 to 3 do
begin
for j:=1 to 3 do
begin
with GridsDC[i,j] do
begin
if i=1 then
begin
Position.X:=CubeDC.Position.X+2*cos(angle)-1;
Position.Z:=CubeDC.Position.Z+2*sin(angle);
end;
if i=2 then
begin
Position.X:=CubeDC.Position.X+2*cos(angle);
Position.Z:=CubeDC.Position.Z+2*sin(angle);
end;
if i=3 then
begin
Position.X:=CubeDC.Position.X+2*cos(angle)+1;
Position.Z:=CubeDC.Position.Z+2*sin(angle);
end;
// Turn(0.2);
end;
end;
end;
//for cube
with CubeDC do
begin
// Turn(0.2);
end;
Вращение вокруг своих осей закомментированно, так как портит общею наглядность.
Результат того что получилось у меня:
И тут большой косяк - оно должно еще и ПРАВИЛЬНО смещаться по осям x и z, для организации ПРАВИЛЬНОГО вращения, но я не знаю как это ПРАВИЛЬНО сделать. Помогите.