Está en la página 1de 38

Criando e usando seus prprios blocos com meus blocos

Este tutorial explica como usar o "My Block" caracterstica do sistema de programao NXT-G, trabalhando
atravs de vrios exemplos.
O que um Bloco Meu?
Por que usar meus blocos?
Fazendo o seu Bloco Meu primeiro
Criando um Bloco Meu
Ver e editar o contedo de um Bloco Meu
inserir um bloco Meu em um Programa
Criando meus blocos com parmetros de entrada
que so parmetros de entrada?
Criando um Bloco Meu com um parmetro de entrada
usando um bloco My com um parmetro de entrada
Projetando seu prprio parmetro de entrada
Alterar o nome de um parmetro
Criao de um bloco My com vrios parmetros de entrada
Fazendo um cabealho de bloco comentar
Variveis de Fiao, e edio em um Bloco Meu
Usando variveis para enviar dados para um Bloco Meu
Definio de Variveis em um bloco Meu
Reescrevendo o contedo de um meu bloco
Wires compartilhamento em um Switch Tabbed
Usando variveis meu bloco do programa principal
Fazer uma cpia modificada de um Bloco Meu
copiar um bloco Meu
alterar o cone para um bloco de My
Criando mais avanada Meus Blocos
Usando Meus blocos dentro Meus Outros Blocos
Usando parmetros de entrada mais de uma vez dentro de um bloco Meu
Criando um Bloco Meu com uma porta de dados de sada
Usando uma varivel local em um bloco Meu
teste de um Bloco Meu antes e depois de cri-la
Um Passo -a-passo processo para criar e testar um bloco Meu Complex
Organizar e compartilhar meus blocos
de cpia, renomeao e excluso de meus blocos
Quebrado Blocos
programas de compartilhamento com o Pack and Go
Fazendo um sub-menu na paleta personalizada


Nota: As cpias eletrnicas de vrios Meus blocos semelhantes aos
desenvolvidos neste tutorial e mais, assim como vrios programas que
mostram a sua utilizao em situaes prticas esto disponveis no CD LEGO
MINDSTORMS NXT 2.0 Por Exemplo .



O que um Bloco Meu?
As paletas comuns e completa no sistema de programao NXT-G conter todos os blocos de built-in que
voc pode usar para criar um programa NXT. O software NXT-G tambm permite que voc crie seus
prprios blocos chamado "Meus blocos". Esses blocos so de cor azul e aparecem na paleta personalizada no
NXT-G. Um bloco Meu uma sequncia de outros blocos que fornecido para dentro de um nico bloco
para tornar mais fcil para usar em um programa. Os usurios de outras linguagens de programao
poderia saber isso como um "sub-rotina", "subprograma", ou "funo".

Figura 1: Meus blocos esto na cor azul, e eles aparecem na paleta personalizada no NXT-G.

Por que usar meus blocos?
A razo mais comum o uso de um Bloco Meu que ele permite que voc facilmente re-utilizar uma
seqncia de blocos de uma e outra vez, sem necessidade de re-criar a seqncia de cada vez. Usando um
bloco Meu, voc s precisa criar a seqncia de uma vez, e ento voc pode us-lo quantas vezes quiser em
qualquer um dos seus programas, apenas inserindo um bloco Meu nico para cada uso. Outra vantagem de
usar meus blocos que a sequncia do programa que compe o Bloco Meu s armazenado na memria do
NXT de uma vez para cada programa que usa-lo, mesmo que o programa usa o Bloco Meu vrias vezes,
ento meus blocos pode ser uma boa maneira de se adaptar mais a programao em memria limitada a
NXT da. Finalmente, voc tambm pode usar meus blocos simplesmente para acabar com um programa
longo em pedaos para torn-lo mais fcil de trabalhar, mesmo se voc no planeja usar um pedao mais
de uma vez, porque trabalhar com programas de menores muito mais fcil em NXT -G.
Neste tutorial, vamos andar embora vrios exemplos de como criar e usar meus blocos, comeando com um
exemplo muito simples, exemplos, em seguida, cada vez mais complexos que usam recursos como
parmetros de entrada, portas de sada, e variveis para torn-los mais poderoso e mais flexvel . Um
processo passo-a-passo para criar e testar um bloco Meu complexo sero desenvolvidos e apresentados
como guia para criar seus prprios blocos. Finalmente, vamos aprender como voc pode organizar e
personalizar suas Meus Blocos e compartilh-los com os outros.

Fazendo o seu Bloco Meu Primeiro
Para nosso primeiro exemplo meu bloco, vamos criar um bloco chamado BeepBeep que soar dois tons do
alto-falante NXT, e ento vamos us-lo em um programa junto com outros blocos que fazem o rob se
mover.Este simples exemplo vai mostrar os passos bsicos necessrios para criar e usar qualquer bloco
Meu.
Criando um Bloco Meu
O primeiro passo para a criao de um bloco Meu escrever um programa que usa a sequncia desejada de
blocos. A Figura 2 mostra um programa composto por de cinco blocos que faz um movimento rob para a
frente, o som de dois tons do alto-falante, em seguida, avanar novamente. Os trs blocos seleccionados no
meio so responsveis por os dois tons de som (uma espera de bloco usado para separar os tons em dois
sons distintos). Vamos converter esta sequncia de trs blocos em um bloco Meu nome BeepBeep , que
nos permitir facilmente voltar a usar esta seqncia.


Figura 2: uma sequncia de blocos pode ser seleccionado e convertido em um bloco Meu para facilitar a sua
reutilizao.

Depois de ter um programa de trabalho que inclui o comportamento de seu bloco Meu, selecione a
seqncia de blocos que compem o Bloco Meu arrastando um retngulo de seleo sobre eles, como
mostrado na Figura 2. Cada bloco selecionado deve ento mostrar um contorno de seleo azul. Para fazer
um bloco Meu fora dos blocos selecionados, clique no boto Criar Meu Bloco na barra de ferramentas, como
mostrado na Figura 3, que trar o Meu Bloco Builder . janela, como mostrado na Figura 4

Figura 3: Com uma seqncia de blocos selecionados, clique em "Criar meu bloco"
boto da barra de ferramentas para criar um bloco Meu

O Construtor de Bloco Meu consiste em duas etapas. O primeiro passo mostrado na Figura 4 mostra uma
visualizao do contedo do bloco Meu no blocos seleccionados seco. Nesta etapa, voc deve digitar um
nome para o Bloco Meu na caixa Nome do bloco (aqui BeepBeep ). Escolha um nome para o bloco que
descritiva, mas curto. Embora nomes mais longos so aceitos, ser cortado quando exibido no bloco e,
portanto, mais difcil de ler em um programa. Voc tambm pode inserir uma descrio opcional do bloco
naDescrio Bloco caixa. Esta descrio ser impresso juntamente com o diagrama de blocos, se voc
imprimir o contedo de seu bloco Meu usando a impresso de comando a partir do arquivo menu. Voc
tambm pode deixar a descrio em branco e apenas descrever o seu bloco utilizando
o Comentrio ferramenta dentro do contedo do bloco.
Pressione o seguinte boto para ir para a segunda etapa do Construtor Bloco Meu, o que permitir que voc
escolha um cone para exibir no rosto de seu bloco Meu. Pressionando Concluir aps a primeira etapa ir
ignorar a escolha cone e usar um rosto meu bloco genrico.

Figura 4: Na primeira etapa do Construtor Bloco Meu, digite um nome e descrio para o Bloco Meu.

A segunda etapa do Bloco Meu Builder mostrado na Figura 5 permite que voc escolha um cone que ser
exibido no rosto de seu Bloco Meu. Voc pode selecionar um cone a partir da lista apresentada e arrast-lo
para o quadrado branco no topo da caixa de dilogo. Voc pode ento colocar o cone na face do bloco,
arrastando-o com o mouse ou pressionando as setas do teclado. Voc tambm pode redimensionar o cone
arrastando os cantos negros do retngulo de seleo. Se voc quiser, voc pode selecionar mais de um
cone na lista e sobrep-los, como desejado para criar uma imagem que uma combinao de cones. Na
Figura 5, duas cpias do cone da nota musical (o segundo cone na lista) so usados para criar uma
imagem que sugestivo de funo deste bloco de soar dois tons. Pressione Concluir para completar
o Construtor Bloco Meue criar seu Bloco Meu.

Figura 5: O passo Builder cone permite personalizar o cone para o Bloco Meu.

Aps a criao de nosso bloco Meu, o programa modificado mostrado na Figura 6. Os trs blocos que
compem o BeepBeep bloco foram substitudos por um nico bloco Meu azul exibindo o nome e da imagem
que escolheu para a BeepBeep bloco. O programa ainda vai fazer a mesma coisa que fazia antes (ir para a
frente, o som de dois tons, em seguida, ir para a frente de novo), mas agora faz parte do programa est
contido dentro do bloco Meu.

Nota: s vezes, depois de criar um bloco Meu em um programa, um espao extra no feixe
seqncia branco vai sobrar onde os blocos originais eram. Para eliminar esse espao extra, voc
pode reduzir o feixe seqncia, colocando o cursor no local mostrado na Figura 6 e arrastando para a
esquerda.

Figura 6: espao extra no feixe sequncia deixado aps um bloco Meu foi criado
pode ser encolhido pelo arrastando o feixe de sequncia no local mostrado

Ver e editar o contedo de um Bloco Meu
Uma vez que o nosso BeepBeep bloco tiver sido criado, os blocos contidos no seu interior ter desaparecido
do ponto de vista do programa inicial, como mostrado na Figura 7. Para visualizar o contedo de um Bloco
Meu ou editar os blocos contidos no interior, voc pode clicar duas vezes sobre o bloco Meu, que ir abrir o
contedo do bloco Meu como uma nova aba no editor do programa NXT-G, como mostrado na Figura 8. Esta
semelhante ao ter uma outra programas NXT-G aberto, excepto que o BeepBeep guia est marcado com
duas barras de azul para indicar que o contedo um bloco de Meu, em vez de um programa normal.

Figura 7: Para visualizar ou editar o contedo de um bloco Meu em um programa, clique duas vezes no
Bloco Meu.


Figura 8: Um bloco Meu aberto para visualizao ou edio ser aberta, como um outro programa NXT-G em
uma nova aba,
com o nome do Bloco Meu nele e duas barras azuis para significar que um bloco Meu.

Para alterar o contedo de um bloco Meu, basta editar os blocos na aba de contedo como em um programa
normal. Quaisquer alteraes feitas no contedo afetar todos os usos do Bloco Meu em todos os programas
que a utilizam, aps aqueles programa (s) so re-compilado e baixado novamente ao NXT.

Nota: Depois de alterar o contedo de um bloco Meu, qualquer programa que usa ele deve ser re-
baixado para o NXT a incorporar as alteraes, caso contrrio o programa permanecer inalterada e
usar o contedo original do bloco Meu. Um erro comum aps a edio de um Bloco Meu para baixar
o contedo do bloco Meu prprio para o NXT em vez do programa que usa-lo (porque voc tem que
guia selecionada no editor), o que no afetar quaisquer programas que usam o bloco.
Inserindo um Bloco Meu em um Programa
Aps a criao de um bloco Meu, NXT-G ir modificar automaticamente o programa original para usar o
Bloco My em lugar da sequncia de bloco original como mostrado na Figura 7 acima. Agora voc tambm
pode voltar a usar o Bloco Meu atravs da insero de outros usos que no mesmo programa ou em outros
programas.Para inserir uma nova utilizao de um bloco A minha em um programa, seleccionar a paleta
personalizada como mostrado na Figura 9. O menu superior dos blocos na paleta personalizada contm os
Blocos Meus que voc criou. A Figura 10 mostra o BeepBeep bloco, juntamente com sete outros meus
blocos que eu criei. Os blocos so ordenados alfabeticamente pelo nome do bloco no menu. Se voc estiver
usando vrios perfis NXT-G usurios, cada perfil de usurio ir conter a sua prpria lista de meus blocos que
foram criados por esse perfil de usurio.

Figura 9: Para inserir um bloco Meu em um programa, selecione a paleta personalizada.


Figura 10: O menu superior na paleta personalizada contm os Blocos Meus voc criou.

Os meus Blocos escolhidos a partir do paleta personalizada pode ser inserido em um programa tal como
blocos regulares. O programa modificado na Figura 11 agora usa o BeepBeep bloco duas vezes. Em
comparao com a alternativa de inserir a seqncia de 3 quarteires da BeepBeep bloco diretamente no
programa principal duas vezes, o programa usando o BeepBeep bloco mais curto, mais fcil de ler, mais
fcil de modificar e leva menos memria no NXT.

Figura 11: Meus blocos podem ser facilmente reutilizados, economizando tempo de programao e memria
no NXT.


Criando meus blocos com parmetros de entrada
O BeepBeep bloco criado na seo anterior foi muito fcil para criar e fcil de usar, mas um pouco
limitado no que pode fazer. Ele vai sempre soar exatamente os mesmos dois tons de cada vez que
usado. Isso bom para alguns blocos, mas muitas vezes voc vai querer criar um bloco Meu que pode ter
seu comportamento modificado a cada vez que for usado. Por exemplo, cada vez que voc usar o
padro Moverbloco, voc pode especificar uma durao diferente, um nvel de energia diferente, etc Esses
aspectos do bloco que voc pode modificar so chamados parmetros . (Mais especificamente, os
parmetros de entrada, porque fornecem os valores de dados de entrada para o bloco). possvel criar o
seu Bloco Meu prprio que contm um ou mais parmetros de entrada que modificam o seu comportamento
e torn-la mais flexvel, e isso que vamos aprender nesta seo.
Quais so os parmetros de entrada?
A maioria dos internos NXT-G blocos tm parmetros de entrada. Por exemplo, o movimento do bloco
mostrado na Figura 12a tem vrios parmetros que aparecem no painel de configurao, quando o bloco
seleccionado (Figura 12b). Esses parmetros permitem alterar o comportamento de cada uso diferente do
bloco.


Figura 12a / b: Muitos dos built-in NXT-G blocos tm parmetros de entrada que podem ser alterados.

Como um exemplo de criao de um bloco My com um parmetro de entrada, vamos criar um bloco de My
que uma verso simplificada do movimento do bloco. Se voc simplesmente seleciona o movimento do
bloco e criar um bloco Meu fora dele usando as etapas mostradas na BeepBeep exemplo anterior (um bloco
Meu pode consistir de apenas um quarteiro se voc quiser), ento o resultado Bloco Meu ter parmetros
de entrada e no em vez disso, sempre usar os valores dos parmetros que foram inseridos para o bloco
contido quando foi criado. Por exemplo, o movimento de blocos da Figura 12 acima foi ajustado para ter
uma durao de 500 graus, nvel de potncia 75, etc Figura 13a mostra o resultado da criao de um bloco
Meu fora deste bloco Move. Porque o Bloco Meu usar sempre uma durao de 500 graus, eu chamei o
Bloco MeuForward500 . Como no h parmetros, o painel de configurao exibida quando o Bloco Meu
selecionada est vazia (Figura 13b). Isso pode ser til se voc quiser mover por esse valor mais e mais em
um programa, mas seria mais til se o programa usando o Bloco Meu poderia especificar a durao de um
parmetro, semelhante ao original Mover bloco.


Figura 13a / b: um bloco Meu simples criado a partir de um nico movimento do bloco no tem parmetros
que ser alterados.

Criando um Bloco Meu com um parmetro de entrada
Nesta seo, vamos aprender como criar um bloco Meu, que inclui um parmetro de entrada. Fazendo isto
mais complexo do que um bloco A minha simples, tal como o BeepBeep exemplo anterior e requer o uso de
cubos de dados, fios de dados, e blocos varivel e / ou constante. Veja se voc est familiarizado com esses
conceitos antes de continuar aqui.

Recurso: Obter ajuda a aprender sobre hubs de dados, cabos de dados e variveis.
Como um exemplo de um bloco My com um parmetro de entrada, vamos criar uma nova verso de um
simplificado Mover bloco nomeado ForwardDeg que incluir um Degrees (durao) de parmetros que vai
permitir que o programa para especificar quantos graus para mover-se, em vez de sempre utilizando 500
graus, como no Forward500 bloco acima.
Para criar um bloco My com um parmetro, voc precisar criar um fio de conexo de dados para cada
parmetro dos blocos contidos que deseja acessar. Ns vamos querer acessar o Durao parmetro
domovimento do bloco, por isso temos de comear por abrir o centro de dados do Movimento de bloco,
como mostrado na Figura 14.

Figura 14: Para acessar as portas de dados para um bloco, clique no local indicado para soltar o bloco de
centro de dados.

Para criar uma conexo de dados ligado ao Durao parmetro do movimento do bloco, devemos criar uma
fonte de dados para ele. Uma maneira fcil de fazer isso no software 2.0 NXT usando a constante bloco
(Figura 15). Coloque a constante bloco antes do movimento do bloco, como mostrado na Figura 16.

Nota: A constante de bloco foi adicionado no software 2,0 NXT. Se voc estiver usando uma verso
anterior do NXT-G, voc pode usar uma varivel Leiabloco vez. No entanto, porque voc no pode
especificar um valor para uma varivel em uma leitura varivel de bloco, voc tambm pode querer
adicionar um Write varivel bloco no incio do programa para dar a ele um valor para fins de teste.

Figura 15: A constante de bloco no menu de dados pode ser usado para criar uma ligao a uma porta de
dados.


Figura 16: Posicione o constante bloco no incio de sua seqncia.

Usando o painel de configurao para o constante bloco (Figura 17), configurar a constante de
terpersonalizado para a Ao , em seguida, defina o tipo de dados para o tipo correto para o parmetro
(Nmero neste caso), e d o nome de uma constante que ser ajudar voc a lembrar o que ele faz (aqui eu
escolhi "Graus"). Voc tambm pode inserir um valor para a constante no valor campo. Este valor til para
testar a sua seqncia de bloco antes de criar o Bloco Meu (mas o resultado Bloco Meu ter um parmetro
no lugar deste valor).

Figura 17: No painel de configurao para o constante bloco, digite o tipo de dados,
um valor de teste, e um nome para a constante.

Assim que o bloco constante foi configurado corretamente, conect-lo ao bloco de parmetro que deseja
controlar com um fio de dados (Figura 18).

Figura 18: Fio a porta de sada da Constante de bloco para a porta de entrada para o parmetro de
entrada.

O programa de dois quarteires na Figura 18 vai agora fazer a mesma coisa que o programa de um bloco
naFigura 12 : Ele vai usar o Mover bloco para ir para a frente por 500 graus. A diferena que temos agora
"ligadas" na Durao parmetro usando uma constante bloco definido para o nmero 500 em vez de
colocar o 500 diretamente para o Mover bloco. Note que todos os outros parmetros para o Mover bloco,
como o nvel de energia esto a ser tomadas directamente a partir do movimento do painel de
configurao do bloco (incluindo a definio Graus , que conta a Mover bloco para interpretar o valor de
durao de 500 graus e no como segundos). Agora um bom momento para testar o programa para se
certificar de que ele funciona como o esperado antes de criar o Bloco Meu.
Depois de testar o programa na Figura 18, voc pode criar o Bloco Meu. Para criar o bloco Meu, selecione
oMover bloco, mas no o constante do bloco, e clique no Criar meu bloco boto (Figura 19) e continuar
com o Bloco Meu Builder para criar o Bloco Meu chamado . ForwardDeg

Figura 19: Ao criar o Bloco Meu, seleccionar o bloco (s) a ser includos, mas no bloco A constante (s).

Criando o Bloco Meu como mostrado na Figura 19 ir resultar num bloco My com um parmetro de entrada
para o movimento do bloco Durao propriedade devido seguinte regra:

Regra: Quando uma sequncia de blocos convertido para um bloco Meu, qualquer caminho do fio
de dados que leva a uma fonte de dados fora do bloco de Meu (no includo nos blocos seleccionados)
ir criar um parmetro de entrada para que o caminho de dados no bloco Meu .
Voc pode pensar do Bloco Meu como sendo "cortado" do programa quando ele criado, e os caminhos de
dados que levam fora do resultado blocos de corte em "pontas abertas" que precisa de fontes de
dados.Estes resultam extremidades abertas em parmetros de entrada, onde as fontes de dados sero
especificadas pelo programa que usa o Bloco Meu. Se tivssemos selecionado tambm o constante bloco
na Figura 19 quando fizer o Bloco Meu, o resultado seria um bloco que meu novo sempre se move em 500
graus, porque o nmero 500 deve ser especificada dentro dos contedos meu bloco.
Usando um bloco My com um parmetro de entrada
Aps a criao de um bloco A minha a partir da seleco mostrada na Figura 19 e nomeando-
ForwardDeg , o programa modificado mostrado na Figura 20a. O movimento do bloco (o nico bloco
includo no bloco Meu) foi substitudo pelo ForwardDeg Bloco Meu, eo Graus Constante bloco ainda est l
e est agora conectado ao cubo de dados do ForwardDeg Bloco My. Selecionando o ForwardDeg bloco
mostra o painel de configurao na Figura 20b, onde podemos ver que agora temos acesso
Durao parmetro domovimento do bloco dentro do bloco Meu.


A Figura 20a / b: Um parmetro de entrada para um bloco A minha acessvel no bloco de
cubo de dados e painel de configurao.

Como com o embutido NXT-G blocos, se uma fonte de dados conectado ao cubo de dados de um bloco
Meu, que o valor de dados ser usado, caso contrrio, o valor do painel do bloco de configurao ser
usado.Aqui o valor de 500 ligado em pelo Degrees constante bloco, de modo que valor substituir o valor
0 para oDurao no painel de configurao, de modo que o programa resultante ainda vai fazer o que ele
fez antes (avanar por 500 graus). Se voc testar o programa modificado depois de criar um bloco Meu, ele
deve fazer a mesma coisa que o programa usado para criar o Bloco Meu.
Agora que o ForwardDeg Bloco Meu foi criado, voc pode excluir o Graus constante bloco se quiser e
especificar a durao diretamente no painel de configurao do ForwardDeg bloco. Voc tambm pode
colocar mais ForwardDeg blocos em seu programa a partir da paleta personalizada e especificar
a duraoou pelo hub de dados ou o painel de configurao.
Neste ponto, voc pode estar se perguntando por que voc gostaria de criar um bloco Meu fora de um bloco
nico e fornecer acesso a apenas um de seus parmetros. Neste sentido, o ForwardDeg bloco parece
menos til do que o movimento do bloco por si s, j que o movimento do bloco ainda apenas a um
quarteiro e tambm permite que voc altere o nvel de potncia, etc O ForwardDeg bloco
principalmente mostrado aqui como um exemplo simples, mas existem algumas situaes onde voc pode
encontrar algo parecido com isto til. Por um lado, usando o ForwardDeg bloco pode fazer o programa que
usa-lo mais fcil de ler. Se o seu programa tem um monte de mover blocos em que, voc no pode to
facilmente dizer quais vo para a frente ou para trs ou usando graus vs segundos sem um olhar atento
para os blocos. Usando Meus blocos de aes permite que voc veja os nomes que atribuiu a cada bloco,
que mais sugestivo do que faz. Alm disso, possvel tirar proveito do facto de que uma mudana para o
contedo de um bloco Meu ir afectar todas as utilizaes de que o bloqueio. Por exemplo, se eu usar
o ForwardDeg bloco de dez vezes em um programa, todos os dez usos usar o mesmo nvel de poder que
foi definido dentro do bloco Meu (75 acima).Ento, se voc editar o contedo meu bloco e altere o nvel de
potncia do bloco nico movimento dentro dele, todos os dez usos do ForwardDeg bloco usar
automaticamente o nvel de energia nova. Se voc tivesse usado dez individuais Mover blocos, voc
precisaria mudar todos os dez nveis de potncia individualmente.
Projetando seu prprio parmetro de entrada
No ForwardDeg exemplo acima, um parmetro de entrada foi criado que forneceu o acesso directo a um
dos parmetros dos blocos contido no bloco de Meu (o Durao parmetro do movimento do bloco). Voc
tambm pode criar seus prprios parmetros de entrada para um bloco Meu que se comportam da maneira
que voc quer que eles e escolher seus prprios nomes para eles. Como exemplo, vamos comear tudo de
novo com o nosso exemplo de um Bloco Meu que se move para a frente, e desta vez vamos fazer uma
verso diferente chamado Encaminhar centmetros , que tem a durao de parmetros (que foi
interpretado como graus) substitudo por um parmetro denominado Distncia centmetros , o que a
distncia em centmetros que queremos o rob para viajar. Muitos usurios de robs NXT gostaria que eles
pudessem dizer o rob quanto a viajar em polegadas ou centmetros ao invs de precisar determinar o valor
correto graus. Com um pouco de matemtica, podemos criar um bloco meu que vai fazer isso por ns em
NXT-G.
Ao executar alguns experimentos com um rob que usa os pneus normais de NXT 2.0 (43,2 x 22) sobre
suas rodas motrizes, voc pode determinar que os motores de acionamento precisa virar 27 graus para
fazer viagens de robs de 1 cm (este melhor determinada pela observao de como muitos graus so
necessrios para deslocar uma distncia maior, tais como 100 cm, em seguida, divisrias para determinar a
figura cm 1).Note-se que este nmero ir variar dependendo se o rob utiliza treads vs pneus, o dimetro
dos pneus e as artes utilizadas, mas depois de ter escolhido estes em seu projeto do rob voc pode
determinar a converso de graus para cm.
A Figura 21a mostra um programa que converte uma distncia em centmetros (proveniente de
um Constantebloco nomeado centmetros ) para graus de motor usando um Math bloco, e, em seguida, os
graus de fiao resultantes para o Durao de porta de um movimento de bloco. A Matemtica bloco est
configurado para multiplicar por 27 (Figura 21b).


Figura 21a / b: A constante de valor bloco multiplicado por 27, antes de ser usado como os graus
Durao.

Ao seleccionar tanto o Math bloco eo movimento do bloco (mas no a constante de bloco) e criar um
bloco de Meu (Figura 22), a resultante Bloco Meu ter um parmetro de entrada que vai permitir que o
programa usando o bloco My para fornecer a distncia em cm. Note-se que os resultados de parmetros de
entrada do cabo de dados que leva ao "A" porta do Math bloco quando o Math bloco foi "cortado" a partir
doconstante bloqueio durante a criao do Bloco Meu. O fio que conduz Durao da porta
do movimento do bloco no resulta em um outro parmetro de entrada, uma vez que a sua fonte de dados
(o Math Block) est no interior do bloco Meu. Isto o que queremos; valor nosso parmetro de entrada em
cm entrar no bloco de matemtica, se multiplicado por 27, e depois so enviados para o Mover bloco como
graus.

Figura 22: O Math e mover blocos esto includos no bloco Meu, mas no a constante de bloco.

Mudar o nome de um parmetro
O resultado da criao de um bloco A minha a partir do programa mostrado na Figura 22, nomeando o Bloco
Meu Avanado centmetros e, em seguida abertura, o contedo do bloco Meu mostrado na Figura
23. Ocentmetros Avanado guia contm os contedos do bloco Meu, que consiste de dois blocos que
compem o bloco (um Math bloco e um movimento de bloco), e tambm um bloco de ligao especial
parmetro que representa a fonte do parmetro de entrada. Por padro, o NXT-G nomeia um parmetro de
entrada para um bloco Meu tomando o nome da porta de dados que o fio da fonte ligado a, portanto,
neste caso o parmetro denominado "A" , porque est ligado ao "A " porta da Matemtica bloco. Este
tambm o nome que vai aparecer no painel do Bloco de configurao do meu. Voc pode renomear um
parmetro para torn-lo mais descritivo, conforme explicado abaixo, e normalmente voc vai querer fazer
isso.

Figura 23: O nome padro do parmetro geralmente tomada a partir do porto os primeiros dados que est
conectado.

Para renomear um parmetro em um bloco Meu, d um duplo clique sobre o nome do parmetro, que exibe
acima do bloco de ligao parmetro o contedo do bloco Meu e digite um novo nome. Tambm possvel
arrastar o bloco de ligao parmetro para uma posio diferente, se desejado, como mostrado na Figura
24.

Figura 24: Um bloco de conexo parmetro pode ser movido e renomeado.

Quando voc renomeia um parmetro, o novo nome tambm ser usado no painel do Bloco de configurao
do meu. No entanto, para ver o novo nome, voc ter de apagar a primeira cpia do Bloco Meu que foi
criado e inserir uma nova cpia do Bloco Meu. A Figura 25 mostra uma nova cpia do centmetro frente do
bloco e seu painel de configurao mostrando o parmetro de entrada, agora chamado cm de distncia .


Figura 25: Inserindo uma nova cpia do Bloco Meu mostrar o parmetro renomeado.

Criando um Bloco Meu com vrios parmetros de entrada
O ForwardDeg e Encaminhar cm blocos que criamos anteriormente cada um deles tinha apenas um
parmetro de entrada, mas como voc provavelmente j adivinhou, possvel criar um bloco meu que tem
mais de um parmetro de entrada, e isso muitas vezes til. Existem algumas questes a ter em conta,
esta seco ir mostrar outro exemplo de uma variao ampliada do centmetros Encaminhar meu bloco
que adiciona um parmetro de entrada para controlar o nvel de potncia.
Primeiro, importante ressaltar que voc no pode adicionar um parmetro para um existente Bloco Meu,
voc deve comear de novo e criar tudo de novo. Voc pode reciclar alguns dos seus trabalhos anteriores,
copiando e colando blocos da rea do Bloco Meu velho, se necessrio, mas voc tem que passar pelo
processo de criao do Bloco Meu novamente.

Nota: Uma vez que o Bloco Meu criado, voc pode renomear um parmetro de entrada, mas voc
no pode adicionar ou excluir um parmetro de entrada, nem pode mudar o tipo (Number, Logic ou
texto) de um parmetro. Portanto, uma boa idia para pr algum pensamento em que parmetros
voc deseja antes de criar um bloco Meu complexo. Voc tambm deve guardar uma cpia do
programa de origem antes de criar o Bloco Meu, para que voc possa voltar a essa cpia e fazer as
mudanas para se preparar para mudanas de parmetros em um bloco de revista, se necessrio.
Para criar um bloco My com vrios parmetros, voc pode comear criando um programa que executa a
ao desejada, usando um separado constante bloco com fio para cada porta de dados que voc deseja
fazer um parmetro de fora. A Figura 26 mostra uma primeira tentativa de fazer isso. Este programa
semelhante ao programa usado para criar a centmetro Avanado bloco ( Figura 21a ), com a adio de
um outroConstante bloco nomeado de alimentao que est ligado alimentao porta de dados
do movimento do bloco. No entanto, este programa no pode ser usado para criar o nosso desejado bloco
Meu, porque os blocos que necessitam para perfazer o Bloco Meu (apenas o Math bloco eo movimento do
bloco) no so contguas (todas ao lado do outro no feixe de sequncia). A Figura 27 mostra um programa
corrigido com aalimentao constante bloco movido para a frente do programa, de modo que os blocos
para incluir no bloco Meu pode ser seleccionado de forma contgua.

Figura 26: Na tentativa incorreta de preparar um bloco My com dois parmetros.


Figura 27: Dois blocos constantes posicionado no incio da sequncia permite que
os outros blocos para ser seleccionado em conjunto para a criao de bloco My.

Aps a criao de um bloco A minha a partir do programa mostrado na Figura 27, e de nomenclatura esta
verso do bloco de frente , o programa de origem modificado para aquela mostrada na Figura 28. Voc
pode ver que a frente de bloco tem dois parmetros de entrada, e ambos ainda esto ligados
aosconstantes bloqueios que usamos para constru-lo.

Figura 28: Os dois parmetros meu bloco frente tem um hub de dados com duas portas.

Como antes, um duplo clique no Encaminhar bloco vai abrir o seu contedo, e aqui voc pode renomear os
parmetros. A Figura 29 mostra o contedo da frente do bloco com os parmetros renomeado ea cablagem
rearranjado um pouco.

Figura 29: O contedo do Avanado Bloco Meu com parmetros renomeado
e um comentrio cabealho do bloco adicionado.

Como nos exemplos anteriores, voc vai precisar para inserir uma nova cpia do Frente Bloco Meu para ver
os parmetros renomeados. A Figura 30 mostra uma nova cpia da frente do bloco com os seus
parmetros de entrada dois.


Figura 30: O Encaminhar meu bloco com dois parmetros de entrada.

Fazer um comentrio cabealho Bloco
Tambm mostrado na Figura 29 acima um formato sugerido para um comentrio cabealho do bloco , que
uma boa forma de explicar o que um bloco A minha faz. Especialmente para um mais complexo bloco Meu,
uma boa idia para incluir um comentrio dentro do bloco (com o comentrio da ferramenta no editor
NXT-G) que explica o que o bloco faz, e tambm inclui uma linha para cada parmetro que explica o que
esse parmetro usado para.
Para o built-in NXT-G blocos, se voc tiver uma pergunta sobre o que o bloco ou fazer seus parmetros,
voc pode consultar a pgina de ajuda para esse bloco, mas meus blocos que voc criou no claro ter uma
pgina de ajuda, e mais tarde voc pode esquecer exatamente como usar um bloco que voc criou no
passado. Se voc incluir um comentrio cabealho do bloco como este no topo de cada bloco Meu, ento
voc pode simplesmente clicar duas vezes em um bloco Meu para abrir o contedo e ler a explicao.
Se voc adicionar um comentrio cabealho do bloco, ento voc tambm pode omitir a descrio de
blocona primeira etapa do Bloco Meu Builder ( Figura 4 ), pois um comentrio cabealho do bloco dentro do
bloco Meu aparecer tanto na tela e quando impressa.


Variveis, Fiao, Edio e dentro de um bloco Meu
Usando parmetros de entrada uma forma que um programa de NXT-G pode enviar dados para um Bloco
Meu. Outra maneira utilizando variveis . Nesta seco, usaremos o Varivel bloco para enviar uma pea
adicional de dados para o Avanado bloco movimento que ns desenvolvemos na seco anterior, a fim de
fazer a frente do bloco ainda mais capaz e flexvel. Ao longo do caminho, vamos aprender um par de outras
tcnicas que vm a calhar durante a edio ou a trabalhar com mais complexas meus blocos.
Usando variveis para enviar dados para um Bloco Meu
Como desenvolvido na seco anterior, a frente do bloco Meu assume que o rob est usando o padro de
pneus NXT 2.0 em suas rodas de accionamento, a fim de ser capaz de converter centmetros de distncia do
curso desejado para graus de rotao do motor. Mas, se um rob usado pisa em vez de pneus (pneus ou
diferentes), a converso no seria correto. Especialmente para um rob, como Multi-Bot que pode pisa ou
pneus, que seria bom se pudssemos fazer um bloco meu que trabalhou tanto para esteiras ou pneus. Ns
poderamos mudar a frente do bloco Meu adicionar um terceiro parmetro para isso (o que exigiria comear
de novo, desde que voc no pode adicionar um parmetro para um bloco existente My), mas aqui vamos
fazer isso com uma varivel em vez.
Tal como uma varivel no NXT-G podem ser escritas a um ponto em um programa e, em seguida ler num
outro ponto de um programa para passar informao de um ponto para o outro, uma varivel pode tambm
ser utilizado para passar informao entre um programa e uma Meu Bloco. Para estender
nosso Encaminharbloco para ser capaz de fazer os clculos corretos se rob est usando esteiras ou os
pneus normais de NXT 2.0, vamos definir uma varivel do tipo Logic (o valor True ou False)
nomeados Treads . Esta varivel tem o valor True se o rob est usando esteiras, ou False se a utilizao de
pneus. Especificamente, o programa principal ir gravar o valor da varivel no incio do programa, e os
contedos da frente do bloco Meu ir ler a varivel para decidir o que fazer. Se Treads False (o rob est
usando pneus como antes), ento cada centmetro de viagens requer 27 graus de rotao do motor como
antes. No entanto, se Treads verdadeira, ento cada centmetro exigir 36 graus de rotao do motor
(determinada pela experincia com um rob recauchutados).

A definio de variveis em um Bloco Meu
Ao contrrio adicionando um parmetro para um bloco Meu, adicionando uma varivel no necessita
comear de novo com a criao do bloco Meu, para que possamos abrir o contedo da frente do bloco Meu
e fazer nossas mudanas l. O primeiro passo consiste em definir a varivel no bloco My. Figura 31 mostra
a Treadsvarivel a ser definida usando a Editar - Definir variveis comando de menu no contedo
da frente do bloco Meu.

Figura 31: variveis definidas no contedo de um bloco A minha pode ser usado para enviar dados para o
bloco.

Reescrevendo o contedo de um Bloco Meu
Depois de definir as Treads varivel na frente do bloco Meu, estamos prontos para modificar o contedo
dafrente do bloco Meu us-lo. Usando a varivel da forma desejada vai realmente resultar em uma
mudana substancial da forma como a frente do bloco foi escrito anteriormente, ento, neste ponto, til
saber que uma vez por bloco Meu foi criado, voc pode fazer grandes alteraes a ele, ao ponto de
praticamente refaz-lo se quiser. Na verdade, as nicas coisas que voc no pode mudar cerca de um Bloco
Meu o nmero de parmetros e os tipos dos parmetros. Tudo o resto pode ser excludo e recriado, se
necessrio.
A Figura 32 mostra o contedo de frente do bloco Meu depois de eliminar os centmetros anteriores para
clculo graus e iniciar o processo de usar os Treads variveis para fazer isso de uma maneira diferente. O
comentrio cabealho do bloco tambm foi revisto para adicionar um referncia utilizao
da Treadsvarivel. Note que os dois blocos de conexo de parmetros no pode ser excludo, mas voc pode
excluir os fios que conduzem deles e, em seguida, reconect-los para novos blocos ou reescrito em seu
contedo em bloco revista, que faremos a seguir.

Figura 32: A partir de reescrever a frente do bloco Meu usar a varivel Treads.

Fios em Compartilhando um Switch com guias
A fim de obter o comportamento que queremos da Treads varivel na frente do bloco, vamos usar a tcnica
de fiao em um bloco switch . Embora no seja especfico para meus blocos, esta tcnica especialmente
til quando se trabalha com meus blocos, devido necessidade de compartilhar usos de um parmetro, por
isso vamos percorrer um exemplo de us-lo aqui.
A Chave Logic ser usado para testar a Treads varivel e decidir se multiplicar o cm de distncia do
parmetro de 27 para os pneus (quando Treads False) ou por 36 para treads (quando Treads
verdadeiro).Figura 33 mostra a primeira parte do Switch ( Treads True) preenchido e conectado a
um Math bloco que multiplica por 36. Note-se que o switch deve ter a viso plana opo desmarcada para
mostrar a vista por abas, que permite roteamento fios de dados para o interruptor do lado de fora.


Figura 33: O Verdadeiro guia da chave usa uma matemtica bloco para multiplicar por 36 cm de distncia.

Figura 34 mostra a Chave bloco depois de selecionar o Falso guia e adicionando outra Math dentro do bloco
que multiplica por 27 em vez de 36.


Figura 34: A guia False do interruptor usa uma matemtica bloco para multiplicar por 27 cm de distncia.

Agora podemos ligar esta segunda Math bloco para os dois pontos de conexo ocultas que foram criados na
fronteira da Chave bloco quando a verdadeira parte foi com fio. Para fazer isso, desenhar fios a partir
doMath bloco e terminando com os dois pontos de conexo na fronteira interruptor, como mostrado na
Figura 35a / b.


Figura 35a / b: As portas do Math bloco na guia False do interruptor so ligados aos pontos
onde os fios entrou e saiu a chave na guia True.

O resultado final que os dois Math blocos (um em cada guia do interruptor ) utilizam o mesmo cm
Distncia parmetro de entrada (embora apenas um deles vai executar, dependendo do valor
do Treadsvarivel), eo valor de resultado de a Matemtica bloco que foi escolhido para executar tero seus
dados enviados para o Durao da porta do Mover bloco.

Usando variveis meu bloco do programa principal
Uma vez que tenha modificado o contedo da frente do bloco Meu ler a Treads varivel e modificar os seus
clculos em conformidade, podemos agora alterar o programa principal para us-lo. O programa principal
dever escrever o valor dos Treads varivel com o valor correto para o rob a ser usado antes
da Treadsvarivel lido pelo Encaminhar bloco. No entanto, antes, podemos escrever a Treads varivel no
programa principal devemos primeiro definir. Embora j definido o Treads varivel no contedo
da frente do bloco, necessrio definir novamente no programa principal, como mostrado na Figura 36.
importante para soletrar o nome da varivel exatamente o mesmo que o definido no Bloco Meu, incluindo
maisculas.
Nota: Cada programa e meu bloco tem sua prpria lista de variveis que foram definidas e pode ser
usado dentro dela. No entanto, se uma varivel em um programa tem o mesmo nome de uma varivel
em um bloco Meu utilizado por esse programa, as duas variveis referem-se ao mesmo local de
armazenamento e, portanto, pode ser usado para transmitir dados entre o programa eo Bloco Meu .Isso
s vezes referido como uma varivel "global" em outras linguagens de programao, e na verdade
todas as variveis em NXT-G so globais neste sentido.

Figura 36: Uma varivel definida no programa principal com o mesmo nome de
uma varivel em um bloco Meu tero acesso ao mesmo local de armazenamento.

A Figura 37 mostra um programa de teste concludo exemplo que usa o Avano Bloco Meu com
a Treadsvarivel. No incio do programa, o Treads varivel escrito com o valor verdadeiro para indicar que
o rob a ser utilizado tem degraus e no pneus. Em seguida, o Avanado bloco usada duas vezes,
juntamente com o BeepBeep bloco que criou anteriormente. Embora a frente do bloco usada duas vezes,
s precisa escrever o valor do Treads varivel uma vez no incio do programa, e todas as ocorrncias
da frente bloco ir usar esse valor.

Nota: Se voc no escreve um valor em uma varivel antes de ler, ento, uma varivel do
tipo Logic ter o valor False , uma varivel do tipo Nmero ter o valor 0 (zero), e uma varivel do
tipo string estar vazia. No entanto, mesmo se este o valor desejado para uma varivel, uma boa
idia sempre escrever explicitamente o valor desejado da varivel antes de l-lo, para reduzir a confuso
e para ajudar a lembr-lo (e qualquer outra pessoa ler o seu programa) que o varivel usada mais tarde.

Figura 37: Uma varivel escrito no programa principal pode ser lido pelos blocos Os meus.

Agora, se mais tarde decidiu modificar o nosso rob de usar pneus em vez de bandas de rodagem, que pode
simplesmente mudar as Treads varivel bloco no incio do programa para definir Treads para False em vez
de verdade , e todos os usos da frente do bloco ser automaticamente adaptar correctamente. Note-se que
se tinha decidido utilizar um parmetro de entrada para a terceira frente de bloco para enviar
os Treadsdados em vez de usar uma varivel de cada utilizao do Encaminhar bloco no programa
precisaria ser alterado para especificar o novo Treads valor do parmetro, de modo neste caso, utilizando
uma varivel em vez de parmetro parece melhor. Em geral, se o valor de um item de dados necessrios
para um Bloco Meu no vai mudar enquanto um programa est sendo executado, voc pode considerar o
uso de uma varivel em vez de um parmetro de entrada.

Nota: As variveis podem tambm ser usado para enviar dados a partir de um bloco de costas para o
programa que usa o bloco. Um resultado calculado por um bloco My que foi escrito para uma varivel
pode ser mais tarde lido pelo programa principal, ou por outros meus blocos no programa.


Fazer uma cpia modificada de um Bloco Meu
A frente do bloco desenvolvido nas sees anteriores fornece uma maneira razoavelmente flexvel para
fazer um rob ir para a frente, mas o que sobre ir para trs? O padro Mover bloco tem
uma Direo parmetro que pode ser usada para especificar se a ir para a frente para trs, mas a
nossa frente bloco no. Ns poderamos fazer uma outra verso de um movimento meu bloco bloco que
incluiu um outro parmetro de entrada para especificar a direo, mas outra opo criar um bloco Meu
nome diferente para trs que vai para trs ao invs de avanar. Esta opo ir tendem a tornar o programa
de us-lo mais fcil de ler, j que voc vai ver os nomes de blocos que indicam claramente "Forward" e
"para trs" no programa. Esta seo ir mostrar como fazer uma cpia modificada de um bloco existente My
com um nome diferente, que til em situaes como esta, assim como muitas outras situaes (voc pode
querer experimentar algumas variaes diferentes em um bloco, por exemplo ).
Copiar um Bloco Meu
Para criar um Backward My Block, voc pode notar que ele vai ser exatamente como a frente do bloco
Meu exceto para a direo do movimento, para que possamos fazer uma cpia da frente do bloco Meu,
fazer a mudana de direo, e, em seguida, nome-lo para trs . Para fazer uma nova cpia de um Bloco
Meu, comece usando os Edit - Gerenciar paleta personalizada de comando (Figura 38).
Nota: Voc tambm pode usar o Arquivo - Salvar Como comando para criar uma nova cpia de um
Bloco Meu com um nome diferente, mas Salvar como tambm substituir quaisquer usos do Bloco Meu
em programas abertos com o novo nome, que provavelmente no o que voc quer ou est esperando,
ento normalmente voc vai querer usar Gerenciar paleta personalizada em seu lugar.
O Editar - Gerenciar paleta personalizada comando ir abrir a pasta do seu computador onde os blocos na
paleta personalizada so armazenados, o que uma pasta chamada Blocos no local onde os programas
NXT-G para seu perfil de usurio so armazenados.

Figura 38: A Manage comando de menu personalizado Paleta
abre o local do arquivo onde meus blocos so armazenados.

No Blocos pasta, abra a subpasta chamada My Blocks , que a pasta onde meus blocos que voc criou so
armazenados. No Blocos Minha pasta, voc pode selecionar o Bloco Meu voc deseja copiar, use Editar -
Copiar e depois Editar - Colar para criar uma cpia (Figura 39), em seguida, selecione e renomeie o arquivo
(Figura 40).

Figura 39: Fazer uma cpia de um Bloco Meu (RBT). Arquivo ir criar uma outra cpia do Bloco Meu.


Figura 40: Mudar o nome de um arquivo Bloco Meu mudar o nome do Bloco Meu.

Uma vez que voc criou e renomeou a cpia, voc pode clicar duas vezes nele para abri-lo, e ento fazer as
mudanas necessrias para o contedo. A Figura 41 mostra o contedo do completado para trs do bloco
Meu.

Figura 41: A Backward meu bloco como a frente do bloco Meu com o
sentido de rotao invertido eo cabealho comentar modificado.

Mudando o cone para um bloco de My
No caso dos Encaminhar e para trs meus blocos, OK para os dois blocos para mostrar o cone do
mesmo na face do bloco, mas em alguns casos, quando voc cria uma cpia modificada de um Bloco Meu,
voc vai querer o alterar o cone do novo bloco. Figura 42a mostra uma situao onde um bloco Meu
nomeLeftPivotAngle foi copiado e modificado para criar um bloco semelhante
chamado RightPivotAngle . Neste caso vamos querer alterar o cone para a nova RightPivotAngle bloco.
Para alterar o cone para um bloco Meu, voc precisa selecionar o uso do bloco (voc no pode mudar o
cone dentro do contedo do bloco Meu), ento use as Editar - Editar cone Meu Bloco de comando. Este
comando ir abrir a segunda etapa do Bloco Meu Builder ( Figura 5 ), que lhe permitir modificar ou
substituir o cone para outra coisa (Figura 42b). Uma vez que voc mudou o cone, ele ser alterado para
todos os novos usos do Bloco Meu.

Figura 42a / b: Alterar o cone de um Bloco Meu (antes e depois).



Criando mais avanadas meus blocos
Nas sees seguintes, vamos mostrar dois exemplos mais meu bloco que demonstram algumas tcnicas que
podem ser usados para fazer mais complexos meus blocos. Primeiro vamos criar um bloco Meu
nomeOutAndBack que se baseia nos blocos que criamos at agora para fazer um rob ir para a frente a
uma determinada distncia, em seguida, voltar pela mesma distncia para voltar ao ponto de partida,
parecendo tons antes de cada movimento. Em seguida, vamos percorrer a criao de uma mais complexa
Bloco Meu nome LimitNumber que pode ser usado para testar e modificar um nmero de valor para ter
certeza que um intervalo especificado. O LimitNumber bloco complexo o suficiente para que ela vai
exigir um planejamento cuidadoso e testes, por isso vamos concluir, mostrando um processo passo-a-passo
que pode ser usado para gui-lo atravs do processo de criao de uma mais complexa Bloco Meu.
Usando Meus blocos dentro Meus Outros Blocos
Para construir uma OutAndBack Bloco Meu, podemos notar que as trs coisas que queremos fazer o bloco
j foram desenvolvidos nos Blocos Meus Encaminhar , para trs , e BeepBeep . Felizmente, um bloco
pode conter Meu usos de outros meus blocos, de modo que o OutAndBack bloco ser fcil de criar usando
esses outros trs blocos. A Figura 43 mostra o programa usado para criar a OutAndBack bloco. A principal
funcionalidade conseguida simplesmente inserindo os Blocos Meus que anteriormente criados a partir da
paleta personalizada. Desde o OutAndBack bloco ter dois parmetros de entrada ( cm de
distncia eEnergia ), duas constantes blocos so usados como fontes de dados para esses valores antes de
criar o Bloco Meu.

Figura 43: Um bloco Meu pode ser criado com outros meus blocos.

Usando parmetros de entrada mais de uma vez dentro de um bloco Meu
Como mostrado na Figura 43, supra, os parmetros de entrada de alimentao e cm de distncia so usados
dentro do bloco Meu por ambos os Avanado e para trs blocos. Quando um parmetro de entrada
utilizado mais do que uma vez no contedo de um bloco Meu, importante que todas as utilizaes do
parmetro so fios de volta para o mesmo constante bloco (ou outra fonte de dados) no programa que
utilizado para criar o meu Bloquear. Isto assegura que as utilizaes diferentes, todos receber o mesmo
valor e que um nico parmetro ir tornar-se a fonte de todas as utilizaes. Lembrar que, quando os blocos
de seleco para compem o Bloco Meu, os blocos seleccionados devem todos ser contguo, de modo que
asconstantes de blocos na Figura 43 deve ser colocado no incio da sequncia.
Olhando para a seleo de blocos na Figura 43 que sero cortados para formar o bloco Meu, voc vai notar
que quatro fios de cruzar a fronteira da seleo. No entanto, estes quatro fios representam apenas dois
caminhos diferentes de dados, porque alguns dos fios juntar-se mesma fonte de dados fora da
seleco. Um parmetro separado criada apenas para cada fonte de dados diferente que est fora da
seleco, de modo que dois parmetros de entrada so criados no presente caso, como desejado. A Figura
44 mostra o contedo da resultante OutAndBack meu bloco. Existem dois blocos de parmetros de ligao,
cada um dos quais usada duas vezes dentro do bloco Meu.

Figura 44: A OutAndBack Bloco Meu utiliza outros meus blocos dentro dela
e usa cada parmetro de entrada duas vezes.

Criando um Bloco Meu com uma porta de dados de sada
Nas sees seguintes, vamos agora construir uma sociedade mais complexa Bloco Meu
nome LimitNumber , que incluir uma sada de porta de dados no seu centro de dados. Isso permitir que
o Bloco Meu para passar um valor de resultado de volta para o programa que utiliza o bloco. Este Bloco Meu
ser mais difcil de testar do que os outros meus blocos que criamos at agora, portanto, um mtodo de
test-lo antes e depois de criar o Bloco Meu sero mostrados.
O LimitNumber meu bloco aceitar um nmero parmetro de entrada, juntamente com dois outros
parmetros de entrada nomeados Min e Max . Ele ir testar para ver se nmero est na faixa numrica
de Minpara Max e produzir um valor de sada que est dentro desse intervalo. Especificamente, o resultado
deLimitNumber pode ser especificado como se segue:
Se Nmero maior do que Max , o resultado Max .
Se Nmero inferior a Min , o resultado Min .
Se Nmero na gama de Min para Max , o resultado Nmero .
Desde LimitNumber ter trs parmetros de entrada, vamos comear com trs constantes blocos que
podem conter as fontes de dados para estes parmetros. Essas constantes so nomeados Min , Max ,
eNmero na Figura 45.
Para o resultado de sada, tambm precisamos de um lugar para conectar um fio de dados que contm os
dados do resultado para um local fora do bloco que faro parte do Bloco Meu. Semelhante, mas inverso
forma como parmetros de entrada so criados quando uma seleo de blocos transformado em um bloco
Meu, uma porta de sada de dados ser criado para cada caminho de dados que se origina no interior dos
blocos selecionados e ligado a um local fora dos blocos selecionados .
Regra: A meu bloco porta de sada de dados ser criado para cada caminho de dados que se origina no
interior dos blocos selecionados para criar o Bloco Meu e que ligado a um local fora (depois) os blocos
selecionados.
Uma maneira fcil para criar esta ligao a utilizao de uma varivel de gravao do bloco para receber
o resultado de sada. Para maior clareza, voc pode usar Editar - Definir variveis para definir uma varivel
do tipo apropriado com um nome descritivo. Para uma porta de sada, o bloco de gravao varivel deve ser
colocado no fim da sequncia utilizada para criar o Bloco Meu como mostrado na Figura 45 abaixo.

Figura 45: Preparando-se para fazer um bloco My com trs parmetros de entrada e uma porta de sada de
dados.

Usando uma varivel local em um bloco Meu
Para uma frmula complexa, como a especificao do LimitNumber resultado com base
no Nmero , Min eMax mostrado acima, muitas vezes til usar uma ou mais variveis temporrias para
armazenar resultados intermedirios e modificar antes de produzir o resultado final. Se tivssemos uma
varivel temporria chamadaTempResult definido, ento poderamos implementar a frmula
para LimitNumber usando a seguinte seqncia ordenada de aes:
1. Escreva o TempResult varivel a ter o valor de Number.
2. Compare Nmero de Max , e se Nmero maior do que Max , em seguida, substituir
o TempResultvarivel com o valor mximo .
3. Compare Nmero de Min , e se Nmero inferior a Min , em seguida, substituir
o TempResult varivel com o valor de Min .
4. Conecte o TempResult varivel para o caminho de dados de sada.
A varivel temporria TempResult nesta sequncia usado apenas dentro dos contedos do bloco Meu e
no necessrio, antes ou depois do bloco Meu faz o seu trabalho. No entanto, um possvel problema com o
uso de uma varivel temporria dentro de um bloco Meu que, se a varivel tem um nome que corresponda
outra varivel usada por um programa usando o bloco, eles varivel temporria ir substituir esta varivel
no programa e, provavelmente, criar um bug . Algumas linguagens de programao fornecem uma maneira
de criar uma coisa chamada varivel local , que no afetar o programa fora, mas NXT-G no faz, ento, em
vez disso, usar uma conveno de nomes de variveis para evitar este problema.
Nota: Todas as variveis em NXT-G so "global", o que significa que quaisquer duas variveis com o
mesmo nome referem-se ao mesmo local de armazenamento. Voc no pode definir uma varivel "local"
que seja garantida a afetar o contedo de apenas um Bloco Meu.
Usando uma conveno de nomenclatura para variveis significa subir com as convenes sobre como se
escreve variveis que so usadas em diferentes lugares, a fim de evitar conflitos de nomes. A varivel
temporria com um nome como TempResult infelizmente bem provvel que entrem em conflito com outra
varivel utilizada no programa (mesmo se voc sabe que no tem uma varivel chamada que agora, voc
pode adicionar mais tarde).
A conveno de nomenclatura para as variveis que eu sugiro :
Variveis temporrias em um comeo Bloco Meu com uma letra minscula e tem o nome do Bloco
Meu anexado ao fim aps um sublinhado ("_") personagem.
Variveis normais comear com uma letra maiscula.
Esta conveno vai garantir que as suas variveis temporrias no interferir com as variveis normais em
um programa ou todas as variveis temporrias em outros meus blocos. Tambm torna mais fcil identificar
as variveis temporrias em um piscar de olhos, porque eles comeam com uma letra minscula. A Figura
46 mostra uma varivel temporria chamada number_LimitNumber para utilizao no LimitNumber meu
bloco.

Figura 46: A conveno de nomenclatura para "locais" variveis utilizadas somente dentro de um Bloco Meu.

A Figura 47 mostra um programa que pode ser usado para criar a LimitNumber meu bloco usando o
temporria varivel number_LimitNumber ea sequncia de aces planeadas acima. Note que a nica parte
do nome das exposies temporrias variveis na face dos blocos de variveis, mas voc ainda pode ver a
parte mais importante do nome no incio.

Figura 47: Um programa para criar o LimitNumber My Block ( clique para ampliar ).

Como mencionado na OutAndBack exemplo anterior, note que todas as utilizaes de um parmetro de
entrada devem ser conectados ao mesmo caminho de dados voltado para o constante bloco para esse
parmetro. Para mais meus blocos, ele pode ficar difcil fazer isso. Por exemplo, nota que o caminho de
dados para o Min parmetro na Figura 47 bastante longo. Se ficar muito difcil de conectar o acesso a um
parmetro de entrada em todos os locais necessrios, voc pode introduzir outra varivel temporria para
armazenar uma cpia do parmetro de entrada. Neste caso, voc usaria um Write varivel bloco para
copiar o valor do parmetro de entrada para a varivel temporria no incio dos contedos do bloco, ento
voc pode usar vrias variveis Ler blocos para acessar a varivel temporria durante o programa.

Nota: O programa na Figura 47 inclui algumas observaes para maior clareza aqui, mas normalmente
voc vai querer esperar at depois de criar o Bloco Meu antes de adicionar um monte de comentrios,
porque eles podem precisar ser reposicionado aps o Bloco Meu criado.

Testando um bloco Meu antes e depois de cri-la
O LimitNumber programa mostrado na Figura 47 mais complexo do que os outros programas meus
blocos que crimos at agora, e tambm mais difcil de testar, porque ele no resultou em qualquer
movimento, sons, ou exibir visvel sobre o rob. Para testar o programa, necessrio ser capaz de ver o
valor doResultado varivel no final. A Figura 48 mostra alguns blocos adicionais que podem ser usados para
este teste. O Resultado varivel convertida em texto e exibidos na tela NXT, e depois um
vazio sempre loop faz com que o programa at que voc espera abort-lo (para que o resultado no ser
apagado da tela quando o programa termina).

Figura 48: Blocos adicionais utilizados para o teste antes de criar o LimitNumber meu bloco.

Os blocos de teste da Figura 48 deve ser adicionado ao final do programa na Figura 47, antes de criar o
Bloco Meu, e depois o programa pode ser testado (mais uma vez, antes de o bloco Meu criado),
executando-lo vrias vezes, a modificao do programa ligeiramente cada vez de usar valores diferentes
para as constantesNmero , Min , e Max no incio do programa, e observando-se a exibida Resultado valor
para se certificar de que se comporta como esperado. melhor fazer o teste antes de criar o Bloco Meu,
porque algumas coisas no so mutveis (ou facilmente altervel) depois de criar o Bloco Meu. A Figura 49
mostra o programa completo usado para testar e criar a LimitNumber meu bloco com os blocos de teste
adicionado.

Figura 49: Selecionando os blocos que vo dentro do LimitNumber My Block ( clique para ampliar ).

Nota: Antes de criar um bloco Meu, importante para salvar uma cpia do programa (separado do que
voc est trabalhando, que voc tambm deve salvar) no caso do Bloco Meu no saem da maneira que
voc espera e voc precisa voltar para o programa de origem para fazer alteraes. Voc pode salvar uma
cpia usando o Arquivo - Salvar Como comando.
Por exemplo, voc pode usar Salvar como para salvar uma cpia do programa mostrado na Figura 49
chamado LimitNumberProg1 e, em seguida, Salvar comonovamente para salvar outra cpia
chamado LimitNumberProg2 , ento v a criar o Bloco Meu na LimitNumberProg2 .

Para criar o LimitNumber meu bloco a partir do programa concluda, seleccionar os blocos aps o
parmetroconstantes blocos no incio e antes de o bloco que grava o resultado de sada para
o Resultado varivel (Figura 49). Esta seleco ir resultar em trs fontes de dados de entrada fora da
seleco, no incio, que se tornar os trs parmetros de entrada, e um caminho de dados fora da passagem
de seleco, no final, o que ir resultar na porta de dados de sada. O programa resultante com a seleco
substitudo pelo bloco Meu mostrado na Figura 50. Note que os blocos de testes ainda esto l aps
a LimitNumber bloco. Voc pode testar o programa novamente, neste ponto, se quiser, mas ele deve se
comportar o mesmo que o programa antes de o bloco Meu foi criado.

Figura 50: O programa de teste aps a criao do LimitNumber meu bloco.

Os contedos do LimitNumber meu bloco so mostrados na Figura 51. Aqui, os parmetros foram
renomeados, um comentrio cabealho do bloco foi adicionado, e os fios e os comentrios foram
reorganizados e limparam um pouco. Note-se que os resultados de sada de dados de porta em um bloco de
conexo semelhante para os parmetros de entrada e tambm pode ser renomeado.

Figura 51: Os contedos acabados da LimitNumber meu bloco ( clique para ampliar ).

Como um teste final do LimitNumber bloco, voc pode criar um novo programa que tem uma nova cpia
doLimitNumber bloco ligado diretamente aos blocos de teste (figura 52), e testar as diferentes
combinaes de parmetros de entrada inserindo-os diretamente na configurao painel
da LimitNumber bloco.

Figura 52: Teste Final utilizando uma nova cpia do LimitNumber meu bloco.

Um processo passo-a-passo para criar e testar um bloco Meu Complex
Como vimos com o LimitNumber Meu Bloco na seo anterior, existem vrias etapas envolvidas na criao
de uma mais complexa Bloco Meu e momentos estratgicos durante o processo de onde voc deve salvar e
testar o seu trabalho. Esta seo resume um processo passo-a-passo que voc pode usar para orient-lo no
processo de criar e testar um bloco Meu complexo.
Um processo passo-a-passo para criar e testar um bloco Meu Complex:
1. Decida o que parmetros de entrada, portas de sada de dados e variveis que o Bloco Meu usar para se
comunicar com programas que usam o Bloco Meu. Voc no pode alterar o nmero ou tipo de parmetros ou
portas depois de criar um bloco Meu, por isso uma boa idia para tentar pensar nisso antes do tempo.
2. Criar um novo programa que ir ser utilizado para testar e criar o bloco Meu. Vamos chamar isso
de programa de teste .
3. No programa de teste, inserir um personalizado Constante bloco para cada parmetro de entrada no incio
do programa, e uma gravao Varivel bloco para cada porta de dados de sada no final do programa
( Figura 45 ).
4. Defina todas as variveis temporrias para uso no Bloco Meu usando uma conveno de nomeao que evita
conflitos de nomes com outras variveis. Sugere-se que as variveis temporrios comeam com uma letra
minscula e acrescentar o nome do Bloco Meu no final, aps um sublinhado ("_"), carter e variveis normais
comear com uma letra maiscula ( Figura 46 ).
5. Criar o contedo do Bloco Meu no programa de teste como uma sequncia contgua de blocos entre o
parmetro de entrada constante bloco (s) ea sada da porta varivelblocos (S) ( Figura 47 ).
6. Certifique-se que, se um parmetro de entrada usada vrias vezes que todas as utilizaes so todos os fios
de volta para o mesmo caminho de dados levando ao original constante do bloco para que o parmetro de
entrada. Se um caminho de dados fica muito longa ou complexa de gerir, voc pode introduzir uma varivel
temporria para armazenar o valor de um parmetro de entrada e acess-lo de vez da varivel temporria.
7. Adicionar blocos de teste para o incio e / ou no final do programa de teste para ajudar voc a verificar se ele
funciona como esperado ( Figura 48 ).
8. Executar vrios casos de teste, modificando os valores dos parmetros de entrada nasconstantes blocos entre
corridas para testar todos os casos relevantes. Faa as alteraes necessrias ao programa de teste.
9. Salve duas cpias do programa de teste usando Salvar como , de modo que voc tenha sempre uma cpia de
backup antes de o bloco Meu foi criado.
10. Selecione a seqncia de blocos que compem o contedo do bloco Meu. Isto deve incluir todos os blocos
depois de qualquer entrada de parmetros constantes blocos e antes de qualquer sada do porto Escrever
variveis blocos, e no deve incluir todos os blocos adicionados para o teste ( Figura 49 ).
11. Clique no Criar meu bloco na barra de ferramentas e use o Construtor de Bloco Meuespecificar o nome eo
cone do Bloco Meu ( Figuras 3 a 5 ).
12. Verifique se o programa de teste modificado ainda parece correto depois de o Bloco Meu tiver sido
substitudo, especialmente os caminhos de dados para todos os parmetros de entrada e portas de sada. Voc
pode fazer mais corridas de teste neste momento se voc quiser ( Figura 50 ).
13. D um duplo clique no bloco Meu no programa de teste para abrir seu contedo.Renomeie os parmetros de
entrada e portas de sada para os nomes desejados, adicione um comentrio cabealho do bloco e quaisquer
outros comentrios sobre os contedos, e reposicionar os caminhos de arame como desejado. Os caminhos de
fios que ficam muito difcil de trabalhar pode ser excludo e recriado como necessrio ( Figura 51 ).
14. Salve o contedo meu bloco com Arquivo - Salvar .
15. Criar um novo programa para testar o Bloco Meu final. Insira uma nova cpia do Bloco Meu da paleta
personalizada, e adicionar qualquer cdigo de teste necessria para test-lo e em seguida, executar um
conjunto completo dos testes novamente ( Figura 52 ).


Organizar e compartilhar meus blocos
Nesta seo final, vamos olhar para algumas formas de gerir e partilhar a sua coleco de meus blocos.
Cpia, renomeao e excluso de meus blocos
Como mostrado na Copiando um bloco Meu seo anterior, a Edit - Paleta Gerenciar personalizado comando
pode ser usado para abrir a pasta no computador onde os meus blocos so armazenados ( Figuras 38-
40 ).Com esta pasta aberta, voc pode copiar, renomear ou excluir meus blocos que voc criou por cpia,
renomear ou apagar o programa correspondente (. Rbt) arquivos para os Blocos meus. Desta forma, voc
pode gerenciar o conjunto de meus blocos para fazer verses alternativas, obter os livrar voc no precise
mais, etc
Blocos quebrados
Um programa NXT-G que contm um uso de um Bloco Meu (uma instncia de um Bloco Meu inserido a
partir da paleta personalizada) realmente no armazenar o contedo meu bloco dentro do arquivo do
programa principal. Em vez disso, o programa contm apenas uma referncia para o Bloco Meu, que
essencialmente o nome do bloco Meu, juntamente com alguma informao sobre onde o bloco de
veio. Quando voc abrir o programa, o software tenta localizar o arquivo do bloco Meu (o meu bloco do
arquivo. Rbt) usar esta informao. Se o software no consegue encontrar o Bloco Meu (porque o seu
arquivo. Rbt foi excludo ou renomeado, por exemplo), ento NXT-G vai exibir um bloco quebrado em vez do
Bloco Meu correto, e voc no ser capaz de baixar o programa para o NXT.
A Figura 53 mostra um exemplo de um bloco de partida. Este exemplo foi criado atravs da criao de um
programa que usou o Bloco Meu nome Forward500 , fechar o programa, apagar o Forward500 bloco
(deEdit - Gerenciar paleta personalizada ), e em seguida, abrir o programa novamente. O software NXT-G
sabe que o bloco foi nomeado Forward500 , mas foi incapaz de encontr-lo, ento um bloco quebrado com
o nome Forward500 exibida. Os blocos quebrados em um programa ter de ser eliminado e os blocos
adequados inserido, ou os arquivos ausentes meu bloco precisa ser localizado e instalado antes do programa
pode ser usado.

Figura 53: Um bloco Meu quebrado

Uma causa comum de blocos quebrados quando um usurio tenta compartilhar um programa NXT-G
escrita em um computador com um usurio em um computador diferente (por transferncia ou enviando o
arquivo de programa ou postar o arquivo de programa na web, por exemplo). Se o programa contm uma
referncia a um bloco Meu eo Bloco Meu no tambm transferida, o programa ir mostrar um bloco Meu
quebrado. possvel transferir meus blocos e instal-los no computador de destino, bem como, mas uma
maneira mais fcil e melhor para compartilhar programas est usando o Pack and Go recurso, conforme
descrito na prxima seo.
Programas de compartilhamento com Pack and Go
Nas Ferramentas menu do software 2.0 NXT um comando chamado Criar Pack and Go . Este comando
outra maneira de salvar um programa NXT-G que ir salv-lo, juntamente com uma cpia de todos os
Blocos Meus, sons, e arquivos grficos que so usados pelo programa. Normalmente, poupando um
programa NXT-G com Arquivo - Salvar ou Arquivo - Salvar Como vai salvar apenas o arquivo do programa
principal, juntamente com referncias a quaisquer Blocos Meus, arquivos de som e arquivos de imagem
usados pelo programa, eo programa s ir funcionar em o computador de destino, se os arquivos adicionais
j esto no computador ou que tambm sejam transferidos e instalados corretamente. Salvando um
programa com ferramentas - Criar Pack and Go uma maneira muito mais fcil e confivel para
compartilhar programas com outros usurios em outros computadores.
Nota: A Criar Pack and Go recurso no est disponvel em verses do software NXT antes de NXT 2.0,
eo Pack and Go formato de arquivo de armazenamento (. rbtx) no legvel por verses anteriores
tambm. Se voc salvar um programa neste formato, no vai ser diretamente acessado por usurios com o
software 1.X NXT ou o "NXT-G 2.0" software da LEGO Education.
A Figura 54 mostra um programa que usa dois meus blocos, um arquivo grfico, e um arquivo de som,
eo Crie Pack and Go comando est sendo usado para salvar o programa. O Create Pack and Go de dilogo
permite que voc digite um nome para o programa salvou e procure um local de pasta para especificar onde
o arquivo deve ser salvo. Quando voc usa Criar Preparar e enviar para salvar um programa, o programa
gravado em um formato diferente do que um normal arquivo de programa (. rbt) NXT-G, como indicado pela
extenso do arquivo. rbtx. O software NXT-G chama isso de um formato de distribuio , porque ele
projetado para distribuir um programa para outros computadores.

Figura 54: A Pack and Go recurso economiza um programa, juntamente com seus necessrios
Meus Blocos, sons e grficos em um nico arquivo.

A parte inferior do Criar Preparar e enviar apresentaes de dilogo que os arquivos sero includos na
Distribuio salvo (. rbtx) arquivo. Neste exemplo, o programa principal PackTest est sendo salvo, junto
com o sorriso 01 grfico utilizado pela exibio do bloco, o bom trabalho de som usado pelo som do bloco,
e uma cpia do LeftPivotAngle e OutAndBack meus blocos. Alm disso, a trs , BeepBeep ,
e Avanado meus blocos esto tambm includos porque eles so utilizados pelo OutAndBack bloco. Isso
permite que o arquivo de distribuio resultante para funcionar em qualquer computador com o software 2.0
NXT, independentemente de qual arquivos de suporte j existem no computador.

Nota: O Pack e Go (formato. rbtx) tambm comprimido, o que resulta em arquivos significativamente
menores, mesmo para um arquivo nico programa com outros arquivos de suporte.
Alm disso, a compresso utilizado o padro "zip" formato, por isso, se voc renomear um Pack and Go
(. Rbtx) arquivo tenha a extenso ". Zip" extenso, ento voc pode abri-lo com extractor qualquer zip
(construda em computador para muitos sistemas operacionais) e acessar os arquivos individuais dentro
(mesmo se voc no tiver o software NXT 2.0).
Fazendo um sub-menu na paleta personalizada
Se voc chegar ao ponto de criar um monte de meus blocos, pode ser til para organiz-los em grupos, de
modo que eles no aparecem todos de uma longa lista na paleta personalizada ( Figura 10 ). Tambm pode
ser til para agrupar todos os blocos meus que so projetados para um determinado projeto em
conjunto.Felizmente, NXT-G faz com que seja possvel criar menus adicionais sobre a paleta personalizada,
onde voc pode organizar os meus blocos em grupos.
Para criar um menu adicional paleta personalizada, use os Edit - Gerenciar paleta personalizada de
comando para abrir a pasta de armazenamento para a paleta personalizada (Figura 55). Nesta pasta, as
duas subpastas Meus Blocos e Blocos Web correspondem aos dois menus padro na paleta
personalizada. Para criar o seu prprio menu, basta criar outra subpasta no mesmo nvel que o meu
Blocos subpasta. Voc pode ento mover os arquivos meu bloco (. Rbt) do Blocos Minha pasta em sua nova
pasta.

Figura 55: Criando uma nova pasta ao lado da pasta My Blocks
ir criar um novo menu na paleta personalizada.

Na Figura 55, eu criei uma subpasta chamada Pinball para manter meus sete blocos que foram criados
especificamente para um projeto de mquina de pinball que eu projetei. Figura 56 mostra os sete meu bloco
(. Rbt) arquivos que eu me mudei para o Pinball pasta, e Figura 57 mostra o menu resultando na paleta
personalizada com os sete Meus Blocos para o projeto de mquina de pinball sobre ele.

Figura 56: A pasta Pinball contm todos os Blocos Meus especficos para o projeto Pinball.


Figura 57: O Pinball meu menu Bloco contendo sete Meus Blocos e mostrando seu cone de menu
personalizado.

O Pinball menu da Figura 57 apresenta como um crculo preto porque eu ter personalizado o cone para
ele.NXT-G faz com que seja fcil de personalizar os seus prprios cones do menu, se quiser. Figura 56
mostra dois arquivos adicionais chamados PaletteIcon.txt e PaletteIcon.png que foram colocados
no Pinball pasta. OPaletteIcon.png arquivo um arquivo grfico que especifica o cone para usar no menu,
eo PaletteIcon.txtarquivo um arquivo de texto que especifica o texto dica de ferramenta que exibida
quando voc posicionar o cursor sobre o cone do menu. Se esses arquivos (chamado exatamente isso)
esto presentes em uma pasta Blocos Meu, o cone do menu ser personalizado, caso contrrio ele ir exibir
o cone padro ea dica.

Nota: O PaletteIcon.txt arquivo em uma pasta Meu Bloco ignorado a menos que
oPaletteIcon.png arquivo tambm est presente, ento se voc quiser uma dica de ferramenta
personalizada para um menu Bloco Meu, voc tambm deve fazer um cone personalizado para ele.
O PaletteIcon.png arquivo deve ser um arquivo grfico no formato PNG, que de 45 x 45 pixels de
tamanho.Em um computador rodando Windows, voc pode criar esse arquivo usando o Tinta programa
acessrio. Napintura programa, use a Imagem - Atributos para definir o tamanho da imagem para 45 por
45, sorteio e / ou colar a imagem que desejar e salve o arquivo no formato PNG
(PNG.). O PaletteIcon.txt arquivo pode ser criado em um computador Windows usando o Notepad programa
de acessrios para criar um arquivo de texto simples.

También podría gustarte