├── .github └── FUNDING.yml ├── COMPILADORES ├── Parser1.cpp ├── Parser2.cpp ├── Scanner1.cpp ├── Scanner2.cpp ├── Scanner3.cpp ├── Scanner4.cpp └── Scanner5.cpp ├── COMPUTAÇÃO GRÁFICA ├── 3D │ ├── Exemplo3DOrto.cpp │ └── Project6A_3D_ORTOGONAL.cpp ├── OPENGL │ ├── AULA1 - 3D │ │ ├── Makefile.win │ │ ├── Project3A_Translacao.cpp │ │ ├── Project3A_Translacao.dev │ │ ├── Project3A_Translacao.layout │ │ └── Project3A_Translacao.o │ ├── AULA1 │ │ ├── Makefile.win │ │ ├── Project1A.cpp │ │ ├── Project1A.dev │ │ └── Project1A.o │ ├── AULA2 - 3D │ │ ├── Project6A_3D_ORTOGONAL.cpp │ │ └── Project6A_3D_ORTOGONAL.exe │ ├── AULA2 │ │ ├── Project2A.cpp │ │ ├── Project2A.dev │ │ ├── Project2B.cpp │ │ └── Project2B_2ViewPorts.dev │ ├── AULA3 - 3D │ │ ├── Aula3.cpp │ │ └── Aula3.exe │ ├── AULA3 │ │ ├── Project2C_Zoom.cpp │ │ └── Project2C_Zoom.dev │ ├── AULA4 - 3D Iluminação │ │ ├── Aula4.cpp │ │ └── Aula4.exe │ ├── AULA4 │ │ ├── Makefile.win │ │ ├── Project3A_Translacao.cpp │ │ ├── Project3A_Translacao.dev │ │ └── Project3A_Translacao.o │ ├── AULA5 │ │ ├── Makefile.win │ │ ├── Project5_Animacao.cpp │ │ ├── Project5_Animacao.dev │ │ ├── Project5_Animacao.exe │ │ └── Project5_Animacao.o │ └── Guindaste │ │ ├── Makefile.win │ │ ├── Project3A_Translacao.cpp │ │ ├── Project3A_Translacao.dev │ │ └── Project3A_Translacao.o └── PROVA │ └── P01.cpp ├── LICENSE └── README.md /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: joaopauloaramuni 4 | -------------------------------------------------------------------------------- /COMPILADORES/Parser1.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************** 2 | * Universidade FUMEC * 3 | * Compiladores * 4 | * Prof. João Paulo Aramuni * 5 | * Parser 1 * 6 | * Algoritmo que implementa um Analisador Sintático Descendente Recursivo * 7 | * para a Gramática Livre de Contexto: S -> aSb | ba * 8 | ****************************************************************************************************/ 9 | 10 | //Bibliotecas 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | char prxtk; // contem o proximo token 17 | char tokens[256]; // tabela de tokens reconhecidos pela analise lexica 18 | int tk; // indice do vetor de tokens 19 | int numtk; // indica o numero de tokens 20 | int erro = 0; // booleano que indica se houve erro 21 | 22 | void verifica (char token) 23 | { 24 | if (token == prxtk) { 25 | tk ++; 26 | prxtk = tokens [tk]; 27 | } 28 | else { 29 | printf("Erro! esperado token: %c recebido: %c\n", token, prxtk); 30 | erro = 1; 31 | } 32 | } 33 | 34 | void S () 35 | { 36 | if (prxtk == 'a') { 37 | verifica ('a'); 38 | S (); 39 | verifica ('b'); 40 | } 41 | else 42 | if (prxtk == 'b') { 43 | verifica ('b'); 44 | verifica ('a'); 45 | } 46 | 47 | else { 48 | printf ("Erro! Esperado simbolos a ou b\n"); 49 | erro = 1; 50 | } 51 | } 52 | 53 | 54 | void lexico () { 55 | // neste exemplo a analise lexica somente le os caracteres do arquivo 56 | // e joga para o vetor tokens. 57 | printf ("Informe a sentenca a ser avaliada: "); 58 | gets (tokens); 59 | } 60 | 61 | 62 | int main() { 63 | 64 | // clrscr(); 65 | printf ("ASDR exemplo para gramatica:\n\tS -> aSb \n\t | ba \n\n"); 66 | lexico (); // realiza analise lexica 67 | tk = 0; 68 | numtk = strlen(tokens); 69 | prxtk = tokens [tk]; 70 | S (); // inicia a analise sintatica 71 | if (!erro) 72 | if (tk >= numtk) 73 | printf ("\n\nA sentenca avaliada pertence a gramatica!!"); 74 | else { 75 | printf ("\n\nO sufixo a seguir nao foi reconhecido: "); 76 | while (tokens [tk] != '\x0') 77 | printf ("%c", tokens[tk++]); 78 | } 79 | getch(); 80 | } 81 | 82 | -------------------------------------------------------------------------------- /COMPILADORES/Parser2.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************** 2 | * Universidade FUMEC * 3 | * Compiladores * 4 | * Prof. João Paulo Aramuni * 5 | * Parser 2 * 6 | * Algoritmo que implementa um Analisador Sintático Descendente Recursivo * 7 | * para a Gramática Livre de Contexto: S -> aSb | ba | y * 8 | ****************************************************************************************************/ 9 | 10 | //Bibliotecas 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | char prxtk; // contem o proximo token 17 | char tokens[256]; // tabela de tokens reconhecidos pela analise lexica 18 | int tk; // indice do vetor de tokens 19 | int numtk; // indica o numero de tokens 20 | int erro = 0; // booleano que indica se houve erro 21 | 22 | void verifica (char token) 23 | { 24 | if (token == prxtk) { 25 | tk ++; 26 | prxtk = tokens [tk]; 27 | } 28 | else { 29 | printf("Erro! esperado token: %c recebido: %c\n", token, prxtk); 30 | erro = 1; 31 | } 32 | } 33 | 34 | void S () 35 | { 36 | if (prxtk == 'a') { 37 | verifica ('a'); 38 | S (); 39 | verifica ('b'); 40 | } 41 | else 42 | if (prxtk == 'b' && tokens[tk+1] == 'a') { 43 | verifica ('b'); 44 | verifica ('a'); 45 | } 46 | else 47 | if (prxtk != 'b') { 48 | printf ("Erro! Esperado simbolos a ou b\n"); 49 | erro = 1; 50 | } 51 | 52 | } 53 | 54 | 55 | void lexico () { 56 | // neste exemplo a analise lexica somente le os caracteres do arquivo 57 | // e joga para o vetor tokens. 58 | printf ("Informe a sentenca a ser avaliada: "); 59 | gets (tokens); 60 | } 61 | 62 | 63 | int main() { 64 | 65 | // clrscr(); 66 | printf ("ASDR exemplo para gramatica:\n\tS -> aSb \n\t | ba | y \n\n"); 67 | lexico (); // realiza analise lexica 68 | tk = 0; 69 | numtk = strlen(tokens); 70 | prxtk = tokens [tk]; 71 | S (); // inicia a analise sintatica 72 | if (!erro) 73 | if (tk >= numtk) 74 | printf ("\n\nA sentenca avaliada pertence a gramatica!!"); 75 | else { 76 | printf ("\n\nO sufixo a seguir nao foi reconhecido: "); 77 | while (tokens [tk] != '\x0') 78 | printf ("%c", tokens[tk++]); 79 | } 80 | getch(); 81 | } 82 | 83 | -------------------------------------------------------------------------------- /COMPILADORES/Scanner1.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPILADORES/Scanner1.cpp -------------------------------------------------------------------------------- /COMPILADORES/Scanner2.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************** 2 | * Universidade FUMEC * 3 | * Compiladores * 4 | * Prof. João Paulo Aramuni * 5 | * Scanner 2 * 6 | * Verifica a validade de expressões da forma vr-1 op vr-2 * 7 | * onde vr-n será um número inteiro e op será um operador aritmético qualquer * 8 | * Ao encontrar uma expressão valida ele não encerra, mas continua a verificação, * 9 | * aceitando expressões da forma vr-1 op vr-2 op vr-3 * 10 | * * 11 | * PERMITINDO ESPAÇO EM BRANCO * 12 | ****************************************************************************************************/ 13 | 14 | //Bibliotecas 15 | #include 16 | #include 17 | #include 18 | #include 19 | 20 | //Define's 21 | #define op "+/-*" 22 | #define num "0123456789" 23 | #define letra "abcdefghijklmnopqrstuvxzABCDEFGHIJKLMNOPQRSTUVXZ" 24 | 25 | int search(char a, const char * str) { 26 | int j = 0, ret = 0; 27 | while (str[j] && !ret) { 28 | ret = (str[j] == a); 29 | j++; 30 | } 31 | return (ret); 32 | } 33 | 34 | int main() { 35 | char automato[60]; 36 | int i = 0, state = 0; 37 | 38 | printf("\tCompiladores - Scanner 2\n"); 39 | printf("\nAutomato para reconhecer expressoes aritmeticas"); 40 | printf("\nDigite a expressao (ate 60 digitos): \n"); 41 | 42 | gets(automato); 43 | while (state != 8) { 44 | switch (state) { 45 | case 0: 46 | while (automato[i] == ' ') { 47 | i++; 48 | } 49 | if (search(automato[i], letra)) { 50 | state = 1; 51 | i++; 52 | } else { 53 | printf("\nString invalida!!!"); 54 | getchar(); 55 | exit(1); 56 | } 57 | break; 58 | case 1: 59 | while (search(automato[i], letra)) { 60 | i++; 61 | } 62 | if (automato[i] == ' ') { 63 | state = 3; 64 | i++; 65 | } else if (automato[i] == '=') { 66 | state = 4; 67 | i++; 68 | } else if (search(automato[i], num)) { 69 | state = 2; 70 | i++; 71 | } else { 72 | printf("\nString invalida!!!"); 73 | getchar(); 74 | exit(1); 75 | } 76 | break; 77 | case 2: 78 | while (search(automato[i], num)) { 79 | i++; 80 | } 81 | if (automato[i] == ' ') { 82 | state = 3; 83 | i++; 84 | } else if (automato[i] == '=') { 85 | state = 4; 86 | i++; 87 | } else { 88 | printf("\nString invalida!!!"); 89 | getchar(); 90 | exit(1); 91 | } 92 | break; 93 | case 3: 94 | while (automato[i] == ' ') { 95 | i++; 96 | } 97 | if (automato[i] == '=') { 98 | state = 4; 99 | i++; 100 | } else { 101 | printf("\nString invalida!!!"); 102 | getchar(); 103 | exit(1); 104 | } 105 | i++; 106 | break; 107 | case 4: 108 | while (automato[i] == ' ') { 109 | i++; 110 | } 111 | if (search(automato[i], letra)) { 112 | state = 5; 113 | i++; 114 | } else if (search(automato[i], num)) { 115 | state = 6; 116 | i++; 117 | } else { 118 | printf("\nString invalida!!!"); 119 | getchar(); 120 | exit(1); 121 | } 122 | break; 123 | case 5: 124 | while (search(automato[i], letra)) { 125 | i++; 126 | } 127 | if (search(automato[i], num)) { 128 | state = 6; 129 | i++; 130 | } else if (automato[i] == ' ') { 131 | state = 7; 132 | i++; 133 | } else if (search(automato[i], op)) { 134 | state = 4; 135 | i++; 136 | } else if (automato[i] == '\0') { 137 | state = 8; 138 | } else { 139 | printf("\nString invalida!!!"); 140 | getchar(); 141 | exit(1); 142 | } 143 | break; 144 | case 6: 145 | while (search(automato[i], num)) { 146 | i++; 147 | } 148 | if (automato[i] == ' ') { 149 | state = 7; 150 | i++; 151 | } else if (search(automato[i], op)) { 152 | state = 4; 153 | i++; 154 | } else if (automato[i] == '\0') { 155 | state = 8; 156 | } else { 157 | printf("\nString invalida!!!"); 158 | getchar(); 159 | exit(1); 160 | } 161 | break; 162 | case 7: 163 | while (automato[i] == ' ') { 164 | i++; 165 | } 166 | if (search(automato[i], op)) { 167 | state = 4; 168 | i++; 169 | } else if (automato[i] == '\0') { 170 | state = 8; 171 | } else { 172 | printf("\nString invalida!!!"); 173 | getchar(); 174 | exit(1); 175 | } 176 | break; 177 | } 178 | } 179 | printf("\nString Valida"); 180 | getchar(); 181 | } 182 | -------------------------------------------------------------------------------- /COMPILADORES/Scanner3.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************************************** 2 | * Universidade FUMEC * 3 | * Compiladores * 4 | * Prof. João Paulo Aramuni * 5 | * Scanner 3 * 6 | * Verifica a validade de expressões da forma vr-1 op vr-2 * 7 | * onde vr-n será um número inteiro e op será um operador aritmético qualquer * 8 | * Ao encontrar uma expressão valida ele não encerra, mas continua a verificação, * 9 | * aceitando expressões da forma vr-1 op vr-2 op vr-3 * 10 | * * 11 | * PERMITINDO ESPAÇO EM BRANCO * 12 | * COM = * 13 | ****************************************************************************************************/ 14 | 15 | //Bibliotecas 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | //Define's 22 | #define oper "+/-*=" 23 | #define num "0123456789" 24 | #define letra "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvXxWwXxYyZz" 25 | 26 | int search(char a, const char * str) { 27 | int j = 0, ret = 0; 28 | while (str[j] && !ret) { 29 | ret = (str[j] == a); 30 | j++; 31 | } 32 | return (ret); 33 | } 34 | int main() { 35 | char automato[60]; 36 | int i = 0, state = 0; 37 | 38 | printf("\tCompiladores - Scanner 3 \n"); 39 | printf("\nAutomato para reconhecer expressoes aritmeticas"); 40 | printf("\nDigite a expressao (ate 60 digitos): \n"); 41 | gets(automato); 42 | 43 | while (state != 12) { 44 | switch (state) { 45 | case 0: 46 | while (automato[i] == ' ') { 47 | i++; 48 | } 49 | if (search(automato[i], letra)) { 50 | i++; 51 | state = 1; 52 | } else { 53 | printf("\nString invalida!!!"); 54 | getchar(); 55 | exit(1); 56 | } 57 | break; 58 | case 1: 59 | while (search(automato[i], letra)) { 60 | i++; 61 | } 62 | if (search(automato[i], num)) { 63 | i++; 64 | state = 2; 65 | } else if (automato[i] == ' ') { 66 | i++; 67 | state = 3; 68 | } else if (automato[i] == '=') { 69 | i++; 70 | state = 4; 71 | } else { 72 | printf("\nString invalida!!!"); 73 | getchar(); 74 | exit(1); 75 | } 76 | break; 77 | case 2: 78 | while (search(automato[i], num)) { 79 | i++; 80 | } 81 | if (automato[i] == ' ') { 82 | i++; 83 | state = 3; 84 | } else if (automato[i] == '=') { 85 | i++; 86 | state = 4; 87 | } else { 88 | printf("\nString invalida!!!"); 89 | getchar(); 90 | exit(1); 91 | } 92 | break; 93 | case 3: 94 | while (automato[i] == ' ') { 95 | i++; 96 | } 97 | if (automato[i] == '=') { 98 | i++; 99 | state = 4; 100 | } else { 101 | printf("\nString invalida!!!"); 102 | getchar(); 103 | exit(1); 104 | 105 | } 106 | break; 107 | case 4: 108 | while (automato[i] == ' ') { 109 | i++; 110 | } 111 | if (search(automato[i], letra)) { 112 | i++; 113 | state = 5; 114 | } else if (search(automato[i], num)) { 115 | i++; 116 | state = 6; 117 | } else { 118 | printf("\nString invalida!!!"); 119 | getchar(); 120 | exit(1); 121 | 122 | } 123 | break; 124 | case 5: 125 | while (search(automato[i], letra)) { 126 | i++; 127 | } 128 | if (automato[i] == ' ') { 129 | i++; 130 | state = 7; 131 | } else if (search(automato[i], num)) { 132 | i++; 133 | state = 6; 134 | } else if (search(automato[i], oper)) { 135 | i++; 136 | state = 8; 137 | } else { 138 | printf("\nString invalida!!!"); 139 | getchar(); 140 | exit(1); 141 | } 142 | break; 143 | case 6: 144 | while (search(automato[i], num)) { 145 | i++; 146 | } 147 | if (automato[i] == ' ') { 148 | i++; 149 | state = 7; 150 | } else if (search(automato[i], oper)) { 151 | i++; 152 | state = 8; 153 | } else { 154 | printf("\nString invalida!!!"); 155 | getchar(); 156 | exit(1); 157 | } 158 | break; 159 | case 7: 160 | while (automato[i] == ' ') { 161 | i++; 162 | } 163 | if (search(automato[i], oper)) { 164 | i++; 165 | state = 8; 166 | } else { 167 | printf("\nString invalida!!!"); 168 | getchar(); 169 | exit(1); 170 | } 171 | break; 172 | case 8: 173 | while (automato[i] == ' ') { 174 | i++; 175 | } 176 | if (search(automato[i], letra)) { 177 | i++; 178 | state = 9; 179 | } else if (search(automato[i], num)) { 180 | i++; 181 | state = 10; 182 | } else { 183 | printf("\nString invalida!!!"); 184 | getchar(); 185 | exit(1); 186 | } 187 | break; 188 | case 9: 189 | while (search(automato[i], letra)) { 190 | i++; 191 | } 192 | if (search(automato[i], num)) { 193 | i++; 194 | state = 10; 195 | } else if (automato[i] == ' ') { 196 | i++; 197 | state = 11; 198 | } else if (search(automato[i], oper)) { 199 | i++; 200 | state = 8; 201 | } else if (automato[i] == '\0') { 202 | state = 12; 203 | } else { 204 | printf("\nString invalida!!!"); 205 | getchar(); 206 | exit(1); 207 | } 208 | break; 209 | case 10: 210 | while (search(automato[i], num)) { 211 | i++; 212 | } 213 | if (automato[i] == ' ') { 214 | i++; 215 | state = 11; 216 | } else if (search(automato[i], oper)) { 217 | i++; 218 | state = 8; 219 | } else if (automato[i] == '\0') { 220 | state = 12; 221 | } else { 222 | printf("\nString invalida!!!"); 223 | getchar(); 224 | exit(1); 225 | } 226 | break; 227 | case 11: 228 | while (automato[i] == ' ') { 229 | i++; 230 | } 231 | if (search(automato[i], oper)) { 232 | i++; 233 | state = 8; 234 | } else if (automato[i] == '\0') { 235 | state = 12; 236 | } else { 237 | printf("\nString invalida!!!"); 238 | getchar(); 239 | exit(1); 240 | } 241 | break; 242 | } 243 | } 244 | printf("\nString Valida"); 245 | getchar(); 246 | } 247 | -------------------------------------------------------------------------------- /COMPILADORES/Scanner4.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPILADORES/Scanner4.cpp -------------------------------------------------------------------------------- /COMPILADORES/Scanner5.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPILADORES/Scanner5.cpp -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/3D/Exemplo3DOrto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/3D/Exemplo3DOrto.cpp -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/3D/Project6A_3D_ORTOGONAL.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | void Desenha (void) 4 | { 5 | glClear(GL_COLOR_BUFFER_BIT); 6 | glColor3f(1.0,1.0,1.0); 7 | glBegin(GL_TRIANGLES); 8 | glVertex2f(-40.0f,-40.0f); 9 | glVertex2f(0.0f,40.0f); 10 | glVertex2f(40.0f,-40.0f); 11 | glEnd(); 12 | 13 | glColor3f(1.0,0.0,0.0); 14 | //DESENHA O CUBO DE -20 A 20 (EM X, Y, Z) 15 | glutWireCube(40.0); 16 | 17 | glFlush(); 18 | } 19 | 20 | void especificaParametrosVisualizacao (void) 21 | { 22 | glMatrixMode(GL_PROJECTION); 23 | glLoadIdentity(); 24 | 25 | // ESPECIFICA A PROJECAO ORTOGONAL - ENTRE O ESPACO EM Z (ZMIN E ZMAX) 26 | //glOrtho (xMIN, xMAX, yMIN, YMAX, ZMIN, ZMAX) 27 | glOrtho(-65,65,-65,65,-400,400); 28 | 29 | glMatrixMode(GL_MODELVIEW); 30 | glLoadIdentity(); 31 | 32 | //POSICAO DO OBSERVADOR (X,Y,Z), DO ALVO (X,Y,Z) E DIRECAO DO VETOR UP (PARA X, PARA Y, PARA Z) 33 | gluLookAt(60,60,100,0,0,0,0,1,0); 34 | } 35 | 36 | void Inicializa (void) 37 | { 38 | glClearColor(0.0f, 0.0f, 0.0f, 1.0f); 39 | } 40 | 41 | int main (void) 42 | { 43 | glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); 44 | glutInitWindowPosition(0,0); 45 | glutInitWindowSize(400,400); 46 | glutCreateWindow("Teste_3D"); 47 | glutDisplayFunc(Desenha); 48 | especificaParametrosVisualizacao(); 49 | Inicializa(); 50 | glutMainLoop(); 51 | } 52 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1 - 3D/Makefile.win: -------------------------------------------------------------------------------- 1 | # Project: Project3A_Translacao 2 | # Makefile created by Dev-C++ 4.9.9.2 3 | 4 | CPP = g++.exe 5 | CC = gcc.exe 6 | WINDRES = windres.exe 7 | RES = 8 | OBJ = Project3A_Translacao.o $(RES) 9 | LINKOBJ = Project3A_Translacao.o $(RES) 10 | LIBS = -lopengl32 -lglut -lglu32 -mwindows -lopengl32 -lwinmm -lgdi32 11 | INCS = 12 | CXXINCS = 13 | BIN = Project3A_Translacao.exe 14 | CXXFLAGS = $(CXXINCS) 15 | CFLAGS = $(INCS) 16 | RM = rm -f 17 | 18 | .PHONY: all all-before all-after clean clean-custom 19 | 20 | all: all-before Project3A_Translacao.exe all-after 21 | 22 | 23 | clean: clean-custom 24 | ${RM} $(OBJ) $(BIN) 25 | 26 | $(BIN): $(OBJ) 27 | $(CPP) $(LINKOBJ) -o "Project3A_Translacao.exe" $(LIBS) 28 | 29 | Project3A_Translacao.o: Project3A_Translacao.cpp 30 | $(CPP) -c Project3A_Translacao.cpp -o Project3A_Translacao.o $(CXXFLAGS) 31 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1 - 3D/Project3A_Translacao.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | GLfloat win; 5 | 6 | void Desenha (void) 7 | { 8 | glClear(GL_COLOR_BUFFER_BIT); 9 | glColor3f(1.0,1.0,1.0); 10 | glBegin(GL_TRIANGLES); 11 | glVertex2f(-40.0f,-40.0f); 12 | glVertex2f(0.0f,40.f); 13 | glVertex2f(40.0f,-40.0f); 14 | glEnd(); 15 | glColor3f(1.0,0.0,0.0); 16 | glutWireCube(40.0); 17 | } 18 | 19 | void especificarParametrosVisualizacao(void) { 20 | glMatrixMode(GL_PROJECTION); 21 | glLoadIdentity(); 22 | glOrtho(-65,65,-65,65,-400,400); 23 | glMatrixMode(GL_MODELVIEW); 24 | glLoadIdentity(); 25 | gluLookAt(60,60,100,0,0,0,0,1,0); 26 | } 27 | 28 | void Inicializa (void) 29 | { 30 | glClearColor(0.0f,0.0f,0.0f,1.0f); 31 | } 32 | 33 | int main(void) 34 | { 35 | glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); 36 | glutInitWindowPosition(0,0); 37 | glutInitWindowSize(400,400); 38 | glutCreateWindow("Teste 3D"); 39 | glutDisplayFunc(Desenha); 40 | especificarParametrosVisualizacao(); 41 | Inicializa(); 42 | glutMainLoop(); 43 | } 44 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1 - 3D/Project3A_Translacao.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project3A_Translacao.dev 3 | Name=Project3A_Translacao 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lopengl32 -lwinmm -lgdi32_@@_ 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName=Project3A_Translacao.exe 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings=0000000000000000000000 31 | 32 | [Unit1] 33 | FileName=Project3A_Translacao.cpp 34 | CompileCpp=1 35 | Folder=Project3A_Translacao 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1 - 3D/Project3A_Translacao.layout: -------------------------------------------------------------------------------- 1 | [Editor_0] 2 | CursorCol=40 3 | CursorRow=30 4 | TopLine=1 5 | LeftChar=1 6 | Open=1 7 | Top=0 8 | [Editors] 9 | Focused=-1 10 | Order=-1,0 11 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1 - 3D/Project3A_Translacao.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA1 - 3D/Project3A_Translacao.o -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1/Makefile.win: -------------------------------------------------------------------------------- 1 | # Project: Project1A 2 | # Makefile created by Dev-C++ 4.9.9.2 3 | 4 | CPP = g++.exe 5 | CC = gcc.exe 6 | WINDRES = windres.exe 7 | RES = 8 | OBJ = Project1A.o $(RES) 9 | LINKOBJ = Project1A.o $(RES) 10 | LIBS = -lopengl32 -lglut -lglu32 -mwindows -lglu32 -lopengl32 -lwinmm -lgdi32 11 | INCS = 12 | CXXINCS = 13 | BIN = Project1A.exe 14 | CXXFLAGS = $(CXXINCS) 15 | CFLAGS = $(INCS) 16 | RM = rm -f 17 | 18 | .PHONY: all all-before all-after clean clean-custom 19 | 20 | all: all-before Project1A.exe all-after 21 | 22 | 23 | clean: clean-custom 24 | ${RM} $(OBJ) $(BIN) 25 | 26 | $(BIN): $(OBJ) 27 | $(CPP) $(LINKOBJ) -o "Project1A.exe" $(LIBS) 28 | 29 | Project1A.o: Project1A.cpp 30 | $(CPP) -c Project1A.cpp -o Project1A.o $(CXXFLAGS) 31 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1/Project1A.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | void Desenha(void) 4 | { 5 | glClear(GL_COLOR_BUFFER_BIT); 6 | glColor3f(1.0,1.0,1.0); 7 | glBegin(GL_QUADS); 8 | glVertex2f(-0.8,0.8); 9 | glVertex2f(0.8,0.8); 10 | glVertex2f(0.8,-0.8); 11 | glVertex2f(-0.8,-0.8); 12 | glEnd(); 13 | 14 | glColor3f(1.0,0.0,0.0); 15 | glBegin(GL_TRIANGLES); 16 | glVertex2f(-0.6,-0.6); 17 | glVertex2f(0.0,0.6); 18 | glVertex2f(0.6,-0.6); 19 | glEnd(); 20 | 21 | glColor3f(0.0,1.0,0.0); 22 | glBegin(GL_POLYGON); 23 | glVertex2f(-0.6,-0.4); 24 | glVertex2f(0.0,-0.3); 25 | glVertex2f(0.6,-0.4); 26 | glVertex2f(0.6,-0.6); 27 | glVertex2f(-0.6,-0.6); 28 | glEnd(); 29 | 30 | glColor3f(0.0,0.0,1.0); 31 | glLineWidth(2.0); 32 | glBegin(GL_LINES); 33 | glVertex2f(-1.0,1.0); 34 | glVertex2f(1.0,-1.0); 35 | glEnd(); 36 | glFlush(); 37 | } 38 | 39 | void Inicializa (void) 40 | { 41 | glClearColor(0.0,0.0,0.0,1.0); 42 | } 43 | 44 | int main(void) 45 | { 46 | glutInitWindowSize(400,400); 47 | glutInitWindowPosition(0,0); 48 | glutCreateWindow("teste"); 49 | Inicializa(); 50 | glutDisplayFunc(Desenha); 51 | glutMainLoop(); 52 | } 53 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1/Project1A.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project1A.dev 3 | Name=Project1A 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lglu32 -lopengl32 -lwinmm -lgdi32_@@_ 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName=Project1A.exe 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings=0000000000000000000000 31 | 32 | [VersionInfo] 33 | Major=0 34 | Minor=1 35 | Release=1 36 | Build=1 37 | LanguageID=1033 38 | CharsetID=1252 39 | CompanyName= 40 | FileVersion= 41 | FileDescription=Developed using the Dev-C++ IDE 42 | InternalName= 43 | LegalCopyright= 44 | LegalTrademarks= 45 | OriginalFilename= 46 | ProductName= 47 | ProductVersion= 48 | AutoIncBuildNr=0 49 | 50 | [Unit1] 51 | FileName=Project1A.cpp 52 | CompileCpp=1 53 | Folder=Project1A 54 | Compile=1 55 | Link=1 56 | Priority=1000 57 | OverrideBuildCmd=0 58 | BuildCmd= 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA1/Project1A.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA1/Project1A.o -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA2 - 3D/Project6A_3D_ORTOGONAL.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | void Desenha (void) 4 | { 5 | //Inicializa os buffers cor e profundidade 6 | glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 7 | glTranslatef(0.0,0.0,0.0); 8 | glColor3f(1.0,1.0,1.0); 9 | glBegin(GL_TRIANGLES); 10 | glVertex2f(-40.0f,-40.0f); 11 | glVertex2f(0.0f,40.0f); 12 | glVertex2f(40.0f,-40.0f); 13 | glEnd(); 14 | 15 | glTranslatef(0.0,0.0,0.0); 16 | glColor3f(1.0,0.0,0.0); 17 | //solid para preencher o cubo vermelho 18 | glutSolidCube(40.0); 19 | //DESENHA O CUBO DE -20 A 20 (EM X, Y, Z) 20 | //glutWireCube(40.0); 21 | 22 | //CUBO PREENCHIDO VERDE 23 | glTranslatef(20,0,-40); 24 | glColor3f(0,1,0); 25 | //solid para preencher o cubo vermelho 26 | glutSolidCube(40.0); 27 | 28 | //ESFERA PREECHIDA AZUL 29 | glTranslatef(-40,0,80); 30 | glColor3f(0,0,1); 31 | glutSolidSphere(15,50,50); 32 | 33 | //Dodecategrado 34 | glTranslatef(40,0,80); 35 | glColor3f(1,0,0); 36 | glutSolidDodecahedron(); 37 | glFlush(); 38 | } 39 | 40 | void especificaParametrosVisualizacao (void) 41 | { 42 | glMatrixMode(GL_PROJECTION); 43 | glLoadIdentity(); 44 | 45 | // ESPECIFICA A PROJECAO ORTOGONAL - ENTRE O ESPACO EM Z (ZMIN E ZMAX) 46 | //glOrtho (xMIN, xMAX, yMIN, YMAX, ZMIN, ZMAX) 47 | //glOrtho(-65,65,-65,65,-400,400); 48 | 49 | gluPerspective(80,1,20,300); 50 | glMatrixMode(GL_MODELVIEW); 51 | glLoadIdentity(); 52 | 53 | //POSICAO DO OBSERVADOR (X,Y,Z), DO ALVO (X,Y,Z) E DIRECAO DO VETOR UP (PARA X, PARA Y, PARA Z) 54 | gluLookAt(0,0,100,0,0,0,0,1,0); 55 | glEnable(GL_DEPTH_TEST); 56 | } 57 | 58 | void Inicializa (void) 59 | { 60 | glClearColor(0.0f, 0.0f, 0.0f, 1.0f); 61 | } 62 | 63 | int main (void) 64 | { 65 | glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); 66 | glutInitWindowPosition(0,0); 67 | glutInitWindowSize(400,400); 68 | glutCreateWindow("Teste_3D - Rafael Lott"); 69 | glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); 70 | glutDisplayFunc(Desenha); 71 | especificaParametrosVisualizacao(); 72 | Inicializa(); 73 | glutMainLoop(); 74 | } 75 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA2 - 3D/Project6A_3D_ORTOGONAL.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA2 - 3D/Project6A_3D_ORTOGONAL.exe -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA2/Project2A.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | //JANELA DE SELECAO E JANELA DE APRESENTACAO 3 | 4 | void Desenha(void) 5 | { 6 | glClear(GL_COLOR_BUFFER_BIT); 7 | 8 | glViewport(0,0,800,800); //CANTO INFERIOR ESQUERDO DA AEREA SELECIONADA EM 0,0 9 | // = CANTO INFERIOR ESQUERDO DA TELA; 10 | //LARGURA E ALTURA DA SELECAO = 800 X 800 (DOBRO DO TAMANHO) 11 | 12 | glColor3f(1.0,1.0,1.0); 13 | glBegin(GL_QUADS); 14 | glVertex2f(-0.8,0.8); 15 | glVertex2f(0.8,0.8); 16 | glVertex2f(0.8,-0.8); 17 | glVertex2f(-0.8,-0.8); 18 | glEnd(); 19 | 20 | glColor3f(1.0,0.0,0.0); 21 | glBegin(GL_TRIANGLES); 22 | glVertex2f(-0.6,-0.6); 23 | glVertex2f(0.0,0.6); 24 | glVertex2f(0.6,-0.6); 25 | glEnd(); 26 | 27 | glColor3f(0.0,1.0,0.0); 28 | glBegin(GL_POLYGON); 29 | glVertex2f(-0.6,-0.4); 30 | glVertex2f(0.0,-0.3); 31 | glVertex2f(0.6,-0.4); 32 | glVertex2f(0.6,-0.6); 33 | glVertex2f(-0.6,-0.6); 34 | glEnd(); 35 | 36 | glColor3f(0.0,0.0,1.0); 37 | glLineWidth(2.0); 38 | glBegin(GL_LINES); 39 | glVertex2f(-1.0,1.0); 40 | glVertex2f(1.0,-1.0); 41 | glEnd(); 42 | glFlush(); 43 | } 44 | 45 | void Inicializa (void) 46 | { 47 | glClearColor(0.0,0.0,0.0,1.0); 48 | gluOrtho2D(-10.0,10.0,-10.0,10.0); //REDEFINE SELECAO PARA 20 X 20 (REDUZ 10 VEZES) 49 | 50 | } 51 | 52 | int main(void) 53 | { 54 | glutInitWindowSize(400,400); 55 | glutInitWindowPosition(0,0); 56 | glutCreateWindow("teste"); 57 | Inicializa(); 58 | glutDisplayFunc(Desenha); 59 | glutMainLoop(); 60 | } 61 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA2/Project2A.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project2A.dev 3 | Name=Project2A 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName= 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings= 31 | 32 | [Unit1] 33 | FileName=Project2A.cpp 34 | CompileCpp=1 35 | Folder=Project2A 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA2/Project2B.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | //2 VIEWPORTS 3 | 4 | void DesenhaQuadro(void) //MUDOU O NOME DA FUNCAO QUE SERA EXECUTADA DUAS VEZES 5 | { 6 | //GLCLEAR VAI PARA A DESENHA (do contrario elimina o primeiro desenho quando faz o segundo) 7 | //A VIEWPORT VAI PARA A DESENHA E E EXECUTADA DUAS VEZES 8 | glColor3f(1.0,1.0,1.0); 9 | glBegin(GL_QUADS); 10 | glVertex2f(-0.8,0.8); 11 | glVertex2f(0.8,0.8); 12 | glVertex2f(0.8,-0.8); 13 | glVertex2f(-0.8,-0.8); 14 | glEnd(); 15 | 16 | glColor3f(1.0,0.0,0.0); 17 | glBegin(GL_TRIANGLES); 18 | glVertex2f(-0.6,-0.6); 19 | glVertex2f(0.0,0.6); 20 | glVertex2f(0.6,-0.6); 21 | glEnd(); 22 | 23 | glColor3f(0.0,1.0,0.0); 24 | glBegin(GL_POLYGON); 25 | glVertex2f(-0.6,-0.4); 26 | glVertex2f(0.0,-0.3); 27 | glVertex2f(0.6,-0.4); 28 | glVertex2f(0.6,-0.6); 29 | glVertex2f(-0.6,-0.6); 30 | glEnd(); 31 | 32 | glColor3f(0.0,0.0,1.0); 33 | glLineWidth(2.0); 34 | glBegin(GL_LINES); 35 | glVertex2f(-1.0,1.0); 36 | glVertex2f(1.0,-1.0); 37 | glEnd(); 38 | //FLUSH VAI PARA A FUNCAO DESENHA 39 | } 40 | 41 | void Desenha (void) 42 | { 43 | glClear(GL_COLOR_BUFFER_BIT);//LIMPA A JANELA APENAS UMA VEZ 44 | glViewport(0,200,200,200); //MUDOU A VIEW PORT 200X0 E 200 X 200 (METADE DO TAMANHO) 45 | DesenhaQuadro(); //DESENHA O QUADRO SELECIONADO PELA ORTHO2D 46 | glViewport(100,0,400,400); //MUDOU A VIEW PORT 200X0 E 400 X 400 (TAMANHO ORIGINAL) 47 | DesenhaQuadro(); //DESENHA NOVAMENTE O QUADRO SELECIONADO PELA ORTHO2D 48 | glFlush(); 49 | } 50 | 51 | void Inicializa (void) 52 | { 53 | glClearColor(0.0,0.0,0.0,1.0); 54 | gluOrtho2D(-10.0,10.0,-10.0,10.0); 55 | 56 | } 57 | 58 | int main(void) 59 | { 60 | glutInitWindowSize(400,400); 61 | glutInitWindowPosition(0,0); 62 | glutCreateWindow("teste"); 63 | Inicializa(); 64 | glutDisplayFunc(Desenha); 65 | glutMainLoop(); 66 | } 67 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA2/Project2B_2ViewPorts.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project2B_2ViewPorts.dev 3 | Name=Project2B_2ViewPorts 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName= 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings= 31 | 32 | [Unit1] 33 | FileName=Project2B.cpp 34 | CompileCpp=1 35 | Folder=Project2B_2ViewPorts 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA3 - 3D/Aula3.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA3 - 3D/Aula3.cpp -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA3 - 3D/Aula3.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA3 - 3D/Aula3.exe -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA3/Project2C_Zoom.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | //Zoom 3 | 4 | GLfloat win; // DECLARA A VARIAVEL QUE CONTROLA A ORTHO 2D 5 | 6 | void DesenhaQuadro(void) 7 | { 8 | glColor3f(1.0,1.0,1.0); 9 | glBegin(GL_QUADS); 10 | glVertex2f(-8.0,8.0); 11 | glVertex2f(8.0,8.0); 12 | glVertex2f(8.0,-8.0); 13 | glVertex2f(-8.0,-8.0); 14 | glEnd(); 15 | 16 | glColor3f(1.0,0.0,0.0); 17 | glBegin(GL_TRIANGLES); 18 | glVertex2f(-6.0,-6.0); 19 | glVertex2f(0.0,6.0); 20 | glVertex2f(6.0,-6.0); 21 | glEnd(); 22 | 23 | glColor3f(0.0,1.0,0.0); 24 | glBegin(GL_POLYGON); 25 | glVertex2f(-6.0,-4.0); 26 | glVertex2f(0.0,-3.0); 27 | glVertex2f(6.0,-4.0); 28 | glVertex2f(6.0,-6.0); 29 | glVertex2f(-6.0,-6.0); 30 | glEnd(); 31 | 32 | glColor3f(0.0,0.0,1.0); 33 | glLineWidth(2.0); 34 | glBegin(GL_LINES); 35 | glVertex2f(-10.0,10.0); 36 | glVertex2f(10.0,-10.0); 37 | glEnd(); 38 | } 39 | 40 | void Desenha (void) 41 | { 42 | glClear(GL_COLOR_BUFFER_BIT); 43 | glViewport(0,0,400,400); //MUDOU A VIEW PORT 0X0 E 400 X 400 (TAMANHO ORIGINAL) 44 | DesenhaQuadro(); 45 | //APENAS UM DESENHO 46 | glFlush(); 47 | } 48 | 49 | 50 | void TeclasEspeciais(int key, int x, int y) //FUNCAO QUE LE AS TECLAS E MUDA A ORTHO 2D 51 | //(JANELA DE SELECAO) PARA FAAZER O ZOOM 52 | { 53 | if (key == GLUT_KEY_UP)//VERIFICA SE A TECLA PRESSIONADA FOI A UP 54 | { 55 | if (win > 0) //DEFINE O LIMITE MINIMO PARA A REDUCAO 56 | win -= 1.0f; // DIMINUI O TAMANHO DA JANELA DE SELECAO (ZOOM IN) 57 | } 58 | else if (key == GLUT_KEY_DOWN) //VERIFICA SE A TECLA PRESSIONADA FOI A DOWN 59 | { 60 | if (win < 900) //DEFINE O LIMITE MAXIMO PARA AMPLIACAO 61 | win += 1.0f; // AUMENTA O TAMANHO DA JANELA DE SELECAO (ZOOM OUT) 62 | } 63 | 64 | glMatrixMode(GL_PROJECTION); //DEFINE A MATRIZ A SER AJUSTADA (PROJECAO E NAO MODELO) 65 | glLoadIdentity(); //GRAVA A MATRIZ PADRAO 66 | gluOrtho2D (-win, win, -win, win); //AJUSTA A MATRIZ 67 | glutPostRedisplay(); //REDESENHA 68 | } 69 | 70 | void Teclado (unsigned char key, int x, int y) //FUNCAO QUE RODA QUANDO UMA TECLA QUALQUER E PRESSIONADA 71 | { 72 | if (key == 27) //TESTA QUAL A TECLA FOI PRESSIONADA 73 | exit(0); //FECHA A JANELA 74 | } 75 | 76 | void Inicializa (void) 77 | { 78 | win = 10.0;//ATRIBUI O VALOR 10 PARA A VARIAVEL WIN 79 | glClearColor(0.0,0.0,0.0,1.0); 80 | glMatrixMode(GL_PROJECTION);//DEFINE A MATRIZ A SER AJUSTADA (PROJECAO E NAO MODELO) 81 | glLoadIdentity();//GRAVA A MATRIZ PADRAO 82 | gluOrtho2D(-win,win,-win,win); //AJUSTA A MATRIZ 83 | } 84 | 85 | int main(void) 86 | { 87 | glutInitWindowSize(400,400); 88 | glutInitWindowPosition(0,0); 89 | glutCreateWindow("teste"); 90 | Inicializa(); 91 | glutDisplayFunc(Desenha); 92 | glutSpecialFunc(TeclasEspeciais); // REGISTRA A FUNCAO CALLBACK PARA TRATAMENTO DAS TECLAS ESPECIAIS 93 | glutKeyboardFunc (Teclado); // REGISTRA A FUNCAO CALLBACK PARA TRATAMENTO DAS TECLAS ASCII 94 | glutMainLoop(); 95 | } 96 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA3/Project2C_Zoom.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project2C_Zoom.dev 3 | Name=Project2C_Zoom 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName= 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings= 31 | 32 | [Unit1] 33 | FileName=Project2C_Zoom.cpp 34 | CompileCpp=1 35 | Folder=Project2C_Zoom 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA4 - 3D Iluminação/Aula4.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA4 - 3D Iluminação/Aula4.cpp -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA4 - 3D Iluminação/Aula4.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA4 - 3D Iluminação/Aula4.exe -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA4/Makefile.win: -------------------------------------------------------------------------------- 1 | # Project: Project3A_Translacao 2 | # Makefile created by Dev-C++ 4.9.9.2 3 | 4 | CPP = g++.exe 5 | CC = gcc.exe 6 | WINDRES = windres.exe 7 | RES = 8 | OBJ = Project3A_Translacao.o $(RES) 9 | LINKOBJ = Project3A_Translacao.o $(RES) 10 | LIBS = -lopengl32 -lglut -lglu32 -mwindows -lglu32 -lopengl32 -lwinmm -lgdi32 11 | INCS = 12 | CXXINCS = 13 | BIN = Project3A_Translacao.exe 14 | CXXFLAGS = $(CXXINCS) 15 | CFLAGS = $(INCS) 16 | RM = rm -f 17 | 18 | .PHONY: all all-before all-after clean clean-custom 19 | 20 | all: all-before Project3A_Translacao.exe all-after 21 | 22 | 23 | clean: clean-custom 24 | ${RM} $(OBJ) $(BIN) 25 | 26 | $(BIN): $(OBJ) 27 | $(CPP) $(LINKOBJ) -o "Project3A_Translacao.exe" $(LIBS) 28 | 29 | Project3A_Translacao.o: Project3A_Translacao.cpp 30 | $(CPP) -c Project3A_Translacao.cpp -o Project3A_Translacao.o $(CXXFLAGS) 31 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA4/Project3A_Translacao.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | void Desenho(void) 5 | { 6 | 7 | } 8 | 9 | void Desenha (void) 10 | { 11 | glClear(GL_COLOR_BUFFER_BIT); 12 | glViewport(0,0,400,400); 13 | Desenho(); 14 | glFlush(); 15 | } 16 | 17 | void Teclado (unsigned char key, int x, int y) 18 | { 19 | if (key == 27) 20 | exit(0); 21 | } 22 | 23 | void Inicializa (void) 24 | { 25 | glClearColor(0.0,0.0,0.0,1.0); 26 | glMatrixMode(GL_PROJECTION); 27 | glLoadIdentity(); 28 | gluOrtho2D(-10.0,10.0,-10.0,10.0); 29 | } 30 | 31 | int main(void) 32 | { 33 | glutInitWindowSize(400,400); 34 | glutInitWindowPosition(0,0); 35 | glutCreateWindow("teste"); 36 | Inicializa(); 37 | glutDisplayFunc(Desenha); 38 | glutKeyboardFunc(Teclado); 39 | glutMainLoop(); 40 | } 41 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA4/Project3A_Translacao.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project3A_Translacao.dev 3 | Name=Project3A_Translacao 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lglu32 -lopengl32 -lwinmm -lgdi32_@@_ 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName=Project3A_Translacao.exe 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings=0000000000000000000000 31 | 32 | [Unit1] 33 | FileName=Project3A_Translacao.cpp 34 | CompileCpp=1 35 | Folder=Project3A_Translacao 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA4/Project3A_Translacao.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA4/Project3A_Translacao.o -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA5/Makefile.win: -------------------------------------------------------------------------------- 1 | # Project: Project5_Animacao 2 | # Makefile created by Dev-C++ 4.9.9.2 3 | 4 | CPP = g++.exe 5 | CC = gcc.exe 6 | WINDRES = windres.exe 7 | RES = 8 | OBJ = Project5_Animacao.o $(RES) 9 | LINKOBJ = Project5_Animacao.o $(RES) 10 | LIBS = -lopengl32 -lglut -lglu32 -mwindows -lglu32 -lopengl32 -lwinmm -lgdi32 11 | INCS = 12 | CXXINCS = 13 | BIN = Project5_Animacao.exe 14 | CXXFLAGS = $(CXXINCS) 15 | CFLAGS = $(INCS) 16 | RM = rm -f 17 | 18 | .PHONY: all all-before all-after clean clean-custom 19 | 20 | all: all-before Project5_Animacao.exe all-after 21 | 22 | 23 | clean: clean-custom 24 | ${RM} $(OBJ) $(BIN) 25 | 26 | $(BIN): $(OBJ) 27 | $(CPP) $(LINKOBJ) -o "Project5_Animacao.exe" $(LIBS) 28 | 29 | Project5_Animacao.o: Project5_Animacao.cpp 30 | $(CPP) -c Project5_Animacao.cpp -o Project5_Animacao.o $(CXXFLAGS) 31 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA5/Project5_Animacao.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | //ANIMACAO 5 | 6 | GLfloat win; 7 | GLfloat deslocaX = 0;//DEFINE O DESLOCAMENTO TOAL EM X 8 | 9 | void DesenhaQuadro(void) 10 | { 11 | 12 | glMatrixMode(GL_MODELVIEW); 13 | glLoadIdentity(); 14 | glPushMatrix(); 15 | 16 | //COMECA A MATRIZ 1 17 | glPushMatrix(); 18 | //ROTACIONA O CUBO VERDE 19 | glRotatef(ang_verde,0,1,0); 20 | //DESENHA O CUBO VERDE 21 | glTranslatef(20,0,-40); 22 | glColor3f(0,1,0); 23 | glutSolidCube(40.0); 24 | //TERMINA A MATRIZ 2 25 | glPopMatrix(); 26 | 27 | 28 | 29 | } 30 | 31 | void Desenha (void) 32 | { 33 | glClear(GL_COLOR_BUFFER_BIT); 34 | glViewport(0,0,400,400); 35 | DesenhaQuadro(); 36 | //glFlush(); //TROCADA POR GLUTSWAPBUFFERS 37 | glutSwapBuffers();//PARA ALTERANR ENTRE OS DOIS BUFFERS 38 | } 39 | 40 | 41 | void TeclasEspeciais(int key, int x, int y) 42 | { 43 | if (key == GLUT_KEY_UP) 44 | { 45 | if (win > 0) 46 | win -= 1.0f; 47 | } 48 | else if (key == GLUT_KEY_DOWN) 49 | { 50 | if (win < 900) 51 | win += 1.0f; 52 | } 53 | 54 | glMatrixMode(GL_PROJECTION); 55 | glLoadIdentity(); 56 | gluOrtho2D (-win, win, -win, win); 57 | glutPostRedisplay(); 58 | } 59 | 60 | void Teclado (unsigned char key, int x, int y) 61 | { 62 | if (key == 27) 63 | exit(0); 64 | } 65 | 66 | void Inicializa (void) 67 | { 68 | win = 10.0; 69 | glClearColor(0.0,0.0,0.0,1.0); 70 | glMatrixMode(GL_PROJECTION); 71 | glLoadIdentity(); 72 | gluOrtho2D(-win,win,-win,win); 73 | } 74 | 75 | void Anima (int) 76 | { 77 | if (deslocaX > 20) 78 | { 79 | deslocaX = -10; 80 | } 81 | 82 | deslocaX += 1; 83 | glutPostRedisplay(); 84 | glutTimerFunc(150,Anima,1);//CARREGA A FUNCAO ANIMA A CADA 150 CENTESIMOS DE SEGUNDO 85 | } 86 | 87 | int main(void) 88 | { 89 | glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB); // DEFINE O USO DE DOIS BUFFERS 90 | glutInitWindowSize(400,400); 91 | glutInitWindowPosition(0,0); 92 | glutCreateWindow("teste"); 93 | Inicializa(); 94 | glutDisplayFunc(Desenha); 95 | glutSpecialFunc(TeclasEspeciais); 96 | glutKeyboardFunc (Teclado); 97 | Anima(1); //CARREGA A FUNCAO ANIMA 98 | glutMainLoop(); 99 | } 100 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA5/Project5_Animacao.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project5_Animacao.dev 3 | Name=Project5_Animacao 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lglu32 -lopengl32 -lwinmm -lgdi32_@@_ 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName=Project5_Animacao.exe 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings=0000000000000000000000 31 | 32 | [Unit1] 33 | FileName=Project5_Animacao.cpp 34 | CompileCpp=1 35 | Folder=Project5_Animacao 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA5/Project5_Animacao.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA5/Project5_Animacao.exe -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/AULA5/Project5_Animacao.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/AULA5/Project5_Animacao.o -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/Guindaste/Makefile.win: -------------------------------------------------------------------------------- 1 | # Project: Project3A_Translacao 2 | # Makefile created by Dev-C++ 4.9.9.2 3 | 4 | CPP = g++.exe 5 | CC = gcc.exe 6 | WINDRES = windres.exe 7 | RES = 8 | OBJ = Project3A_Translacao.o $(RES) 9 | LINKOBJ = Project3A_Translacao.o $(RES) 10 | LIBS = -lopengl32 -lglut -lglu32 -mwindows -lopengl32 -lwinmm -lgdi32 11 | INCS = 12 | CXXINCS = 13 | BIN = Project3A_Translacao.exe 14 | CXXFLAGS = $(CXXINCS) 15 | CFLAGS = $(INCS) 16 | RM = rm -f 17 | 18 | .PHONY: all all-before all-after clean clean-custom 19 | 20 | all: all-before Project3A_Translacao.exe all-after 21 | 22 | 23 | clean: clean-custom 24 | ${RM} $(OBJ) $(BIN) 25 | 26 | $(BIN): $(OBJ) 27 | $(CPP) $(LINKOBJ) -o "Project3A_Translacao.exe" $(LIBS) 28 | 29 | Project3A_Translacao.o: Project3A_Translacao.cpp 30 | $(CPP) -c Project3A_Translacao.cpp -o Project3A_Translacao.o $(CXXFLAGS) 31 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/Guindaste/Project3A_Translacao.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | GLfloat win; 5 | 6 | void DesenhaQuadro(void) 7 | { 8 | //DEFINE A MATRIZ A SER UTILIZADA 9 | glMatrixMode(GL_MODELVIEW); 10 | //PARA CARREGAR A MATRIZ IDENTIDADE 11 | glLoadIdentity(); 12 | //EMPILHA A MATRIZ PARA TRANSLATE SOBRE A IDENTIDADE 13 | glPushMatrix(); 14 | 15 | //Retangulo Base 16 | glTranslatef(0,-5,0); 17 | glColor3f(1,0,0); 18 | glBegin(GL_QUADS); 19 | glVertex2f(-1.0,1.6); 20 | glVertex2f(1.0,1.6); 21 | glVertex2f(1.0,-1.0); 22 | glVertex2f(-1.0,-1.0); 23 | glEnd(); 24 | 25 | //Retangulo Corpo 26 | glTranslatef(0,2,0); 27 | glColor3f(0.0,0.0,1.0); 28 | glBegin(GL_QUADS); 29 | glVertex2f(-.6,2.0); 30 | glVertex2f(.6,2.0); 31 | glVertex2f(.6,-1.0); 32 | glVertex2f(-.6,-1.0); 33 | glEnd(); 34 | 35 | //Retangulo Corpo 36 | glTranslatef(0,2,0); 37 | glColor3f(0,1,0); 38 | glBegin(GL_QUADS); 39 | glVertex2f(-.6,2.0); 40 | glVertex2f(.6,2.0); 41 | glVertex2f(.6,-1.0); 42 | glVertex2f(-.6,-1.0); 43 | glEnd(); 44 | 45 | //RETIRA A ULTIMA MATRIZ (TRANSLATE) DA PILHA 46 | glPopMatrix(); 47 | 48 | //EMPILHA A MATRIZ PARA ROTATE SOBRE A IDENTIDADE 49 | glPushMatrix(); 50 | } 51 | 52 | void Desenha (void) 53 | { 54 | glClear(GL_COLOR_BUFFER_BIT); 55 | glViewport(0,0,400,400); 56 | DesenhaQuadro(); 57 | glFlush(); 58 | } 59 | 60 | void TeclasEspeciais(int key, int x, int y) 61 | { 62 | if (key == GLUT_KEY_UP) 63 | { 64 | if (win > 0) 65 | win -= 1.0f; 66 | } 67 | else if (key == GLUT_KEY_DOWN) 68 | { 69 | if (win < 900) 70 | win += 1.0f; 71 | } 72 | 73 | glMatrixMode(GL_PROJECTION); 74 | glLoadIdentity(); 75 | glutPostRedisplay(); 76 | } 77 | 78 | void Teclado (unsigned char key, int x, int y) 79 | { 80 | if (key == 27) 81 | exit(0); 82 | } 83 | 84 | void Inicializa (void) 85 | { 86 | glClearColor(1.0,1.0,1.0,1.0); 87 | glMatrixMode(GL_PROJECTION); 88 | glLoadIdentity(); 89 | gluOrtho2D(-10.0,10.0,-10.0,10.0); 90 | } 91 | 92 | int main(void) 93 | { 94 | glutInitWindowSize(400,400); 95 | glutInitWindowPosition(0,0); 96 | glutCreateWindow("Guindastizinhoooo"); 97 | Inicializa(); 98 | glutDisplayFunc(Desenha); 99 | glutSpecialFunc(TeclasEspeciais); 100 | glutKeyboardFunc (Teclado); 101 | glutMainLoop(); 102 | } 103 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/Guindaste/Project3A_Translacao.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=Project3A_Translacao.dev 3 | Name=Project3A_Translacao 4 | UnitCount=1 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-lopengl32 -lwinmm -lgdi32_@@_ 16 | IsCpp=1 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput= 20 | OverrideOutput=0 21 | OverrideOutputName=Project3A_Translacao.exe 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile= 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings=0000000000000000000000 31 | 32 | [Unit1] 33 | FileName=Project3A_Translacao.cpp 34 | CompileCpp=1 35 | Folder=Project3A_Translacao 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/OPENGL/Guindaste/Project3A_Translacao.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/OPENGL/Guindaste/Project3A_Translacao.o -------------------------------------------------------------------------------- /COMPUTAÇÃO GRÁFICA/PROVA/P01.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joaopauloaramuni/cpp/cba97e6cb9fc4eb5cf0510f5d2d39328b60860c1/COMPUTAÇÃO GRÁFICA/PROVA/P01.cpp -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 João Paulo Aramuni 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # C++ 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 12 | 13 | 14 | 15 | 16 |
10 | fumec 11 |
17 |
18 | 19 | ----- 20 | 21 | # Repo C++ 22 | 23 | https://www.eclipse.org/downloads/packages 24 |
https://www.bloodshed.net/ 25 | --------------------------------------------------------------------------------