Трехмерная графика
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: реферат на тему жизнь, реферат по экологии
| Добавил(а) на сайт: Суворов.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 | Следующая страница реферата
Tree -> Poly -> Draw ( PrCntr ); if ( Tree -> Right != NULL ) DrawBSPTree ( Tree -> Right, PrCntr );
}
}
Далее представлена демонстрационная программа, которая выполняет все вышеперечисленные операции с тетраэдром.
//Файл 3dgame.cpp
#include
#include
#include
#include
#include
#include
#include "3dworks.h"
void DrawObject ( GrObject* Obj, const Vector& v )
{ for ( int i = 0; i < Obj->FacetNumber; i++ ) if ( IsVisible ( Obj->Facet[i], v )) Obj->Facet[i].Draw ( v );
}
main ()
{
Vector Poly1[3], Poly2[3], Poly3[3], Poly4[3];
Polygon O[4];
Vector A ( -50, 0, 0 ),
B ( 0, 0, 50 ),
C ( 50, 0, 0 ),
D ( 0, 100, 0 ),
PrCenter ( 0, 0, 1000 );
Poly1[0] = A; Poly2[0] = B;
Poly1[1] = D; Poly2[1] = D;
Poly1[2] = B; Poly2[2] = C;
Poly3[0] = C; Poly4[0] = C;
Poly3[1] = A; Poly4[1] = D;
Poly3[2] = B; Poly4[2] = A;
Polygon * P1 = new Polygon ( Poly1, 3, 11, OneSd );
Polygon * P2 = new Polygon ( Poly2, 3, 12, OneSd );
Polygon * P3 = new Polygon ( Poly3, 3, 13, OneSd );
Polygon * P4 = new Polygon ( Poly4, 3, 14, OneSd );
O[0] = *P1; O[1] = *P2;
O[2] = *P3; O[3] = *P4;
delete P1; delete P2; delete P3; delete P4;
GrObject * Obj = new GrObject ( O, 4, Vector ( 0 ) );
double fi = 0.1, psi = 0.1, step = 0.1; int ch = 0, Page = 3;
int driver = DETECT, mode, res; initgraph ( &driver, &mode, "" ); if ( ( res = graphresult () ) != grOk ) { printf ( "nGraphics error: %sn", grapherrormsg ( res ) ); exit ( 1 );
} setgraphmode ( 1 );
DrawObject ( Obj, PrCenter );
do {
setactivepage ( Page % 2 ); clearviewport (); if ( kbhit ())
{ switch ( ch = getch() ) { case '+': Obj->ObjScale ((1.1,1.1,1.1)); break; case '-': Obj->ObjScale ((0.9,0.9,0.9)); break; case 'x': Obj->ObjMirrorX (); break; case 'y': Obj->ObjMirrorY (); break; case 'z': Obj->ObjMirrorZ (); break;
}; if ( ch == 0 )
{ switch ( ch = getch () ) { case 72 : fi -= step; break; case 80 : fi += step; break; case 75 : psi += step; break; case 77 : psi -= step; break;
};
};
Рекомендуем скачать другие рефераты по теме: рефераты рб, культурология шпаргалки.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 | Следующая страница реферата