Aller au contenu

Orientation d'un bloc à la vertical


Sébastien65

Messages recommandés

Symétrie centrale, je suppose.

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

Lien vers le commentaire
Partager sur d’autres sites

Pour ma part, je dirais alors rester en bloc simple.

 

Il fait tout ses manips qui désire (rotations, copie, déplacement...) sans se préoccuper de la représentation.

Une fois que toutes sa mise en place est faite, alors un "_QSELECT" appliquer au "dessin entier" avec comme type d'objet une "Référence de bloc" et la propriété sur "Nom", opérateur "= Egal a" et la valeur "PC 2P+T 16A"

Tout ça inclus dans un nouveau jeu de sélection.

 

Dans la palette de propriété dans Divers -> "Rotation": remplacer "*VARIE*" par 0 et c'est fini.

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

Lien vers le commentaire
Partager sur d’autres sites

Geof merci mais ça marche pas...

 

Il faut comprendre Raph que je suis dessinateur en électricité. J'ai donc 50 ou 100 ou 200 bloc pour dessiner un logement et il arrive 80% du temps que les logements se ressemble dans un autre bâtiment mais avec des orientations différentes, donc je fais copier/coller et je dois pivoter pour ajuster.

 

Et donc je veux pas faire pivoter les blocs 1 à 1... Donc pas de paramétré Angle1 comme dans tout vos exemples

Lien vers le commentaire
Partager sur d’autres sites

A adapter, mais le principe est là pour être plus rapide en exécution que par _QSELECT

 

((lambda ( / js n dxf_ent)
(setq js (ssget "_X" '((0 . "INSERT") (67 . 0) (2 . "PC 2P+T 16A"))))
(cond
	(js
		(repeat (setq n (sslength js))
			(setq dxf_ent (entget (ssname js (setq n (1- n)))))
			(entmod (subst (cons 50 0.0) (assoc 50 dxf_ent) dxf_ent))
		)
	)
)
(prin1)
))

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

Lien vers le commentaire
Partager sur d’autres sites

Il faut comprendre Raph que je suis dessinateur en électricité. J'ai donc 50 ou 100 ou 200 bloc pour dessiner un logement et il arrive 80% du temps que les logements se ressemble dans un autre bâtiment mais avec des orientations différentes, donc je fais copier/coller et je dois pivoter pour ajuster.

 

Et donc je veux pas faire pivoter les blocs 1 à 1... Donc pas de paramétré Angle1 comme dans tout vos exemples

 

Je bosse en CVC, (j'ai fait du logement pendant quelques années) j'avais donc un peu moins de blocs que toi mais ça restait parfois conséquent.

 

il n'empêche que je ne m'explique toujours pas cette problématique que tu te pose. La solution de bonuscad fonctionne si tu paramètre ton bloc correctement.

 

Après ... est-ce vraiment nécessaire que dans ton bloc, la prise et la DCL soient orientées correctement ?

Raph.

Celui qui pose une question est bête 5 minutes, celui qui n'en pose pas l'est toute sa vie !

Lien vers le commentaire
Partager sur d’autres sites

Raph, non seul la PC. C'était pour illustrer que je faisait pivoter un ensemble de bloc (et pas un bloc de plusieurs bloc) et que certain devaient rester vertical

 

Merci Bonuscad, a vérifier plus tard si le bloc dynamique et définitivement abandonné... Oui parce que je suis têtu aussi et j'y reviens encore a mes bloc dyn ;-)

 

Est ce que ça peut pas marché avec la contrainte "vertical" ? le descriptif dit que c'est pour être parallèle a l'axe Y du SCU courant, le SCU courant c'est celui du bloc auquel cas ça marche pas, mais si c'est celui du dessin ça peut le faire non ?

Lien vers le commentaire
Partager sur d’autres sites

  • 9 mois après...

Bonjour,

 

J'ai couramment ce PB et j'utilise cet routine suivant un scu particulier:

;;---------------------------------------------
;;--rotation de bloc suivant SCU TRAV
;;---------------------------------------------
(defun c:R_OBJ_LAB (ss1 / ss2 ss1_type ANG_SCU_TRAV SCU_Begin)
(setq 
	ss1_type (cdr(assoc 0 (entget(ssname ss1 0))))
	SCU_Begin (getvar "ucsname")
)
(if (= (cdr(assoc 50(entget (ssname ss1 0)))) 0.0 )
	(if (/= SCU_Begin "TRAV")
		(progn
			(command "scu" "nom" "r" "TRAV")
			(setq
				ANG_SCU_TRAV (angtos(angle '(0  0) (getvar "ucsxdir"))0 4)
			)
		)
		(setq
			ANG_SCU_TRAV (angtos(angle '(0  0) (getvar "ucsxdir"))0 4)
		)
	)
)
	(progn
		; (alert ss1_type)
		(setq ss2(ssget "x" (list(cons 8 (cdr(assoc 8 (entget(ssname ss1 0))))))))
		(while (/= (sslength ss2) 0)
			(command "scu" "ob" (ssname ss2 0))
			(command ".rotation" (ssname ss2 0) "" "0,0" ANG_SCU_TRAV)
			(setq ss2 (ssdel (ssname ss2 0) ss2))
		)
	)
	(command "scu" "nom" "r" "TRAV")
)

Si pour une fois je peut rendre service sur ce forum, je serais super ravi.

B)

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Je vais peut-être dire une bêtise mais il y a peut-être plus simple:

Fais ton dessin sans te soucier de l'apparence des blocs, et quand t'as fini, tu fais une sélection rapide de ces blocs et tu passes le paramètre "rotation" à 0 dans les propriétés.

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é