@portugol-recursos/bibliotecas
Version:
1,439 lines (1,399 loc) • 134 kB
YAML
# 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