Aller au contenu

commande EFFACER


Geopee

Messages recommandés

Bonjour à tous,

 

Je suis nouveau ici, et pas très vieux dans le milieu du Lisp, alors n'hésitez pas à me reprendre.

J'utilise Autocad Map3D 2016.

 

Je souhaiterais créer une fonction qui supprime tous les objet d'un calque. J'ai réussi à créer cette fonction, mais ça ne marche que quand ça marche... C'est à dire :

ssx••LA•*CALQUE••pselect•p••EFFACER¶

 

Si le calque contient des objets, ça fonctionne, sinon, le script freeze sur le EFFACER ("sélection non valable")

Commande: ssx
Initialisation...
Type "ssx" at a Command: prompt or
(ssx) at any object selection prompt.
Select object <None>:
Enter filter option [block name/Color/Entity/Flag/LAyer/LType/Pick/Style/Thickness/Vector]: LA
>>Enter layer name to add <RETURN to remove>: *CALQUE
Current filter: ((8 . "*CALQUE"))
Enter filter option [block name/Color/Entity/Flag/LAyer/LType/Pick/Style/Thickness/Vector]:
0 found.
Commande:
Commande: pselect
Sélectionner des objets: p Pas de jeu de sélection précédent.
Sélectionner des objets:
Commande: EFFACER
Sélectionner des objets: ssx
*Sélection non valable*
Attend un point ou Fenêtre/Dernier/Capture/BOîte/TOUT/Trajet/SPolygone/CPolygone/Groupe/Ajouter/Supprimer/Multiple/Précédent/annUler/AUto/uniQue/SOus-objet/Objet

 

Donc ma question est la suivante :

Y'aurait-il un équivalent à la fonction "try" en C++, qui efface si la sélection contient des objet et ne fait rien si le calque est vide ou inexistant?

Lien vers le commentaire
Partager sur d’autres sites

Bonjour, et bienvenu.

 

Une petite question : faut-il garder le calque après effacement de son contenu ?

 

S'il ne faut pas, il y a la commande SUPCALQUE, qui supprime le contenu d'un ou plusieurs calques et supprime aussi le calque.

 

Denis

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Lien vers le commentaire
Partager sur d’autres sites

Salut Geopee

Ton script est plutôt bon. C'est la sélection vide qui fait planter, c'est tout. Ca se voit bien en ligne de commande. Le calque n'a pas d'objets....

Le script n'est pas de la programmation. Pas de contrôle des erreurs comme tu demandes avec Try (qui aurait un peu des équivalent en lisp).

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Lien vers le commentaire
Partager sur d’autres sites

Tramber >> Je ne me sens malheureusement pas capable à l'heure actuelle de créer un lisp qui me ferait ça...

 

DenisH >> la commande supcalque ouvre une fenetre dans laquelle il faut selectionner le(s) calque(s) à supprimer. Je veux lui passer le nom du calque en ligne de commande pour executer le script sur un lot de fichiers. J'ai essayé en mettant CMDDIA à 0, sans succés.

Lien vers le commentaire
Partager sur d’autres sites

DenisH >> la commande supcalque ouvre une fenetre dans laquelle il faut selectionner le(s) calque(s) à supprimer. Je veux lui passer le nom du calque en ligne de commande pour executer le script sur un lot de fichiers. J'ai essayé en mettant CMDDIA à 0, sans succés.

Salut Geopee,

 

Tu n'avais pas précisé que tu souhaites exécuter le script sur un lot de fichiers dans ta demande initiale.

Dans ce cas, peut-être devrais-tu utiliser SuperAutoScript pour lancer ton script sur plusieurs fichiers en même-temps.

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Lien vers le commentaire
Partager sur d’autres sites

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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é