SOLIDOS API - SolidosCreateNode(parentHandle, nodeType, dictionary)
SolidosCreateNode(parentHandle, nodeType, dictionary) - Cria um item do SOLIDOS
- Parâmetros de entrada
- parentHandle (Dynamo: String, Visual Lisp: Entity Name) - o identificador do item pai em que o novo item será inserido
- nodeType (String) - o tipo de item a criar, pode ser:
- Redes
- DrainageNetwork - para criar rede de drenagem
- SewerNetwork - para criar rede de esgoto
- GenericNetwork - para criar rede genérica
- PressureNetwork - para criar rede pressurizada
- Dispositivos
- Device - para criar dispositivos
É obrigatório fornecer ao menos as propriedades:
- Section (Dynamo: String, Visual Lisp: Entity Name) - o indentificador da seção típica a ser usado para criar o dispositivo
- Seções típicas
- PartSize - para criar seções típicas de dispositivos
É obrigatório fornecer ao menos as propriedades:
- Constructor (Dynamo: String, Visual Lisp: Entity Name) - o indentificador do modelador a ser usado para criar a seção típica
- Interferências
- Interference - para criar interferências de dispositivos
É obrigatório fornecer ao menos as propriedades:
- Device1 (Dynamo: String, Visual Lisp: Entity Name) - o indentificador do dispositivo 1
- Device2 (Dynamo: String, Visual Lisp: Entity Name) - o indentificador do dispositivo 2
- Projeções
- Projection - para criar projeções de dispositivos
É obrigatório fornecer ao menos as propriedades:
- PView (Dynamo: String, Visual Lisp: Entity Name) - o indentificador do profile view ou section view onde projetar o dispositivo
- Bacias
- PointCatchment - para criar bacia pontual
- LongCatchment - para criar bacia longitudinal
- Grupos de Bacias
- CatchmentGroup - para criar grupo de bacias
- Setores de consumo
- Sector - para criar setor de consumo
- Tabelas
- DeviceTable - para criar tabela de dispositivos
- CatchmentTable - para criar tabela de bacias
- SectorTable - para criar tabela de setores de consumo
- NetworkTable - para criar tabela de redes
- Relatórios
- DeviceReport - para criar relatórios de dispositivos
- CatchmentReport - para criar relatórios de bacias
- SectorReport - para criar relatórios de setores de consumo
- NetworkReport - para criar relatórios de redes
- Labels
- Label - para criar labels em dispositivos, bacias, setores e projeções
- Estilos
- Dispositivos
- Tabelas e Relatórios
- DeviceTableStyle - para criar estilo de tabela ou relatório de dispositivos
- NetworkTableStyle - para criar estilo de tabela ou relatório de redes
- CatchmentTableStyle - para criar estilo de tabela ou relatório de bacias de contribuição
- SectorTableStyle - para criar estilo de tabela ou relatório de setores de consumo
- Setor de Consumo
- SectorStyle - para criar estilo de setor de consumo
- Bacia de Contribuição
- CatchmentStyle - para criar estilo de bacia de contribuição
- Interferências
- InterferenceStyle - para criar estilo de interferência
- Regras
- PointRule - para criar regras aplicáveis a dispositivos pontuais genéricos
- LinearRule - para criar regras aplicáveis a dispositivos lineares genéricos
- LongRule - para criar regras aplicáveis a dispositivos longitudinais genéricos
- GravityPointRule - para criar regras aplicáveis a dispositivos pontuais de redes de gravidade
- GravityLinearRule - para criar regras aplicáveis a dispositivos lineares de redes de gravidade
- GravityLongRule - para criar regras aplicáveis a dispositivos longitudinais de redes de gravidade
- PressurePointRule - para criar regras aplicáveis a dispositivos pontuais de redes pressurizadas
- PressureLinearRule - para criar regras aplicáveis a dispositivos lineares de redes pressurizadas
- PointConnectRule - para criar regras aplicáveis a dispositivos pontuais conectados
- Lista de Materiais
- dictionary (Dictionary) - um dicionário (chave, valor), onde:
- chave - uma string que representa o nome da propriedade a ser definida
- valor - o valor a ser atribuido a propriedade
- Saída (string) - a handle (string) do item criado
- Erros que podem ocorrer
- "InvalidParentHandle" - a parentHandle informada, não é válida, ou não é de um item do SOLIDOS
- "InvalidNodeType" - o tipo de item informado não é válido para inserir no item pai
- "NoDictionary" - o dicionário informado é nulo
- "IsShortcutRef" - o item pai é uma referência externa
- "CannotAddFolder" - não pode adicionar pasta no item pai
- "BadSectionId" - ao criar o dispositivo, não informou a handle da seção típica, ou é inválida
- "BadViewId" - ao criar a projeção de dispositivo, não informou a handle do profileview/sectionview, ou é inválida
- "BadDevice1Id" - ao criar a interferência de dispositivo, não informou a handle do dispositivo 1, ou é inválida
- "BadDevice2Id" - ao criar a interferência de dispositivo, não informou a handle do dispositivo 2, ou é inválida
- "CantAddLabel" - caso o item pai não possa ter label
Exemplo de uso no Visual Lisp:
(setq partLists (SolidosGetRootNode "PartsLists"))
propertiesList (list
"Name" "LISTA DE MATERIAL DRENAGEM"
"Description" "Lista de material aplicável a redes de drenagem")
partsList (SolidosCreateNode partLists "PartsList" propertiesList ) )
;<Entity name: 362es7c0150>
Exemplo de uso no Dynamo:
partLists = SolidosAPI.SolidosGetRootNode("PartsLists");
propertiesList = Dictionary.ByKeysValues(
["Name", "Description"],
["LISTA DE MATERIAL DRENAGEM", "Description" "Lista de material aplicável a redes de drenagem"]);
partsList = SolidosAPI.SolidosCreateNode(partLists, "PartsList", propertiesList);
#"AFD54"