quinta-feira, 27 de janeiro de 2011

Materiais para desenho

Aqui estão sugeridos alguns dos melhores materiais para se trabalhar no desenho à grafite. Importante lembrar que não tenho objetivo de fazer “merchandising”, até porque se paga muito pouco atualmente por isso (srsr), mas sim  mostrar opções para quem desejar conhecer um bom material, o que é essencial para o desenho realista.

Lápis

Os lápis são fundamentais. Dependendo da técnica utilizada, eles farão muita diferença no resultado final, principalmente para quem não gosta de trabalhar com esfuminho (citado logo abaixo).

Quando comecei a desenhar, só trabalhava com os lápis Faber Castell,  que para mim eram os melhores (pelo menos era o melhor dos que eu conhecia). Sei que o Faber Castell é o xodó de muitos desenhistas, pois a maioria de nós aprendeu “empunhando” um destes. Mas, fiquem tranqüilos e não se aborreçam, concordo que este material é bom, mas vou dar ênfase em outros que considero superiores.

As marcas que mais se destacam são a Koh-i-Noor e Staedtler. As duas são muito boas, mas gosto mais da primeira. A grande diferença de um bom lápis para um comum está na sua consistência. Geralmente lápis comum, tem uma ponta mais rija, tornando mais difícil o sombreado.

Estojo da Koh-i-Noor
Estojo da Koh-i-Noor

Os lápis são divididos em graduações:

dura                                              média                                                  macia
8H, 7H, 6H, 5H, 4H, 3H, 2H, H, HB, F, B, 2B, 3B, 4B, 5B, 6B, 7B, 8B, 9B

Por “H” entende-se “Hard” – uma mina dura.
Por “B” entende-se “Brand” ou “Black” – uma mina macia ou preta.
Por “HB” entende-se “Hard/Brand”- uma mina de dureza média

A diferença entre eles está na graduação e rigidez. Analisando os tipos citados, são mais macios e tem uma graduação mais forte (mais escuro o risco) da esquerda para direita. Então, para cada sombra, existe um lápis proporcional à sua intensidade. É claro que você não precisa ter todos, mas uns 4 ou 5 tons seriam essenciais.

Escala de graduação dos lápis Staedtler
Escala de graduação dos lápis Staedtler

A grafite do lápis é composta por uma mistura de carvão e argila. O que determina a sua graduação e maciez é a proporção dessa mistura. Quanto mais carvão e menos argila, mais macio e negro fica a grafite, e quanto menos grafite e mais carvão, ela fica mais rija e clara.

 

Borracha

No desenho artístico, temos uma gama de borrachas bastante variada para diversos tipos de uso. A mais utilizada é a famosa “limpa-tipos”, borracha que foi criada para limpar erros de datilografia (em máquina de escrever).

Tipos de borracha para desenho
Tipos de borracha para desenho

O nome limpa-tipos vem do termo tipos, que é o nome dado a letra da máquina de escrever. Está borracha é totalmente maleável, semelhante a uma massa de modelar. A sua textura extra suave permite absorver as partículas mais pequenas sem danificar o papel. Com isso, pode-se moldar a borracha na forma desejada, ajustando a necessidade do momento. A sua outra vantagem, é que ela é uma borracha que não borra, e sua finalidade básica é de retirar o excesso de grafite do desenho. Considero-a indispensável.

A borracha plástica também é muito importante, pois permite apagar traços mais fortes e principalmente na hora de dar forma ao cabelo (ela é a grande responsável pelos efeitos de brilho e “ondulação”). Por ser uma borracha dura, que permite um acabamento muito bom, nos cabelos como em várias outras partes que se necessite.

A caneta borracha é útil para apagar lugares com muitos detalhes, como os olhos, a boca, enfim, lugares que necessite de mais precisão. Mas, tenho usado a limpa-tipos e ela me tem sido de grande valia até o momento.

Existem outros tipos de borracha, mas as principais são estas. Acredito que seja o suficiente para se trabalhar. É claro que isso vai depender da característica de cada artista.

 

Papel

O papel mais utilizado pelos desenhistas é Papel Dessin – O tradicional “Papel Canson (papel com uma gramatura maior). Canson, na verdade, é a marca que produz o papel, mas pelo seu “monopólio”, o papel passou a ser conhecido por esse nome. Mas existem outros como: vegetal, sulfite, jornal, manteiga e isométrico. Vale a pena fazer testes para, assim, descobrir qual papel é mais apropriado ao seu estilo.

 

Esfuminho

Técnica de esfuminho
Técnica de esfuminho

Como mostra a imagem, o esfuminho serve para espalhar uniformemente a grafite, dando um aspecto real ao desenho. Ele é feito de papel jornal compacto enrolado.

Para o esfuminho não existe marca melhor que a outra, pelo menos nunca vi diferença nos que já usei. Mas, anote aí. Para você que quer melhorar seus desenhos e ainda não usa essa ferramenta, vale a pena conferir.

Há pessoas que preferem fazer esse trabalho com o dedo. Com o dedo também dá para fazer, mas o problema é que com o dedo é mais fácil de borrar, principalmente se a pessoa transpira pelos dedos. A grafite se junta com o suor fazendo uma “tinta” que borrará seu desenho que dificilmente se conseguirá corrigir.

O efeito do esfuminho no desenho
Técnica de esfuminho com o dedo

Iluminação

Não poderia deixar de falar da importância da iluminação do ambiente. Deve-se escolher um local bem iluminado ou, ainda, com uma luminária. Existem vários detalhes na imagem que só podem ser vistos com uma boa iluminação. E, além do mais, ela preserva sua saúde, pois o ambiente pouco iluminado fará com que force mais os olhos, o que pode lhe trazer problemas oftalmológicos pelo fato de se passar muitas horas no exercício do desenho.
Por último, deve-se ter muita paciência. Às vezes, queremos terminar um desenho logo e acabamos pecando no acabamento. O meu conselho é: está cansado, de saco cheio? Então, pare e relaxe um pouco. Tenho certeza que isso contribuirá para uma maior valorização da sua obra.

Fonte: http://dessiner.wordpress.com/passo-a-passo/materiais-para-desenho/

quarta-feira, 26 de janeiro de 2011

Pacote UTL_FILE

UTL_FILE

O pacote UTL_FILE é um conjunto de componentes que tem como função permitir o acesso ou geração de arquivos externos ao banco de dados. Um exemplo seria importarmos scripts em SQL ou PL/SQL para o nosso sistema. O pacote é constituído de 18 componentes, nos quais são distribuídos da seguinte maneira: 7 Exception, 2 Function, 8 Procedure e 1 Type.
Para utilizarmos o pacote, teremos que interromper os serviços do banco de dados e modificar o arquivo initXE.ora (ORACLE 10G Express Edition), onde iremos acrescentar o parâmetro UTL_FILE_DIR, afim de determinar quais os diretórios do sistema está livre para o acesso.
Primeiramente, vamos informar ao banco de dados que podemos gravar e recuperar dados do sistema operacional, através dos seguintes passos:
--Conectar como DBA
CONNECT / AS SYSDBA
--Fechar o banco de dados
SHUTDOWN;
--Iniciar o banco de dos sem abrir
STARTUP MOUNT;
--Alterar o parâmetro UTL_FILE_DIR:
ALTER SYSTEM
    SET UTL_FILE_DIR = ‘*’
SCOPE = SPFILE;
            Agora vamos finalizar e inicializar novamente o banco de dados para assumir os novos parâmetros:
SHUTDOWN
STARTUP
SHOW PARAMETER UTL_FILE_DIR
 Ainda conectado com o usuário SYS (CONNECT / AS SYSDBA) dê privilégio de EXECUTE no pacote UTL_FILE para o usuário HR:
GRANT EXECUTE ON UTL_FILE TO HR;
 Podemos deixar para que todos os usuários tenham o privilégio:
GRANT EXECUTE ON UTL_FILE TO PUBLIC;
Podemos consultar todos os componentes do pacote: DESC UTL_FILE.
COMANDOS UTL_FILE
Procedimentos
Funcionalidade
FOPEN
abre um arquivo para entrada ou saída, criando um arquivo de saída caso o arquivo especificado não exista
IS_OPEN
indica se determinado arquivo está ou não aberto
FCLOSE
fecha um arquivo
FCLOSE_ALL
fecha todos os arquivos abertos
GET_LINE
lê uma linha de um arquivo aberto
PUT
escreve uma linha no arquivo. Não acrescenta automaticamente o caractere de fim de linha
PUT_LINE
escreve uma linha no arquivo, acrescentando automaticamente o caractere de fim de linha
NEW_LINE
inclui o caractere de fim de linha no arquivo, o que irá gerar uma nova linha em branco
FFLUSH
escreve, fisicamente, todas as pendências para um arquivo
Exceções
Controle
INVALID_PATH
diretório ou nome de arquivo inválido
INVALID_MODE
o parâmetro de modo de abertura é inválido
INVALID_FILEHANDLE
especificador de arquivo inválido
INVALID_OPERATION
o arquivo não pode ser aberto ou a operação é inválida
READ_ERROR
ocorreu um erro do sistema operacional durante a leitura de um arquivo
WRITE_ERROR
ocorreu um erro do sistema operacional durante a gravação de um arquivo
INTERNAL_ERROR
erro não especificado no PL/SQL
NO_DATA_FOUND
nesse caso, é disparada quando o fim do arquivo é encontrado em processamento de leitura seqüencial de um arquivo de texto


/*
       A     Append Text
       AB    Append Byte Mode
       R     Read Text
       RB    Read Byte Mode
       W     Write Text
       WB    Write Byte Mode
     */


Exemplos:
Roteiro para geração de arquivo texto:

DECLARE

 arquivo_saida                    UTL_File.File_Type;

Cursor Cur_Linha is

 --Definição do select que traz a linha completa concatenada a ser gravada

BEGIN

    arquivo_saida := UTL_File.Fopen('caminho completo’,’nm arquivo', 'w');

    For Reg_Linha in Cur_linha Loop

        UTL_File.Put_Line(arquivo_saida, Reg_linha.linha);

    End Loop;

    UTL_File.Fclose(arquivo_saida);

    Dbms_Output.Put_Line('Arquivo gerado com sucesso.');

EXCEPTION

      WHEN UTL_FILE.INVALID_OPERATION THEN

               Dbms_Output.Put_Line(‘Operação inválida no arquivo.');

               UTL_File.Fclose(arquivo_saida);

      WHEN UTL_FILE.WRITE_ERROR THEN

               Dbms_Output.Put_Line(‘Erro de gravação no arquivo.');

               UTL_File.Fclose(arquivo_saida);

      WHEN UTL_FILE.INVALID_PATH THEN

               Dbms_Output.Put_Line(‘Diretório inválido.');

               UTL_File.Fclose(arquivo_saida);

      WHEN UTL_FILE.INVALID_MODE THEN

               Dbms_Output.Put_Line(‘Modo de acesso inválido.');

               UTL_File.Fclose(arquivo_saida);

      WHEN Others THEN

               Dbms_Output.Put_Line('Problemas na geração do arquivo.');

               UTL_File.Fclose(arquivo_saida);

END;

Roteiro para leitura de arquivo texto:

DECLARE

    arquivo_ler                 UTL_File.File_Type;

    Linha                          Varchar2(100);

BEGIN

    arquivo_ler := UTL_File.Fopen('caminho completo’,’nm arquivo', 'r');

    Loop

        UTL_File.Get_Line(arquivo_ler, Linha);

  -- Manipulação da linha lida

    End Loop;

    UTL_File.Fclose(arquivo_ler);

    Dbms_Output.Put_Line('Arquivo processado com sucesso.');

EXCEPTION

    WHEN No_data_found THEN

               UTL_File.Fclose(arquivo_ler);

               Commit;

    WHEN UTL_FILE.INVALID_PATH THEN

               Dbms_Output.Put_Line(‘Diretório inválido.');

               UTL_File.Fclose(arquivo_ler);

    WHEN Others THEN

               Dbms_Output.Put_Line ('Problemas na leitura do arquivo.');

               UTL_File.Fclose(arquivo_ler);

END;

EXEMPLO PRÁTICO DE UTL_FILE
PASSOS:
1. Conectar com o usuário SYSTEM: CONNECT SYSTEM/SENHA;
2. Criar diretório: CREATE DIRECTORY DIRETORIO AS 'C:\DIRETORIO';
3. Ir no Windows Explorer e criar uma pasta chamada DIRETÓRIO na unidade C;
4. Conceder privilégio de leitura e gravação no diretório criado: GRANT READ, WRITE ON DIRECTORY DIRETORIO TO HR;
5. Conectar com o usuário HR: CONNECT HR/HR;
6. Criar o procedimento abaixo:

DECLARE

   V_LINHA VARCHAR2(2000) := '';

   V_ARQUIVO UTL_FILE.FILE_TYPE;

BEGIN

   V_ARQUIVO := UTL_FILE.FOPEN('DIRETORIO', 'ARQUIVO.TXT', 'W');

   FOR i in 1..5 LOOP

       V_LINHA := 'LINHA ' || i || '!!';

       UTL_FILE.PUT_LINE(V_ARQUIVO, V_LINHA);

   END LOOP;

   UTL_FILE.FCLOSE(V_ARQUIVO);

END;

7. Vá a unidade C:\DIRETÓRIO e visualize o conteúdo do arquivo.
Fonte: http://www.devmedia.com.br/articles/viewcomp.asp?comp=13129

terça-feira, 25 de janeiro de 2011

Exportação de Dados no Oracle

 

Quando precisamos transferir os dados de um servidor Oracle para outro, ou para realizarmos cópias de segurança, uma das alternativas é utilizar a ferramenta “exp”, que está presente em todas as versões do Oracle.

Esta ferramenta normalmente executada em linha de comando, possui diversos parâmetros para definir o que deve ser exportado. O objetivo deste artigo é explicar alguns destes parâmetros.

No final serão abordadas algumas informações sobre a ferramenta “imp” que realiza o oposto do “exp”, ela importa os objetos para o banco de dados.

1.    Exportando dados no Oracle com o “Exp”

O utilitário “exp” irá gerar um arquivo (dump) binário com os objetos e as estruturas dos mesmos.

Este arquivo pode ser enviado para outro servidor, com sistema operacional distinto que mesmo assim será possível realizar a importação dos dados. Somente é necessário cuidar para que a versão do programa importador (imp) não seja anterior a versão que foi empregada para gerar o arquivo.

É possível usar este utilitário de forma interativa, neste artigo serão mostrados os parâmetros mais comuns quando executado em linha de comando.

 

·         String de conexão com o banco de dados

Para conectar com o Oracle precisamos informar o usuário, a senha e a instância do Oracle.

Formato: usuário/senha@instância, caso seja executado o comando diretamente no servidor, onde exista somente uma instância do Oracle, não precisaremos informar a instância.

 

·         Arquivo de destino

O arquivo que iremos gerar deve ser informado no parâmetro file. Normalmente a extensão utilizada é “dmp”.

Formato: file=caminho\arquivo.dmp

 

·         Log da exportação

Caso seja interessante gerar um log com informações sobre a exportação dos objetos.

Formato: log=caminho\arquivo.log

 

·         Exportação do banco de dados inteiro

Quando for necessário exportar todo o banco de dados utilize o parâmetro FULL.

Formato: full=y

 

·         Exportação de Grants (direitos)

Normalmente o exp grava os grants relacionados a cada objeto, porém se estiver exportando somente alguns objetos e/ou usuários, muitas vezes os direitos atribuídos em um ambiente não tenham sentido no servidor de destino dos objetos.

Formato: grants=n

·         Exportação de Índices

Caso não seja necessário enviar os índices para o Oracle de destino.

Formato: indexes=n

 

·         Seleção de Tabelas

Para selecionar somente algumas tabelas para exportar, informe o parâmetro Table.

Formato: tables=(Tabela1,Tabela2,...,TabelaN)

 

·         Exportação de Triggers

Caso não seja necessário enviar as triggers para o Oracle de destino.

Formato: triggers=n

 

2.    Importando com o “Imp”

Algumas considerações são importantes no momento de importar os dados em versões diferentes do Oracle:

·         Usar um programa imp com a mesma versão do exp usado para exportar os dados.

·         Quando o banco de destino possuir uma versão menor do que a origem, exportar os dados com o exp da versão do destino.

·         Se o usuário que exportou os dados tiver direitos de DBA, será necessário importar os dados com um usuário que também tenha direitos de DBA.

·         Considere a tabela de caracteres configurada na Origem e no Destino, dependendo da combinação a acentuação e caracteres especiais podem ser perdidos.

 

·         String de conexão com o banco de dados

Da mesma forma como no exp precisamos informar a string de conexão com o banco de dados de destino.

Formato: usuário/senha@instância

 

·         Arquivo de origem

O arquivo de onde serão lidas as informações deve ser especificado no parâmetro file. Formato: file=caminho\arquivo.dmp

 

·         Log da importação

Para registrar as ocorrências da importação das informações utilize o parâmetro log.

Formato: log=caminho\arquivo.log

 

·         Troca de usuário

Caso o usuário de destino dos objetos seja diferente do usuário de origem, precisaremos indicar isto para o importador através de dois parâmetros: fromuser e touser.

Formato: fromuser=usuarioorigem touser=usuariodestino

 

·         Importação do arquivo inteiro

Para importarmos todos os objetos exatamente como foi exportado, basta informar o parâmetro full.

Formato: full=y

 

·         Ignorar erros

Para desprezar os erros de criação dos objetos informe o parâmetro Ignore. Caso este parâmetro não seja informado e alguma tabela que estiver sendo importada, já existir, será gerado um erro e os dados desta tabela não serão incluídos.

Formato: ignore=y

 

·         Importar os dados das tabelas

Caso seja necessário somente importar a estrutura dos objetos informe o parâmetro rows, assim os dados das tabelas não serão inseridos.

Formato: rows=n

 

·         Visualização do conteúdo do arquivo

Para consultar o conteúdo do arquivo de importação.

Formato: show=y

 

·         Seleção de Tabelas

Para selecionar somente algumas tabelas para importar, utilize o parâmetro Table.

Formato: tables=(Tabela1,Tabela2,...,TabelaN)

 

3.    Exemplos de Exportação e Importação

 

Para estes exemplos será considerado o seguinte ambiente:

 

Usuário do banco de dados:                   Exemplo

Senha do banco de dados:            Senha123

Instância do Oracle:                    ORCL

Arquivo a ser gerado/importado:   C:\tmp\DadosExemplo.dmp

 

Se O $ORACLE_HOME/bin estiver no PATH, executa direto no prompt de comando do sistema operacional.

 

·         Exportar todos os objetos do usuário Exemplo:

exp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp

 

·         Exportar somente as tabelas Empresas e Clientes do usuário Exemplo:

exp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp tables=(Empresas,Clientes)

 

 

·         Importar todos os objetos do usuário Exemplo:

imp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp full=y

 

·         Importar somente as tabelas Empresas e Clientes do usuário Exemplo:

imp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp fromuser=Exemplo tables=(Empresas,Clientes)

 

·         Importar todos os objetos do usuário Exemplo e gravar no usuário Producao:

imp Producao/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp fromuser=Exemplo touser=Producao


Conclusão

 

Os utilitários “exp” e “imp” são usados com bastante freqüência em ambientes com Oracle, neste artigo foram apresentadas somente as opções mais triviais.

Caso utilize como solução para backup, mantenha as opções tradicionais do Oracle e use somente como um complemento a estes utilitários.

 

Fonte: http://www.devmedia.com.br/articles/post-6283-Exportacao-de-Dados-no-Oracle.html

Related Posts Plugin for WordPress, Blogger...