![]() |
|
|
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 |
||
|
||
|
|
||
Revit C# ::: Dicas & Truques ::: Selection, Seleção |
Como pedir para o usuário selecionar somente um elemento no Revit usando a função PickObject() do objeto Selection da Revit C# APIQuantidade de visualizações: 992 vezes |
|
Durante o desenvolvimento de plug-ins e macros para o Revit usando C# e a API do Revit, nós precisamos pedir para o usuário selecionar um elemento e efetuar alguma operação com ele. Para isso nós podemos usar a função PickObject() do objeto Selection. O objeto Selection é obtido a partir de um UIDocument, que, por sua vez, é obtido usando this.ActiveUIDocument. Após a aquisição do objeto Selection, nós chamamos a função PickObject() e retornamos um objeto Reference, para representar o elemento selecionado pelo usuário na área de desenho do Revit. Se o objeto Reference retornado for diferente de null, então sabemos que o usuário selecionou o elemento e podemos proseguir com a execução do código do Plug-in ou macro. Veja o código Revit C# completo para o exemplo:
using System;
using Autodesk.Revit.UI;
using Autodesk.Revit.DB;
using Autodesk.Revit.UI.Selection;
using System.Collections.Generic;
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 UIDocument ativo
UIDocument uidoc = this.ActiveUIDocument;
// agora mostramos uma mensagem para o usuário selecionar um
// elemento
TaskDialog.Show("Aviso", "Selecione um elemento");
// 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);
// agora testamos se o usuário realmente selecionou um
// elemento
if (selecionado != null) {
TaskDialog.Show("Aviso", "Você selecionou um elemento.");
}
}
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
}
}
|
C# ::: Dicas & Truques ::: Data e Hora |
Como usar a classe Calendar em suas aplicações C#Quantidade de visualizações: 12281 vezes |
A classe Calendar da plataforma .NET está presente no namespace System.Globalization. Esta é uma classe abstrata (não pode ser instanciada e serve somente como classe base para futuras implementações) que implementa a interface ICloneable. Veja sua posição na hierarquia de classes da plataforma .NET:System.Object System.Globalization.Calendar Um calendário divide o tempo em unidades, tais como semanas, meses e anos. O número, comprimento e início destas divisões variam de acordo com cada calendário. Qualquer momento no tempo pode ser representado como um conjunto de valores numéricos usando um calendário em particular. Por exemplo, um equinócio vernal ocorreu em (1999, 3, 20, 8, 46, 0, 0.0) no calendário Gregoriano (Gregorian calendar), ou seja, 20 de março de 1999 C.E às 8:46:00:0.0. Uma implementação de Calendar pode mapear cada data na faixa de um calendário específico para um conjunto similiar de valores numéricos, e DateTime pode mapear tais conjuntos de valores numéricos para uma representação textual usando informações de Calendar e DateTimeFormatInfo. A representação textual pode ser dependente de cultura (culture-sensitive) (por exemplo, "8:46 AM March 20th 1999 AD" para a cultura en-US) ou independente de cultura (culture-insensitive) (por exemplo, "1999-03-20T08:46:00" no formato ISO 8601). Uma implementação de Calendar pode definir uma ou mais eras. A classe Calendar identifica tais eras como uma enumeração de inteiros na qual a era atual (CurrentEra) tem o valor 0. Para compensar a diferença entre o ano do calendário e a tempo real que a terra se movimenta ao redor do sol ou o tempo real que a lua se movimenta ao redor da terra, um ano bissexto tem um número diferente de dias que um ano padrão de um calendário. Cada implementação de Calendar define anos bissextos de forma diferenciada. Para fins de consistência, a primeira unidade de cada intervalo (por exemplo, o primeiro mês) recebe o valor 1. O trecho de código abaixo mostra como obter o calendário padrão não dependente de cultura e então exibir o valor numérico referente ao dia do mês:
static void Main(string[] args){
// using System.Globalization;
// obtém uma instância da implementação padrão de
// Calendar não dependente da cultura local
Calendar c = CultureInfo.InvariantCulture.Calendar;
// obtém a data e hora atual
DateTime agora = DateTime.Now;
// obtém o dia do ano
int dia = c.GetDayOfMonth(agora);
Console.WriteLine("O dia do mês é: {0}", dia);
// pausa o programa
Console.ReadKey();
}
O namespace System.Globalization inclui as seguintes implementações de Calendar: GregorianCalendar, HebrewCalendar, HijriCalendar, JapaneseCalendar, JulianCalendar, KoreanCalendar, TaiwanCalendar e ThaiBuddhistCalendar. |
Python ::: Pillow Python Imaging Library ::: Image |
Como abrir uma imagem no Pillow do Python usando a função open() do objeto ImageQuantidade de visualizações: 2070 vezes |
|
A função open() do objeto Image da biblioteca Pilow do Python é muito útil quando queremos abrir uma imagem para fins de edição ou exibição. Em sua forma mais simples este método exige apenas o caminho e nome da imagem e retorna um objeto PIL Image. Veja um trecho de código no qual usamos a função open() para abrir a imagem e, em seguida, usamos a função show() para exibir a imagem no visualizador de imagens padrão definido em nossa máquina:
# vamos importar a biblioteca Pilow
from PIL import Image
# método principal
def main():
# vamos abrir uma imagem
imagem = Image.open("Mulher.png")
# vamos exibir a imagem no visualizador padrão
imagem.show("Foto a partir do Pilow")
if __name__== "__main__":
main()
Note que o método show() do objeto Image é usado, na maioria das vezes, com o propósito de depuração de nossos códigos, já que ele cria um arquivo temporário e o envia ao visualizador padrão. Dessa forma nós podemos editar a imagem na memória e enviar para o visualizador todas as vezes que quisermos ver algum resultado. |
PHP ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia da semana para uma determinada data em PHP usando as funções mktime(), date() e o sinalizador "l"Quantidade de visualizações: 1 vezes |
|
Nesta dica mostrarei como podemos combinar as funções mktime(), date() e o sinalizador "l" para obtermos o nome do dia da semana para uma determinada data. Note o uso da função mktime() para construir a data 20/06/1980. Veja o código completo para o exemplo:
<?php
// vamos obter o dia da semana para uma
// determinada data - mês/dia/ano
$timestamp = mktime(0, 0, 0, 6, 20, 1980);
echo "O dia da semana é: " . date('l', $timestamp);
?>
Ao executar este código PHP nós teremos o seguinte resultado: O dia da semana é: Saturday |
C ::: Dicas & Truques ::: Data e Hora |
Como formatar datas e horas em C usando a função strftime() da linguagem CQuantidade de visualizações: 9468 vezes |
A função strftime() pode ser usada quando queremos formatar valores de datas e horas em C. Esta função, presente no header <time.h>, possui a seguinte assinatura:size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr); O parâmetro strDest é um ponteiro para uma matriz de caracteres que receberá uma string contendo a data e/ou hora formatada. O parâmetro maxsize é a quantidade de caracteres que serão copiados para a matriz de caracteres alvo da operação. O parâmetro format contém os especificadores que serão substituídos durante a formatação. Finalmente, timeptr é um ponteiro para uma estrutura tm contendo as informações de data e hora. O retorno da função é a quantidade de caracteres copiados para a matriz strDest. Veja um trecho de código no qual formatamos e exibimos a data atual no formato longo e de acordo com as configurações regionais para o Português Brasileiro:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <locale.h>
int main(int argc, char *argv[]){
// vamos definir a localização para o Português do Brasil
setlocale(LC_ALL, "Portuguese_Brazil");
time_t data_hora_segundos; // guarda os segundos deste 01/01/1970
struct tm *timeinfo; // declara uma estrutura tm
time(&data_hora_segundos); // preenche a variável data_hora_segundos
// preenche a estrutura timeinfo
timeinfo = localtime(&data_hora_segundos);
// um buffer para receber a data formatada
char data_formatada[80];
// vamos formatar
strftime(data_formatada, 80, "%A, %d de %B de %Y", timeinfo);
// vamos exibir o resultado
printf("Resultado da formatação: %s\n\n", data_formatada);
system("PAUSE");
return 0;
}
O resultado da execução deste código será algo como: Resultado da formatação: segunda-feira, 23 de abril de 2011 Veja abaixo os especificadores de formatação usadas pela função strftime(): %a - Nome do dia da semana na forma abreviada. Ex: seg. %A - Nome completo do dia da semana. Ex: terça-feira. %b - Nome do mês abreviado. Ex: abr. %B - Nome completo do dia do mês. Ex: abril %c - Representação de data e hora. Ex: 23/4/2011 23:00:37. %d - Dia do mês (01-31). %H - Hora no formato 24 horas (00-23). %I - Hora no formato 12 horas (01-12). %j - Dia do ano (001-366). %m - Mês como um número decimal (01-12). %M - Minutos (00-59). %p - AM ou PM. %S - Segundos (00-61). %U - Número da semana tendo o primeiro domingo como o primeiro dia da primeira semana do ano (00-53). %w - Dia da semana como um número decimal tendo o domingo como 0 (0-6). %W - Número da semana tendo a primeira segunda-feira como o primeiro dia da primeira semana do ano (00-53). %x - Representação de data. Ex: 23/4/2011. %X - Representação de horas. Ex: 23:00:37. %y - Ano de dois dígitos (00-99). %Y - Ano com quatro dígitos. %Z - Nome ou abreviação do fuso horário. %% - Um sinal de porcentagem. |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
|
Java - Estruturas de Dados em Java - Como inserir nós no final de uma lista singularmente ligada em Java JavaScript - Validação de formulários em JavaScript - Como validar um formulário contendo usuário e senha em JavaScript |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





