![]() |
|
|
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 |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como remover espaços em excesso em uma string Java usando expressões regularesQuantidade de visualizações: 1 vezes |
|
Em algumas situações nós precisamos remover os espaços em excesso de um texto ou frase. Há várias formas de se realizar esta tarefa, e uma delas é por meio do uso de expressões regulares. Veja um trecho de código no qual usamos o método replaceAll() da classe Matcher para substituir dois ou mais espaços por apenas um espaço:
package arquivodecodigos;
// Este exemplo mostra como remover todos os espaços
// duplicados de uma string
import java.util.regex.*;
public class Estudos{
public static void main(String[] args){
String frase = "Programar em Java e bom";
System.out.println("Com espaços em excesso: " + frase);
frase = removerEspacosDuplicados(frase);
System.out.println("Sem espaços em excesso: " + frase);
System.exit(0);
}
public static String removerEspacosDuplicados(String str){
String patternStr = "\\s+";
String replaceStr = " ";
Pattern pattern = Pattern.compile(patternStr);
Matcher matcher = pattern.matcher(str);
return matcher.replaceAll(replaceStr);
}
}
Ao executarmos este código Java nós teremos o seguinte resultado: Com espaços em excesso: Programar em Java é bom Sem espaços em excesso: Programar em Java é bom |
C ::: Dicas & Truques ::: Matemática e Estatística |
Como elevar uma base a um determinado expoente usando a função pow() da linguagem CQuantidade de visualizações: 4296 vezes |
Em algumas situações nós precisamos efetuar cálculos de potenciação em C, ou seja, elevar um número (uma base) a um determinado expoente e obter sua potência. Veja a figura a seguir:![]() Veja que aqui o valor 5 foi elevado ao cubo, ou seja, ao expoente 3 e obtemos como resultado sua potência: 125. A linguagem C nos fornece a função pow(), presente no header math.h que recebe como argumentos a base e o expoente e nos retorna a potência (como um valor double). Veja um exemplo de seu uso no código abaixo:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){
int base = 4;
int expoente = 5;
double potencia = pow(4, 5);
printf("A base %d elevada ao expoente %d é igual à potência %f\n\n",
base, expoente, potencia);
system("PAUSE");
return 0;
}
Ao executarmos este código C nós teremos o seguinte resultado: A base 4 elevada ao expoente 5 é igual à potência 1024.000000 Note que a função pow() da linguagem C retorna um valor double. |
Java ::: Classes, Controles e Componentes ::: JSplitPane |
Java Swing - Como usar a classe JSplitPane para dividir o espaço ocupado pelos componentes de suas aplicações Java SwingQuantidade de visualizações: 11178 vezes |
A classe JSplitPane é usada quando precisamos controlar o espaço ocupado por dois ou mais componentes. Objetos desta classe podem ser redimensionados, de modo a aumentar ou diminuir a área ocupada por um dos componentes. Veja a posição desta classe na hierarquia de classes Java:
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JSplitPane
No trecho de código abaixo você verá como é possível dividir a área ocupada por duas áreas de texto (JTextArea). Execute a aplicação e experimente aumentar ou diminuir o espaço ocupado pelos componentes:
import javax.swing.*;
import java.awt.*;
public class Estudos extends JFrame{
public Estudos(){
super("Como usar a classe JSplitPane");
// primeira área de texto
JTextArea textArea1 = new JTextArea(5, 30);
textArea1.setText("Sou a área de texto 1.");
JScrollPane sPane1 = new JScrollPane(textArea1);
// segunda área de texto
JTextArea textArea2 = new JTextArea(5, 30);
textArea2.setText("Sou a área de texto 2.");
JScrollPane sPane2 = new JScrollPane(textArea2);
// Cria o JSplitPane
JSplitPane splitPane = new JSplitPane(
JSplitPane.HORIZONTAL_SPLIT, sPane1, sPane2);
add(splitPane, BorderLayout.CENTER);
setSize(300, 150);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Ao executar esta aplicação Java Swing nós teremos o seguinte resultado: ![]() |
PHP ::: Fundamentos da Linguagem ::: Tipos de Dados |
PHP para iniciantes - Como usar o tipo de dados float do PHPQuantidade de visualizações: 13240 vezes |
|
Números de ponto-flutuante, ou float (também conhecido com double ou real) representam números com casas decimais. Assim como o tipo integer, a faixa de limite deste tipo depende da arquitetura da máquina na qual o PHP está sendo executado. A faixa de números de ponto-flutuante em PHP equivale à faixa do tipo de dados double de seu compilador C. Geralmente esta faixa está entre 1.7E-308 e 1.7E+308 com 15 dígitos de precisão. Se precisarmos de uma precisão ainda maior, podemos usar as extensões BC e GMP. O PHP reconhece números de ponto-flutuante escritos de duas formas diferentes. Eis a que usamos mais comumente: 3.14 0.017 -7.1 E a forma usando notação científica: 0.314E1 // 0.314*101, ou 3.14 17.0E-3 // 17.0*10-3, ou 0.017 Valores de ponto-flutuante são apenas representações aproximadas de números. Por exemplo, em muitos sistemas, 3,5 é na verdade representado como 3,4999999999. Isso quer dizer que devemos ter cuidado ao comparar valores de ponto-flutuante usando ==. O mais correto é comparar usando várias casas decimais:
if(int($a * 1000) == int($b * 1000)){
// comparação baseada em três casas decimais
}
Se quisermos verificar se uma variável é do tipo float, podemos usar as funções is_float() ou is_real(). Veja:
<?
$valor = 0.6;
if(is_float($valor)){
echo 'A variável $valor é do tipo float';
}
?>
|
AutoCAD .NET API C# ::: Dicas & Truques ::: Linha, Linhas, Comando LINE |
Como selecionar uma linha no AutoCAD e mostrar a equação da reta correspondente usando AutoCAD .NET C# APIQuantidade de visualizações: 877 vezes |
|
Em algumas situações nós queremos posicionar pontos ou outros desenhos em cima de uma linha, ou seja, em cima de uma reta. Uma das melhores formas de fazer isso é obtendo a equação reduzida da reta e usar as coordenadas x e y correspondentes. Nesta dica eu mostro como isso pode ser feito usando a AutoCAD .NET C# API. O primeiro passo é pedir para o usuário selecionar a linha na área de desenho do AutoCAD usando doc.Editor.GetEntity(). Em seguida nós obtemos as coordenadas iniciais e finais da linha usando as propriedades StartPoint e EndPoint do objeto AcadLine. Para finalizar nós calculamos a equação reduzida da reta e exibimos o resultado. Fique atento ao código que calcula o coeficiente angular e linear da reta. Considere o caso em que o coeficiente angular ou linear é igual a 0. Veja o código AutoCAD .NET API C# completo para o exemplo:
using System;
using Autodesk.AutoCAD.Runtime;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.EditorInput;
[assembly: CommandClass(typeof(PluginEstudos.Class1))]
namespace PluginEstudos {
public class Class1 {
[CommandMethod("estudos")]
public void Estudos() {
// vamos obter o documento atual
Document doc = Application.DocumentManager.MdiActiveDocument;
// vamos obter a base de dados
Database db = doc.Database;
// opções da seleção
PromptEntityOptions opcoes = new
PromptEntityOptions("\nSelecione uma linha: ");
// obtemos o resultado da seleção
PromptEntityResult resultado = doc.Editor.GetEntity(opcoes);
// a seleção foi feita com sucesso
if (resultado.Status != PromptStatus.OK) {
Application.ShowAlertDialog("Nenhum elemento selecionado.");
return;
}
// obtemos o id do objeto selecionado
ObjectId id_objeto = resultado.ObjectId;
// iniciamos uma transação
using (Transaction trans = db.TransactionManager.StartTransaction()) {
BlockTable tabela_blocos;
BlockTableRecord reg_tabela_blocos;
// obtemos a entidade selecionada
Entity ent = trans.GetObject(id_objeto, OpenMode.ForWrite) as Entity;
// a entidade selecionada é uma linha
if (ent is Line) {
Line linha = ent as Line;
// vamos obter o ponto inicial da linha
Point3d ponto_inicial = linha.StartPoint;
// vamos obter o ponto final da linha
Point3d ponto_final = linha.EndPoint;
string sinal = "+";
// vamos calcular o coeficiente angular da reta
Double m = (ponto_final.Y - ponto_inicial.Y) / (ponto_final.X - ponto_inicial.X);
// vamos calcular o coeficiente linear
double n = ponto_inicial.Y - (m * ponto_inicial.X);
// coeficiente linear menor que zero? O sinal será negativo
if (n < 0) {
sinal = "-";
n = n * -1;
}
// abre o model space para escrita
tabela_blocos = trans.GetObject(db.BlockTableId,
OpenMode.ForRead) as BlockTable;
reg_tabela_blocos = trans.GetObject(tabela_blocos[BlockTableRecord.ModelSpace],
OpenMode.ForWrite) as BlockTableRecord;
// vamos calcular as coordenadas x e y do ponto médio que
// será usado para posicionar o texto
double x = (ponto_inicial.X + ponto_final.X) / 2;
double y = (ponto_inicial.Y + ponto_final.Y) / 2;
// criamos um novo texto
DBText texto = new DBText();
texto.TextString = "y = " + m.ToString("0.00") + "x"
+ " " + sinal + " " + n.ToString("0.00");
texto.SetDatabaseDefaults();
texto.Height = 5;
texto.Position = new Point3d(x, y - texto.Height, 0);
// adicionamos o texto no desenho
reg_tabela_blocos.AppendEntity(texto);
trans.AddNewlyCreatedDBObject(texto, true);
}
else {
Application.ShowAlertDialog("Você não selecionou uma linha.");
}
// salvamos a transação
trans.Commit();
}
}
}
}
Ao executar este código AutoCAD .NET C# API e selecionar uma linha nós teremos um resultado parecido com: Selecione uma linha [Usuário seleciona a linha] [Mostra a equação reduzida da reta como um texto posicionado no ponto médio da linha] Como forma de testar ainda mais o código, defina um valor para o x e experimente plotar um ponto na área de desenho do AutoCAD. Você verá que o ponto cai exatamente em cima da linha, ou seja, da reta que a representa. |
Veja mais Dicas e truques de AutoCAD .NET API C# |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







