Aller au contenu

[Résolu] - Copier dans une liste les 5 dernières entités


Messages recommandés

Bonjour à tous,

Est il possible de copier dans une liste les 5 dernières entités?

Exemple : pour le moment j'utilisais entlast pour pour copier la dernière entité dans ma liste.

mais j'aimerai pouvoir copier les 5 dernières exemple avec un petit programme :

 

(defun c:test001 (/ list_ent item)

    (command "_cylinder" '(0 0 0) 50 1000)

  (setq list_ent (list (entlast)))

  (command "_copy" (entlast) "" '(0 0 0) '(500 0 0))

  (setq list_ent (append list_ent (list (entlast))))

  (print list_ent)

(princ)

)

pour ce bout de programme cela fonctionne car je n'ai qu'une entité à chaque fois mais si j'utilise la fonction réseau de la commande copier du coup cela ne fonctionne

plus car j'ai créer 5 entités donc entlast prend évidemment que la dernière entité voir exemple 2 :

 

(defun c:test002 (/ list_ent item)

    (command "_cylinder" '(0 0 0) 50 1000)

  (setq list_ent (list (entlast)))

  (command "_copy" (entlast) "" '(0 0 0) "R" 5 '(500 0 0))

  (setq list_ent (append list_ent (list (entlast))))

  (print list_ent)

(princ)

)

Il y a t-il un moyen de "dire" les 5 dernières entité ou bien il faut passer par un autre moyen comme filtre de sélection ou autre ...

Sinon il ne faut pas utiliser la fonction réseau de la commande copie.

En espérant avoir été clair dans ma question?

Merci d'avance 

Lien à poster
Partager sur d’autres sites

Coucou,

L'une des solutions pourrait également être de ne pas utiliser la commande "COPY" mais de passer par (entmakex) dans une boucle :3
Comme chat tu n'auras aucune difficultés pour créer ta liste peut importe le nombre d'objets.

Bisous,
Luna

Lien à poster
Partager sur d’autres sites

Une possibilité, poser une borne avant l'action:

(setq borne (entlast))

Et après l'action , récupérer toutes les entités crées depuis la borne posée:

(if (and borne (entget borne))(progn (setq ss nil ss(ssadd))(while (setq Suivant (entnext Borne))(ssadd Suivant ss)(setq Borne Suivant))ss))

 

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien à poster
Partager sur d’autres sites

Vouih, je n'étais pas sûre de l'ordre chronologique concernant la fonction (entnext) donc je voulais vérifier chat avant de raconter des bêtises mais en effet (entnext) est une solution idéale pour conserver l'utilisation des (command) ! ;3

Bisous,
Luna

Lien à poster
Partager sur d’autres sites
  • 1 mois après...
  • LElemurien a modifié le titre en [Résolu] - Copier dans une liste les 5 dernières entités

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

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.

Chargement
×
×
  • Créer...