Partionner automatiquement une courbe sous VBA
2 participants
Page 1 sur 1
Partionner automatiquement une courbe sous VBA
Bonjour,
Je suis actuellement à la recherche d'un moyen pour partitionner automatiquement (VBA) une courbe en plusieurs sections selon les éléments 1D qui la traversent. Pour être plus précis, je souhaite que cette découpe se fasse uniquement si l'élément 1D recoupe deux fois (ou plus ) la courbe (pas de partition si l'élément 1D ne coupe qu'une seul fois la courbe).
Si ma courbe est coupée deux fois par un unique élément, je souhaite obtenir 3 partitions de ma courbe/ coupée deux fois par deux éléments, je souhaite avoir 5 partitions...
Existe-t-il un moyen simple de réaliser cette manipulation ?
N'ayant pas trouvé, j'ai pensé à créer des intersections entre ma courbe et tous les élements 1D de mon part, controler le nombre de points créé pour chaque intersection, puis découper ma courbe selon les éléments identifiés. Le problème de cette méthode est que je n'arrive pas a déterminer le nombre de points présent dans l'intersection.
Existe-t-il un moyen sous VBA de savoir combien une intersection contient de points ?
Merci d'avance pour votre aide
BBarn
Je suis actuellement à la recherche d'un moyen pour partitionner automatiquement (VBA) une courbe en plusieurs sections selon les éléments 1D qui la traversent. Pour être plus précis, je souhaite que cette découpe se fasse uniquement si l'élément 1D recoupe deux fois (ou plus ) la courbe (pas de partition si l'élément 1D ne coupe qu'une seul fois la courbe).
Si ma courbe est coupée deux fois par un unique élément, je souhaite obtenir 3 partitions de ma courbe/ coupée deux fois par deux éléments, je souhaite avoir 5 partitions...
Existe-t-il un moyen simple de réaliser cette manipulation ?
N'ayant pas trouvé, j'ai pensé à créer des intersections entre ma courbe et tous les élements 1D de mon part, controler le nombre de points créé pour chaque intersection, puis découper ma courbe selon les éléments identifiés. Le problème de cette méthode est que je n'arrive pas a déterminer le nombre de points présent dans l'intersection.
Existe-t-il un moyen sous VBA de savoir combien une intersection contient de points ?
Merci d'avance pour votre aide
BBarn
bbarn- timide
- Messages : 5
Date d'inscription : 21/04/2011
Re: Partionner automatiquement une courbe sous VBA
pourquoi n'utilise tu pas les règles de catia, c'est peut être plus simple que VBA, et tu pourra activé ou désactivé ta découpe selon une condition.
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Re: Partionner automatiquement une courbe sous VBA
Désolé, je suis encore débutant en catia. Qu'entends tu par utiliser les règles Catia ?
l'idée de ma démarche est d'automatiser la découpe d'une surface composée de beaucoup d'éléments 1D. Pour garantir une découpe correcte, mon process exige que mes éléments 1D ne se recoupent pas plus d'une fois. D'où ma demande sur la partition.
l'idée de ma démarche est d'automatiser la découpe d'une surface composée de beaucoup d'éléments 1D. Pour garantir une découpe correcte, mon process exige que mes éléments 1D ne se recoupent pas plus d'une fois. D'où ma demande sur la partition.
bbarn- timide
- Messages : 5
Date d'inscription : 21/04/2011
Re: Partionner automatiquement une courbe sous VBA
je suis pas sur que ce soit possible avec les règles, mais tu a un module dans catia qui est knowledge advisor dans gestion des connaissances qui te permet de créer des règles (un peut comme avec VBA) : boucle if (etc) et avec ces règles, tu pourra activé ou non, des surfaces, des opérations .... (c'est peut être plus facil que VBA, a voir)
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Re: Partionner automatiquement une courbe sous VBA
j'ai essayé voir ce que ca donnais, voila ce que j'obtiens, je sais pas si ca peut t'aider
j'ai créée ma première surface (extrusion.1) puis ma seconde (cylindre extrusion.3) (j'ai paramétré la longueur du cylindre pour pouvoir le modifier facilement), j'ai créée l'intersection entre le cylindre et la surface puis, j'ai créée un paramètre entier possédant une formule qui mesure le nombres de domaine de mon intersection, soit le nombre d'intersection. Puis j'ai créée la découpe que j'active ou non en fonction du nombre d'intersection.
Voici la règle toute simple :
et voila ce que ca donne :
avec 2 et 3 intersections
j'ai créée ma première surface (extrusion.1) puis ma seconde (cylindre extrusion.3) (j'ai paramétré la longueur du cylindre pour pouvoir le modifier facilement), j'ai créée l'intersection entre le cylindre et la surface puis, j'ai créée un paramètre entier possédant une formule qui mesure le nombres de domaine de mon intersection, soit le nombre d'intersection. Puis j'ai créée la découpe que j'active ou non en fonction du nombre d'intersection.
Voici la règle toute simple :
- Code:
if Entier.1 >=2
{ resultat = "le nombre d'entrée est de " + Entier.1 + " donc partition possible"
`Set géométrique.1\Découpe.1\Activité` =true}
if Entier.1 <=1
{ resultat = "le nombre d'entrée est inférieur à 2, partition non possible"
`Set géométrique.1\Découpe.1\Activité` =false}
et voila ce que ca donne :
avec 2 et 3 intersections
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Re: Partionner automatiquement une courbe sous VBA
Merci pour ta réponse, c'est en effet une méthode qui marche.
Mon maître de stage (et oui, ces travaux sont dans le cadre d'un stage) m'avait parlé de knowledge et de la commande NdDomains. c'est bien celle-ci dont tu parles ?
Le problème est que j'ai tout mon code qui est sous VBA. Je ne sais pas si il y a des passerelles possible en knowledge et VBA. As tu des infos la dessus ?
Merci encore pour la réponse en image.
Mon maître de stage (et oui, ces travaux sont dans le cadre d'un stage) m'avait parlé de knowledge et de la commande NdDomains. c'est bien celle-ci dont tu parles ?
Le problème est que j'ai tout mon code qui est sous VBA. Je ne sais pas si il y a des passerelles possible en knowledge et VBA. As tu des infos la dessus ?
Merci encore pour la réponse en image.
bbarn- timide
- Messages : 5
Date d'inscription : 21/04/2011
Re: Partionner automatiquement une courbe sous VBA
je pense que c'est bien cette commande que ton mettre de stage ta parlé, mais je viens de la découvrir donc je peut pas t'en dire beaucoup plus. Et pour les passerelles entre VBA et le knowledge, je te conseil de testé avec des macros, et tu regarde ce qu'il enregistre, si il n'enregistre rien, alors .... tu est un peut dans la m*****.
Bon courage
Bon courage
flo- Fédérateur
- Messages : 455
Date d'inscription : 21/01/2011
Age : 34
Localisation : Angers
Sujets similaires
» Créer icone automatiquement
» Changer de couleur automatiquement
» créer courbe moyenne d'un tube
» Création d'une courbe par une loi, macro ?
» Inverser le sens d'une courbe.
» Changer de couleur automatiquement
» créer courbe moyenne d'un tube
» Création d'une courbe par une loi, macro ?
» Inverser le sens d'une courbe.
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum