Solids Builder - Obter Propriedade
Obter Propriedade - obtém o valor das propriedades de dispositivos conectados a montante ou jusante do
dispositivo atual.
Também permite obter informações que não aparecem no quando de propriedades do construtor, tal como cota de topo de estruturas:
A atividade Obter Propriedade tem a seguintes propriedades:
- Nome - nome da variável
O nome da variável deve seguir as regras de nomenclatura
- Índice - aplica-se apenas para o caso de Pesquisar Dispositivo for Entradas, neste caso, informa o número da entrada a ser pesquisada
Note, o índice é baseado em ZERO.
- Tipo da Variável - informa o tipo da variável sendo criada.
Note, o tipo criado pode não ser compatível com o tipo do valor obtido e neste caso, causa um erro
- Nome do Parâmetro - nome da propriedade a ser pesquisado no dispositivo (veja o tópico Dispositivos / Categorização de Propriedades para encontrar os nomes das propriedades)
- Pesquisar Dispositivo - informa qual dispositivo deve ser pesquisado:
- Dispositivo - o próprio dispositivo que está sendo modelado
Neste caso, usa-se esta atividade para obter informações que não vieram no quadro de criação de propriedades,
tais como a cota de topo em poços de visita
- Entradas - pesquisa os dispositivos conectados à montante
usa-se para obter a cota de chegada de tubos no poço de visita, por exemplo
- Saída - pesquisa o dispositivo conectado à saída do dispositivo sendo modelado
usa-se para obter a esconsidade do tubo e aplicar o mesmo valor na ala, se o dispositivo sendo modelado é uma ala
Esta atividade deve ser usada em conjunto com a atividade TryCatch, pois ela pode causar os erros de execução:
- Em modo de edição - Ocorre durante a edição do modelo.
Durante a edição, não há um dispositivo sendo modelado, então não há como obter qualquer coisa
- Sem dispositivo de saída - ocorre quando a opção pesquisar Dispositivo é igual a Saída, mas não há um dispositivo conectado à saída
Por exemplo: é necessário verificar se a cota do tubo conectado à saída é compatível com a cota de fundo do poço de visita e ajustar a cota de fundo se
necessário
- O índice está fora do intervalo - ocorre quando a opção pesquisar Dispositivo é igual a Entradas, mas o Índice informado
é menor que ZERO, ou maior que o número de dispositivos conectados à entrada menos 1 (o primeiro índice vale zero)
- Não existe dispositivo de entrada neste índice - não deve ocorrer, pois o erro acima prevê esta situação.
No entanto, pode ocorrer algo inesperado, enfim
- Esta propriedade não existe - A propriedade informada no campo Nome do Parâmetro não existe no dispositivo
Exemplo: pesquisar "CD" (cota da geratriz interna inferior de jusante) em uma escada não faz sentido em escadas, somente em tubos
- A propriedade é de um tipo diferente - se a propriedade existir, pode ser que ela seja de um tipo diferente e este erro ocorre
Exemplo: pesquisar "PipeLines" em tubos retorna um número inteiro, mas se definir o campo Tipo da Variável para Ponto, causará este erro
pois não é possível converter um número inteiro para ponto
Considere o exemplo do início.
Este exemplo mostra o fluxograma típico para obter a menor elevação da geratriz inferior de jusante dos tubos conectados num poço de visita:
O algorítimo é bem simples:
- Criar uma variável para receber o valor mínimo a ser calculado (CDminimo), definir ela como infinito positivo
- Criar uma variável incrementável (nEntrada), para obter o enésimo dispositivo da montante, definir ela como ZERO
- Obter o valor de CDin do enésimo tubo
- Comparar CDin com CDminimo e se for menor,
- Salvar o valor de CDin em CDminimo
- Incrementar o índice e
- Voltar ao para o passo 3
Note que este looping não verifica o número de dispositivo na entrada e nem é necessário, pois no caso de tentar obter o valor de CDin com um
índice maior que o número de entradas, será disparado um erro, que é interceptado pela atividade TryCatch
No caso de querer obter uma propriedade do dispositivo atual, ou da saída, o looping não faz sentido.
Mas ainda deve-se usar o
TryCatch, pois outros erros podem acontecer.
Note ainda, que dependendo da propriedade que você quer obter, ela pode estar desatualizada no momento da chamada desta atividade.
O exemplo acima é o caso, pois a Elevação "CD" só é atualizada no momento em que o tubo for reconstruído.
Neste caso, será melhor obter o "EndPoint" do tubo e o "Diâmetro", pois estes em geral não se alteram durante a reconstrução do tubo e então calcular uma
variável:
CD = EndPoint.
Z - Diâmetro / 2
Onde:
CD = Elevação da geratriz inferior interna no final do tubo
EndPoint = coordenada do ponto final do tubo
Diâmetro = diâmetro nominal ou interno do tubo
Note ainda que para efeito de reconstrução do tubo, o eixo tridimensional deste está localizado no centro da seção transversal, por isso Diâmetro/2 na equação acima