Aller au contenu

Lisp pour autocad


G2.toff

Messages recommandés

Bonjour,

 

Je suis a la recherche de 5 lisp séparés (A,B,C,D,E) pour Autocad pour faire les choses suivantes :

 

A - Substituer un bloc X1, un bloc X2, un bloc X3 du dessin ouvert par respectivement un bloc Y1, Y2, Y3 de ma bibliothèque (les 2 sont issus de ma bibliothèque), sachant que mon dessin ne contient peut être pas toujours de bloc X1 ou X2 ou X3 ou 2 d'entres eux ou même aucun. Le but, c'est en un clic substituer plein de blocs se trouvant ou non dans un dessin pas d'autres blocs (comme une mise à jour). Le bloc X1 sera toujours remplacé par Y1 et cela pour tous mes ancien blocs.

 

B - Copie le contenu (polylignes) du calque C1 vers un calque C2 (à créer ou déjà créé). En fait, en 1 clic je voudrais faire cela, sans sélectionner le calque de base ni le calque copie. Comme ci-dessus les objets du calque C1 sera toujours copié dans le calque C2

 

C - Renommer un calque C1, un calque C2, un calque C3 par respectivement un calque D1, un calque D2 et un calque D3. Toujours pareil le calque C1 sera toujours renommé D1 et ainsi de suite.

 

D - Renommer tous les calques commençant par 000 par 111, en 1 clic toujours, sans choix, puisque comme ci-dessus les noms des calques de base seront listés et renommés en des noms de calques connus.

 

E - Créer un clone des blocs B1 (plusieurs calques C1,C2,C2 peuvent s'y trouver)d'un dessin. Le clone s'appellerait B2 avec les calques renommés respectivement D1,D2,D3.

 

Merci d'avance pour vos réponses....

Lien vers le commentaire
Partager sur d’autres sites

moi je recherche un lisp qui me ferait un café a 15.45, avec un sucre.

 

sérieux recherche sur des sites : avec le mot lisp lee mac par exemple puis rebondi sur les site amis .

il y en a tellement .;)

 

pour le café fort svp

 

 

Nous vivons tous dans le ventre d'un chien géant

Tout le monde le sait mais personne ne dit rien du tout

 

ultra Vomit

Lien vers le commentaire
Partager sur d’autres sites

Je ne maitrise pas du tout les lisp et si je me permet de demander de l'aide pour ces 5 cas c'est que j'en ai vraiment besoin pour gagner du temps dans mes études. J'ai déjà fait le tour de pas mal de sites spécialisés, mais a chaque fois je n'ai trouvé que des lisp trop élaborés et ne correspondant pas à ma demande. Les fonctions de bases le font (ou même certains comme RBLOC) mais en ouvrant une fenêtre et la il faut choisir le bloc à changer et le bloc de remplacement, lorsque vous en avez 2 ou 300 blocs c'est vite casse bonbons !!!

 

Je ne veux que des lisp sans choix, sans fenêtres (1 clic) car par exemple pour les blocs, c'est "juste" remplacer un bloc B1 par un bloc B2 car à une étape de mes études les premiers blocs ne me sont plus d'utilité, je créé une copie du fichier DWG et la je refais mes plans avec les nouveaux blocs plus détaillé que les premiers. Mon lisp devra contenir toutes les possibilité de substitutions, donc une centaine de blocs type 1 à transformer en blocs type 2, j'y passerais du temps, mais qu'une fois. Je créerais toutes les possibilités de substitution moi même certes, mais une base me serait plus qu'utile surtout lorsque le lisp de trouvera pas dans mon dessin un ou plusieurs blocs listés.

 

Ca c'est pour les blocs, mais c'est le même problème pour le reste des 4 autres lisp. Je vous demande pas non plus d'y passer la vie et de tout me pondre, mais aujourd'hui je perds trop de temps dans ces manipulations, donc il faut que j'avance sur ces points là mais apprendre à créer des lisp maintenant, je ne suis pas sur d'y arriver de si tôt !

Lien vers le commentaire
Partager sur d’autres sites

coucou

 

maintenant je sais pourquoi mes visites sur ce site qui nous a tant apporté à tous, je parle de la bande du noyau dur, Tramber, Rebcao, (giles), patrick35 et la petite dizaine d'autres qui progressaient joyeusement en lisp sans JAMAIS avoir écrit : je veux... on ne va tarder à voir : j'exige, méfiez-vous

 

amicalement à tous ceux la, les autres, adieu.

Lien vers le commentaire
Partager sur d’autres sites

wouah! je ne sais comment interpréter cette réponse, mais pardon d'avoir vexé certaines personnes si je lis brutalement cette reponse . En effet il ne faut pas lire je veux mais plutot j'aimerais trouver! Dites donc il y a un peu de fierté et d'égo surdimensionnés dans vos propos aussi je pense, cela reste un forum d'entre aide et je pense que la majorité des gens qui s'inscrivent sur ces sites ont besoin d'etre guidés, aidés dans leurs recherches (voir reponse de Patrick35, qui d'ailleurs a un lien vers un tuto sur le lisp pour debutants qui me plait bien).

Apres si je te lis au premier degre, comme tu as lu mon sujet visiblement,ce n'est plus sur un forum d'entre aide qu'il faudrait t'inscrire, mais a des réunions CADWARE, comme les fameuses boites en plastique si tu vois ce que je veux dire, et la tu resteras entres amis...

 

Bref je ne suis pas inscrit la pour qu'on analyse ma maniere (plus maladroite que directive) de demander de l'aide, ni pour qu'on analyse mes fautes d'orthographes, mais pour avancer sur le developpement mes lisp. En aucun moments je demande que l'on me ponde la solution finie a 100%, j'ai juste ecrit ce que je veux au final et oui ce que je veux obtenir.

 

A bon entendeur salut......et pour ceux qui veulent bien m'aider merci d'avance, les autres comme diraient certains adieux...(rires forts)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

La réponse de didier, comme les autres mais en plus sous-entendu, reflète une certaine lassitude chez certains "piliers" du site (quand un membre a 4 ou 5000 messages, tu peux être sûr qu'il s'agit de quelqu'un qui a très largement aidé les autres).

 

Cette lassitude, que je partage parfois, vient largement d'une dérive de ce qu'on peut entendre par entr'aide. Il fut un temps (dont parle didier) où les demandes d'aide avaient la forme : "Comment fait on ceci avec AutoCAD ?" ou "Comment peut-on coder cette procédure en LISP ?".

Or, de plus en plus souvent, certaines demandes deviennent : "Je cherche une routine qui réponde à mon besoin spécifique." (je cherche est remplaçable par : j'ai besoin, je voudrais, etc.).

 

Je pense avoir (avec d'autres) une certaine resposabilité dans cet état de fait parce que j'ai souvent fourni des routines (répondre à certaines demandes a pu être, pour moi, une source d'exercices qui m'ont permi de progresser en programmation), et je me suis toujours efforcé de publier des routines généralistes qui ne se limitaient pas à une demande trop spécifique.

Mais j'y vois aussi une tendance à considérer que tout bien immatériel pouvant être publié sur le web devrait être gratuit...

 

Ta demande ressemble à une caricature de ce que je décris plus haut : pour ton deuxième message (le premier était déjà une demande de LISP), tu ne cherches pas une, mais cinq routines (très) spécifiques avec des exigences (un seul clic) qui écartent toute solution généraliste qui aurait déjà pu être publiée.

 

Quand à ton dernier message, j'hésite entre naïveté et mauvaise foi :

 

Penser qu'il soit possible de "trouver" des routines existantes correspondant (exactement) à tes besoins spécifiques, n'est-ce pas là une forme d'egocentrisme ?

 

comme tu as lu mon sujet visiblement,ce n'est plus sur un forum d'entre aide qu'il faudrait t'inscrire, mais a des réunions CADWARE, comme les fameuses boites en plastique si tu vois ce que je veux dire, et la tu resteras entres amis..

Ce propos est carrément injurieux pour didier qui, et tu l'aurais vu si tu avais un peu parcouru les forums, a énormément contribué à la vie de CADxp en partageant très généreusement ses connaissances.

Si je peux me permettre de traduire la pensée didier tout en m'y associant, il ne voudrait pas que CADxp devienne le supermarché de la routine gratuite sur commande.

 

Tu dis :

[...]pour avancer sur le developpement mes lisp. En aucun moments je demande que l'on me ponde la solution finie a 100%

mais par ailleurs :

Je ne maitrise pas du tout les lisp et si je me permet de demander de l'aide pour ces 5 cas c'est que j'en ai vraiment besoin pour gagner du temps dans mes études.

 

Ceci dit, si tu veux apprendre AutoLISP, tu es au bon endroit. Tu trouveras certainement sur ces forums, l'aide dont tu peux avoir besoin pour te mettre le pied à l'étrier et te perfectionner (de ma part et probablement de la part d'autres membres).

Pour connaitre les bases d'AutoLISP, tu peux voir : Introduction à AutoLISP.

Pour tes premières routines, choisis des taches pas trop complexes (comme ton 'D' par exemple) et essaye de les mener au bout. N'hesite pas à demander de l'aide en montrant ce que tu as déjà fait.

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

je ne maîtrise pas le lisp .

ouvre un fichier lisp et regarde le boulot

moi j'arrive à peine à modifier certaine chose.

c'est un travail énorme pour un "lispseur"

puis regarde du cote des express tool il y a des outils que l'on néglige .

sur un autre poste critiqué le faite il manquait un excel à autocad. ben on ma guidé vers une possible solution.

 

tu peut demandé contré rémunération a un programmeur patenté un un ou des lisps.

 

 

Nous vivons tous dans le ventre d'un chien géant

Tout le monde le sait mais personne ne dit rien du tout

 

ultra Vomit

Lien vers le commentaire
Partager sur d’autres sites

Bon, merci a gile pour ta reponse....juste que lorsque tu t'inscrit sur un forum (a 10 000 lieux de ton domaine) ou tu pense cotoyer que des extra terrestres de l'informatique, tu ecrits tout simplement ce que tu veux,, tu vas droit au but....c'est mon avis surtout vu toutes les possibiltes qu offrent les lisp!

apres je comprend quand meme que vous puissiez etre lassés de voir des demandes dans ce style, mais mettez vous aussi a la place de ces personnes pommées parmis toutes ces possibiltes de programmations (lisp) ou quand vous essayez de comprendre ce qu'elles font reellement (le titre n etant pas souvent tres detaillé, et c est pas une critique), vous vous dites putain il y a tant de possibiltes que ça! , ben moi je veux pas tout ca. ...je veux (voudrait)plus simple (ce qui n est peut etre pas le cas d ailleurs).

pour finir, des mon 2eme message je precise deja que je veux pas que vous y passiez la vie et que vous ne me pondiez pas tout, et que en effet aujourd'hui dans mon taf je perds trop de temps dans ces manipulations (non automatisees) et que apprendre les lisp maintenant je suis pas sur d'y arriver de si tot....d ou mon besoin d aide (c etait avant la reponse de didier que je respecte malgre tout, c est juste que son intervention m a semblait ne servir a rien et a la fin son adieu aux autres m a gené! ). Mais bon, l interpretations des mots c est un fleau pour l Homme et ca le restera...

 

Bref, hier j ai commencé a lire le tuto de Patrick (avec couleurs) ca reste de l hebreu pour moi, mais deja c est un commencement!, je connaissaits les programmations en basic a l epoque mais la c est plus tordu!

Pouvez vous me dire si dans ce domaine des lisp il y a, mise a part les fonctions propres a cette programmation (defun,.sqt...) , des fonctions d autocad a connaitre (toutes? ) et surtout ou ou comment les trouver?

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

pour la liste des fonctions autolisp :

 

http://docs.autodesk.com/ACD/2011/FRA/filesALR/WSfacf1429558a55de1a7524c1004e616f8b-5913.htm

 

Je te conseil de commencer avec le document que gile t'a mis en lien. Son introduction à l'autolisp est très bien faite et te mettra le pied à l'étrier.

Le lien de Patrick est très bien également mais un peu plus complexe (c'est mon avis :P ).

 

Et surtout si tu souhaite apprendre, pose des questions précise. Là tu aura des réponses qui te ferons avancer. ;)

PIRO Charles

Developpeur Revit, RV/RA - Formateur Revit

PIRO CIE

Lien vers le commentaire
Partager sur d’autres sites

Coucou

 

je sais depuis le temps que les propos peuvent être mal interprétés aussi je choisis mes mots et j'assume mes écrits

en passant je remercie (gile) de ses propos et l'assure de ma reconnaissance.

en réponse à G2.toff, sache que si tu demandes de l'aide tu en trouveras, tu l'as vu sur ton autre question sur un accrochage

mais il y a une règle (non écrite) de savoir vivre, même quand tu payes tu ne dis pas je veux, dit-on je veux une baguette en répondant à la boulangère ?

pour te montrer que je ne suis pas mauvais bougre bien je n'aie rien à prouver à personne étudie ce code il réponds à ta question B.

 

amicalement

 

;copier un objet sur lui même et mettre la copie dans le calque courant
(defun c:test()
 (command "_-layer" "_m" "C2" "" "");création de calque en ligne de commande
 
 (setq jeusel (ssget "x" (list
    		(cons 0 "LWPOLYLINE")
    		(cons 8 "C1")
    		)
     		);jeu de sélection de toutes les polylignes du calque C1
n 0 ; mise à zéro du compteur
calquecourant (getvar "clayer"); mémorisation du nom du calque courant
)
 
(repeat (sslength jeusel);début de la boucle
 (setq ent(ssname jeusel n);nom de la première polyligne
n ( + 1 n);incrémentaation du compteur
)
 (command "_copy" ent "" '(0 0 0) '(0 0 0) );copie sur elle-même en ligne de commande
 (command "_chprop" (entlast) ""  "_la" calquecourant "");changement de calque en ligne de commande
)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

pour la liste des fonctions autolisp :

 

http://docs.autodesk.com/ACD/2011/FRA/filesALR/WSfacf1429558a55de1a7524c1004e616f8b-5913.htm

 

Je te conseil de commencer avec le document que gile t'a mis en lien. Son introduction à l'autolisp est très bien faite et te mettra le pied à l'étrier.

Le lien de Patrick est très bien également mais un peu plus complexe (c'est mon avis :P ).

 

Et surtout si tu souhaite apprendre, pose des questions précise. Là tu aura des réponses qui te ferons avancer. ;)

 

Merci,

Je suis de ton avis pour ce qui est du lien de Patrick mais je cherche plein d'infos pour commencer et tout ce qui me sera donné je vais l'analyser (a mon niveau (0)). Mon premier gros soucis, visiblement (outre le fait que le language lisp n'est pas évident) c'est mon niveau en anglais et sur le lien Autodesk, je m'arrache les cheveux, mais bon faut s'y mettre.

 

Encore merci

Lien vers le commentaire
Partager sur d’autres sites

Coucou

 

je sais depuis le temps que les propos peuvent être mal interprétés aussi je choisis mes mots et j'assume mes écrits

en passant je remercie (gile) de ses propos et l'assure de ma reconnaissance.

en réponse à G2.toff, sache que si tu demandes de l'aide tu en trouveras, tu l'as vu sur ton autre question sur un accrochage

mais il y a une règle (non écrite) de savoir vivre, même quand tu payes tu ne dis pas je veux, dit-on je veux une baguette en répondant à la boulangère ?

pour te montrer que je ne suis pas mauvais bougre bien je n'aie rien à prouver à personne étudie ce code il réponds à ta question B.

 

amicalement

 

;copier un objet sur lui même et mettre la copie dans le calque courant
(defun c:test()
 (command "_-layer" "_m" "C2" "" "");création de calque en ligne de commande
 
 (setq jeusel (ssget "x" (list
    		(cons 0 "LWPOLYLINE")
    		(cons 8 "C1")
    		)
     		);jeu de sélection de toutes les polylignes du calque C1
n 0 ; mise à zéro du compteur
calquecourant (getvar "clayer"); mémorisation du nom du calque courant
)
 
(repeat (sslength jeusel);début de la boucle
 (setq ent(ssname jeusel n);nom de la première polyligne
n ( + 1 n);incrémentaation du compteur
)
 (command "_copy" ent "" '(0 0 0) '(0 0 0) );copie sur elle-même en ligne de commande
 (command "_chprop" (entlast) ""  "_la" calquecourant "");changement de calque en ligne de commande
)

 

Merci pour ta réponse, je pense qu'on est partit un peu de biais à cause de ma façon d'avoir posté mon sujet, je me suis plus attardé à décrire ce que je voulait plus qu'à la manière de l'écrire. Je connais certains très bons sur ce site et ils pourraient justifier de ma bonne fois et de mon respect des gens comme vous qui maitrisent.

 

Merci pour ton lisp, je vais regarder ça, mais saches que je ne prend jamais sans comprendre comment ça fonctionne, car mon but à toujours était de devenir autonome un minimum (sauf en mécanique ou là , ça rentre pas !). J'ai appris l'informatique sur le tas, 3 semaine aprés que notre informaticien soit partit on a le serveur qui est décédé et la ta pas le choix, faut t'y mettre, en posant des questions idiotes pour certains mais c'est comme ça que j'ai appris, certes je ne suis toujours un dieu mais je me débrouille (attention les chevilles). Je vais souvent sur des forums (moins spécifique que celui-ci) et souvent je suis confronté aux réponses à la con de gens qui n'ont rien d'autre à faire de se moquer d'un gars qui sait pas allumer un pc (j'exagère à peine) c'est pourquoi j'ai un peu démarré à ta réponse (saches toutefois que contrairement à ce matin) j'étais sur tablette et on voit pas les détails sous le nom du gars qui réponds qui précise que le gars est ceinture machin, j'aurais peut être été moins moqueur!)

 

Pour en revenir au but principal du forum l'entre aide sur lisp, ce qui me gène dans les lisp que l'on trouvent sur le net, c'est que pour un débutant(moi) il est très dur d'analyser un lisp et de dire telle ligne fait ça et telle ligne fait autre chose, surtout que comme je disais plus haut ils font "trop" de choses et moi je voudrais faire plus simple, enfin plus simple à l'utilisation. Mon but étant surtout de faire évoluerma méthode de travail pour que les jeunes que l'on embauche passe moi de temps à ces manip que je pense automatisable et donc que les jeunes passent plus vite sur des trait de notre taf qui sont grave plus interressant.

 

Encore merci à tous ceux qui feront avancer les choses en me filant de bons tuyaux !

 

Allez, je plonge dans ton lisp ...@+

Lien vers le commentaire
Partager sur d’autres sites

pour ne pas te dégoutter de ce site , rassure toi je me fair renvoyer dans mes buts plus souvent qu'à mon tour.

moi aussi jaimerait comprendre le langage lisp . il faux du temps .

ici et sur ce sujet tu aura toujours une réponse ou une direction pour trouver une solution . il y a des pointures .

 

le principe "que j'oublie souvent"

  1. un besoin "une recherche dans autocad " là tu peut demandé il y a t'il un outils ou autre qui fassent ???
  2. tu recherche un lisp ou autre.
  3. tu essaye de comprendre.puis de frustration en frustration tu arrive a comprendre des choses
  4. tu pose une question. exp comment renommé un lisp.

;)les experts vont te répondre :

 

 

 

 

 

Nous vivons tous dans le ventre d'un chien géant

Tout le monde le sait mais personne ne dit rien du tout

 

ultra Vomit

Lien vers le commentaire
Partager sur d’autres sites

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité