![]() |
|
|
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 Ética e Legislação Profissional |
||
|
||
|
|
||
JavaScript ::: DOM (Document Object Model) ::: window Object (Objeto window) |
Como usar o objeto window em suas aplicações HTML + JavaScriptQuantidade de visualizações: 9586 vezes |
|
O objeto window representa a janela do browser, uma janela em um frame ou janela de diálogo contendo um documento HTML. Este objeto fornece várias informações a respeito da janela (name, navigator, location, history, etc.), permite acesso ao documento contido na janela e suporta vários métodos úteis (alert(), confirm(), addEventListener(), attachEvent(), etc). Veja uma página HTML na qual temos um código JavaScript que acessa a janela atual e usa seu método alert() para exibir uma mensagem ao usuário:
<html>
<head>
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
// vamos exibir uma mensagem ao usuário
window.alert("JavaScript é muito bacana!");
</script>
</body>
</html>
O objeto window pode também representar uma janela contida em um frame ou em um elemento iframe, ou ainda em uma janela secundária (criada com os métodos open(), showModalDialog() ou showModelessDialog()). Eis algumas observações que devem ser bem memorizadas: a) Se a janela estiver contida em um frame ou elemento iframe, ela é uma janela filha da janela que contém o elemento frame. Para obter a janela mãe só precisamos usar a propriedade parent da janela filha. Veja: <script type="text/javascript"> // vamos obter a janela mãe var janela_mae = window.parent; </script> b) Se a janela for aberta por meio dos métodos open(), showModalDialog() ou showModelessDialog(), então a janela que a criou pode ser acessada por meio da propriedade opener. Os membros da janela atual podem ser acessados diretamente, sem a necessidade de passarmos pelo objeto window, ou seja, podemos usar alert() em vez de window.alert(), ainda que a última forma é a preferida. O objeto window está disponível para acesso a partir de qualquer ponto de nossos códigos JavaScript. Assim, devemos nos esforçar ao máximo para não termos variáveis com o mesmo nome das propriedades e métodos deste objeto. Dica escrita e testada no Internet Explorer (IE 8) e no Firefox 3.6. |
C++ ::: Dicas & Truques ::: Recursão (Recursividade) |
Como calcular fatorial em C++ usando recursividadeQuantidade de visualizações: 10189 vezes |
|
O fatorial de um determinado número, representado por n! equivale a multiplicar este número por seus antecessores. Assim, o fatorial de 4 (4!) pode ser calculado da seguinte forma: 4 x 3 x 2 x 1 = 24 Sempre que falamos de recursão, o cálculo de fatorial nos auxilia na exemplicação por ser relativamente fácil de se entender todas as etapas do processo. O código abaixo mostra uma função recursiva em C++ que calcula o fatorial de qualquer número. Tenha cuidado. Calcular o fatorial de um número maior que 10 pode tornar sua máquina extremamente lenta, além de, muitas vezes, não retornar os resultados esperados.
#include <iostream>
using namespace std;
// função recursiva para calcular o fatorial
// de um determinado número
int fatorial(int n){
if(n == 0)
return 1;
else
return n * fatorial(n - 1);
}
int main(int argc, char *argv[]){
// vamos calcular o fatorial de 5
int res = fatorial(5);
// exibe o resultado
cout << "O fatorial de 5 é: " << res << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
Revit C# ::: Dicas & Truques ::: Colunas e Pilares |
Como rotacionar colunas e pilares no Revit via programação usando a função RotateElement() da classe ElementTransformUtils da Revit C# APIQuantidade de visualizações: 653 vezes |
|
Nesta dica mostrarei como podemos usar a função RotateElement() da classe ElementTransformUtils da Revit C# API para rotacionar uma coluna ou pilar no Revit, tudo isso via programação. Essa dica é muito útil para programadores Revit C#, pois traz as técnicas necessárias para selecionar um único elemento na área de desenho do Revit, assim como obter sua caixa delimitadora (BoundingBox), seu ponto geométrico central e, o mais importante, fazer a rotação do elemento em seus eixos. O primeiro passo é pedir para o usuário selecionar o pilar ou a coluna usando a função PickObject() da classe Selection, que retorna uma Reference. Após a seleção do elemento nós usamos a função GetElement() da classe Document para retornar o elemento como uma variável FamilyInstance, ou seja, uma instância de família do Revit. De posse da instância de família nós usamos a função get_BoundingBox() para obter e retornar um objeto da classe BoundingBoxXYZ. É esse objeto que usamos para obter o ponto máximo, o ponto mínimo e o ponto geométrico central da coluna ou pilar. O passo final é usar a função RotateElement() da classe ElementTransformUtils para rotacionar a coluna ou pilar de acordo com o ângulo de rotação desejado. Note que fiz a conversão de ângulos em graus para ângulos em radianos antes de efetuar a rotação. Veja o código Revit C# API completo para o exemplo:
using System;
using Autodesk.Revit.UI;
using Autodesk.Revit.DB;
using Autodesk.Revit.DB.Structure;
using Autodesk.Revit.UI.Selection;
using System.Collections.Generic;
using Autodesk.Revit.DB.Architecture;
using System.Linq;
namespace Estudos {
[Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.
TransactionMode.Manual)]
[Autodesk.Revit.DB.Macros.AddInId("ED8EC6C4-9489-48F7-B04E-B45B5D1BEB12")]
public partial class ThisApplication {
private void Module_Startup(object sender, EventArgs e) {
// vamos obter uma referência ao Document ativo
Document doc = this.ActiveUIDocument.Document;
UIDocument uidoc = this.ActiveUIDocument;
// agora mostramos uma mensagem para o usuário selecionar uma
// coluna ou pilar
TaskDialog.Show("Aviso", "Selecione uma coluna ou pilar");
// obtemos uma referência ao objeto Selection do
// UIDocument ativo
Selection selecao = uidoc.Selection;
// e finalmente esperamos que o usuário selecione o elemento
Reference selecionado = selecao.PickObject(ObjectType.Element,
"Selecione uma coluna ou pilar");
// agora testamos se o usuário realmente selecionou um
// elemento
if (selecionado != null) {
// vamos obter o elemento selecionado a partir da
// referência
FamilyInstance coluna = uidoc.Document.GetElement(selecionado)
as FamilyInstance;
// vamos obter o elemento BoundingBoxXYZ
BoundingBoxXYZ bounding = coluna.get_BoundingBox(null);
// vamos obter as informações da BoundingBoxXYZ
// primeiro o ponto mínimo (canto esquerdo inferior e
// a parte de trás da caixa delimitadora)
XYZ pontoMinimo = bounding.Min;
// agora o ponto máximo (canto direito superior e
// a parte da frente da caixa delimitadora)
XYZ pontoMaximo = bounding.Max;
// agora obtemos o ponto central da coluna
XYZ centro = (pontoMaximo + pontoMinimo) * 0.5;
// construímos a linha que servirá de eixo de rotação
Line eixos = Line.CreateBound(centro, centro + XYZ.BasisZ);
// definimos o ângulo de rotação em graus
double angulo_rotacao_graus = 45;
// convertemos para radianos
double angulo_rotacao_radianos = angulo_rotacao_graus * (Math.PI / 180);
// iniciamos a transação
Transaction transacao = new Transaction(doc);
transacao.Start("Como rotacionar colunas e pilares no Revit");
// rotacionamos a coluna ou pilar
ElementTransformUtils.RotateElement(doc, coluna.Id, eixos,
angulo_rotacao_radianos);
// fazemos o commit da transação
transacao.Commit();
// e mostramos o resultado
TaskDialog.Show("Aviso", "A coluna foi rotacionada com sucesso.");
}
}
private void Module_Shutdown(object sender, EventArgs e) {
// para fazer alguma limpeza de memória ou algo assim
}
#region Revit Macros generated code
private void InternalStartup() {
this.Startup += new System.EventHandler(Module_Startup);
this.Shutdown += new System.EventHandler(Module_Shutdown);
}
#endregion
}
}
|
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular MDC em Python - Python para matemáticaQuantidade de visualizações: 13242 vezes |
|
Python para matemática - Como calcular o MDC (Máximo Divisor Comum) em Python Atualmente a definição de Máximo Divisor Comum (MDC) pode ser assim formalizada: Sejam a, b e c números inteiros não nulos, dizemos que c é um divisor comum de a e b se c divide a (escrevemos c|a) e c divide b (c|b). Chamaremos D(a,b) o conjunto de todos os divisores comum de a e b. O trecho de código abaixo mostra como calcular o MDC de dois números informados:
# função que permite calcular o MDC
def MDC(a, b):
while(b != 0):
resto = a % b
a = b
b = resto
return a
# função principal do programa
def main():
print("Este programa permite calcular o MDC\n")
x = int(input("Informe o primeiro valor: "))
y = int(input("Informe o segundo valor: "))
print("\nO Máximo Divisor Comum de", x, "e", y, "é", MDC(x, y))
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: Este programa permite calcular o MDC Informe o primeiro número: 12 Informe o segundo número: 9 O Máximo Divisor Comum de 12 e 9 é 3 |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Python - Como converter de binário para decimal em Python usando o laço forQuantidade de visualizações: 923 vezes |
|
Pergunta/Tarefa: Escreva um programa Python que usa o laço for para converter um número binário (como uma String) em sua representação decimal (como um int). Peça ao usuário para informar um número binário e mostre o mesmo em decimal (como um int). Sua solução deve obrigatoriamente usar o laço for. Sua saída deverá ser parecida com: Informe um número binário: 1100 A representação decimal do valor binário 1100 é 12 Veja a resolução comentada deste exercício usando Python:
# vamos importar o módulo Math
import math
# função principal do programa
def main():
# vamos ler o número binário (como uma String)
binario = input("Informe um número binário: ")
decimal = 0 # guarda a representação decimal
# vamos percorrer todos os dígitos do número binário começando do início
expoente = len(binario) - 1
for i in range(0, len(binario)):
# converte o caractere atual para inteiro
temp = int(binario[i])
decimal = decimal + (temp * int(math.pow(2, expoente)))
# reduz o expoente
expoente = expoente - 1
# mostramos o resultado
print("A representação decimal do valor binário {0} é {1}".format(
binario, decimal))
if __name__== "__main__":
main()
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




