![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Engenharia Civil - Fundações |
||
|
||
|
|
||
Revit Python Shell ::: Dicas & Truques ::: Grupos - Groups |
Como copiar grupos no Revit usando a função Create.PlaceGroup() e o Revit Python ShellQuantidade de visualizações: 575 vezes |
|
O código que apresento nesta dica mostra como podemos pedir para o usuário selecionar um grupo na área de desenho do Revit e, em seguida, usando a API do Revit e o Revit Python Shell, criar uma cópia do grupo escolhido e posicioná-la em um ponto escolhido pelo usuário. Em realidade, este código é o mesmo apresentado no tutorial "Como criar seu primeiro plug-in no Revit usando a Revit C# API" da documentação oficial fornecida pela Autodesk. O que fiz foi modificar o código para usar Revit Python Shell em vez de C#, como mostrado no tutorial. O primeiro passo é importar o objeto ObjectType a partir do módulo Autodesk.Revit.UI.Selection. Em seguida nós usamos __window__.Hide() para que o foco vá para a janela do Revit. Isso é necessário para que o usuário possa selecionar um grupo usando uidoc.Selection.PickObject. Note que coloquei uma mensagem TaskDialog.Show() chamando a atenção do usuário para esta tarefa. Como a função PickObject() retorna um objeto Reference, nós precisamos fornecer essa referência para a função doc.GetElement() e assim obter o elemento real que queremos manipular. Então, o passo seguinte é pedir para o usuário indicar um ponto na tela de desenho do Revit usando a função uidoc.Selection.PickPoint(). Esta função vai nos retornar um objeto da classe XYZ da API do Revit. Depois que o usuário selecionar o grupo e o ponto, nós criamos uma nova transação usando Transaction(doc, "Copiar grupo") e a iniciamos com uma chamada à sua função Start(). Então, para concluir, basta uma chamada à doc.Create.PlaceGroup(ponto, grupo.GroupType) e verificar o resultado na tela de desenho do Revit. Veja o código Revit Python Shell completo para o exemplo:
# faz o import necessário
from Autodesk.Revit.UI.Selection import ObjectType
# precisamos ocultar a janela do Revit Python Shell
__window__.Hide()
# agora fazemos uma chamada à função PickObject() do objeto Selection e retornamos
# uma Reference
TaskDialog.Show("Aviso", "Selecione um grupo")
selecionado = uidoc.Selection.PickObject(ObjectType.Element, "Selecione um grupo")
# obtemos o grupo a partir de sua referência usando a função
# GetElement() do objeto Document
grupo = doc.GetElement(selecionado)
# vamos pedir para o usuário selecionar um ponto na área de
# desenho do Revit
TaskDialog.Show("Aviso", "Selecione um ponto")
ponto = uidoc.Selection.PickPoint("Selecione um ponto para posicionar o grupo")
# criamos uma nova transação e posicionamos a cópia do
# grupo nas coordenadas indicadas pelo usuário
transacao = Transaction(doc, "Copiar grupo")
# iniciamos a transação
transacao.Start()
# copiamos o grupo selecionado pelo usuário e o colocamos no
# ponto indicado
doc.Create.PlaceGroup(ponto, grupo.GroupType)
# fechamos a transação
transacao.Commit()
# e mostramos o resultado
TaskDialog.Show("Aviso", "O grupo foi copiado com sucesso")
# depois que o usuário fizer a seleção nós mostramos a janela do
# Revit Python Shell novamente
__window__.Show()
__window__.Topmost = True
|
Java ::: Projetos Java Completos - Códigos Fonte Completos Java ::: Jogos (Games) |
Como criar o jogo Pedra, Papel, Tesoura em Java - Jogo completo em Java com código comentadoQuantidade de visualizações: 8231 vezes |
|
Faça o download do código-fonte Pedra, Papel, Tesoura em Java Nesta dica mostrarei como criar o famoso joguinho Pedra, Papel, Tesoura na linguagem Java. Trata-se de um código bem simples e que vou comentar linha a linha, para que você extraia todo o conteúdo necessário para deixar a sua lógica de programação ainda mais afiada. Nesta versão eu mostrarei como jogar Pedra, Papel, Tesoura contra o computador. Depois de entender todo o código você não terá dificuldade para implementar uma versão que lhe permitirá jogar contra seus amigos. Antes de vermos o código, eis uma imagem do jogo em execução: ![]() Quais técnicas de programação vou aprender com o código desse jogo? O joguinho Pedra, Papel, Tesoura é ótimo para estudantes de programação que está iniciando em Java e que gostariam de aprimorar sua lógica de programação, afinal, se você desenvolver uma boa lógica de programação, você conseguirá desenvolver soluções em qualquer linguagem. Além de entender como funciona o desenvolvimento de jogos em Java, você reforçará o seu conhecimento de laços, estrutura condicional if...else, entrada e saída e fluxo e desvio do algorítmo. Veja, por exemplo, um trecho de código no qual testamos se o jogador escolheu Pedra, Papel ou Tesoura, e também a escolha feita pelo computador:
// o jogador escolheu Pedra?
else if(jogador == 1){
// o computador escolheu Papel?
if(computador == 2){
System.out.println("Você perdeu. Papel embrulha Pedra");
vitoriasComputador++; // aumenta as vitórias do computador
}
else{ // o computador escolheu Tesoura
System.out.println("Você ganhou. Pedra amassa Tesoura");
vitoriasJogador++; // aumenta as vitórias do jogador
}
}
// o jogador escolheu Papel?
else if(jogador == 2){
// o computador escolheu Tesoura?
if(computador == 3){
System.out.println("Você perdeu. Tesoura corta Papel");
vitoriasComputador++; // aumenta as vitórias do computador
}
else{ // o ocmputador escolheu Pedra
System.out.println("Você ganhou. Papel embrulha Pedra");
vitoriasJogador++; // aumenta as vitórias do jogador
}
}
Os links para você baixar todas as versões deste projeto estão abaixo: 1) PEDPAPTESJC - Jogo Pedra, Papel, Tesoura em Java Console - NetBeans IDE - Faça o download do código-fonte Pedra, Papel, Tesoura em Java. Não se esqueça: Uma boa forma de estudar o código é fazendo pequenas alterações e rodando para ver os resultados. Outra opção é começar um projeto Java do zero e ir adicionando trechos do código fonte para melhor entendimento de suas partes. |
Java ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Java para iniciantes - Como usar o laço do-while da linguagem JavaQuantidade de visualizações: 53382 vezes |
O laço do-while é uma variação do laço while. A diferença é que, no laço do-while a condição de continuidade é testada após a execução do bloco de códigos desejado. Isso nos faz crer que este laço é executado no mínimo uma vez. Veja sua sintáxe:
do{
// bloco de instruções
}while(condição);
Se a condição testada for verdadeira, o laço continua sua execução. Do contrário a execução do programa segue a partir do ponto onde o laço se encontra. Veja um exemplo:
import javax.swing.JOptionPane;
public class Estudos{
public static void main(String[] args) {
int valor;
int soma = 0;
// Lê continuamente até o usuário informar 0
do{
// efetua a próxima leitura
String str = JOptionPane.showInputDialog(null,
"Informe um valor inteiro:\n(ou 0 para sair)",
"Estudos", JOptionPane.QUESTION_MESSAGE);
valor = Integer.parseInt(str);
soma += valor;
}while(valor != 0);
JOptionPane.showMessageDialog(null, "A soma é: " + soma,
"Estudos", JOptionPane.INFORMATION_MESSAGE);
}
}
Use o laço do-while quando você tiver instruções dentro do laço que precisem ser executadas no mínimo uma vez. |
Java ::: Classes e Componentes ::: JButton |
Como definir a cor do texto de um botão JButton do Java SwingQuantidade de visualizações: 10050 vezes |
|
Nesta dica eu mostrarei como é possível definir a cor do texto de um componente JButton do Java Swing. Para isso nós usamos o método setForeground() da classe JButton, fornecendo a cor desejada, por exemplo, Color.RED. Veja um exemplo Java Swing completo:
package arquivodecodigos;
import java.awt.*;
import javax.swing.*;
public class Estudos extends JFrame{
public Estudos() {
super("Estudos Swing");
Container c = getContentPane();
c.setLayout(new FlowLayout(FlowLayout.LEFT));
// Cria um JButton com a cor do texto vermelho
JButton btn1 = new JButton("Clique Aqui!");
btn1.setForeground(Color.RED);
// Cria um JButton com a cor de fundo verde
JButton btn2 = new JButton("Clique Aqui!");
btn2.setForeground(Color.GREEN);
// Adiciona os botões à janela
c.add(btn1);
c.add(btn2);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
Java ::: Fundamentos da Linguagem ::: Modificadores |
Programação Orientada a Objetos em Java - Como usar o modificador static em suas aplicações JavaQuantidade de visualizações: 19512 vezes |
|
O modificador static pode ser aplicado a métodos e variáveis. Além disso, este modificador pode ser usado para a inicialização de códigos estáticos de uma classe. Um recurso marcado com este modificador pertence à uma classe, e não às suas instâncias. Isso quer dizer que podemos acessar métodos ou variáveis estáticas sem a necessidade de criar uma cópia da classe. Veja por exemplo o método main() usado como ponto de entrada para um aplicativo Java:
public static void main(String args[]){
//
}
Como o método main é chamado antes mesmo de qualquer cópia de classes serem criadas, o modificador static se torna essencial. Veja o que acontece se o retirarmos:
public class Estudos{
public void main(String args[]){
System.out.println("Olá");
System.exit(0);
}
}
O código compila sem problemas. Porém, ao tentarmos executar teremos o seguinte erro: Exception in thread "main" java.lang.NoSuchMethodError: main
public class Estudos{
String frase = "Estou aqui!";
public static void main(String args[]){
System.out.println(frase);
System.exit(0);
}
}
Ao tentarmos compilar este código teremos o seguinte erro:
Estudos.java:5: non-static variable frase cannot be
referenced from a static context
System.out.println(frase);
^
1 error
static String frase = "Estou aqui!"; Execute o programa novamente e veja como o erro desaparece. Para demonstrar como recursos estáticos pertencem mesmo à classe e não às suas cópias, considere o seguinte exemplo:
public class Estudos{
public static void main(String args[]){
for(int i = 0; i < 5; i++){
Cliente cliente = new Cliente();
System.out.println("Sou o cliente número: " +
cliente.quant);
}
System.exit(0);
}
}
class Cliente{
public static int quant = 0;
public Cliente(){
quant++;
}
}
Ao compilar e executar este código você terá o seguinte resultado: Sou o cliente número: 1 Sou o cliente número: 2 Sou o cliente número: 3 Sou o cliente número: 4 Sou o cliente número: 5 Veremos agora o uso do modificador static na inicialização de blocos de código estáticos. Observe o código:
public class Estudos{
public static void main(String args[]){
for(int i = 0; i < 5; i++){
Cliente cliente = new Cliente();
System.out.println("Sou o cliente número: " +
cliente.quant);
}
System.exit(0);
}
}
class Cliente{
public static int quant = 0;
public Cliente(){
quant++;
}
static{
System.out.println("Bloco estático");
}
}
Compile e execute este exemplo. Você terá o seguinte resultado: Bloco estático Sou o cliente número: 1 Sou o cliente número: 2 Sou o cliente número: 3 Sou o cliente número: 4 Sou o cliente número: 5 |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
React.js - Aprenda a desenvolver aplicações React diretamente no HTML, sem usar a ferramenta create-react-app |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






