• Este fórum é a tradução automática de www.cad3d.it/forum1 - a comunidade italiana de design. Vários termos não foram traduzidos corretamente.

Macro com forma de usuário para criação automática de um prisma a partir da superfície e da borda

Andrea Amedei

Guest
Bom dia.

São alguns dias que estou a comer a minha cabeça sem chegar à cabeça. Desde então Muitas vezes preciso executar o recurso sólido que você vê na imagem abaixo em vários buracos, eu estava pensando em criar uma macro que automatizou este processo.
o recurso sólido para construir é um "prisma" que tem como um esboço básico a projeção de um buraco e um círculo maior que tem um diâmetro n vezes maior do que o projetado (n parâmetro para definir). altura de extrusão também é um parâmetro.1679646998897.pngpara fazer isso, criei uma forma de usuário que você pode ver na figura abaixo. o usuário deve usar os 3 botões em seqüência (seleção de terreno, selecione orifício borda, criar sólido) e as duas caixas de texto da relação d/d e a altura de extrusão do perfil.1679647499974.pngEu admito que eu sei muito bem a programação vba no excel, mas eles estão realmente no início com catia. no momento o que eu fiz é o seguinte:
Botão "selecionar superfície"
privado sub select_surface_button_click_click()
memorando
dim myarray(0) como face
dim strreturn como string
dim part1 como parte
dim partdocument1 como documento de parte
dim myhybridbodies como híbridobodies

set myselection = catia.activedocument.selection
myselection.clear
eu.

strreturn = myselection.selectelement2(array("face"), "select a face:", false)
se strreturn = "normal" então
'vermelho preservar myarray(ubound(myarray) + 1)
set myarray(ubound(myarray)) = myselection.item2(1).value
terminar se
textbox1.text = myarray(0).name
eu.
end sub


botão "selecionar orifício de borda"
privado sub select_edge_button_click_click()
memorando
dim myarray(0) como borda
dim strreturn como string
dim part1 como parte
dim partdocument1 como documento de parte

set myselection = catia.activedocument.selection
myselection.clear
eu.

strreturn = myselection.selectelement2(array("edge"), "select a edge:", false)
se strreturn = "normal" então
'vermelho preservar myarray(ubound(myarray) + 1)
set myarray(ubound(myarray)) = myselection.item2(1).value
terminar se
textbox2.text = myarray(0).name
eu.
end sub
neste ponto, nas caixas de texto mais longas o nome (?) da superfície e borda selecionada aparece. pressionando "criar sólido" Eu gostaria que o software para construir:
1. um plano de esboço na superfície selecionada (usando o nome no formulário de usuário? )
2. da borda do furo selecionado deriva o diâmetro e seu centro
3. leva a borda do buraco e projeta-o naquele chão
4. cria um novo círculo com o mesmo centro da borda projetada e diâmetro d=n*d
5. sai do esboço
6. extrusar altura definida no formulário de usuário
7. desmarque tudo e limpe toda a forma de usuário para uma nova operação

Espero que alguém me possa ajudar, mesmo com o registro macro, não consigo entender como funciona o programa.

saudações,

Andrea
 
Eu não posso ajudá-lo na programação, mas para alcançar o prisma como você deseja, uma das maneiras possíveis é esta:

1) você tem superfície
2) você tem o diâmetro (neste caso superior à superfície)
3) receita o centro do diâmetro (ponto de características/tipo de ponto/círculo. ..centre
4) criar o esboço usando como chão a superfície
5) dentro do projeto do esboço o círculo (menu/insert/operação/geometria 3d/elementos do projeto 3d
6) colocar uma restrição ao diâmetro (ele lhe dará uma quota de referência em parênteses)
7) Projetos em modo de construção o ponto
8) use o ponto para construir o diâmetro externo
9) impor a restrição do diâmetro e alterar a fórmula (direita/modificar a fórmula, selecionar a quota da restrição e multiplicar para o valor n
10) sair do esboço e gerar prisma

das receitas fórmulas os nomes necessários para definir a programação

Avisa-me.

Olá.
 

Anexos

  • Capture_001.jpg
    Capture_001.jpg
    129.2 KB · Visualizações: 2
  • Part1.CATPart.zip
    Part1.CATPart.zip
    34.2 KB · Visualizações: 0
Obrigado gianni55 da resposta.

o algoritmo Eu quero criar segue apenas seus passos (mais ou menos).

o que eu preciso no entanto são os comandos, em primeiro lugar como abrir o editor de esboço direita na superfície que eu selecionei (do qual eu tenho o nome).

mais tarde, para construir o prisma eu posso usar a função "gravar macro" para entender quais comandos usar.

Obrigado.
 
Obrigado gianni55 da resposta.

o algoritmo Eu quero criar segue apenas seus passos (mais ou menos).

o que eu preciso no entanto são os comandos, em primeiro lugar como abrir o editor de esboço direita na superfície que eu selecionei (do qual eu tenho o nome).

mais tarde, para construir o prisma eu posso usar a função "gravar macro" para entender quais comandos usar.

Obrigado.
Adeus.
para abrir o editor de esboço você tem que estar em ambiente de design de parte e, obviamente, ter na tela todos os ícones para ser capaz de escolher o do esboço, ou seja, uma folha com um lápis, após a seleção o sistema espera pela seleção da geometria.
mas se você não tem familiaridade de um gato porque você mesmo quer criar uma macro?
 
Olá, Gianni, provavelmente não expliquei bem. Eu posso usar caia e, portanto, também fazer esse prisma simples.

a macro serve para automatizar o procedimento e torná-lo tudo mais rápido, pois eu não tenho que fazê-lo em um buraco apenas mas em vários buracos, em superfícies mesmo diferentes.

Foi por isso que lhe disse que o algoritmo segue os seus passos, mas preciso dele na forma de comandos vba. como fazê-lo em cada único buraco sou eu, alas, mesmo muito luz xd
 
Não há problema.

Eu não a conheço, você pode me dizer alguns links para estudar o assunto?

Obrigado.
 
citado por catia guia:
uma cópia de grupo consiste em uma série de características (elementos geográficos, fórmulas, restrições e assim por diante) que são agrupados para ser usado em um contexto diferente. eles podem ser completamente redefinidos quando são colados.
cópia do grupo capta a intenção do projeto e o know-how do designer, permitindo maior reutilização e eficiência.

praticamente executar uma série de operações de modelagem que, em seguida, reutilizar simplesmente alterando alguns dados de impt
 

Estatísticas do fórum

Tópicos
58,521
Mensagens
499,056
Membros
104,110
Último membro
ChristianR

Membros online

Nenhum membro online agora.
Voltar
Topo