🎥
Programar o primeiro UCS: atributo para módulos de lavatório suspensos
Requisitos:
CABINET VISION com edição de UCS (User Created Standards)
Primeiro episódio da série UCS para principiantes: explica o que é um UCS e escreve-se de raiz um código que cria o atributo Floating Vanity? nos módulos de lavatório. Quando ativado, o atributo elimina as peças de rodapé, eleva o módulo e, com Conditions no Construction Method, ajusta o nailer, o scribe e o material das costas.
Passo a passo
- ▶ 0:51 Perceber o conceito: um UCS (User Created Standard) é código personalizado que automatiza ou controla uma ou várias definições de uma só vez.
- ▶ 1:17 Ver a alternativa manual: duplo clique no módulo de lavatório, Properties > toe, recuo frontal maior do que a profundidade do módulo e altura do rodapé de 12 polegadas (≈ 305 mm); guardar com Save > Save As no catálogo.
- ▶ 2:33 Ver o resultado pretendido: com o UCS ativo, selecionar os módulos de lavatório e pôr o atributo Floating Vanity? em True na coluna de atributos para os converter todos.
- ▶ 5:39 Em Utilities > User Created Standards, criar um UCS novo no wizard, mudar a coluna Part para Operation, clicar em Finish e dar-lhe o nome "Floating Vanity".
- ▶ 7:00 Selecionar o UCS, abrir Code e apagar o código gerado pelo wizard para começar do zero.
- ▶ 9:17 Escrever o rascunho como notas iniciadas por ponto e vírgula (o texto fica verde e é ignorado), evitando erros ao guardar e Return.
- ▶ 13:12 Descobrir os parâmetros: duplo clique num módulo, abrir o Object Tree (canto inferior esquerdo, junto ao ícone da casa) e alterar manualmente altura e recuo do rodapé para revelar TOEH e TOER.
- ▶ 15:26 Em alternativa, abrir Help > Help Topics, pesquisar "System Parameters" e usar Ctrl+F para localizar TOEH e TOER.
- ▶ 18:24 Iniciar o código com FOR EACH Cab Assembly e obter a classe dos lavatórios em Functions and Operators (secção de classes de objetos), copiando o código assembly class vanity.
- ▶ 21:52 Criar a condição IF cab.class == <classe vanity> THEN … END IF e, dentro dela, IF FLOATINGVANITY == null THEN para criar o atributo apenas se não existir.
- ▶ 24:50 Definir o atributo: FLOATINGVANITY<bool> = 0 (falso por omissão), style = 1 (visível na barra lateral) e description = 'Floating Vanity?' entre plicas.
- ▶ 28:45 Guardar, clicar em Return, inserir um módulo novo do catálogo e confirmar que o atributo alterna entre True e False; se der erro, verificar o uso de == (comparação) vs = (atribuição).
- ▶ 30:29 Para o estado falso, escrever IF FLOATINGVANITY == 0 THEN TOER = _CV:240 e TOEH = _CV:238, para seguir as perguntas do Construction Method em vez de valores fixos.
- ▶ 34:49 Encontrar os números das perguntas: nas propriedades do módulo, Construction Method > Modify, secção toe kick (altura = 238, recuo = 240).
- ▶ 37:50 Para o estado verdadeiro, IF FLOATINGVANITY == 1 THEN TOEH = 12 (ou 300mm) e TOER = DZ + 1, usando a profundidade do módulo (DZ) para eliminar sempre as peças de rodapé.
- ▶ 42:16 Confirmar que cada IF tem o seu END IF e ativar a coluna Pre-Build do UCS para que o comportamento True/False fique correto.
- ▶ 44:27 Testar com o Construction Method: Modify for this assembly, mudar a altura do rodapé (ex.: 10) e confirmar que o estado falso acompanha o padrão.
- ▶ 46:39 No Construction Method, em Conditions, criar a condição F-VANITY com FLOATINGVANITY==1 e associá-la ao top nailer (não existe) e ao back scribe do Unfinished Back (0).
- ▶ 49:37 Em Material > Modify for this assembly > Case > Interior > Unfinished Back, usar o material do módulo-pai para costas mais grossas (5/8") e testar True/False.
💡 Dicas
- Documentar o UCS com notas precedidas de ponto e vírgula, se necessário na língua nativa, para o rever e editar mais tarde com facilidade.
- No estado por omissão, chamar as perguntas do Construction Method com _CV:<número> em vez de valores fixos, para que o projetista mantenha o controlo em casos especiais.
- Usar == para testar uma condição e = para atribuir um valor; os erros mais comuns vêm desta confusão.
- Acrescentar mm a seguir ao número (ex.: 300mm) para indicar valores métricos quando a instalação está em polegadas.
- Equilibrar um catálogo de objetos bem desenvolvido com UCS: demasiados atributos tornam a coluna de atributos difícil de usar.
- Para usar as Conditions em todos os projetos, configurá-las ao nível de sistema ou guardá-las com Save as System.
- Escrever as palavras-chave (FOR EACH, IF, THEN, END IF) em maiúsculas é opcional, mas facilita a leitura do código.
Vídeo
Artigo baseado no webinar do canal Planit Canada (YouTube). Texto: Bitmind.