UNPKG

@portugol-recursos/bibliotecas

Version:
1,439 lines (1,399 loc) 134 kB
# yaml-language-server: $schema=./bibliotecas.schema.json $schema: ./bibliotecas.schema.json bibliotecas: - nome: Arquivos descrição: Esta biblioteca permite ler e escrever arquivos constantes: - nome: MODO_ACRESCENTAR valor: 2 descrição: | indica à biblioteca que o arquivo deve ser aberto apenas para escrita que acrescenta ao final do arquivo tipo: primitivo: inteiro - nome: MODO_ESCRITA valor: 1 descrição: indica à biblioteca que o arquivo deve ser aberto apenas para escrita tipo: primitivo: inteiro - nome: MODO_LEITURA valor: 0 descrição: indica à biblioteca que o arquivo deve ser aberto apenas para leitura tipo: primitivo: inteiro funções: - nome: abrir_arquivo descrição: >- Abre um arquivo para leitura ou escrita. No modo leitura, caso o arquivo informado não exista, será gerado um erro. No modo escrita, caso o arquivo informado não exista, ele tentará ser criado, se a criação do arquivo falhar, então será gerado um erro. **IMPORTANTE:** ao abrir o arquivo no modo de escrita, o conteúdo do arquivo é apagado para que o novo conteúdo seja escrito. Caso seja necessário manter o conteúdo atual do arquivo, deve-se armazená-lo em uma variável e depois escrevê-lo novamente no arquivo. retorno: tipo: primitivo: inteiro descrição: o endereço de memória onde o arquivo foi carregado parâmetros: - nome: caminho_arquivo tipo: primitivo: cadeia descrição: o nome do arquivo que se quer abrir - nome: modo_acesso tipo: primitivo: inteiro descrição: | determina se o arquivo será aberto para leitura ou para escrita. Constantes aceitas: MODO_LEITURA | MODO_ESCRITA | MODO_ACRESCENTAR - nome: apagar_arquivo descrição: Remove um arquivo do sistema de arquivos retorno: tipo: primitivo: vazio parâmetros: - nome: caminho_arquivo tipo: primitivo: cadeia descrição: o caminho do arquivo que se quer apagar - nome: arquivo_existe descrição: Verifica se um determinado arquivo existe no sistema de arquivos retorno: tipo: primitivo: logico descrição: | `verdadeiro` se o arquivo existir parâmetros: - nome: caminho_arquivo tipo: primitivo: cadeia descrição: o caminho do arquivo que se quer verificar - nome: criar_pasta descrição: Cria pastas no caminho informado caso elas não existam retorno: tipo: primitivo: vazio parâmetros: - nome: caminho tipo: primitivo: cadeia descrição: Caminho onde as pastas serão criadas - nome: escrever_linha descrição: > Escreve uma linha no arquivo. Esta função só é executada se o arquivo estiver aberto em modo de escrita. Se o arquivo estiver em modo de leitura, será gerado um erro. retorno: tipo: primitivo: vazio parâmetros: - nome: linha tipo: primitivo: cadeia descrição: a linha a ser escrita no arquivo - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do arquivo - nome: fechar_arquivo descrição: Fecha um arquivo aberto anteriormente retorno: tipo: primitivo: vazio descrição: "" parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do arquivo - nome: fim_arquivo descrição: > Verifica se o arquivo chegou ao fim, isto é, se todas as linhas já foram lidas. Esta função só é executada se o arquivo estiver aberto em modo de leitura. Se o arquivo estiver em modo de escrita, será gerado um erro. retorno: tipo: primitivo: logico descrição: | `verdadeiro` se o arquivo tiver chegado ao fim. Caso contrário retorna `falso` parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do arquivo - nome: ler_linha descrição: > Lê a próxima linha do arquivo. Esta função só é executada se o arquivo estiver aberto em modo de leitura. Se o arquivo estiver em modo de escrita, será gerado um erro. retorno: tipo: primitivo: cadeia descrição: Uma `cadeia` contendo o conteúdo da linha lida. parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do arquivo - nome: listar_arquivos descrição: | Altera um vetor para que ele represente os arquivos existentes em um diretório retorno: tipo: primitivo: vazio parâmetros: - nome: caminho_pai tipo: primitivo: cadeia descrição: Define o diretório cujas pastas serão listadas - nome: vetor_arquivos tipo: primitivo: cadeia dimensão: vetor descrição: Vetor destino que contará com os arquivos encontrados - nome: listar_arquivos_por_tipo descrição: | Altera um vetor para que ele represente os arquivos existentes em um diretório retorno: tipo: primitivo: vazio parâmetros: - nome: caminho_pai tipo: primitivo: cadeia descrição: Define o diretório cujas pastas serão listadas - nome: vetor_arquivos tipo: primitivo: cadeia dimensão: vetor descrição: Vetor destino que contará com os arquivos encontrados - nome: vetor_tipos tipo: primitivo: cadeia dimensão: vetor descrição: Vetor destino que contará com os tipos de arquivos encontrados - nome: listar_pastas descrição: | Altera um vetor para que ele represente as pastas existentes em um diretório retorno: tipo: primitivo: vazio parâmetros: - nome: caminho_pai tipo: primitivo: cadeia descrição: Define o diretório cujas pastas serão listadas - nome: vetor_pastas tipo: primitivo: cadeia dimensão: vetor descrição: Vetor destino que contará com as pastas encontradas - nome: selecionar_arquivo descrição: > Abre uma janela que permite ao usuário navegar nos diretórios do computador e selecionar um arquivo retorno: tipo: primitivo: cadeia descrição: > O arquivo selecionado ou uma `cadeia` vazia caso o usuário tenha cancelado. parâmetros: - nome: formatos_suportados tipo: primitivo: cadeia dimensão: vetor descrição: > Define os formatos de arquivos que poderão ser selecionados. Um formato de arquivo é formado por uma descrição e uma lista de extensões válidas. A descrição deve estar separada da lista de extensões pelo caracter '|' e cada extensão deverá estar separada da outra pelo caracter ','. Ex.: 'Arquivos de texto|txt', 'Arquivos de imagem|png,jpg,jpeg,bmp' - nome: aceitar_todos_arquivos tipo: primitivo: logico descrição: > Quando `verdadeiro`, inclui automaticamente um formato que permite selecionar qualquer arquivo. Este formato também será incluído se nenhum outro formato for informado no parâmetro 'formatos_suportados' - nome: substituir_texto descrição: > Pesquisa por um determinado texto no arquivo e substitui todas as ocorrências por um texto alternativo retorno: tipo: primitivo: vazio parâmetros: - nome: endereco tipo: primitivo: cadeia descrição: o endereço do arquivo - nome: texto_pesquisa tipo: primitivo: cadeia descrição: o texto que será pesquisado no arquivo - nome: texto_substituto tipo: primitivo: cadeia descrição: o texto pelo qual as ocorrências serão substituídas - nome: primeira_ocorrencia tipo: primitivo: logico descrição: > confirma se substituirá apenas a primeira ocorrência no texto, caso contrário, substituirá todas - nome: Calendario descrição: Esta biblioteca é utilizada para retornar a data e(ou) hora do computador constantes: - nome: DIA_DOMINGO valor: 1 descrição: constante que representa o 'Domingo' tipo: primitivo: inteiro - nome: DIA_QUARTA_FEIRA valor: 4 descrição: constante que representa a 'Quarta-Feira' tipo: primitivo: inteiro - nome: DIA_QUINTA_FEIRA valor: 5 descrição: constante que representa a 'Quinta-Feira' tipo: primitivo: inteiro - nome: DIA_SABADO valor: 7 descrição: constante que representa o 'Sábado' tipo: primitivo: inteiro - nome: DIA_SEGUNDA_FEIRA valor: 2 descrição: constante que representa a 'Segunda-Feira' tipo: primitivo: inteiro - nome: DIA_SEXTA_FEIRA valor: 6 descrição: constante que representa a 'Sexta-Feira' tipo: primitivo: inteiro - nome: DIA_TERCA_FEIRA valor: 3 descrição: constante que representa a 'Terça-Feira' tipo: primitivo: inteiro - nome: MES_ABRIL valor: 4 descrição: constante que representa o mês de 'Abril' tipo: primitivo: inteiro - nome: MES_AGOSTO valor: 8 descrição: constante que representa o mês de 'Agosto' tipo: primitivo: inteiro - nome: MES_DEZEMBRO valor: 12 descrição: constante que representa o mês de 'Dezembro' tipo: primitivo: inteiro - nome: MES_FEVEREIRO valor: 2 descrição: constante que representa o mês de 'Fevereiro' tipo: primitivo: inteiro - nome: MES_JANEIRO valor: 1 descrição: constante que representa o mês de 'Janeiro' tipo: primitivo: inteiro - nome: MES_JULHO valor: 7 descrição: constante que representa o mês de 'Julho' tipo: primitivo: inteiro - nome: MES_JUNHO valor: 6 descrição: constante que representa o mês de 'Junho' tipo: primitivo: inteiro - nome: MES_MAIO valor: 5 descrição: constante que representa o mês de 'Maio' tipo: primitivo: inteiro - nome: MES_MARCO valor: 3 descrição: constante que representa o mês de 'Março' tipo: primitivo: inteiro - nome: MES_NOVEMBRO valor: 11 descrição: constante que representa o mês de 'Novembro' tipo: primitivo: inteiro - nome: MES_OUTUBRO valor: 10 descrição: constante que representa o mês de 'Outubro' tipo: primitivo: inteiro - nome: MES_SETEMBRO valor: 9 descrição: constante que representa o mês de 'Setembro' tipo: primitivo: inteiro funções: - nome: ano_atual descrição: Recupera o ano atual do computador. retorno: tipo: primitivo: inteiro descrição: | um `inteiro` com o ano. Ex: 2012. parâmetros: [] - nome: dia_mes_atual descrição: Recupera o dia no mês atual do computador. retorno: tipo: primitivo: inteiro descrição: > um `inteiro` com o dia no mês com dois dígitos, se forem menores que 10 apenas com um dígito. Ex: 26. parâmetros: [] - nome: dia_semana_abreviado descrição: De acordo com o valor de 1 a 7 informado retornará um dia da semana abreviado. retorno: tipo: primitivo: cadeia descrição: > uma `cadeia` com o dia da semana abreviado. Ex: Seg, para Segunda-Feira. parâmetros: - nome: numero_dia tipo: primitivo: inteiro descrição: um `inteiro` referente a um dia da semana - nome: caixa_alta tipo: primitivo: logico descrição: lógico para retorno em caracteres maiúsculos - nome: caixa_baixa tipo: primitivo: logico descrição: lógico para retorno em caracteres minúsculos - nome: dia_semana_atual descrição: Recupera o dia da semana de 1 a 7. retorno: tipo: primitivo: inteiro descrição: | um `inteiro` com o dia da semana. Ex: 1, para Domingo. parâmetros: [] - nome: dia_semana_completo descrição: De acordo com o valor de 1 a 7 informado retornará um dia da semana completo. retorno: tipo: primitivo: cadeia descrição: | uma cadeia com o dia da semana completo. Ex: Segunda-Feira. parâmetros: - nome: numero_dia tipo: primitivo: inteiro descrição: um `inteiro` referente a um dia da semana - nome: caixa_alta tipo: primitivo: logico descrição: lógico para retorno em caracteres maiúsculos - nome: caixa_baixa tipo: primitivo: logico descrição: lógico para retorno em caracteres minúsculos - nome: dia_semana_curto descrição: De acordo com o valor de 1 a 7 informado retornará um dia da semana de forma curta. retorno: tipo: primitivo: cadeia descrição: > uma `cadeia` com o dia da semana de forma curta. Ex: Segunda, para Segunda-Feira. parâmetros: - nome: numero_dia tipo: primitivo: inteiro descrição: um `inteiro` referente a um dia da semana - nome: caixa_alta tipo: primitivo: logico descrição: lógico para retorno em caracteres maiúsculos - nome: caixa_baixa tipo: primitivo: logico descrição: lógico para retorno em caracteres minúsculos - nome: hora_atual descrição: Recupera os dígitos da hora atual do computador. retorno: tipo: primitivo: inteiro descrição: > um `inteiro` com a hora atual no formato 12h ou 24h com dois dígitos, se forem menores que 10 apenas com um dígito. Ex: 22 para 24h, se o parâmetro for falso ou 10 para 12h, se o parâmetro for verdadeiro. parâmetros: - nome: formato_12h tipo: primitivo: logico descrição: um lógico que se verdadeiro o retorno será no formato 12h se falso será em 24h - nome: mes_atual descrição: Recupera o mês atual do computador de 1 a 12. retorno: tipo: primitivo: inteiro descrição: > um `inteiro` com o mês com dois dígitos, se forem menores que 10 apenas com um dígito. Ex: 10. parâmetros: [] - nome: milisegundo_atual descrição: Recupera os dígitos dos milissegundos atuais do computador. retorno: tipo: primitivo: inteiro descrição: > um `inteiro` com os milissegundos atuais, com um, dois ou três dígitos. Ex: 426. parâmetros: [] - nome: minuto_atual descrição: Recupera os dígitos do minuto atual do computador. retorno: tipo: primitivo: inteiro descrição: > um `inteiro` com os minutos atuais com dois dígitos, se forem menores que 10 apenas com um dígito. Ex: 45. parâmetros: [] - nome: segundo_atual descrição: Recupera os dígitos dos segundos atuais do computador. retorno: tipo: primitivo: inteiro descrição: > um `inteiro` com os segundos atuais com dois dígitos, se forem menores que 10 apenas com um dígito. Ex: 32. parâmetros: [] - nome: Graficos descrição: Esta biblioteca permite inicializar e utilizar um ambiente gráfico com suporte ao desenho de primitivas gráficas e de imagens carregadas do sistema de arquivos constantes: - nome: CANAL_B valor: 2 descrição: constante que representa o canal 'AZUL' tipo: primitivo: inteiro - nome: CANAL_G valor: 1 descrição: constante que representa o canal 'VERDE' tipo: primitivo: inteiro - nome: CANAL_R valor: 0 descrição: constante que representa o canal 'VERMELHO' tipo: primitivo: inteiro - nome: COR_AMARELO valor: 16776960 descrição: constante que representa a cor 'amarelo' tipo: primitivo: inteiro - nome: COR_AZUL valor: 255 descrição: constante que representa a cor 'azul' tipo: primitivo: inteiro - nome: COR_BRANCO valor: 16777215 descrição: constante que representa a cor 'branca' tipo: primitivo: inteiro - nome: COR_PRETO valor: 0 descrição: constante que representa a cor 'preto' tipo: primitivo: inteiro - nome: COR_VERDE valor: 65280 descrição: constante que representa a cor 'verde' tipo: primitivo: inteiro - nome: COR_VERMELHO valor: 16711680 descrição: constante que representa a cor 'vermelho' tipo: primitivo: inteiro - nome: GRADIENTE_ABAIXO valor: 3 descrição: constante que representa o gradiente na rotação 0 tipo: primitivo: inteiro - nome: GRADIENTE_ACIMA valor: 2 descrição: constante que representa o gradiente na rotação 0 tipo: primitivo: inteiro - nome: GRADIENTE_DIREITA valor: 0 descrição: constante que representa o gradiente na rotação 0 tipo: primitivo: inteiro - nome: GRADIENTE_ESQUERDA valor: 1 descrição: constante que representa o gradiente na rotação 0 tipo: primitivo: inteiro - nome: GRADIENTE_INFERIOR_DIREITO valor: 4 descrição: constante que representa o gradiente na rotação inferior direito tipo: primitivo: inteiro - nome: GRADIENTE_INFERIOR_ESQUERDO valor: 5 descrição: constante que representa o gradiente na rotação inferior direito tipo: primitivo: inteiro - nome: GRADIENTE_SUPERIOR_DIREITO valor: 6 descrição: constante que representa o gradiente na rotação inferior direito tipo: primitivo: inteiro - nome: GRADIENTE_SUPERIOR_ESQUERDO valor: 7 descrição: constante que representa o gradiente na rotação inferior direito tipo: primitivo: inteiro funções: - nome: altura_imagem descrição: > Obtém a altura em pixels de uma imagem previamente carregada no ambiente gráfico retorno: tipo: primitivo: inteiro descrição: a altura da imagem parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço da imagem para a qual se quer obter a altura - nome: altura_janela descrição: obtém a altura atual da janela do ambiente gráfico retorno: tipo: primitivo: inteiro parâmetros: [] - nome: altura_tela descrição: obtém a altura da tela do computador retorno: tipo: primitivo: inteiro parâmetros: [] - nome: altura_texto descrição: | Obtém a altura em pixels que um texto ocupa para ser desenhado na tela retorno: tipo: primitivo: inteiro descrição: a altura do texto parâmetros: - nome: texto tipo: primitivo: cadeia descrição: o texto que será mensurado - nome: carregar_fonte descrição: Carrega uma fonte no ambiente gráfico a partir de um arquivo de fonte presente no sistema de arquivos retorno: tipo: primitivo: vazio parâmetros: - nome: caminho_fonte tipo: primitivo: cadeia descrição: o caminho do arquivo de fonte no sistema de arquivos - nome: carregar_imagem descrição: > Carrega uma imagem na memória para ser utilizada mais tarde. Os formatos de imagem suportados são: JPEG, PNG, BITMAP e GIF retorno: tipo: primitivo: inteiro descrição: o endereço de memória no qual a imagem foi carregada parâmetros: - nome: caminho tipo: primitivo: cadeia descrição: o caminho do arquivo de imagem no computador - nome: criar_cor descrição: > cria uma nova cor a partir da combinação de tons de vermelho, verde e azul retorno: tipo: primitivo: inteiro descrição: a nova cor criada pela combinação dos tons de vermelho, verde e azul parâmetros: - nome: vermelho tipo: primitivo: inteiro descrição: o tom de vermelho (0 a 255) - nome: verde tipo: primitivo: inteiro descrição: o tom de verde (0 a 255) - nome: azul tipo: primitivo: inteiro descrição: o tom de azul (0 a 255) - nome: definir_cor descrição: > Define a cor atual do ambiente gráfico. Esta cor será utilizada para desenhar e preencher as primitivas gráficas (ponto, linha, retângulo, etc.) e, como cor de fundo ao limpar o ambiente gráfico ou desenhar um texto retorno: tipo: primitivo: vazio parâmetros: - nome: cor tipo: primitivo: inteiro descrição: a nova cor do ambiente gráfico - nome: definir_dimensoes_janela descrição: altera as dimensões da janela do ambiente gráfico retorno: tipo: primitivo: vazio parâmetros: - nome: largura tipo: primitivo: inteiro descrição: a nova largura da janela - nome: altura tipo: primitivo: inteiro descrição: a nova altura da janela - nome: definir_estilo_texto descrição: Define o estilo da fonte que será utilizada para desenhar um texto no ambiente gráfico retorno: tipo: primitivo: vazio parâmetros: - nome: italico tipo: primitivo: logico descrição: define se a fonte terá o estilo itálico - nome: negrito tipo: primitivo: logico descrição: define se a fonte terá o estilo negrito - nome: sublinhado tipo: primitivo: logico descrição: define se a fonte terá o estilo sublinhado - nome: definir_fonte_texto descrição: Define a fonte que será utilizada para desenhar um texto no ambiente gráfico retorno: tipo: primitivo: vazio parâmetros: - nome: nome tipo: primitivo: cadeia descrição: > o nome da fonte a ser utilizada (Ex.: Arial, Times New Roman, Tahoma). Se a fonte informada não existir no sistema operacional do computador, será utilizada a fonte padrão - nome: definir_gradiente descrição: > Define a cor atual do ambiente gráfico como um gradiente de 2 cores. Esta cor será utilizada para desenhar e preencher as primitivas gráficas (ponto, linha, retângulo, etc.) e, como cor de fundo ao limpar o ambiente gráfico retorno: tipo: primitivo: vazio parâmetros: - nome: tipo tipo: primitivo: inteiro descrição: o tipo de rotação de gradiente que será utilizado - nome: cor1 tipo: primitivo: inteiro descrição: a primeira cor do novo gradiente do ambiente gráfico - nome: cor2 tipo: primitivo: inteiro descrição: a segunda cor do novo gradiente do ambiente gráfico - nome: definir_icone_janela descrição: Altera o ícone que é exibido na janela do ambiente gráfico. Este ícone aparece ao lado do título da janela e na barra de tarefas do sistema operacional retorno: tipo: primitivo: vazio parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço da imagem que será usada como ícone - nome: definir_opacidade descrição: > Esta função define o nível de opacidade dos desenhos no ambiente gráfico. Quanto menor for a opacidade, mais transparente será o desenho e quanto maior for a opacidade mais opaco será o desenho. Com esta função, é possível desenhar imagens, textos e primitivas gráficas semi-transparentes, o que permite "enxergar" através dos desenhos. É importante notar que, após ser chamada, esta função afeta todos os desenhos realizados. Isto significa que se foram desenhados um retângulo e uma elipse após a chamada desta função, ambos terão seu nível de opacidade alterados. Caso fosse desejável modificar apenas a opacidade do retângulo, então seria necessário chamar novamente esta função definindo a opacidade para o valor máximo antes de desenhar a elipse retorno: tipo: primitivo: vazio parâmetros: - nome: opacidade tipo: primitivo: inteiro descrição: > o nível de opacidade dos desenhos. O valor deve estar entre 0 e 255, sendo que, 0 indica um desenho totalmente transparente e 255 indica um desenho totalmente opaco - nome: definir_quadro_gif descrição: Define determinado quadro a um gif retorno: tipo: primitivo: vazio parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do gif - nome: quadro tipo: primitivo: inteiro descrição: o quadro que deseja ser definido - nome: definir_rotacao descrição: > Esta função define o grau de rotação dos desenhos no ambiente gráfico. Com esta função, é possível rotacionar imagens, textos e todas as primitivas gráficas, incluindo linhas, retângulos e elipses. A rotação é realizada sempre a partir do centro do desenho. É importante notar que, após ser chamada, esta função afeta todos os desenhos realizados. Isto significa que se foram desenhados um retângulo e uma elipse após a chamada desta função, ambos serão rotacionados no mesmo grau de inclinação. Caso fosse desejável rotacionar apenas o retângulo, então seria necessário chamar novamente esta função definindo a rotação para 0 antes de desenhar a elipse retorno: tipo: primitivo: vazio parâmetros: - nome: rotacao tipo: primitivo: inteiro descrição: > o grau de rotação dos desenhos. Pode ser qualquer valor real, incluindo 0, positivos e negativos. Os valores múltiplos de 360.0 e o valor 0.0 indicam que não haverá rotação. Valores positivos, indicam uma rotação no sentido horário enquanto que valores negativos indicam uma rotação no sentido anti-horário - nome: definir_tamanho_texto descrição: Define o tamanho da fonte que será utilizada para desenhar um texto no ambiente gráfico retorno: tipo: primitivo: vazio parâmetros: - nome: tamanho tipo: primitivo: inteiro descrição: o tamanho da fonte a ser utilizada - nome: definir_titulo_janela descrição: define o texto da janela do ambiente gráfico retorno: tipo: primitivo: vazio parâmetros: - nome: titulo tipo: primitivo: cadeia descrição: o novo título da janela - nome: desenhar_elipse descrição: > Desenha uma elipse na posição definida pelos parâmetros `x` e `y` e com as dimensões especificadas pelos parâmetros `largura` e `altura`. A elipse é desenhada na tela a partir do seu canto superior esquerdo retorno: tipo: primitivo: vazio parâmetros: - nome: x tipo: primitivo: inteiro descrição: a posição (distância) do círculo no eixo horizontal, em relação ao lado esquerdo da janela - nome: y tipo: primitivo: inteiro descrição: a posição (distância) do círculo no eixo vertical, em relação ao topo da janela - nome: largura tipo: primitivo: inteiro descrição: a largura da elipse em pixels - nome: altura tipo: primitivo: inteiro descrição: a altura da elipse em pixels - nome: preencher tipo: primitivo: logico descrição: > define se a elipse será preenchida com a cor do ambiente gráfico. Se o valor for `verdadeiro`, a elipse será preenchida. Se o valor for `falso`, somente o contorno da elipse será desenhado - nome: desenhar_imagem descrição: > Desenha uma imagem previamente carregada, na posição especificada pelos parâmetros `x` e `y` retorno: tipo: primitivo: vazio parâmetros: - nome: x tipo: primitivo: inteiro descrição: a posição (distância) da imagem no eixo horizontal, em relação ao lado esquerdo da janela - nome: y tipo: primitivo: inteiro descrição: a posição (distância) da imagem no eixo vertical, em relação ao topo da janela - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória da imagem a ser desenhada - nome: desenhar_linha descrição: > Desenha uma linha de um ponto 'A' (definido pelos parâmetros `x1` e `y1`) até um ponto 'B' (definido pelos parâmetros `x2` e `y2`) retorno: tipo: primitivo: vazio parâmetros: - nome: x1 tipo: primitivo: inteiro descrição: a coordenada (distância) do ponto 'A' no eixo horizontal, em relação ao lado esquerdo da janela - nome: y1 tipo: primitivo: inteiro descrição: a coordenada (distância) do ponto 'A' no eixo vertical, em relação ao topo da janela - nome: x2 tipo: primitivo: inteiro descrição: a coordenada (distância) do ponto 'B' no eixo horizontal, em relação ao lado esquerdo da janela - nome: y2 tipo: primitivo: inteiro descrição: a coordenada (distância) do ponto 'B' no eixo vertical, em relação ao topo da janela - nome: desenhar_poligono descrição: Desenha poligono retorno: tipo: primitivo: vazio parâmetros: - nome: pontos tipo: primitivo: inteiro dimensão: matriz descrição: a largura do retângulo em pixels - nome: preencher tipo: primitivo: logico descrição: > define se o polígono será preenchido com a cor do ambiente gráfico. Se o valor for `verdadeiro`, o polígono será preenchido. Se o valor for `falso`, somente o contorno do polígono será desenhado - nome: desenhar_ponto descrição: | Desenha um ponto na posição definida pelos parâmetros `x` e `y`. O ponto desenhado ocupa um único pixel na tela retorno: tipo: primitivo: vazio parâmetros: - nome: x tipo: primitivo: inteiro descrição: a coordenada (distância) do ponto no eixo horizontal, em relação ao lado esquerdo da janela - nome: y tipo: primitivo: inteiro descrição: a coordenada (distância) do ponto no eixo vertical, em relação ao topo da janela - nome: desenhar_porcao_imagem descrição: > Desenha uma porção de uma imagem previamente carregada, na posição especificada pelos parâmetros `x` e `y` retorno: tipo: primitivo: vazio parâmetros: - nome: x tipo: primitivo: inteiro descrição: a posição (distância) da imagem no eixo horizontal, em relação ao lado esquerdo da janela - nome: y tipo: primitivo: inteiro descrição: a posição (distância) da imagem no eixo vertical, em relação ao topo da janela - nome: xi tipo: primitivo: inteiro descrição: a posição (distância) no eixo horizontal a partir da qual a imagem começará a ser desenhada - nome: yi tipo: primitivo: inteiro descrição: a posição (distância) no eixo vertical a partir da qual a imagem começará a ser desenhada - nome: largura tipo: primitivo: inteiro descrição: a largura da porção da imagem a ser desenhada - nome: altura tipo: primitivo: inteiro descrição: a altura da porção da imagem a ser desenhada - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória da imagem a ser desenhada - nome: desenhar_quadro_atual_gif descrição: > Desenha um frame de um gif previamente carregado, na posição especificada pelos parâmetros `x` e `y` retorno: tipo: primitivo: vazio parâmetros: - nome: x tipo: primitivo: inteiro descrição: a posição (distância) da imagem no eixo horizontal, em relação ao lado esquerdo da janela - nome: y tipo: primitivo: inteiro descrição: a posição (distância) da imagem no eixo vertical, em relação ao topo da janela - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória da imagem a ser desenhada - nome: desenhar_retangulo descrição: > Desenha um retângulo na posição definida pelos parâmetros `x` e `y` e com as dimensões especificadas pelos parâmetros `largura` e `altura`. O retângulo é desenhado na tela a partir do seu canto superior esquerdo retorno: tipo: primitivo: vazio parâmetros: - nome: x tipo: primitivo: inteiro descrição: a posição (distância) do retângulo no eixo horizontal, em relação ao lado esquerdo da janela - nome: y tipo: primitivo: inteiro descrição: a posição (distância) do retângulo no eixo vertical, em relação ao topo da janela - nome: largura tipo: primitivo: inteiro descrição: a largura do retângulo em pixels - nome: altura tipo: primitivo: inteiro descrição: a altura do retângulo em pixels - nome: arredondar_cantos tipo: primitivo: logico descrição: define se o retângulo deverá ter cantos arredondados - nome: preencher tipo: primitivo: logico descrição: > define se o retângulo será preenchido com a cor do ambiente gráfico. Se o valor for `verdadeiro`, o retângulo será preenchido. Se o valor for `falso`, somente o contorno do retângulo será desenhado - nome: desenhar_texto descrição: > Desenha um texto (`cadeia`) na posição especificada pelos parâmetros `x` e `y` retorno: tipo: primitivo: vazio parâmetros: - nome: x tipo: primitivo: inteiro descrição: a posição (distância) do texto no eixo horizontal, em relação ao lado esquerdo da janela - nome: y tipo: primitivo: inteiro descrição: a posição (distância) do ponto no eixo vertical, em relação ao topo da janela - nome: texto tipo: primitivo: cadeia descrição: o texto (`cadeia`) a ser desenhado - nome: encerrar_modo_grafico descrição: Encerra o modo gráfico e fecha a janela criada com a função `iniciar_modo_grafico` retorno: tipo: primitivo: vazio parâmetros: [] - nome: entrar_modo_tela_cheia descrição: Faz com que a janela gráfica seja redimensionada para ocupar o tamanho total da tela retorno: tipo: primitivo: vazio parâmetros: [] - nome: exibir_borda_janela descrição: Exibe novamente a borda da janela do modo gráfico, caso ela esteja oculta retorno: tipo: primitivo: vazio parâmetros: [] - nome: fechar_janela descrição: Encerra o programa como se o usuário tivesse clicado no botão 'Fechar' da janela retorno: tipo: primitivo: vazio parâmetros: [] - nome: iniciar_modo_grafico descrição: > Inicia o modo gráfico e exibe uma janela com as configurações padrão (tamanho 640x480 e fundo preto). Se o modo gráfico já estiver iniciado, nada acontecerá retorno: tipo: primitivo: vazio parâmetros: - nome: manter_visivel tipo: primitivo: logico descrição: define se a janela do ambiente gráfico deve permanecer sempre visível sobre as outras janelas (útil durante a depuração) - nome: largura_imagem descrição: > Obtém a largura em pixels de uma imagem previamente carregada no ambiente gráfico retorno: tipo: primitivo: inteiro descrição: a largura da imagem parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço da imagem para a qual se quer obter a largura - nome: largura_janela descrição: obtém a largura atual da janela do ambiente gráfico retorno: tipo: primitivo: inteiro parâmetros: [] - nome: largura_tela descrição: obtém a largura da tela do computador retorno: tipo: primitivo: inteiro parâmetros: [] - nome: largura_texto descrição: > Obtém a largura em pixels que um texto ocupa para ser desenhado na tela retorno: tipo: primitivo: inteiro descrição: a largura do texto parâmetros: - nome: texto tipo: primitivo: cadeia descrição: o texto que será mensurado - nome: liberar_imagem descrição: Libera a memória utilizada por uma imagem que tenha sido previamente carregada retorno: tipo: primitivo: vazio parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória da imagem - nome: limpar descrição: limpa o desenho do ambiente e gráfico e preenche o fundo com a cor atual retorno: tipo: primitivo: vazio parâmetros: [] - nome: minimizar_janela descrição: Minimiza a janela do ambiente gráfico, como se o usuário tivesse clicado no botão 'Minimizar' da janela retorno: tipo: primitivo: vazio parâmetros: [] - nome: obter_cor_pixel descrição: Esta função permite obter uma cor em um pixel específico de uma imagem previamente carregada no ambiente gráfico com a função carregar_imagem(). retorno: tipo: primitivo: inteiro descrição: cor RGB do pixel parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória da imagem que será transformada - nome: x tipo: primitivo: inteiro descrição: coluna do pixel no bitmap - nome: y tipo: primitivo: inteiro descrição: linha do pixel no bitmap - nome: obter_intervalo_gif descrição: Obtém o intervalo entre os quadros de um gif retorno: tipo: primitivo: inteiro descrição: intervalo em milissegundos do quadro atual parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do gif - nome: obter_numero_quadro_atual_gif descrição: Obtém o número do quadro atual de um gif retorno: tipo: primitivo: inteiro descrição: o número do quadro atual que o gif está parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do gif - nome: obter_numero_quadros_gif descrição: Obtém o numero de quadros de um gif retorno: tipo: primitivo: inteiro descrição: o número de quadros que o gif possui parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do gif - nome: obter_quadro_gif descrição: Obtém determinado quadro de um gif retorno: tipo: primitivo: inteiro descrição: imagem do quadro pedido por parâmetro parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória do gif - nome: quadro tipo: primitivo: inteiro descrição: o quadro que deseja obter - nome: obter_RGB descrição: Esta função permite obter um canal de uma cor. retorno: tipo: primitivo: inteiro descrição: cor RGB do pixel parâmetros: - nome: cor tipo: primitivo: inteiro descrição: cor que será extraido o canal - nome: canal tipo: primitivo: inteiro descrição: canal R, G ou B - nome: ocultar_borda_janela descrição: Oculta a borda da janela do modo gráfico, fazendo com que somente o conteúdo da janela seja exibido retorno: tipo: primitivo: vazio parâmetros: [] - nome: proximo_frame_gif descrição: Define a imagem a ser desenhada do gif como o próximo frame retorno: tipo: primitivo: vazio parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória no qual o gif foi carregado - nome: redimensionar_imagem descrição: > Esta função permite redimensionar uma imagem previamente carregada no ambiente gráfico com a função carregar_imagem(). Caso um dos parâmetros de dimensão seja 0, o outro parametro será proporcional ao dado retorno: tipo: primitivo: inteiro descrição: o endereço de memória da nova imagem parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória da imagem que será transformada - nome: largura tipo: primitivo: inteiro descrição: a largura desejada da imagem - nome: altura tipo: primitivo: inteiro descrição: a altura desejada da imagem - nome: manter_qualidade tipo: primitivo: logico descrição: define se a qualidade da imagem deve ser mantida ao redimensionar - nome: renderizar descrição: > Quando uma função de desenho da biblioteca é chamada, o desenho não é realizado imediatamente na tela, mas sim, em uma área reservada da memória. Isto é feito com o objetivo de aumentar o desempenho do programa e minimizar outros problemas. Esta técnica é chamada de **Back Buffer** ou **Double Buffer**. A função renderizar, faz com que os desenhos existentes no **Back Buffer** sejam desenhados na tela. Esta função deve ser chamada sempre após todas as outras funções de desenho, para garantir que todos os desenhos sejam exibidos retorno: tipo: primitivo: vazio parâmetros: [] referência: http://en.wikipedia.org/wiki/Multiple_buffering#Double_buffering_in_computer_graphics - nome: renderizar_imagem descrição: > Esta função cria uma nova imagem em memória e renderiza todos os desenhos do ambiente gráfico nesta nova imagem ao invés de renderizá-los na tela retorno: tipo: primitivo: inteiro descrição: o endereço de memória da nova imagem parâmetros: - nome: largura tipo: primitivo: inteiro descrição: a largura da nova imagem - nome: altura tipo: primitivo: inteiro descrição: a altura da nova imagem - nome: restaurar_janela descrição: Restaura a janela do ambiente gráfico, como se o usuário tivesse clicado no ícone do programa na barra de tarefas do Sistema Operacional retorno: tipo: primitivo: vazio parâmetros: [] - nome: sair_modo_tela_cheia descrição: Faz com que a janela gráfica seja redimensionada para o tamanho que possuía antes de entrar no modo de tela cheia retorno: tipo: primitivo: vazio parâmetros: [] - nome: salvar_imagem descrição: Salva uma imagem retorno: tipo: primitivo: vazio parâmetros: - nome: endereco tipo: primitivo: inteiro descrição: o endereço de memória da imagem a ser desenhada - nome: caminho tipo: primitivo: cadeia descrição: lugar onde a imagem deverá ser salva - nome: transformar_imagem d