dr.loveless
Membres-
Compteur de contenus
151 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par dr.loveless
-
Salut Didier, Merci pour l'info, vraiment sympas, comme toujours. A propos j'ai pas eu l'occasion de te remercier pour le programme des attributs, c'est super pratique, MIILE FOIS MERCI.
-
Salut, comment dois-je faire pour lancer un programme VBA en cliquant sur un bouton ??
-
qui m\'a demandé de déplacer les attributs ?
dr.loveless a répondu à un(e) sujet de didier dans Pour aller plus loin en LISP
Coucou, c'est moi ton mystérieux envoi !! fdumand@caramail.com -
Re, Bon j'y arrive pas, mon e mail : fdumand@caramail.com Je pense qu'il sera plus simple de transmettre le dwg par e mail, chui neuneu dsl. Voilà le code à l'heure actuelle : Dim objElem As Object ' objet Elément du dessin Dim tablAttrib As Variant ' tableau des attributs Dim Cptpm70 As Integer ' compteurs Dim PtInsert As Variant ' point d'insertion du bloc Dim Pointdinsertion As Variant Dim Angle As Variant Dim NouvPtInsert(0 To 2) As Double On Error GoTo 0 For Each objElem In ThisDrawing.ModelSpace If objElem.EntityType = acBlockReference Then tablAttrib = objElem.GetAttributes For Cptpm70 = LBound(tablAttrib) To UBound(tablAttrib) ' Affecte le point d'insertion de l'attribut à la variable Pointdinsertion Pointdinsertion = tablAttrib(Cptpm70).InsertionPoint ' Affecte la rotation de l'attribut à la variable Angle ' Angle = tablAttrib(Cptpm70).Rotation ' Affecte la nouvelle rotation à l'attribut en retournant la valeur 0 dans la table ' ' fonctionne' tablAttrib(Cptpm70).Rotation = 0 ' Affecte le nouveau point d'insertion à l'attribut en retaournant la valeur calculée dans la table' ' Ne fonctionne pas' NouvPtInsert(0) = Pointdinsertion(0) - 100 NouvPtInsert(1) = Pointdinsertion(1) NouvPtInsert(2) = Pointd'insertion(2) tablAttrib(Cptpm70).InsertionPoint = NouvPtInsert Next End If Next objElem Ce que je ne comprends pas, c'est pourquoi la rotation s'effectue bien, à savoir si l'attribut est incliné, il est automatiquement remis droit, tandis que les attributs ne sont pas déplacés de 100 unités vers le bas. Ce qui me saoule, c'est que le programme ne bug pas, il arrive donc bien à interpreter la commande !!! Merci
-
Attribuer un nom à une MLine
dr.loveless a répondu à un(e) sujet de dr.loveless dans Débuter en LISP
Merci, et en effet il ne s'agissait pas de Object.name, erreur de ma part. Je patiente donc. Merci encore -
Toujours pas assez précis. Je developpe, Tous les attributs bougent, mais le bloc composé de lignes ne bouge pas. Cooment on fait pour envoyer un message privé?? Je sais pas faire, je vais fouiller un peu. Faut dormir la nuit ;-) Merci
-
Attribuer un nom à une MLine
dr.loveless a répondu à un(e) sujet de dr.loveless dans Débuter en LISP
En effet, incompréhension, mais c'est de ma faute, car figurez vous je suis tellement balèze que je suis toujours d'accord avec moi même, et que je me comprends toujours, si si c'est EXCEPTIONNEL :D Désolé, à l'avenir je developperai plus ce que je cherche à faire. Là ce que je souhaite faire, ce n'est pas créer un nouveau style de multiligne, mais attribuer à nom à une multiligne isolée. La première multiligne représentant une cloison sera nommée "Cloison-1" , le seconde multiligne "Cloison-2",..... etc En fait je crois que je cherche l'équivalent en LISP de la fonction VBA "object.name". Voilà !! Et félicitation pour le site (Comment faire pour diffuser des prog via votre site ???) -
Bonsoir, Désolé pour mon manque de précision, le prog que je souhaite réaliser doit déplacer tout les attributs d'un blocs d'une certaine valeur en respectant l'orientation des attributs, simplement en lancant le programme, puis en cliquant sur l'objet, donc sans avoir à selectionner les attributs et les déplacer les uns après les autres. Ce programme me servira à effectuer une présentation plus professionnelle et plus lisible, le tout plus rapidement (car je pourrais selectionner tout les blocs à mettre en page d'un seul coup). A l'heure actuel j'arrive à exporter les coordonnées du point d'insertion de chaque attribut, mais pas à retourner le nouveau point d'insertion. Voilà j'espère que c'est plus clair. Merci
-
OK, j'ai trouver la couille , Voici la correction : Private Sub CommandButton1_Click() Dim objElem As Object ' objet Elément du dessin Dim tablAttrib As Variant ' tableau des attributs Dim Cptpm70 As Integer ' compteurs Dim PtInsert As Variant ' point d'insertion du bloc Dim attributorigine, attributfin, attributplus As String Dim Pointdinsertion As Variant Dim Angle As Variant On Error GoTo 0 For Each objElem In ThisDrawing.ModelSpace If objElem.EntityType = acBlockReference Then tablAttrib = objElem.GetAttributes For Cptpm70 = LBound(tablAttrib) To UBound(tablAttrib) attributorigine = tablAttrib(Cptpm70).TextString Pointdinsertion = tablAttrib(Cptpm70).InsertionPoint Angle = tablAttrib(Cptpm70).Rotation MsgBox "Point d'insertion : " & Pointdinsertion(0) & " ; " & Pointdinsertion(1) & " ; Angle = " & Angle, vbOKOnly Next End If Next objElem Unload Me End Sub Mais maintenant il faudrait que je change le point d'insertion de l'attribut, et là, je n'ai vraiment aucune idée pour le faire. Avis aux amateurs, Merci
-
Salut, J'ai créer un petit programme pour trouver l'angle et le point d'insertion d'un attribut, mais celui-ci bug au niveau du point d'insertion, j'ai inserer une boite de dialogue me permettant de controler ces valeurs avant de continuer le developpement du programme, mais quand j'ajoute "Pointdinsertion" à la boite de dialogue çà plante. Voilà le programme : Private Sub CommandButton1_Click() Dim objElem As Object ' objet Elément du dessin Dim tablAttrib As Variant ' tableau des attributs Dim Cptpm70 As Integer ' compteurs Dim PtInsert As Variant ' point d'insertion du bloc Dim attributorigine, attributfin, attributplus As String Dim Pointdinsertion As Variant Dim Angle As Variant On Error GoTo 0 For Each objElem In ThisDrawing.ModelSpace If objElem.EntityType = acBlockReference Then tablAttrib = objElem.GetAttributes For Cptpm70 = LBound(tablAttrib) To UBound(tablAttrib) attributorigine = tablAttrib(Cptpm70).TextString Pointdinsertion = tablAttrib(Cptpm70).InsertionPoint Angle = tablAttrib(Cptpm70).Rotation MsgBox "Point d'insertion = " & Pointdinsertion & "Angle = " & Angle, vbOKOnly Next End If Next objElem Unload Me Voilà, je pense que je programme vient de la définition de ma variable" Pointdinsertion", mais j'en ai essayer plusieurs et le problèeme est tjs là. Merci d'avance.
-
Salut, je voudrais attribuer le nom "Cloison-1" à une mulitligne, comment dois-je m'y prendre? Merci
-
Salut tout le monde, je tenais à remercier tout les forumiteux qui m'ont dépanné, vraiment sympas. Egalement, je voulais savoir comment je pouvais annuler le programme que je venais de lancer. Je m'explique, quand on dessine une ligne, si on veut la supprimer juste après l'avoir créer, on applique la fonction annuler! logique, Mais quand on veut annuler un programme ( comportant plein de lignes et de textes) qu'on vient juste de créer, la fonction "Annuler" efface les lignes les unes aprèes les autres, comment ^doit - on faire pour qu'elles soient toutes supprimées en même temps si on effectue cette fonction??
-
Salut, Encore un pb dont je ne trouve aucun renseignement, pourtant c'est certainement tout con, mais je voudrais la couleur de la dernière ligne que j'ai crée pour la mettre en rouge. Voilà, merci
-
Salut, je cherche une bon bouquin traitant de visual lisp, mais j'en trouve pas sur le web !! Quelqu un en connait?? Merci
-
Salut, je cherche a attribuer un nom au dernier objet créer pour pouvoir le selectionner facilement et le supprimer par la suite, qq c'est comment faire?? Je sais que je suis lourd avec mes questions, j'ai plus l'habitude de programmer en VBA et la documentation en visula lisp est médiocre je trouve. Pour en revenir à mon probleme : - je creer une ligne - je renomme la ligne que je viens de créer "Fin" - je creer un cercle - je renomme le cercle que je viens de créer "Depart" -........execution du programme -Je supprime la ligne nommée "Fin" et le cercle nommé "Départ". Voilà, Merci d'avance,
-
Merci, çà fonctionne nickel C'est génial
-
Salut, Je cherche à lancer et executer un programme lisp à partir d'un premier programme lisp, mais en retournant au premier programme quand le second est fini. En fait il y a une boucle dans le premier qui s'execute une centaine de fois, hors à chaque boucle en fonction des réponses, je voudrais utiliser alors un programme adaptée à la demande, mais qui une fois terminé, me relance le premier programme et execute la boucle suivante. Pfff.... Moi je vois pas comment faire, faut dire je suis pas un fondu du Lisp. MERCI
-
Merci, mais en fait je voulais vraiment faire une boucle pour pouvoir utiliser un sous programme chaque fois qu'une multiligne est trouvée. Voilà, si qq sait comment faire, merci d'avance, moi j'y arrive mais avec VBA et là ilm faut que je fasse la même, mais sous LISP.
-
Salut Je cherche à faire une boucle qui me détecte toutes les multiligne d'un plan. Merci
-
Salut, Je cherche à lancer des programmes Auolisp depuis un Porgramme VISUAL BASIC. Esct-ce possible??? Mon programme Visual Basic continuera t'il après l'execution du prog LISP ?? Merci
-
Salut Je cherche le code permettant d'attirbuer à une variable la justification d'une multiligne
-
Je pouvoir sortir les coordonnées des sommets et la justification pour pouvoir utiliser + rapidement d'autre programme. Je suis da une entreprise que fait de la cloison démontable, et sur tous les plans que nous réalisons, on redessinne les cloisons etant à notre charge, avec l'épaisseur vraie de notre produit. Pour faire celà, nous créeons un calque et redessinons la cloison à l'aide d'une multiligne. Une fois qu'on à fait çà, on réalise un tramage de ces closions, c'est à dire qu'on module cette closion en representant les module de cloison qui sont souvent de l(ordre de 1220 mm de longueur, mais pour çà j'ai déjà réalisé des programme lisp. Mais pour executer ces programmes, il faut selectionner le point de départ et d'arrivé de la cloison aisni que la jsutification souhaiteé ( modulation effectuée en dessous, dessus, ou nulle). Hors cette selection de point correspond aux coordonnées des multilignes déssinées précédemment. Par conséquent en réalisant une boucle du style for each multiligne in this drawing, etc....alors j'exprote les coordonnées de la multiligne et la justification pour la réinjectée ds l'autre rpogramme. Ainsi toutes les modulations sont exécutées à la chaine faisant gaganer un temps précieux. J'espère ne pas avoir été trop confus. Bref pour la réalisation globale du prog, j'ai déjà toute la démarche en tête, mais je bloque au passage clé, càd comment données les propriétés d'une multiligne (coordonnées des sommet,et justification) à une ou plusieurs variables. Mais je pense qu'il serait mieux de réaliser un tel programme en VBA. Voilà, si qq ^peut m'aider, ce serait vraiment un BO cadeau de Noel. MERCI D'avance et JOYEUSES FETES Le doc
-
Comment faire pour exporter les propriétés d'une multiligne ?? -calque -couleur mais surtout la justification et les coordonnées des sommets ?? Merci davance
-
Salut, Je cherche un algo en VBA me permettant d'extraire les propriété ( calque , couleur, jusitification, et coordonnée de tous les sommets) d'une multiligne En fait pour faliciter mon boulot, j'ai creer un pauqet de ^petit prog en lisp et un en VBA, mais chaque programme à besoin de donnée, hors les propriétés d'une multiligne pourrait satisfaire les entrées utilisateurs, donc un gain de temps énorme, peut etre alors pourrais-je gouter aux 35heures ;-) Merci bocoup vraiment bien foutu ce site!!!
-
Franchement j'en sais rien, sous autolisp c'est (command "scu" "g") pour general mais j'y connais pas grand chose. Tu sais comment on peut extraire toutes les propriétés d'une multiligne (y compris les coordoonnées des sommets) dans excel? merci
