eric45 - 4/2/2010 à 14:29
Bonjour,
J'ai plusieurs lignes et polylignes "morcelées" sur mon fichier de dessin. Je sais qu'on peut joindre tous les morceaux par la commande "PE", mais existe t-il un moyen de le faire de manière automatisée?
Merci d'avance,
Eric
lecrabe - 4/2/2010 à 14:31
Hello
Avec un simple AutoCAD LT, je ne vois rien d'autre le fameux PE (PEDIT) option M (Multiple)
Le Decapode
lili2006 - 4/2/2010 à 14:41
Bonjour à toutes et tous,
En reprenant les commandes données par lecrabe , en macro ?
ou un truc du genre ?
(Pas AutoCAD sous le pouce,...)
x_all - 4/2/2010 à 14:59
je ne sais puls quel lispeur fou m'avait pondu JPL mais ce code est depuis longtemps chargé par défaut dans mon totocrad
|
(defun c:jpl (/ ss)
(and (or
(and (= (getvar "pickfirst") 1)
(setq ss (ssget "_I" '((0 . "ARC,LINE,LWPOLYLINE"))))
)
(setq ss (ssget '((0 . "ARC,LINE,LWPOLYLINE"))))
)
(if (= (getvar "peditaccept") 1)
(vl-cmdf "_.pedit" "_m" ss "" "_j" 0.0 "")
(vl-cmdf "_.pedit" "_m" ss "" "_y" "_j" 0.0 "")
)
)
(princ)
)
|
il faut sélectionner les élément avant et jpl...
édit
oups.... LT... désolé... ça servira à d'autre...<br><br><font class=edite>[Edité le 4/2/2010 par x_all]</font>
lecrabe - 4/2/2010 à 15:07
Hello X_all
Bien sur MAIS avec AutoCAD LT ca va etre difficile !
Le Decapode
Tramber - 4/2/2010 à 15:11
| ^c^cselect;\pedit;m;p;;j;0.01; |
...reusement qu'ch'uis là les gars. Mais c'est vrai qu'il faudrait peditaccept à 1.
Ce qui se macrote aussi.
lili2006 - 4/2/2010 à 18:02
Re,
| citation extraite du message original: .reusement qu'ch'uis là les gars. |
Pour sûr,
| citation extraite du message original: Ce qui se macrote aussi. |
J'ai fait quelques essais rapides sans succès pour le moment,...
rebcao - 4/2/2010 à 19:03
Bonsoir,
Et comme ça
^c^cpeditaccept;1;select;\pedit;m;p;;j;0.01;;
Christian
lili2006 - 4/2/2010 à 20:04
Re,
Salut Chrisitan,
Bah, tout de suite, ça va mieux !
Merci,
rebcao - 5/2/2010 à 17:39
AH ben faut toujours passer derrière les grands Nenfants...
Donc, il est temps qu'on se voit !
Christian
rebcao - 5/2/2010 à 18:10
Re,
EUH !!!!!!!!!!!!!!!!!!!!!!!! | citation extraite du message original: Salut Chrisitan, |
Tu l'as fait expres ?
Je vais réfléchir à la suite à donner !
ChrisBlaiBois...etc.
[Edité le 5/2/2010 par rebcao]
Tramber - 5/2/2010 à 18:27
J'attendais justement ChriChri au tournant.
Car mettre la variable à 1, c'est facile.
Non, je pensais que tu allais sortir de ta léthargie des derniers jours avec une bascule. Une getvar User machin truc et tout tout !
Je dois le faire ou quoi
rebcao - 5/2/2010 à 18:38
| citation extraite du message original: Car mettre la variable à 1, c'est facile. |
Pas du tout... Si tu regardes mieux, tu remarqueras un peu de JAUNE à la fin de la macro ; il manquait un POINT VIRGULE ! Hé !
Tramber - 5/2/2010 à 18:41
Ah parce que tu crois que je teste mes macros pendant les heures de travail avec leur fichu CUICUI ?
Tramber - 5/2/2010 à 18:55
| ^C^C_select;\useri1;$M=$(getvar,peditaccept);osmode;3;pedit;m;p;;j;0.01;;peditaccept;$M=$(getvar,useri1);
|
J'ai fait l'effort. Normalement c'est bon.
N'est-ce pas, Maître ?
Edit : par contre, j'ai dû refaire mon BBcode.
Le cave !
<br><br><font class=edite>[Edité le 5/2/2010 par Tramber]</font>
rebcao - 5/2/2010 à 19:26
Bonsoir,
Pour la variable PEDITACCEPT, je ne vois plus trop l'intérêt de revenir avec la Question débile "L'objet sélectionné n'est pas une polyligne, voulez-vous le ..." Autant laisser définitivement 1 !
Christian
lili2006 - 5/2/2010 à 20:09
Bonsoir à toutes et tous,
| citation extraite du message original: Tu l'as fait expres ?
|
Heu, non, pour une fois,...
| citation extraite du message original: Donc, il est temps qu'on se voit ! |
Avec grand plaisir,
| citation extraite du message original: ^C^C_select;\useri1;$M=$(getvar,peditaccept);osmode;3;pedit;m;p;;j;0.01;;peditaccept;$M=$(getvar,useri1); |
Ouh là, qu'est-ce que c'est que tout ce charabiat,
| citation extraite du message original: Autant laisser définitivement 1 ! |
Ouf,
Et eric45, t'en penses quoi au final ?
lovecraft - 5/2/2010 à 20:21
bonsoir,
La bataille de la macro 
Lili2006,
Pour la macro, il stocke la valeur de peditaccept dans la variable useri1 pour ensuite la remettre en fin de macro. Il est vrai que dans ce cas, ce n'est pas forcement nécessaire. Mais cela reste une belle démonstration de style (Donc a retenir)
@plus
LB
PS: j'en ai appris en décortiquant les macros de Christian
lovecraft - 5/2/2010 à 20:42
Re,
Peut être hors sujet. Mais vous trouverez ci-joint la même macro réalisée avec l'enregistreur d'action: L'avantage par rapport aux macros traditionnelles c'est que l'on peut lancer celle-ci avec un raccourci clavier.
Dans l'exemple ci-dessous le raccourci c'est JPO à taper sur la ligne de commande.
http://cjoint.com/?cfvMcEMKXR
Mettre le fichier dans :.......\appdata\roaming\autodesk\autocad 2010\r18.0\fra\support\actions
Cordialement,
Laurent
lili2006 - 5/2/2010 à 20:57
Re,
Salut Laurent,
J'ai regardé l'aide à ce sujet,...
| citation extraite du message original: PS: j'en ai appris en décortiquant les macros de Christian |
Il va falloir que je prenne le tp de le faire aussi,...
| citation extraite du message original: Dans l'exemple ci-dessous le raccourci |
Comment as-tu procédé pour arriver à ce résultat ?
(Que je n'ai pas testé,...)
Merci d'avance,
Tramber - 6/2/2010 à 12:00
En macro, il y a Bonus et Christian. Après ce ne sont que des disciples
J'ai un doute, ce que je viens de montrer, ça marche sur LT ? Les USERS ?
Pour PEDITACCEPT, je suis assez d'accord. Comme tout le monde sait, cette variable a été inventé pour les gens qui auraient créé des routines dans les temps anciens.
Hoppla bon WE.
rebcao - 6/2/2010 à 18:49
Bonsoir,
| citation extraite du message original: PS: j'en ai appris en décortiquant les macros de Christian |
Mince ! On m'espionne ??? Je croyais que tout ça c'était hyper confidentiel en comité très très restreint !!!!!
OOPS et RE-OOPS ! j'avais pas vu on a dépassé les 61 000 MEMBRES... mais Chuuuuuttttt ! faut le dire à personne
Hé Hé !!!
| citation extraite du message original: J'ai un doute, ce que je viens de montrer, ça marche sur LT ? Les USERS ? |
OUI ! ça marche très bien ce genre de truc Tramber. Heureusement d'ailleurs, car sans ces variable USERR... et USERi... on ne ferait rien avec LT... Sauf les USERS... eux n'existent pas avec LT !!! C'est débile parce du coup on est obligé de BRICOLER avec la commande GETENV. Et cette commande n'existe pas dans les versions complètes... C'est "CHIANT" (désolé) Parce que ça rend une APPLI LT, incompatible avec une complète !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Je ne sias pas si tu avais vu passer ces deux sujets à Titre d'exemple d'applications qui tournent sur LT : exemple APPLI 1 - APPLI 2
| citation extraite du message original: Avec grand plaisir, |
Dès que tu as du neuf Lilian !... La balle est dans ton camp
Christian
[Edité le 6/2/2010 par rebcao]
bonuscad - 6/2/2010 à 20:50
| citation extraite du message original: Parce que ça rend une APPLI LT, incompatible avec une complète !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
Pour les versions complètes, je pense que tu devrais tenter ce qui suit (le rajouter à un fichier de démarrage automatique au choix.)
|
(defun c:getenv ( ) (getenv (getstring "\nVariable d'environment?: ")))
|
Ainsi dans une version pleine, la fonction lisp (getenv "NomVariable") sera simplement devenue une commande du même nom, comme dans une LT !
Je pense qu'ainsi une version pleine pourrait peut être comprendre tes macros (sous réserve de tests que je n'ai pas fait...)
eric45 - 10/2/2010 à 14:43
Bonjour,
Merci à tous. Je vais donc copier les lignes de codes et les coller dans une macro que je lancerais ensuite dans autocad. Je teste tout ça et vous tiens au courant.
Merci encore en tout cas
Eric
|