curvasud Posté(e) le 21 octobre 2006 Posté(e) le 21 octobre 2006 Salut, Voilà, je cherche le moyen d'automatiser une manip: il s'agirait, dans l'idée, de générer en une commande, une manip, la fusion d'éléments linéaires pour aboutir à une seule ligne; la commande creer chaine complexe illustre ma recherche; toutefois, je voulais, par l'écriture de programme, la rendre globale. Merci pour votre attention, arnaud
Nationale_7 Posté(e) le 22 octobre 2006 Posté(e) le 22 octobre 2006 Peux tu donner plus d'explications. Que veux tu en plus de la commande de base utilisée avec les options automatiques et simplification de la géométrie ?N7
curvasud Posté(e) le 26 octobre 2006 Auteur Posté(e) le 26 octobre 2006 Salut, en fait, je voudrais lancer un petit programme, je ne connais pas trop alors peut etre est ce impossible, du type MDL, qui fusionne mes segments de lignes pour en obtenir qu'un seul, mais aussi les segments arcs, bien entendu.Je voudrais ecrire le script, mais je suis trop debutant, j'ai besoin d'aide..... Merci de votre attention.Arnaud.
Nationale_7 Posté(e) le 31 octobre 2006 Posté(e) le 31 octobre 2006 Ce que tu me décris est la commnde de base. Est-ce uniquement pour te mettre au mdl et voir comment ça marche, essaye déjà le VBA c'est plus simple.N7
curvasud Posté(e) le 4 novembre 2006 Auteur Posté(e) le 4 novembre 2006 Salut, C'est vrai, je pense que le MDL estassez complexe, il me semble qu'il faille posseder des ressources en langage C!!!!Donc, je vais plancher en VB, mais je ne sais pas trop dans quelle direction partir; je fais des recherches, et peut etre te recontacterai pour te demander de l'aide, si tu acceptes!!!! A plus, Arnaud, Toulouse.
Nationale_7 Posté(e) le 6 novembre 2006 Posté(e) le 6 novembre 2006 Pas de problèmes. le plus simple télécharge des exemples à partir du site de Bentley, puis fait des programmes simples.demande des infos si nécessaireN7
oliveprodgn Posté(e) le 6 juillet 2007 Posté(e) le 6 juillet 2007 Etant inscrit depuis peuma réponse est très tardivevoici une solution pour joindre 2 arcspour 2 lignes c'est plus longil faut sélectionner les 2 arcs à jondre puis lancer la macro (v7) Sub maindim centroid as MbePoint:dim centroid2 as MbePointDim elemSet as new MbeElementSet:Dim setMember as MbeSetMemberDim elem as New MbeElement:Dim filePos as Longif elemSet.fromSelectionSet (1) <> MBE_Success then mbemessagebox "pas de selection":exit subif elemSet.getfirst(setMember)<> MBE_Success then exit subfilePos = elem.fromFile(setMember.filePos, setMember.fileNum)if elem.type=16 then goto arcmbemessagebox "impossible de traiter la sélection"arc:stat=elem.getOrigin(centroid)ang1#=elem.startAngle:ang11#=elem.sweepAngleif elemSet.getNext(setMember)<> MBE_Success then mbemessagebox "sélectionnez 2 éléments":exit subfilePos = elem.fromFile(setMember.filePos, setMember.fileNum)if elem.type<>16 then mbemessagebox "sélectionnez 2 arcs":exit substat=elem.getOrigin(centroid2)ang2#=elem.startAngle:ang21#=elem.sweepAngleif elemSet.getNext(setMember)= MBE_Success then mbemessagebox "sélectionnez 2 éléments uniquement":exit subif centroid.x<>centroid2.x and centroid.y<>centroid2.y then mbemessagebox "arcs non concentriques":exit subif ang1 if ang1+ang11end ifif ang1>ang2+ang21 then mbemessagebox "arcs impossibles à joindre":exit sub else ang3#=ang2:ang31#=ang1-ang2+ang11fin:mbelocateelement fileposMbeSendCommand "DELETE ELEMENT "stat=elemSet.getfirst(setMember)filePos = elem.fromFile(setMember.filePos, setMember.fileNum)elem.startAngle=ang3elem.sweepAngle=ang31stat=elem.rewrite()End Sub
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant