Aller au contenu

Décalage de plusieurs objets simultanément


Messages recommandés

Posté(e)

Bonjour!

 

Dans un fichier, j'ai plusieurs objets qui ont été insérés les uns à côté des autres.

Ceux-ci sont insérés, mais trop prêts les uns des autres, accolés les uns à la suite des autres, avec une distance de 0 unité entre chaque.

 

Est-il possible de les décalés les uns des autre d'une certaine distance? Par exemple 5 unités.

 

Merci de votre aide.

Posté(e)

Bonjour,

 

je ne suis pas sûr de saisir ton problème : tu cherches à pouvoir décaler tous les objets à X unités les uns des autres d'un seul coup ?

 

Baptiste

Posté(e)

Bonjour.

Oui, exactement.

J'ai des objets dans un fichier accolés les uns au autres :

 

(Bloc1 de dimension 10,10 et positionné en 0.0, Bloc2 de dimension 10,10 et positionné en 10.0, Bloc3 de dimension 10,10 et positionné en 20.0, ...)

 

J'aimerai, faire un décalage de tous les blocs qui suivent le Bloc1 de 2 unités par exemple, ce qui donnerai :

 

(Bloc1 de dimension 10,10 et positionné en 0.0, Bloc2 de dimension 10,10 et positionné en 12.0, Bloc3 de dimension 10,10 et positionné en 24.0, ...)

 

Merci.

Posté(e)

Bonjour.

Oui, exactement.

J'ai des objets dans un fichier accolés les uns au autres :

 

(Bloc1 de dimension 10,10 et positionné en 0.0, Bloc2 de dimension 10,10 et positionné en 10.0, Bloc3 de dimension 10,10 et positionné en 20.0, ...)

 

J'aimerai, faire un décalage de tous les blocs qui suivent le Bloc1 de 2 unités par exemple, ce qui donnerai :

 

(Bloc1 de dimension 10,10 et positionné en 0.0, Bloc2 de dimension 10,10 et positionné en 12.0, Bloc3 de dimension 10,10 et positionné en 24.0, ...)

 

Merci.

Salut,

Est-ce que ces blocs de 10x10 sont la même référence de bloc?

Est-ce le même bloc, copier plusieurs fois?

 

Si c'est le cas, procéde de la manière suivante:

  1. Tu effaces tous tes blocs qui sont alignés sauf le premier qui est à la coordonnées 0,0.
  2. Tu lances la commande "Copier". (La commande "Copier" est depuis AutoCAD 2006, en Multiple par défaut. Les copies d'objets sont donc en cumulé).
  3. Tu lances donc la commande "Copier", tu sélectionnes ton bloc de 10x10. AutoCAD demande le point de base.
  4. Tu spécifies, par exemple, le point 0,0, soit le coin en bas à gauche de ton bloc.
  5. AutoCAD demande ensuite le second point ou l'option [Réseau].
  6. Tu appelles l'option [Réseau].
  7. AutoCAD demande le nombre d'objet que tu souhaites mettre en réseau, tu entres le nombre que tu souhaites.
  8. AutoCAD demande ensuite le second point.
  9. Tu pousses ta souris sur la droite, tu actives le mode Ortho (F8) puis tu tapes: 12 puis tu valides 2 fois..

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.

Posté(e)

Par contre s'il s'agit de bloc tous différents les uns des autres je ne vois que 2 solutions :

 

- Soit c'est possible de faire ce que tu dis via les LISP, mais il faudrait faire cette demande dans la bonne catégorie du forum, il y a sur ce forum des gens monstrueux (dans le bon sens du terme) en LISP

 

- Soit tu te tapes ce boulot à la main en déplaçant 1 à 1 les blocs, un peu fastidieux mais si tu n'as pas 5000 blocs ça peut aller assez vite...

Posté(e)

Salut.

 

Un petit ajout à la méthode proposée par hey_bapt. Quant j'ais à faire ce genre de manipulation je commence par sélectionner toutes les entités, et je les déplaces toutes, et ensuite je relance la commande et je rappel la dernière sélection d'objets, (P ; une validation) et je retire uniquement l'entité en trop en cliquant desus en maintenant la touche [Maj] enfoncée.

 

Je trouve ça bien plus rapide que de refaire la sélection d'objet à chaque fois. A voir ce qui te conviendrait le mieux.

 

Si y'a beaucoup d'entités tu pourrait encore gagner du temp en utiliser un SCU (pour le point de base) et la grille au bonne espacement (avec l’accroche à la grille activée).

 

Cordialy.

Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux.
Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage !
Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;])

Utilisateur d'AutoCAD 2021 sous Windows 10

Posté(e)

Bonjour, et merci pour vos réponses.

 

On va considérer que ce sont des blocs différents et qu'il y en a trop (pas 5000 mais pas loin de 4999 à mes yeux...)...

 

Pourriez-vous me rediriger vers l'endroit dans le forum ou le site approprié?

Posté(e)

Bonjour,

J'avais fais quelque chose de similaire pour du texte, je l'ai rapidement adapté pour des insertions de blocs, à voir si cela peut faire l'affaire!

(defun c:Dispatch_BlockOverride ( / js_blk nb_blk inc_ang ang ent obj_vlax dxf_ent mnpt mxpt mintpt maxpt offset)
 (setq js_blk (ssget '((0 . "INSERT"))))
 (cond
(js_blk
 	(cond
   	((> (setq nb_blk (sslength js_blk)) 1)
     	(setq inc_ang (/ (* 2 pi) nb_blk) ang 0.0)
     	(repeat nb_blk
       	(setq
         	ent (ssname js_blk (setq nb_blk (1- nb_blk)))
         	obj_vlax (vlax-ename->vla-object ent)
         	dxf_ent (entget ent)
         	pt_ins (cdr (assoc 10 dxf_ent))
       	)
       	(vla-GetBoundingBox obj_vlax 'mnpt 'mxpt)
       	(setq
         	minpt (trans (safearray-value mnpt) 0 1)
         	maxpt (trans (safearray-value mxpt) 0 1)
       	)
       	(setq offset (* (distance minpt maxpt) 2.0))
       	(entmod (subst (cons 10 (polar pt_ins ang offset)) (assoc 10 dxf_ent) dxf_ent))
       	;(entmod (subst (cons 50 ang) (assoc 50 dxf_ent) dxf_ent))
       	(setq ang (+ ang inc_ang))
     	)
   	)
 	)
)
 )
)

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

Posté(e)

Bonjour,

 

est-ce que tous les blocs ont la même échelle? Si oui, tu lances la commande échelle sur tous tes objets avec un facteur de 1.2 par ex, puis tu sélectionnes tous tes blocs et tu leur recolles leur échelle d'origine.

 

Olivier

  • Upvote 1
Posté(e)

Salut.

 

Ça y est, il m'a fallut la nuit pour comprendre. Le facteur d'échelle que tu applique à l'ensemble est égale au facteur entre la distance des blocs et la distance que tu veut leur donner, et la remise à l’échelle d'origine se fait par les propriétés !

 

C'est tellement simple, et pourtant fallait y penser.

 

Merci.

Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux.
Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage !
Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;])

Utilisateur d'AutoCAD 2021 sous Windows 10

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é