Draw a rotating cube: Difference between revisions

Content added Content deleted
Line 1,812: Line 1,812:
{{libheader|SDL2}}
{{libheader|SDL2}}
{{trans|Ada}}
{{trans|Ada}}
<lang objeck>
<lang objeck>#~
Rotating Cube
~#

use Collection.Generic;
use Collection.Generic;
use Game.SDL2;
use Game.SDL2;
Line 1,891: Line 1,894:
sinY := angleY->Sin();
sinY := angleY->Sin();
cosY := angleY->Cos();
cosY := angleY->Cos();
node_sizes := @nodes->Size();
size := node_sizes[0];


node_sizes := @nodes->Size();
size := node_sizes[0];
for(i := 0; i < size; i += 1;) {
for(i := 0; i < size; i += 1;) {
x := @nodes[i, 0];
x := @nodes[i, 0];
Line 1,910: Line 1,914:


method : DrawCube() ~ Nil {
method : DrawCube() ~ Nil {
@framework->GetRenderer()->SetDrawColor(0, 220, 0, 0);

edge_sizes := @edges->Size();
edge_sizes := @edges->Size();
size := edge_sizes[0];
size := edge_sizes[0];

@framework->GetRenderer()->SetDrawColor(0, 220, 0, 0);
for(i := 0; i < size; i += 1;) {
for(i := 0; i < size; i += 1;) {
x0y0 := @nodes[@edges[i, 0], 0];
x0y0 := @nodes[@edges[i, 0], 0];
Line 1,921: Line 1,925:
x1y1 := @nodes[@edges[i, 1], 1];
x1y1 := @nodes[@edges[i, 1], 1];


@framework->GetRenderer()->DrawLine(x0y0 + GameConsts->DRAW_OFFSET, x0y1 + GameConsts->DRAW_OFFSET,
@framework->GetRenderer()->DrawLine(x0y0 + GameConsts->DRAW_OFFSET, x0y1 + GameConsts->DRAW_OFFSET, x1y0 + GameConsts->DRAW_OFFSET, x1y1 + GameConsts->DRAW_OFFSET);
x1y0 + GameConsts->DRAW_OFFSET, x1y1 + GameConsts->DRAW_OFFSET);
};
};
}
}