Dynamo
Primer for v2.0
Português (Brasil)
Português (Brasil)
  • Sobre
  • Introdução
    • O que é o Dynamo e como ele funciona?
    • Guia do Usuário do Primer, Comunidade e plataforma do Dynamo
  • Configuração do Dynamo
  • Interface do usuário
    • Área de trabalho
    • Biblioteca
  • Nós e fios
  • Nós e conceitos essenciais
    • Índice de nós
    • Geometria do projeto computacional
      • Visão geral da geometria
      • Vetor, plano e sistema de coordenadas
      • Pontos
      • Curvas
      • Superfícies
      • Sólidos
      • Malhas
    • Os blocos de construção de programas
      • Dados
      • Matemática
      • Lógica
      • Sequências de caracteres
      • Cor
    • Projetar com listas
      • O que é uma lista?
      • Trabalhar com listas
      • Listas de listas
      • Listas n-dimensionais
    • Dicionários no Dynamo
      • O que é um dicionário
      • Nós de dicionário
      • Dicionários em blocos de código
      • Casos de uso do Revit
  • Nós e pacotes personalizados
    • Nós personalizados
      • Introdução ao nó personalizado
      • Criar um nó personalizado
      • Publicar na biblioteca
    • Pacotes
      • Introdução aos pacotes
      • Estudo de caso do pacote – Kit de ferramentas de malha
      • Desenvolver um pacote
      • Publicar um pacote
      • Importação sem toque
  • Dynamo para Revit
    • A conexão do Revit
    • Selecionar
    • Editar
    • Criar
    • Personalizar
    • Documentação
  • Dynamo for Civil 3D
    • Conexão do Civil 3D
    • Guia de Introdução
    • Biblioteca de nós
    • Exemplos de fluxos de trabalho
      • Estradas
        • Posicionamento de postes de luz
      • Terra
        • Posicionamento de serviço
      • Utilitários
        • Renomear estruturas
      • Ferrovia
        • Estrutura da altura livre
      • Levantamento topográfico
        • Gerenciamento de grupo de pontos
    • Tópicos avançados
      • Vinculação de objetos
      • Python e Civil 3D
    • Dynamo Player
    • Pacotes úteis
    • Recursos
  • Dynamo no Forma Beta
    • Configurar o Dynamo Player no Forma
    • Adicionar e compartilhar gráficos no Dynamo Player
    • Executar gráficos no Dynamo Player
    • O Dynamo calcula diferenças de serviço com o Dynamo Desktop
  • Codificação no Dynamo
    • Blocos de código e DesignScript
      • O que é um bloco de código
      • Sintaxe do DesignScript
      • Abreviação
      • Funções
    • Geometria com o DesignScript
      • Conceitos básicos da geometria DesignScript
      • Primitivas geométricas
      • Matemática de vetores
      • Curvas: interpoladas e pontos de controle
      • Transformações de conversão, de rotação e outras
      • Superfícies: interpoladas, pontos de controle, elevação, revolução
      • Parametrização geométrica
      • Interseção e aparar
      • Booleanos geométricos
      • Geradores de pontos do Python
    • Python
      • Nós do Python
      • Python e Revit
      • Configurar seu próprio modelo Python
    • Alterações de linguagem
  • Práticas recomendadas
    • Estratégias de gráfico
    • Estratégias de script
    • Referência dos scripts
    • Gerenciar o programa
    • Trabalhar de forma eficiente com grandes conjuntos de dados no Dynamo
  • Exemplos de fluxos de trabalho
    • Fluxos de trabalho de introdução
      • Vaso paramétrico
      • Pontos de atração
    • Índice conceitual
  • Manual do Desenvolvedor
    • Compilar o Dynamo da origem
      • Compilar o DynamoRevit da origem
      • Gerenciar e atualizar dependências no Dynamo
    • Desenvolvimento do Dynamo
      • Guia de Introdução
      • Estudo de caso sem toque – Nó de grade
      • Executar scripts Python em nós Sem toque (C#)
      • Aprofundar o conhecimento sobre o nó Sem toque
      • Personalização avançada de nós do Dynamo
      • Usar tipos COM (interoperabilidade) em pacotes do Dynamo
      • Estudo de caso do NodeModel – Interface do usuário personalizada
      • Atualizar os pacotes e as bibliotecas do Dynamo para Dynamo 2.x
      • Atualizar os pacotes e as bibliotecas do Dynamo para Dynamo 3.x
      • Extensões
      • Definir a organização de pacotes personalizados no Dynamo 2.0 e superior
      • Interface de linha de comando do Dynamo
      • Integração do Dynamo
      • Desenvolvimento do Dynamo para Revit
      • Publicar um pacote
      • Compilar um pacote do Visual Studio
      • Extensões como pacotes
    • Solicitações de extração
    • Expectativas de testes
    • Exemplos
  • Apêndice
    • Perguntas frequentes
    • Programação visual e Dynamo
    • Recursos
    • Notas de versão
    • Pacotes úteis
    • Arquivos de exemplo
    • Mapa de integração do hospedeiro
    • Fazer o download do PDF
    • Atalhos de teclado do Dynamo
Powered by GitBook
On this page
  • Objetivo
  • Principais conceitos
  • Compatibilidade de versão
  • Conjunto de dados
  • Solução
  • Obter a geometria principal de distribuição
  • Obter a geometria da linha do lote
  • Gerar pontos de inserção
  • Obter os pontos de conexão
  • Criar objetos
  • Resultado
  • Bônus: ativar a colocação sequencial
  • Ideias
Edit on GitHub
Export as PDF
  1. Dynamo for Civil 3D
  2. Exemplos de fluxos de trabalho
  3. Terra

Posicionamento de serviço

PreviousTerraNextUtilitários

Last updated 1 month ago

O projeto de engenharia de uma construção habitacional típica envolve o trabalho com várias concessionárias subterrâneas, como esgoto sanitário, drenagem de águas pluviais, água potável ou outras. Este exemplo demonstrará como o Dynamo pode ser usado para desenhar as conexões de serviço de uma linha principal de distribuição até um determinada subdivisão de propriedade (por exemplo, um lote). É comum que todos os lotes exijam uma conexão de serviço, o que introduz um trabalho tedioso significativo para colocar todos os serviços. O Dynamo pode acelerar o processo desenhando automaticamente a geometria necessária com precisão, além de fornecer entradas flexíveis que podem ser ajustadas para se adequarem às normas de órgãos locais.

Objetivo

Principais conceitos

  • Usar o nó Selecionar objeto para a entrada do usuário

  • Trabalhar com sistemas de coordenadas

  • Usar operações geométricas como Geometry.DistanceTo e Geometry.ClosestPointTo

  • Criar referências de bloco

  • Controlar as configurações de vinculação de objetos

Compatibilidade de versão

Este gráfico será executado no Civil 3D 2020 e versões superiores.

Conjunto de dados

Comece fazendo o download dos arquivos de amostra abaixo e, em seguida, abrindo o arquivo DWG e o gráfico do Dynamo.

Solução

Apresentamos a seguir uma visão geral da lógica no gráfico.

  1. Obter a geometria da curva para a linha principal de distribuição

  2. Obter a geometria da curva para uma linha do lote selecionada pelo usuário, revertendo se necessário

  3. Gerar os pontos de inserção para os medidores de serviço

  4. Obter os pontos na linha principal de distribuição que estão mais próximos das localizações do medidor de serviço

  5. Criar referências de bloco e linhas no espaço do modelo

Vamos começar

Obter a geometria principal de distribuição

Nossa primeira etapa é obter a geometria da linha de distribuição principal no Dynamo. Em vez de selecionar linhas individuais ou polilinhas, vamos obter todos os objetos em uma determinada camada e uni-los como uma PolyCurve do Dynamo.

Se a geometria da curva do Dynamo for nova para você, veja a seção Curvas.

Obter a geometria da linha do lote

Em seguida, precisamos colocar a geometria de uma linha do lote selecionada no Dynamo para que possamos trabalhar com ela. A ferramenta certa para o trabalho é o nó Selecionar objeto, que permite que o usuário do gráfico selecione um objeto específico no Civil 3D.

Também precisamos lidar com um possível problema que surja. A linha do lote tem um ponto inicial e um ponto final, o que significa que ela tem uma direção. Para que o gráfico produza resultados consistentes, precisamos que todas as linhas do lote tenham uma direção consistente. Podemos levar em conta essa condição diretamente na lógica do gráfico, o que torna o gráfico mais resiliente.

  1. Obtenha os pontos inicial e final da linha do lote.

  2. Meça a distância de cada ponto até a linha principal de distribuição e, em seguida, descubra qual distância é maior.

  3. O resultado desejado é que o ponto inicial da linha seja o mais próximo da linha principal de distribuição. Se esse não for o caso, invertemos a direção da linha do lote. Caso contrário, simplesmente retornaremos a linha do lote original.

Gerar pontos de inserção

É hora de descobrir onde os medidores de serviço serão colocados. Normalmente, a colocação é determinada pelos requisitos de órgãos locais; portanto, forneceremos valores de entrada que podem ser alterados para atender a várias condições. Vamos usar um Sistema de coordenadas ao longo da linha do lote como referência para criar os pontos. Isso torna muito fácil a definição de deslocamentos relativos à linha do lote, não importando sua orientação.

Se os sistemas de coordenadas forem algo novo para você, veja a seção Vetor, plano e sistema de coordenadas.

Obter os pontos de conexão

Agora precisamos obter os pontos na linha principal de distribuição que estão mais próximos da localizações do medidor de serviço Isso nos permitirá desenhar as conexões de serviço no espaço do modelo para que elas sempre sejam perpendiculares à linha principal de distribuição. O nó Geometry.ClosestPointTo é a solução perfeita.

  1. Essa é a PolyCurve da linha principal de distribuição

  2. Esses são os pontos de inserção do medidor de serviço

Criar objetos

A última etapa é efetivamente criar objetos no espaço do modelo. Usaremos os pontos de inserção que geramos anteriormente para criar referências de bloco e, em seguida, usaremos os pontos na linha principal de distribuição para desenhar linhas para as conexões de serviço.

Resultado

Quando você executar o gráfico, deverá ver novas referências de bloco e linhas de conexão de serviço no espaço do modelo. Tente alterar algumas das entradas e veja como tudo é atualizado automaticamente.

Bônus: ativar a colocação sequencial

Você pode observar que, após colocar os objetos para uma linha do lote, selecionar uma linha do lote diferente resulta na “movimentação” dos objetos.

Esse é o comportamento padrão do Dynamo e é muito útil em muitos casos. No entanto, você pode achar conveniente colocar várias conexões de serviço sequencialmente e fazer com que o Dynamo crie novos objetos a cada execução em vez de modificar os originais. É possível controlar esse comportamento ao alterar as configurações de vinculação de objetos.

Veja a seção Vinculação de objetos para obter mais informações.

Alterar essa configuração forçará o Dynamo a “esquecer” os objetos que cria a cada execução. Veja a seguir um exemplo de como executar o gráfico com a vinculação de objetos desativada usando o Reprodutor do Dynamo.

Se o Reprodutor do Dynamo for algo novo para você, veja a seção Dynamo Player.

Ideias

Veja a seguir algumas ideias sobre como você pode expandir os recursos desse gráfico.

Coloque várias conexões de serviço simultaneamente em vez de selecionar cada linha do lote.

Ajuste as entradas para colocar limpeza de esgoto em vez de medidores de serviço de água.

Adicione um botão de alternância para permitir a colocação de uma única conexão de serviço em um lado específico da linha do lote em vez de em ambos os lados.

Colocar referências de bloco do medidor de serviço de água em deslocamentos especificados de uma linha do lote e desenhar uma linha para cada conexão de serviço perpendicular à linha principal de distribuição.

Missão cumprida.

🎯
🎉
108KB
Land_ServicePlacement.dyn
842KB
Land_ServicePlacement.dwg
Obtenção dos objetos do Civil 3D e união de tudo em uma única PolyCurve
Seleção de uma linha do lote e certificação de que ela tenha a direção correta
Criação de pontos de inserção para os medidores de serviço
Obtenção de pontos perpendiculares na linha principal de distribuição
Ajuste dos parâmetros de entrada no Dynamo e visualização imediata dos resultados no Civil 3D
Comportamento quando a vinculação de objetos está ativada
Configurações da vinculação de objetos do Dynamo
Execução do gráfico usando o Reprodutor do Dynamo e visualização dos resultados no Civil 3D