<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6000990059698248950</id><updated>2012-01-31T10:59:32.108-08:00</updated><category term='http://www.blogger.com/img/blank.gif'/><title type='text'>Edimartin's Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>23</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-4307190446913442623</id><published>2012-01-31T10:47:00.000-08:00</published><updated>2012-01-31T10:59:32.119-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='http://www.blogger.com/img/blank.gif'/><title type='text'>Away - O maior brasileiro de todos os tempos</title><content type='html'>Bom dia Mundo, bom dia galacta.&lt;br /&gt;&lt;br /&gt;Eu venho aqui para anunciar o maior brasileiro de todos os tempos no SBT (TV do chaves).&lt;br /&gt;&lt;br /&gt;O meu voto é pro Away Nilzer (do canal Away).  ele é vivido, realmente entende e fala o que é melhor para o nosso país (na verdade país dos políticos).&lt;br /&gt;&lt;br /&gt;Eu peço o voto de vocês. Esse voto será o único voto bem feito pelo povo Brasileiro. Vamos colocar o nome Away na História da pupolação. Eu conto com o voto de vocês.&lt;br /&gt;&lt;br /&gt;Copiem o nome para todos nós votar-mos no mesmo nome: "Jaime Gil da Costa (Away Nilzer)".&lt;br /&gt;&lt;br /&gt;Clique &lt;a href="http://www.sbt.com.br/omaiorbrasileiro/"&gt;aqui&lt;/a&gt; para acessar a página de voto, e vamos votar consciente no Maior Brasileiro de Todos os Tempos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-MtTYLSxt-EA/Tyg55al_Z9I/AAAAAAAAAKU/uIJ3ONpl2ec/s1600/away%2Bvoto.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 250px;" src="http://3.bp.blogspot.com/-MtTYLSxt-EA/Tyg55al_Z9I/AAAAAAAAAKU/uIJ3ONpl2ec/s400/away%2Bvoto.png" alt="" id="BLOGGER_PHOTO_ID_5703872586618726354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Mande essa notícia para os seus amigos queridos.&lt;br /&gt;&lt;br /&gt;Um abraço a todos que lerem essa mensagem. Obrigado.&lt;br /&gt;&lt;br /&gt;Edimartin Martins&lt;br /&gt;&lt;br /&gt;PS: Um abração ao Away e eu epero que ele veja esta mensagem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-4307190446913442623?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/4307190446913442623/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=4307190446913442623' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4307190446913442623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4307190446913442623'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2012/01/away-o-maior-brasileiro-de-todos-os.html' title='Away - O maior brasileiro de todos os tempos'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-MtTYLSxt-EA/Tyg55al_Z9I/AAAAAAAAAKU/uIJ3ONpl2ec/s72-c/away%2Bvoto.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-7615137298029283913</id><published>2012-01-18T13:27:00.000-08:00</published><updated>2012-01-18T13:33:19.386-08:00</updated><title type='text'>Estupro no Big Brother Brasil 12</title><content type='html'>Eu nunca tinha visto o big brother brasil 12 (e nem as outras edições). Mas ontem um assunto no facebook realmente me chamou a atenção. Algo sobre "cu de bêbada não tem dono". Eu não sabia o porque e quando olhei o jornal (eu tinha ido na minha avó e o meu tio estava olhando), eu tive um ataque de risos.&lt;br /&gt;Por causa disso a emissora sobre o ibope do programa. Isso é o cúmulo.&lt;br /&gt;A melhor coisa que nós podemos fazer é zombar da situação pela internet.&lt;br /&gt;&lt;br /&gt;Eu já estou fazendo a minha contribuição.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-yoOIn4kPf3w/Txc6JjWslAI/AAAAAAAAAKA/i4wQamipYrs/s1600/estupro%2BBBB%2B12.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 238px; height: 588px;" src="http://4.bp.blogspot.com/-yoOIn4kPf3w/Txc6JjWslAI/AAAAAAAAAKA/i4wQamipYrs/s400/estupro%2BBBB%2B12.jpg" alt="" id="BLOGGER_PHOTO_ID_5699087789244322818" border="0" /&gt;&lt;/a&gt;Espero que gostem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-7615137298029283913?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/7615137298029283913/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=7615137298029283913' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7615137298029283913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7615137298029283913'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2012/01/estupro-no-big-brother-brasil-12.html' title='Estupro no Big Brother Brasil 12'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-yoOIn4kPf3w/Txc6JjWslAI/AAAAAAAAAKA/i4wQamipYrs/s72-c/estupro%2BBBB%2B12.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-6315999628131371305</id><published>2011-11-14T11:26:00.000-08:00</published><updated>2011-11-14T11:32:22.881-08:00</updated><title type='text'>Problem is Forever Alone</title><content type='html'>Eu fiz em SVG alguns mêmes da internet.&lt;br /&gt;&lt;br /&gt;Assim eu posso fazer os desenhos do tamanho que eu quizer.&lt;br /&gt;&lt;br /&gt;Aqui estão alguns exemplos.&lt;div style="text-align: left;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-ByaS13u7EJ0/TsFrw3kniHI/AAAAAAAAAJY/nIEk9uYhwBs/s1600/foreverAlone1.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 177px; height: 470px;" src="http://2.bp.blogspot.com/-ByaS13u7EJ0/TsFrw3kniHI/AAAAAAAAAJY/nIEk9uYhwBs/s400/foreverAlone1.jpg" alt="" id="BLOGGER_PHOTO_ID_5674935492758964338" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-xD3WUbBekUc/TsFr_SvNThI/AAAAAAAAAJk/p7p7d-Y1TVs/s1600/problem1.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 222px;" src="http://2.bp.blogspot.com/-xD3WUbBekUc/TsFr_SvNThI/AAAAAAAAAJk/p7p7d-Y1TVs/s400/problem1.jpg" alt="" id="BLOGGER_PHOTO_ID_5674935740569308690" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-6315999628131371305?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/6315999628131371305/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=6315999628131371305' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/6315999628131371305'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/6315999628131371305'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2011/11/problem-is-forever-alone.html' title='Problem is Forever Alone'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-ByaS13u7EJ0/TsFrw3kniHI/AAAAAAAAAJY/nIEk9uYhwBs/s72-c/foreverAlone1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-110198533356748513</id><published>2011-09-24T11:47:00.000-07:00</published><updated>2011-09-24T12:07:50.865-07:00</updated><title type='text'>Apple to fora</title><content type='html'>Recentemente (vai completar um ano) eu comprei um iPad. É indiscutivel o prazer de usar o computador tocando na tela.&lt;br /&gt;&lt;br /&gt;Embora no iPad é tudo pago (quanquer programa que tu quizer vai ter que comprar) mesmo assim ele possui aplicativos que resolvem o nosso problema.&lt;br /&gt;&lt;br /&gt;Acrescentando atualizações a festa eu comprei um MAC e uma licença de desenvolvedor.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;O Ipad (assim como o iPhone e o iPod) tem um pequeno problema: o iTunes.&lt;br /&gt;Eu usava o iTunes no windows (eu não tinha mac) coisa de maluco aonde é pedir para perder tudo que tinha mno computador (o iPad).&lt;br /&gt;Quando eu tentei atualizar o sistema operacional do iPad, fudeu. Ele retirou o sistema operacional, travou o aparelho e não conseguia voltar de jeito nenhum.&lt;br /&gt;Eu tive que ir no iPlace para pedir para eles arrumarem pra mim. Eles reiniciaram o iPad comigo perdendo tudo que eu tinha. Isso foi à uns 3 mêses atrás eu acho.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Agora a pouco eu conectei o iPad ao iTunes no MAC e ele sugeriu atualizar o sistema operacional. Ele travou denovo (no MAC. Nem na própria apple a gente se dá bem) e eu tive que reinicia-lo. Por sorte ele salvou no iTunes algumas coisas como fotos, musicas e alguns aplicativos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Então um conselho para os donos do iThing.&lt;br /&gt;&lt;br /&gt;NUNCA ATUALIZE O SOSTEMA OPERACIONAL. Ele pode te falar que vai dar tudo certo mas nunca  dá.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-110198533356748513?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/110198533356748513/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=110198533356748513' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/110198533356748513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/110198533356748513'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2011/09/apple-to-fora.html' title='Apple to fora'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-4039916054141286077</id><published>2011-08-17T22:20:00.000-07:00</published><updated>2011-09-01T18:36:33.380-07:00</updated><title type='text'>Portabilidade</title><content type='html'>Eu estive criando uma biblioteca para c++ e tive problemas em porta-la para o Visual Studio (Visual C). Eu geralmente uso o minGW.&lt;br /&gt;&lt;br /&gt;Tive esse problema ao carregar aquivos.&lt;br /&gt;No MinGW eu uso o fopen mas o visual C deixou um warning bem grande sobre o fopen e pediu para eu usar o fopen_s (que faz a mesma coisa). Eu troquei e quando eu fui testar no MinGW o compilador não reconheceu o fopen_s.&lt;br /&gt;&lt;br /&gt;Então eu pesquisei sobre como portar o mesmo código para vários sistemas operacionais e vários compiladores.&lt;br /&gt;&lt;br /&gt;Aqui está um exemplos com os compiladores mais utilizados. Os compiladores usam o comando chamado #ifdef, #endif.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;#ifdef WIN32 //Windows 32bits&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt; #endif&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt; #ifdef WIN64//Windows 64bits&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt; #endif&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;#ifdef __linux__//Linux&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;No mac é&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;#ifdef __APPLE__//MacOS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;Os compiladores são:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;#ifdef __GNUC__ //GCC&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;#endif&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;#ifdef _MSC_VER //Visual C&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;#endif&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Aqui está o código de exemplo. Ele pode ser compilado em qualquer sistema operacional nos compiladores GCC e Visual C.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;//Se for windows usa a windows.h&lt;br /&gt;#include &amp;lt; stdio.h &amp;gt;&lt;br /&gt;#ifdef _WIN32 || _WIN64&lt;br /&gt;  #include &amp;lt; conio.h &amp;gt;&lt;br /&gt;&lt;br /&gt;//Lembrei que nao existe getch no linux&lt;br /&gt;#elif defined __linux__ || __APPLE__&lt;br /&gt;   //includes para a getch no linux&lt;br /&gt;   #include &lt;termios.h&gt;&lt;br /&gt;   #include &lt;unistd.h&gt;&lt;br /&gt;   //Getch no linux&lt;br /&gt;   int getch(void){&lt;br /&gt;       struct termios velho, novo;&lt;br /&gt;       int x;&lt;br /&gt;&lt;br /&gt;       tcgetattr( STDIN_FILENO, &amp;amp;velho );&lt;br /&gt;       novo= velho;&lt;br /&gt;       novo.c_lflag &amp;amp;= ~( ICANON | ECHO );&lt;br /&gt;       tcsetattr( STDIN_FILENO, TCSANOW, &amp;amp;novo );&lt;br /&gt;       x= getchar();&lt;br /&gt;       tcsetattr( STDIN_FILENO, TCSANOW, &amp;amp;velho );&lt;br /&gt;       return x;&lt;br /&gt;       }&lt;br /&gt;#else&lt;br /&gt;//#Plataforma nao suportada&lt;br /&gt;#endif&lt;br /&gt;&lt;br /&gt;int main(){&lt;br /&gt;   printf("Program ");&lt;br /&gt;&lt;br /&gt;   //windows 32&lt;br /&gt;   #ifdef _WIN32&lt;br /&gt;       printf(" windows 32");&lt;br /&gt;       #ifdef __GNUC__&lt;br /&gt;           printf(" minGW");&lt;br /&gt;       #endif&lt;br /&gt;       #ifdef _MSC_VER&lt;br /&gt;           printf(" VisualC");&lt;br /&gt;       #endif&lt;br /&gt;   #endif&lt;br /&gt;&lt;br /&gt;   //windows 64&lt;br /&gt;   #ifdef _WIN64&lt;br /&gt;       printf(" windows 64");&lt;br /&gt;       #ifdef __GNUC__&lt;br /&gt;           printf(" minGW");&lt;br /&gt;       #endif&lt;br /&gt;       #ifdef _MSC_VER&lt;br /&gt;           printf(" VisualC");&lt;br /&gt;       #endif&lt;br /&gt;   #endif&lt;br /&gt;&lt;br /&gt;   //Linux&lt;br /&gt;   #ifdef __linux__&lt;br /&gt;       printf(" linux");&lt;br /&gt;       #ifdef __GNUC__&lt;br /&gt;           printf(" GCC");&lt;br /&gt;       #endif&lt;br /&gt;   #endif&lt;br /&gt;&lt;br /&gt;   //MacOS&lt;br /&gt;   #ifdef __APPLE__&lt;br /&gt;       printf(" MacOS");&lt;br /&gt;       #ifdef __GNUC__&lt;br /&gt;           printf(" GCC");&lt;br /&gt;       #endif&lt;br /&gt;   #endif&lt;br /&gt;&lt;br /&gt;   getch();&lt;br /&gt;&lt;br /&gt;   //So porque o console do MAC quando o programa e finalizado ele&lt;br /&gt;   //adiciona uma mensagem grande&lt;br /&gt;   #ifdef __APPLE__&lt;br /&gt;       printf("\n");&lt;br /&gt;   #endif&lt;br /&gt;&lt;br /&gt;   return 0;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/unistd.h&gt;&lt;/termios.h&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-4039916054141286077?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/4039916054141286077/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=4039916054141286077' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4039916054141286077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4039916054141286077'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2011/08/portabilidade.html' title='Portabilidade'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-9061999716896775834</id><published>2011-08-10T11:47:00.000-07:00</published><updated>2011-08-10T12:19:12.179-07:00</updated><title type='text'>Ctrl+C Ctrl+V em C</title><content type='html'>Agora a pouco me veio a seguinte quesão:&lt;br /&gt;&lt;br /&gt;Como funciona o ctrl+c ctrl+v no computador (em qualquer sistema operacional).&lt;br /&gt;Usando a lógica é óbvio que o sistema operacional aloca em um buffer de dados. Então eu preciso apenas ler este buffer.&lt;br /&gt;Eu fiz uma pesquisa sobre os buffers em C (tipo stdin ou stdou) para ler com a função fscanf (le de um buffer na memoria) mas eu não encontrei nenhum buffer em C puro, foi necessário buscar pelo sistema operacional.&lt;br /&gt;&lt;br /&gt;Então eu fui a busca e descobri que o nome do buffer é clipboard &lt;a href="http://msdn.microsoft.com/en-us/library/ms648709%28v=vs.85%29.aspx"&gt;windows&lt;/a&gt; (no linux eu preciso logar em linux para testar) e então eu pesquisei sobre o jeito mais fácil de ler texto do buffer.&lt;br /&gt;&lt;br /&gt;O texto é um ponteiro de void (void é um dado qualquer que pode representar nada mas no clip tem dados). O nosso texto lido será um ponteiro de char (uma string em C ANSI).&lt;br /&gt;&lt;br /&gt;Bem vamos ao trabalho:&lt;br /&gt;&lt;br /&gt;Para windows precisa-se incluir a windows.h&lt;br /&gt;#include &amp;lt; windows.h &amp;gt;&lt;windows.h&gt;&lt;br /&gt;Para usar NULL inclui a cstdlib&lt;br /&gt;#include &amp;lt; &lt;/windows.h&gt;cstdlib &amp;gt;&lt;br /&gt;&lt;windows.h&gt;&lt;cstdlib&gt;//Ambas bibliotecas são encontradas em qualquer compilador C para windows&lt;br /&gt;&lt;br /&gt;A leitura no windows é necessário fazer 3 etapas.&lt;br /&gt;1º Abrir o clipboard.&lt;br /&gt;2º ler um texto do clipboard.&lt;br /&gt;3º fechar o clipboard.&lt;br /&gt;&lt;br /&gt;O codigo pode ser copiado daqui&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;char* readClipboard(){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //variavel do clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    char* str=NULL;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //Cria um ifdef para ter certeza que estamos usando windows 32 bits&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #ifdef _WIN32&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //Variavel void para aleitura do clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    HANDLE clip;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;   //Abre o clipboard 1º passo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    if(OpenClipboard(NULL)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        //Se foi aberto entao carrega o texto 2º passo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        clip = GetClipboardData(CF_TEXT);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;       &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        //Se o texto foi lido entao ele copia a string&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        if(clip){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //Copia o clip&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //criem uma funcao para copiar a string. Eu tenho uma mas eu não quero embaralhar&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //a cabeça de vocês&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //NAO DELETAR O CLIP&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //O clip nao pode ser deletado nem modificado porque ele é criado pelo sistema&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;           //operacional. portanto o sistema operacional é que irá apagá-lo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        //fecha o clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        CloseClipboard();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //fim codigo windows 32&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //Lugar para o código em linux&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #elif __linux__&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //codigo em linux&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #endif&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //fim codigo windows 64&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;   //no final ele retorna a string&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    return str;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;//Antes de escrever no buffer é aconcelhável limpa-lo antes. Senão os dados vão sendo adicionandos ao buffer e vai ficando com lixo.&lt;br /&gt;&lt;br /&gt;Para limpar são 3 etapas:&lt;br /&gt;1º Abrir o clipboard.&lt;br /&gt;2º limpar o clipboard.&lt;br /&gt;3º fechar o clipboard.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Aqui está o código que eu fiz.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;bool cleanClipboard(){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //variavel de retorno recebe&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    bool ret=false;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //Codigo windows 32 para ser usando em windows&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #ifdef _WIN32&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //abre o clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    if(OpenClipboard(NULL)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        //Limpa o buffer. A funcao retorna 1 se foi limpo e 0 se nao foi limpo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        if(EmptyClipboard()){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            ret=true;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        //fecha o clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        CloseClipboard();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //fim codigo windows 32&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #elif __linux__&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //codigo em linux&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #endif&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //senao retorna false&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    return ret;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;E no final a escrita de dados no clipboard é feita também em 3 passos:&lt;br /&gt;1º Abrir o clipboard.&lt;br /&gt;2º escrever dados.&lt;br /&gt;3º fechar o clipboard.&lt;br /&gt;&lt;br /&gt;Aqui está a função que eu fiz.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;bool writeClipboard(char* str){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    bool ret=false;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //primeiro limpa o clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    cleanClipboard();&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //Codigo windows 32&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #ifdef _WIN32&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //abre o clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    if(OpenClipboard(NULL)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        //Escreve o texto&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        if(str){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //pode escrever o texto&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            //se quizer escrever bytes é só modificar o CF_TEXT para CF_DATA&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            if(SetClipboardData(CF_TEXT,(HANDLE)str)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                //&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                ret=true;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;            }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        //fecha o clipboard&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        CloseClipboard();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //fim codigo windows 32&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #elif __linux__&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //codigo em linux&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    #endif&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    //retorna o resultado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    return ret;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pronto. Aqui está a leitura do buffer de clipboard do windows.&lt;br /&gt;&lt;br /&gt;Um abraço.&lt;br /&gt;&lt;/cstdlib&gt;&lt;/windows.h&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-9061999716896775834?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/9061999716896775834/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=9061999716896775834' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/9061999716896775834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/9061999716896775834'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2011/08/ctrlc-ctrlv-em-c.html' title='Ctrl+C Ctrl+V em C'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-4787161054004870968</id><published>2011-07-15T20:43:00.000-07:00</published><updated>2011-07-15T20:45:33.369-07:00</updated><title type='text'>GTA 5</title><content type='html'>Está aparecendo na internet muitas especulações sobre como será o próximo jogo da séria “Grand Thieft Auto”, mas a principio, os fâns precisam pensar que já que o jogo será feito para a geração atual de consoles, o avanço talvez não seja tão grande.&lt;br /&gt;&lt;br /&gt;Eu criei algumas especulações possíveis de como pode ser o GTA 5:&lt;br /&gt;&lt;br /&gt;1 – Motion Scanning. A rockstar desenvolveu o “motion scanning” para o jogo “L.A. Noire” e a técnica introduz um avanço tecnológico para a indústria.&lt;br /&gt;A técnica usa 32 câmeras em HD para captar todos os movimentos do rosto dos atores para assim, animar o rosto dos personagens no jogo. Eu não sei se além do modelo poligonal animado, se eles animaram também as texturas. Mas o que importa é que a técnica funciona muito bem.&lt;br /&gt;Com o “motion scanning”, a probabilidade de haver prostitutas mais expressivas é bem grande.&lt;br /&gt;&lt;br /&gt;2 – Gráficos detalhados de acordo com o Hardware adequado: Não podemos esperar modelos poligonais mais detalhados, ou então algo parecido com “unlimited detail”.&lt;br /&gt;Precisamos entender que se o próximo GTA for lançado para os consoles atuais (Xbox 360, playstation 3 e Wii U) ele necessita usar o HW de acordo com o especificado. Então a probabilidade de um avanço tecnológico em prós-processamento é bem grande. Eu estou falando de “shaders”: os pequenos programinhas que interferem no pipeline do processamento de vídeo sem afetar no FPS (Frames per second e não First person shooter).&lt;br /&gt;Recentemente apareceu na internet um “mod de GTA 4” que abusa o uso de “shaders” para fotorrealismo que talvez possa ser usado em consoles atuais (eu não tenho certeza). Então dirigir no GTA 5 poderá ser parecido com &lt;a href="http://www.youtube.com/watch?v=pEHtzSz8FT0"&gt;isto&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;O vídeo mais bonito que eu vi foi &lt;a href="http://www.youtube.com/watch?v=BK2Nti6PwLM"&gt;este&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;3 – Próximo GTA pode ser GTA 4.5: Não é de hoje que a “rockstar” apenas muda de “engine” quando mudamos de console. Então o próximo GTA pode ser um GTA 4.5 aonde iremos nos aventurar em “Vice City”, ou “San Andreas” (eu voto por Vice City).&lt;br /&gt;Eles podem apenas atualizar a engine para ficar ainda melhor nos consoles.&lt;br /&gt;&lt;br /&gt;Bem. Isto é a minha opinião de como poderá ser o próximo GTA. Comentem a vontade:&lt;br /&gt;Um abraço.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-4787161054004870968?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/4787161054004870968/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=4787161054004870968' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4787161054004870968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4787161054004870968'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2011/07/gta-5.html' title='GTA 5'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-8545778870028053713</id><published>2011-02-19T23:00:00.000-08:00</published><updated>2011-02-19T23:19:30.393-08:00</updated><title type='text'>Festa de casamento.</title><content type='html'>Querida, hoje vamos nos casar.&lt;br /&gt;&lt;br /&gt;Muitas mulheres sonham em ouvir isso e muitas já ouviram.&lt;br /&gt;Eu não estou falando de casamento mas sim da festa (igual a todas as festas). Esta tem um problema.&lt;br /&gt;&lt;br /&gt;Hoje eu estou chegando de uma festa de casamento. Uma festa simplesmente chique (é festa simples e chique ao mesmo tempo).&lt;br /&gt;&lt;br /&gt;O grande problema destas festas é uma coisa que você sabe, a sua mãe sabe e até o seu cachorro sabe.&lt;br /&gt;&lt;br /&gt;ALCOOL.&lt;br /&gt;&lt;br /&gt;O grande problema nas familias é a cerveja. Ela retira o seu dinheiro, a sua casa e a sua esposa (se existir uma).&lt;br /&gt;&lt;br /&gt;Na festa (eu e o meu pai tinhamos um trato. Eu ia junto para dirigir que assim ele podia encher a cara bebendo a parte dele, minha e a da minha mãe). Chegando o a primeira bebida que o garçom ofereceu foi alcool. E o mais impressionante é que ele foi enchendo o copo do meu pai e o meu, porque é padrão em festas 100 porcento dos homens afogarem as suas mágoas.&lt;br /&gt;&lt;br /&gt;Falando em afogar as mágoas:&lt;br /&gt;Muitos homens não gostam da própria vida. Se não existisse alcool, eles cometeriam suicidio. Deixando pessoas que talvez o amam, mas o amavam antes de ele começar a beber.&lt;br /&gt;&lt;br /&gt;Recentemente eu não tenho gostado da minha vida. Isso eu confesso. Mas eu não tenho coragem de afogar a minha desilusão no alcool. Você não deve causar tristeza aos seus acompanhantes.&lt;br /&gt;Enquanto você fica em alpha, os seus acompanhantes precisam aguentar o seu estado beta. A pior maneira de ter que aguentar uma pessoa&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;O alcool se tornou padrão na vida do mundo. A primeira bebida que pensam em festa de criança é que não podemos deixar de faltar a cerveja. Quando alguém se forma, não pode deixar de faltar a cerveja. Quando é a comemoração da morte de Jesus, não se pode deixar de faltar a cerveja.&lt;br /&gt;&lt;br /&gt;Eu queria que a cerveja não existisse, porque assim a mimha vida poderia ser menos pior.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-8545778870028053713?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/8545778870028053713/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=8545778870028053713' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8545778870028053713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8545778870028053713'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2011/02/festa-de-casamento.html' title='Festa de casamento.'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-8367177474041717517</id><published>2011-02-07T02:38:00.000-08:00</published><updated>2011-02-07T03:02:54.173-08:00</updated><title type='text'></title><content type='html'>&lt;span style="font-weight: bold;"&gt;Sem Filhos.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Eu nunca fui um amante da leitura. Os livros sempre me chatearam.&lt;br /&gt;&lt;br /&gt;Era um saco ter que ler uma história que os professores afirmam ser ótima apenas porque o escritos é brasileiro. E não existe muitas histórias brasileiras pelo mercado.&lt;br /&gt;Tanto que os melhores livros já feitos não são brasileiros.&lt;br /&gt;&lt;br /&gt;Mas continuando: Depois que eu vi o anuncio deste livro, eu tive que compra-lo.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YvqGld2ki40/TU_ObugbCdI/AAAAAAAAAGA/U8Ow21WUU9Y/s1600/capa%2Bsem%2Bfilhos.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 266px; height: 400px;" src="http://3.bp.blogspot.com/_YvqGld2ki40/TU_ObugbCdI/AAAAAAAAAGA/U8Ow21WUU9Y/s400/capa%2Bsem%2Bfilhos.jpg" alt="" id="BLOGGER_PHOTO_ID_5570898239816403410" border="0" /&gt;&lt;/a&gt;É o melhor livro que eu já li. Eu li em dois dias.&lt;br /&gt;&lt;br /&gt;A escritora é francesa (outra ótima escritora que não é brasileira) explica as dificuldades de criar os dois filhos adolecentes.&lt;br /&gt;O número de razões é simbólico já que o livro na verdade é uma narração das mágoas adquiridas desde o pós parto. E também é um livro mais voltados às mulheres já que a escritora reclama pelos pais não serem pais perto de seus filhos (o que depende do tipo de pai).&lt;br /&gt;&lt;br /&gt;A minha opinião é que existem dois tipos de pessoas.&lt;br /&gt;As que nasceram para ter filhos, e as que não nasceram para ter filhos.&lt;br /&gt;A sociedade fica impondo que a proliferação é obrigatória para ser uma pessoa feliz, e por esta razão que muitas crianças sofrem psicologicamente por pais que não sabem como tratar uma criânça.&lt;br /&gt;&lt;br /&gt;Eu descobri isso já faz alguns anos (estou com 26 e sou totalmente solteiro. Mas não é por opção).&lt;br /&gt;Eu não nasci para ter filhos. Eu não posso ter filhos.&lt;br /&gt;As crianças me aborrecem.&lt;br /&gt;&lt;br /&gt;Que bom que eu descobri isso à tempo. Imagine se eu não tivesse descoberto isso. Eu teria uma vida de mágoas por pelo menos 20 anos.&lt;br /&gt;&lt;br /&gt;Este livro deixou a minha vida mais feliz.&lt;br /&gt;Obrigado para a escritora (seja onde ela estiver).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-8367177474041717517?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/8367177474041717517/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=8367177474041717517' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8367177474041717517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8367177474041717517'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2011/02/sem-filhos.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_YvqGld2ki40/TU_ObugbCdI/AAAAAAAAAGA/U8Ow21WUU9Y/s72-c/capa%2Bsem%2Bfilhos.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-5514897914251362140</id><published>2010-12-14T16:53:00.001-08:00</published><updated>2010-12-14T17:03:55.068-08:00</updated><title type='text'>Ipad Chegou</title><content type='html'>Consegui comprar o iPad no dia do lançamento. Depois de ter dado o "Rim" e o "Fígado" por um ele chegou.&lt;br /&gt;&lt;br /&gt;O computador não é lá essas coisas (processador de 1 Giga) mas o que mais chama a atenção é a tela de 9.2 polegadas que aceita toque usando os dedos ou usando uma caneta especial que também é o olho da cara.&lt;br /&gt;&lt;br /&gt;O que me deixa mais pra baixo é ver que eu vou pagar o dobro do preço vendido nos Estados Unidos (pra quem é fâ do Brasil). Mas o aparelho já retira essa tristeza.&lt;br /&gt;&lt;br /&gt;Eu comprei ele especialmente para desnho (é mais barato que comprar um touch-screen para o computador) e é fuito fácil desenhar no iPad. É claro que é necessário desenbolsar uma graninha para comprar um programa profissional de desenho porque os frees não ajudam. O ótimo do iPad é que o programa não possui aquelas licenças monstruosas que os softwares pagos tem no Brasil ou seja: Eu comprei o sketchbook pro da autodesk (Nunca pensei que eu compraria um software da autodesk) por 16 reais. Isso é o sonho de todo o designer. Ter softwares baratos na sua empresa.&lt;br /&gt;&lt;br /&gt;E falando em sketch. O programa é muito fácil de se utilizar e eu já fiz o meu teste. Eu fiz um lamborghini desenhado com lapiz. Eu fui um pouco cheater. Eu desenhei encima da foto apenas o carro. Mas o resultado ficou muito bonito. Outro dia eu posto um desenho feito do zero.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YvqGld2ki40/TQgTjwJFVJI/AAAAAAAAAFw/ZJlq8O6Kkvk/s1600/lamborghiniIPad.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_YvqGld2ki40/TQgTjwJFVJI/AAAAAAAAAFw/ZJlq8O6Kkvk/s400/lamborghiniIPad.JPG" alt="" id="BLOGGER_PHOTO_ID_5550708045673485458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;A única coisa que eu senti falta no software é que eu não posso fazer um desenho maior que este. Se ouver a necessidade eu terei que dividir o desenho em partes e juntar no GIMP.&lt;br /&gt;&lt;br /&gt;Mas mesmo assim o programa respondeu as minhas espectativas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-5514897914251362140?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/5514897914251362140/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=5514897914251362140' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5514897914251362140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5514897914251362140'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2010/12/ipad-chegou.html' title='Ipad Chegou'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_YvqGld2ki40/TQgTjwJFVJI/AAAAAAAAAFw/ZJlq8O6Kkvk/s72-c/lamborghiniIPad.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-7643900130297762672</id><published>2010-07-30T13:13:00.000-07:00</published><updated>2010-07-30T13:17:09.256-07:00</updated><title type='text'>Loldogs</title><content type='html'>Minha contribuição para os loldogs da internet. É a minha mais velha. Tem 14 aninhos.&lt;br /&gt;&lt;br /&gt;Eu contei uma piada para ela e ela fez essa cara.&lt;br /&gt;Digna de uma foto:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YvqGld2ki40/TFMzEojMFVI/AAAAAAAAAFc/R8UIK7PyIF8/s1600/loldogs.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_YvqGld2ki40/TFMzEojMFVI/AAAAAAAAAFc/R8UIK7PyIF8/s400/loldogs.jpg" alt="" id="BLOGGER_PHOTO_ID_5499795724647011666" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-7643900130297762672?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/7643900130297762672/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=7643900130297762672' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7643900130297762672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7643900130297762672'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2010/07/loldogs.html' title='Loldogs'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YvqGld2ki40/TFMzEojMFVI/AAAAAAAAAFc/R8UIK7PyIF8/s72-c/loldogs.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-9061857753557284250</id><published>2010-07-27T10:36:00.000-07:00</published><updated>2010-07-27T10:41:47.294-07:00</updated><title type='text'>Vamos aprender a desenhar</title><content type='html'>Eu acabei o meu cirso de ilustração. No final tivemos que desenhar um personagem já existente.&lt;br /&gt;Eu escolhi Gordon freeman (Half Life).&lt;br /&gt;Ele teve mais de 10 desenhos como um passo a passo. Desde sua pose com estrutura muscular até a final com a armadura.&lt;br /&gt;&lt;br /&gt;No dia da aula eu desenhei as sombras gerado pelo efeito de iluminação.&lt;br /&gt;&lt;br /&gt;Aqui está o resultado final escaneado.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YvqGld2ki40/TE8aGALcQLI/AAAAAAAAAFU/GTLDhM0zNxM/s1600/gordonSombra.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 352px; height: 400px;" src="http://2.bp.blogspot.com/_YvqGld2ki40/TE8aGALcQLI/AAAAAAAAAFU/GTLDhM0zNxM/s400/gordonSombra.jpg" alt="" id="BLOGGER_PHOTO_ID_5498642360472191154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;No futuro eu pretendo fazer mais desenhos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-9061857753557284250?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/9061857753557284250/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=9061857753557284250' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/9061857753557284250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/9061857753557284250'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2010/07/vamos-aprender-desenhar.html' title='Vamos aprender a desenhar'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YvqGld2ki40/TE8aGALcQLI/AAAAAAAAAFU/GTLDhM0zNxM/s72-c/gordonSombra.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-8806742131294144333</id><published>2010-05-25T17:31:00.000-07:00</published><updated>2010-05-25T17:43:52.415-07:00</updated><title type='text'></title><content type='html'>Hoje o comentário será sobre o humor brasileiro.&lt;br /&gt;&lt;br /&gt;Você está rindo porque é engraçado ou porque é merchandising. Você está rindo porque acha que a piada é chique?&lt;br /&gt;&lt;br /&gt;Eu vi no ano passado a apresentação do "Emmy" (aonde o Jim Parson não ganhou pelo papel do Sheldon Cooper) e eu imaginei:&lt;br /&gt;- Porque os programas humorísticos brasileiros não participam do "Emmy"?. Alguns diriam que os americanos possuem uma "panelinha" e não deixam os brasileiros concorrerem.&lt;br /&gt;&lt;br /&gt;A resposta certa para isso é que os brasileiros não possuem força para concorrer ao "Emmy".&lt;br /&gt;&lt;br /&gt;Concorrentes do "Emmy" geralmente são programas de humor inteligente, inovador e não-repetitivos. Lá ninguém que concorre apenas falando cara-crachá na televisão. São atores renomados com anos de experiência.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Esta reflexão foi escrita depois da leitura deste &lt;a href="http://livromecanico.blogspot.com/2010/03/o-humor-da-televisao-brasileira-e-muito.html"&gt;texto.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;É um ótimo texto.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-8806742131294144333?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/8806742131294144333/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=8806742131294144333' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8806742131294144333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8806742131294144333'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2010/05/hoje-o-comentario-sera-sobre-o-humor.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-7847154390484028184</id><published>2010-05-23T05:13:00.000-07:00</published><updated>2010-05-23T05:28:04.965-07:00</updated><title type='text'></title><content type='html'>Olá galera leitora do blog. Ao ver o blog muito legal do meu amigo "asakuranetto" eu resolvi voltar a postar neste aqui.&lt;br /&gt;Ele deveria ser sobre desenvolvimento, mas eu quero adicionar outras coisas.&lt;br /&gt;&lt;br /&gt;Agora vamos um pouco de música.&lt;br /&gt;&lt;br /&gt;No mundo nada se cria, tudo se copia.&lt;br /&gt;&lt;br /&gt;Antigamente as músicas no brasil, nada era cópia (eu nunca encontrei uma música criada pela dupla sandy e junior).&lt;br /&gt;Nem o próprio "rei" (na minha opinião rei da música no brasil é o Renato Russo porque todo mundo ouve legião urbana e apenas os velhos ouvem Roberto Carlos), voltando, o próprio "rei" não conseguiu se conter vendo uma música estrangeira faser muito sucesso e resolveu ganhar dinheiro encima dela.&lt;br /&gt;A música Splish Splash do Roberto Carlos é uma regravação da música Splish Splash do Bobby Darin.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=ShGrtA17mSg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;E não podemos nos esquecer da rainha dos altinhos (depois daquele filme pornô). A música hey Mickey da "Xuxa" na verdade é uma música para pessoas adultas chamada hey mickey do grupo (acredito que seja um grupo) Tony Basil (não é tony do brasil).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=y4CyNvEfWoE"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enão até agora é só isso. Eu pretendo escrever algo mais vezes.&lt;br /&gt;&lt;br /&gt;Bye.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-7847154390484028184?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/7847154390484028184/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=7847154390484028184' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7847154390484028184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7847154390484028184'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2010/05/ola-galera-leitora-do-blog.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-8892307410292598408</id><published>2007-12-06T07:13:00.000-08:00</published><updated>2007-12-06T07:16:10.413-08:00</updated><title type='text'>Links</title><content type='html'>Olá galera.&lt;br /&gt;&lt;br /&gt;Aqui eu estou disponibilizando o download do Clon3D.&lt;br /&gt;&lt;br /&gt;Vale lembrar que é um programa criado em uma linguagem interpretada, portanto o usuario necessita do interpretador.&lt;br /&gt;&lt;br /&gt;Bem.&lt;br /&gt;&lt;br /&gt;Aqui está o link do download. Se no futuro houver uma atualização para download eu posto aqui.&lt;br /&gt;&lt;br /&gt;http://clon3d.sourceforge.net/Clon3D_for_python.zip&lt;br /&gt;&lt;br /&gt;Um abraço a todos que olharam o blog.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-8892307410292598408?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/8892307410292598408/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=8892307410292598408' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8892307410292598408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8892307410292598408'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/12/links.html' title='Links'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-2831775215203154952</id><published>2007-11-23T08:53:00.001-08:00</published><updated>2007-11-23T09:23:30.755-08:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YvqGld2ki40/R0cG4nVbUlI/AAAAAAAAACU/ed_KLJtjQe0/s1600-h/tela.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 198px; height: 154px;" src="http://3.bp.blogspot.com/_YvqGld2ki40/R0cG4nVbUlI/AAAAAAAAACU/ed_KLJtjQe0/s320/tela.JPG" alt="" id="BLOGGER_PHOTO_ID_5136081469740634706" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;1º&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YvqGld2ki40/R0cHCHVbUmI/AAAAAAAAACc/uy0da6ErnUw/s1600-h/tela2.JPG"&gt;&lt;img style="cursor: pointer; width: 224px; height: 176px;" src="http://1.bp.blogspot.com/_YvqGld2ki40/R0cHCHVbUmI/AAAAAAAAACc/uy0da6ErnUw/s320/tela2.JPG" alt="" id="BLOGGER_PHOTO_ID_5136081632949391970" border="0" /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;2º&lt;/span&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YvqGld2ki40/R0cHPnVbUnI/AAAAAAAAACk/LK14sLNqFjY/s1600-h/tela3.jpg"&gt;&lt;img style="cursor: pointer; width: 195px; height: 176px;" src="http://3.bp.blogspot.com/_YvqGld2ki40/R0cHPnVbUnI/AAAAAAAAACk/LK14sLNqFjY/s320/tela3.jpg" alt="" id="BLOGGER_PHOTO_ID_5136081864877625970" border="0" /&gt;&lt;/a&gt;3º&lt;br /&gt;&lt;br /&gt;Olá Galera. Aqui estçao as fotos do programa Clon3D.&lt;br /&gt;&lt;br /&gt;É um programa simples mas é um ótimo aprendizado.&lt;br /&gt;&lt;br /&gt;Como funciona. O programa é totalmente movido pelo mouse. Assim não existe a necessidade de decorar teclas.&lt;br /&gt;O Clon3D dispões de duas janelas GTK Gimp ToolKit).&lt;br /&gt;A primeira da esquerda é a janela aonde aparece a tela OpenGL. Esta janela pode ser modelada do jeito que quizer que a imagem não fica distorcida. isto é a funcao Reshape da GKTGLExt aonde quando a janela é dudada de tamanho. Ele calcula o tamanho da janela a atualiza a tela do frustum. A única limitação da janela é que o usuario não pode deixar a janela menor que 640 X 480.&lt;br /&gt;&lt;br /&gt;Do lado direito da janela "Clon3D" fica a janela "Manipuladores" aonde fica todos os botões para o usuario mudar a malha.&lt;br /&gt;Clicando no botão com um mouse e uma estrela amarela, o usuario pode clicar no botão caixa. Assim pode ser atribuido valores em tempo real para a caixa. Estes valores são de altura, largura e profundidade. E os segmentos no eixoY. FIcou um pouco dificil adicionar nos outros segmentos.&lt;br /&gt;&lt;br /&gt;E clicando o botão twist. Pode se aplicar no modelo o modificador twist aonde irá torcer a caixa unicamente no eixoY.&lt;br /&gt;&lt;br /&gt;E os botoes debaixo são para mover a camera.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Como foi criado o objeto principal.&lt;br /&gt;&lt;br /&gt;O arquivo Clon3D do python contém dois objetos. Um é o objeto OpenGL e é ele que contém os construtores, as funções init para iniciar a openGl. Reshape par modificar o tamanho da janela e a funcao display para fazer o desenho da tela OpenGL. E por último tem as funcões para uso do mouse na cena e também as funções para criação dos circulos na tela.&lt;br /&gt;&lt;br /&gt;Depois tem o objeto Engine que cria a janela GTK e aplica o objeto opengl. Assim a janela GTK vai usar as funcoes passadas por templates do objeto e vai desenhar a tela na janela GTK.&lt;br /&gt;&lt;br /&gt;E também tem a criação da outra janela aonde esta janela pussui um layout. Este layout receb tudo como botoes, spinners, caixas, etc. O layout é necesário para mostrar aonde os botões estão.&lt;br /&gt;Se não houvesse layout, os botões teriam o tamanho da janela.&lt;br /&gt;&lt;br /&gt;Os botões com imagens (caixa e twist) são criados da seguinte maneira.&lt;br /&gt;&lt;br /&gt;Primeiro abre o arquivo da imagem (.gif).&lt;br /&gt;Depois se cria um epaço para alocar o mapa de bits da imagem.&lt;br /&gt;Depois se criao toão.&lt;br /&gt;E por final adiciona a imagem ao botão usando a funcao&lt;br /&gt;nome_no_botão.add(nome_da_imagem);&lt;br /&gt;&lt;br /&gt;Assim o botão terá a imagem.&lt;br /&gt;&lt;br /&gt;E no final tem as funções de aplicação dos estados dos botões. isto quer dizer que quando um botão mudar o estado (apertado, ou desapertado no caso do botão do tipo toggle), ele irá rodar uma função. E esta função move botões para o centro da janela ou liga flags para desenho de botões na janela ou funções na janela openGl.&lt;br /&gt;&lt;br /&gt;Entçao era isso. Eu espero que tenham gostado.&lt;br /&gt;&lt;br /&gt;Logo eu vou disponibilizar o download do programa na internet.&lt;br /&gt;&lt;br /&gt;Bye.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-2831775215203154952?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/2831775215203154952/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=2831775215203154952' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/2831775215203154952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/2831775215203154952'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/11/1-2-3-ol-galera.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_YvqGld2ki40/R0cG4nVbUlI/AAAAAAAAACU/ed_KLJtjQe0/s72-c/tela.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-5959806149359706458</id><published>2007-11-23T08:02:00.000-08:00</published><updated>2007-11-23T08:50:39.613-08:00</updated><title type='text'></title><content type='html'>Olá galera que está olhando o Blog.&lt;br /&gt;&lt;br /&gt;Eu acabei o Clon 3D. Ele ficou bem interessante.&lt;br /&gt;&lt;br /&gt;Agora eu vou postar os finais aqui.&lt;br /&gt;&lt;br /&gt;Primeiro os últimos  objetos.&lt;br /&gt;&lt;br /&gt;Aqui estão eles;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YvqGld2ki40/R0cAfHVbUdI/AAAAAAAAABU/dF_rzvGkbNE/s1600-h/Objeto2.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_YvqGld2ki40/R0cAfHVbUdI/AAAAAAAAABU/dF_rzvGkbNE/s320/Objeto2.gif" alt="" id="BLOGGER_PHOTO_ID_5136074434584203730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Primeiramente nós podemos ver o objeto Câmera:&lt;br /&gt;&lt;br /&gt;o objeto camera faz toda a sincronia com a câmera OpenGL;&lt;br /&gt;Ele tem todos os dados de uma camera Perspective em OpenGL aonde ele também tem a funcao para definir os dados do Frustum e da perspectiva.&lt;br /&gt;O porque criar um objeto para a câmera com os mesmos dados da camera em OpenGl?&lt;br /&gt;&lt;br /&gt;Simplesmente para se ter um objeto único na cena para fazer total controle dele com as funcões de rotação, Zoom, mão, etc...&lt;br /&gt;Assim o programa tem total controle de camera na cena. E é mais fácil de se trabalhar.&lt;br /&gt;&lt;br /&gt;O nosso segundo objeto é o twist.&lt;br /&gt;O objeto twist foi criado unicamente para disponibilizar a funcao twist.&lt;br /&gt;Ele recebe uma malha e um angle. Assim ele aplica o twist com o angulo desenhado na malha descrita. Bem simples.&lt;br /&gt;&lt;br /&gt;A o último objeto é o objeto caixa. Esta classe cria o objeto na cena.&lt;br /&gt;Eu não usei outros objetos porque eu não encontrei funcoes para a OpenGL disponibilizar os eixos de todos os vertices dos objetos dela. Mas  talvez no futuro eu descubra.&lt;br /&gt;o objero caixa tem um construtor e uma funcao de atualização da caixa.&lt;br /&gt;Porque uma funcao de atualização da caixa?&lt;br /&gt;&lt;br /&gt;Porque assim o programa se destaca entre outros programas gráficos 3D como o blender.&lt;br /&gt;No blender é criado um objeto (box por exemplo) e ele é construido com todos os dados de segmentação. Depois não é possível mudar algum dado de segmentação como no 3D Studio ou maya.&lt;br /&gt;portanto a funcao atualizaCaixa() destroi a caixa atual e cria uma outra caixa atualizando os segmentos. Assim é possível atualozar a caixa em tempo real.&lt;br /&gt;&lt;br /&gt;A funcao Twist aparece na caixa pelo fato de o twist necessitar ser atualizado o tempo todo. Assim pode-se aplicar o twist e depois retira-lo em tempo real.&lt;br /&gt;&lt;br /&gt;E no final da imagem aparece o mapa de criação de uma caixa simples adicionando seus vertices, linhas a normais.&lt;br /&gt;&lt;br /&gt;No próximo post eu vou explicar um pouco do código principal do programa e vou passar as fotos do Clon3D.&lt;br /&gt;&lt;br /&gt;Até mais.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-5959806149359706458?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/5959806149359706458/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=5959806149359706458' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5959806149359706458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5959806149359706458'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/11/ol-galera-que-est-olhando-o-blog.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_YvqGld2ki40/R0cAfHVbUdI/AAAAAAAAABU/dF_rzvGkbNE/s72-c/Objeto2.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-8356910940286842396</id><published>2007-11-14T14:52:00.000-08:00</published><updated>2007-11-14T15:05:26.437-08:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YvqGld2ki40/Rzt88tokaQI/AAAAAAAAABM/TzDWtfkTqHU/s1600-h/Clon3dTela.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_YvqGld2ki40/Rzt88tokaQI/AAAAAAAAABM/TzDWtfkTqHU/s320/Clon3dTela.JPG" alt="" id="BLOGGER_PHOTO_ID_5132833582802561282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Ola galera que esta olhando o Blog.&lt;br /&gt;&lt;br /&gt;Aqui esta a minha nova imagem do Clon3D.&lt;br /&gt;&lt;br /&gt;Eu fiz umas modificações em um programa pronto usando a pyGTKglext aonde tinha um teapod desenhado com cor verde e iluminação.&lt;br /&gt;&lt;br /&gt;Bem aqui eu estou postando a primeira imagem. É mais ou menos isto que é o foco da criação do Clon3D aonde tem a esquerda a janela openGL e a direita os botões. Eu tentei fazer ja mesma janela mas tive problemas com o layout da janela.&lt;br /&gt;&lt;br /&gt;É difícil manipular layout com a janela OpenGL.&lt;br /&gt;&lt;br /&gt;Aqui está usando o objeto grade ao programa aonde eu determinei o objeto grade com o tamanho de 5.0 por 5.0 aonde o objeto grade fica com o ponto pivot no eixo X:0.0, Y:0.0, Z:0.0;&lt;br /&gt;&lt;br /&gt;Haverá botões para a manipulação do objeto (translada-lo e não tenho certeza se vou fazer a rotação no objeto) e também os botões que aparecem na foto são d criação de objetos (a seta com uma estrela) e de manipulação das propriedades do objeto (arco-iriz azul) aonde os botões foram copiados do 3D Studio max.&lt;br /&gt;&lt;br /&gt;No final no canto inferior estará botões para a manipulação da câmera da cena.&lt;br /&gt;&lt;br /&gt;Eu vou escrever esta parte do programa do zero. Depois eu irei explicar o código.&lt;br /&gt;&lt;br /&gt;Eu estou escrevedo só hoje porque semana passada aconteceu o SBgames 2007. Quem quizer ver&lt;br /&gt; as imagens pode acessar o meu usuario no orkut e olhas as minhas fotos.&lt;br /&gt;&lt;br /&gt;Então por hoje é só pessoal.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-8356910940286842396?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/8356910940286842396/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=8356910940286842396' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8356910940286842396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/8356910940286842396'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/11/ola-galera-que-esta-olhando-o-blog.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YvqGld2ki40/Rzt88tokaQI/AAAAAAAAABM/TzDWtfkTqHU/s72-c/Clon3dTela.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-4804894488317667197</id><published>2007-10-31T16:09:00.000-07:00</published><updated>2007-10-31T16:29:09.885-07:00</updated><title type='text'></title><content type='html'>Olá galera que está assistinso ao Blog (se existe alguém, por favor, pelo menos comente);&lt;br /&gt;&lt;br /&gt;Bem é o seguinte. Eu fiz uma reformulada no código dos objetos para o Clon 3D.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Aqui está a atualização de todos os objetos a mais a  troca. A antiga classe objeto se transforma em Malha e a nova classe objeto tem todos os parametros que o objetos precisa ter. E então a classe objeto herda os dados da classe malha. Assim um objeto só pode ter uma malha e a classe objeto fica completo com os dados dela e da malha.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YvqGld2ki40/RykNUnQee7I/AAAAAAAAAAk/_12He27mBpw/s1600-h/Objeto.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_YvqGld2ki40/RykNUnQee7I/AAAAAAAAAAk/_12He27mBpw/s400/Objeto.png" alt="" id="BLOGGER_PHOTO_ID_5127644298524654514" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A primeira mudança foi adortar o sistema de coordenadas com o da OpenGL. Que é float e não int.&lt;br /&gt;Depois foi adicionadana classe malha funções para ler os dados de localização dos vértices para usa-los. Existe funcções para cada eixo para ser mais fácil de programar uma translação ou escala.&lt;br /&gt;&lt;br /&gt;Foi adicionado a malha a cor em RGB dela. Aonde RGB é por padrão float.&lt;br /&gt;Essas variaveis foram adicionadas para usar na hora de desenhar as normais na tela.&lt;br /&gt;&lt;br /&gt;A classe objeto contém o ponto pivo aonde o objeto fica e recebe um nome.&lt;br /&gt;&lt;br /&gt;Então por hoje era isso.&lt;br /&gt;&lt;br /&gt;Muito obrigado por estar vendo este blog.&lt;br /&gt;&lt;br /&gt;Bye.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-4804894488317667197?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/4804894488317667197/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=4804894488317667197' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4804894488317667197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/4804894488317667197'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/10/ol-galera-que-est-assistinso-ao-blog-se.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YvqGld2ki40/RykNUnQee7I/AAAAAAAAAAk/_12He27mBpw/s72-c/Objeto.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-5301025356351408746</id><published>2007-10-27T19:11:00.000-07:00</published><updated>2007-10-27T19:38:33.945-07:00</updated><title type='text'>Classe grade</title><content type='html'>Olá galera&lt;br /&gt;&lt;br /&gt;Hoje eu fiz a classe grade. Aqui está a foto da classe com as suas respectivas variaveis e funções.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YvqGld2ki40/RyPy03Qee6I/AAAAAAAAAAc/ac2bvwoIThM/s1600-h/Grade.png"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_YvqGld2ki40/RyPy03Qee6I/AAAAAAAAAAc/ac2bvwoIThM/s400/Grade.png" alt="" id="BLOGGER_PHOTO_ID_5126207790877932450" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A classe grade tem um tamaho com a sua largura e altura. E depois ela tem um ponto pivo aonde determinhará aonde a grade irá ficar. A variavel eixo mostra em que ângulo a grade irá ficar. Por ser um programa 3D. a grade pode ficar nos 3 eixos.&lt;br /&gt;&lt;br /&gt;As funções set e get são mais pontes para se chegar a variavel. A funcao que foi um pouco difícil de ser criada foi a desenha. Porque ela precisa desenhar todas as linhas.&lt;br /&gt;&lt;br /&gt;Primeiro a funcao descobre testa em qual eixo está sendo desenhada a grade. Depois desenha as linhas de acordo com o seu eixo.&lt;br /&gt;&lt;br /&gt;os vertices quase sempre variam de (comprimento_da_grade/2)*-1 até comprimento_da_grade/2&lt;br /&gt;É assim que é desenhado a largura e altura da grade.&lt;br /&gt;&lt;br /&gt;Para ter certeza que o desenho ficasse na mesma distância todas as linhas. A funcao desenha do centro para fora e não de fora para o centro. Então a grade pode não ficar do tamanho que o uprogramador pediu mas ela será toda desenhada perfeitamente.&lt;br /&gt;&lt;br /&gt;As cores de grade estão parecidade com aquele desenho da imagem acima. o desenho foi feito com base no software 3D Studio max aode usa as cores que a minha opinião estão em perfeita harmonia para este tipo de aplicação.&lt;br /&gt;&lt;br /&gt;o background é R  125 G 125 B 125&lt;br /&gt;As linhas centrais são R 0 G 0 B 0 (Preto)&lt;br /&gt;E as demais linhas são R 154 G 154 B 154&lt;br /&gt;&lt;br /&gt;Uma boa noite a quem estiver olhando este blog e obrigado por olhar.&lt;br /&gt;&lt;br /&gt;Bye.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-5301025356351408746?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/5301025356351408746/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=5301025356351408746' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5301025356351408746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5301025356351408746'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/10/classe-grade.html' title='Classe grade'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_YvqGld2ki40/RyPy03Qee6I/AAAAAAAAAAc/ac2bvwoIThM/s72-c/Grade.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-5465264177390690581</id><published>2007-10-27T18:54:00.000-07:00</published><updated>2007-10-27T19:11:33.220-07:00</updated><title type='text'>Funçao delete</title><content type='html'>Olá garela que está olhando este blog.&lt;br /&gt;&lt;br /&gt;Primeiramente vou explicar como as funções delete da classe objeto funcionam&lt;br /&gt;&lt;br /&gt;A funcao deleteNormal simplesmente deleta a formal. Porque a normal não está lincado a nada para ser renderizado. Ela simplesmente é deletada e fica um buraco, mas ainda com os vértices e as linhas em volta. As normais são triangulares então elas tem 3 vértices.&lt;br /&gt;&lt;br /&gt;A funcao deleteLinha é um pouco complicado a lógica.Porque a linha está lincada a sempre duas normais. Quando a linha é apagada, as normais obrigatóriamente precisam ser apagadas.&lt;br /&gt;Então a funcao carrega temporariamente os vértices da linha. Depois olha TODAS as normais para encontrar duas normais que contenham os vértices idênticos aos da linha.&lt;br /&gt;Quando encontrados. O programa sai do loop e apaga as normais usando a função deleteNormal.&lt;br /&gt;No final ela apaga a linha.&lt;br /&gt;&lt;br /&gt;E por fim na funcao deleteVertice. Cada vertice está conectado a 'n' linhas. portando quando deleta um vertice, pode estar sendo apagado 'n' linhas.&lt;br /&gt;Assim quando deletamos um vertice, é necessário percorrer linha por linha para encontrar vértices iguais a o que devemos deletar. Quando encontrado uma linha com um vertice igual, Então apaga esta linha usando a funcao deleteLinha. Assim a funcao delete linha  deleta também as ormais ao redor desta linha.&lt;br /&gt;&lt;br /&gt;Eu sei que é um trabalho pesado, mas este programa em python não vai ser usado para objetos gigantescos. Se eu criar o programa em uma outra linguagem. A classe objeto e as demais classes receberão reformulação.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-5465264177390690581?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/5465264177390690581/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=5465264177390690581' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5465264177390690581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5465264177390690581'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/10/grade.html' title='Funçao delete'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-7903630970785661734</id><published>2007-10-26T16:59:00.001-07:00</published><updated>2007-10-26T17:15:59.873-07:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YvqGld2ki40/RyKC8XQee5I/AAAAAAAAAAU/sWbyQhZqQ0w/s1600-h/Objeto3D.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_YvqGld2ki40/RyKC8XQee5I/AAAAAAAAAAU/sWbyQhZqQ0w/s400/Objeto3D.png" alt="" id="BLOGGER_PHOTO_ID_5125803299447929746" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Olá. Hoje eu não fiz nada a respeito do programa. Tive que fazer outras coisas, mas ontem eu criei oa classe Objeto aonde conterá cada objeto mostrado na tela do programa.&lt;br /&gt;&lt;br /&gt;As funções de delete deleta automaticamente as variaveis. pelo python ser fácil de  manipular adição de subtração de vetores. Estas funções forma fáceis de implementar.&lt;br /&gt;&lt;br /&gt;Amanhã eu explico a implementação.&lt;br /&gt;&lt;br /&gt;Acima esta a imagem dos objetos e suas respectivas funções. (eu ainda estou aprendendo a uar o blog)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-7903630970785661734?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/7903630970785661734/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=7903630970785661734' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7903630970785661734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/7903630970785661734'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/10/ol.html' title=''/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YvqGld2ki40/RyKC8XQee5I/AAAAAAAAAAU/sWbyQhZqQ0w/s72-c/Objeto3D.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6000990059698248950.post-5170717357973349771</id><published>2007-10-26T16:53:00.000-07:00</published><updated>2007-10-26T16:56:46.495-07:00</updated><title type='text'>Start</title><content type='html'>Olá. O meu nome é Edimartin e eu estou começando o meu primeiro blog.&lt;br /&gt;&lt;br /&gt;Este blog é para ser um diário de bordo aonde contarei como estou desenvolvendo o programa para python "Clon 3D".&lt;br /&gt;&lt;br /&gt;É um simples editos gráfico 3D que disponibilizará o modificador twist.&lt;br /&gt;&lt;br /&gt;Talvez ele terá a função editable mesh. Mas o foco não é este.&lt;br /&gt;&lt;br /&gt;Espero que gostem do meu diario de bordo.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6000990059698248950-5170717357973349771?l=edimartin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://edimartin.blogspot.com/feeds/5170717357973349771/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6000990059698248950&amp;postID=5170717357973349771' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5170717357973349771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6000990059698248950/posts/default/5170717357973349771'/><link rel='alternate' type='text/html' href='http://edimartin.blogspot.com/2007/10/start.html' title='Start'/><author><name>Edimartin Blog's</name><uri>http://www.blogger.com/profile/04004333351711419587</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_YvqGld2ki40/S_kW2gnHd4I/AAAAAAAAAD0/0wm1dwr8sgU/S220/orkut.jpg'/></author><thr:total>0</thr:total></entry></feed>
