Aller au contenu

Messages recommandés

Posté(e)

Bonsoir

 

Je vais avoir a resoudre un probleme de fichier qui a ete configure pour une echelle au 1/50.

Sur un fond de plan on a deja insere une floppee de blocs (amenagement d'un hopital)

et ces blocs sont "calibres" pour une sortie traceur au 1/50 il en va de meme pour

la nomenclature dependante des blocs (texte).

 

On me demande de revoir ces fichies (14 niveaux) pour une sortie traceur au 1/100.

Les blocs ont des points d'insertions specifiques a chaques cas.

 

Je vois pas comment faire pour procede aux changements des blocs (une fois la nouvelle

biblio faite) pour que ceux ci se mettent en place sans avoir a les reprendre un par un

pour les aligner sur leurs l'emplacement idem que ceux deja en place.

 

Avec les express et la commande "replace blocs" le remplacement ne devarit pas etre

un probleme. Ce qui me fait souci c'est l'alignement du bloc sur sa place ........

 

Si quelqu'un peut me donner une marche a suivre efficace et pas prise de tete .......

Posté(e)

Salut

 

Ou alors ceci au choix :

 

 (defun c:ecb(/ pos js blk blk2 ins nblk lis myecho)
(princ "\nDeveloppe par AMATI Ph. (Novembre 2002) (Ver:1.0)")
(setq myecho (getvar "cmdecho"))
(setvar "cmdecho" 0)

(setq pos 0)

(setq fe (getreal "\nFacteur d'echelle : "))

(initget 128 "Unique Global")

(setq nblk (entsel "\n Choix du bloc  : "))

(cond
	((= nblk "Unique")
		(setq nblk (entget (car (entsel "\nChoix du bloc :"))))
		(while (/= (cdr (assoc 0 nblk)) "INSERT")
			(setq nblk (entget (car (entsel "\nChoix du bloc :"))))
		)
		(setq blk (cdr (assoc -1 nblk)))
		(setq ins (cdr (assoc 10 nblk)))
		(command "_scale" blk "" ins fe)
	)
	((/= nblk "Unique")
		(if (= nblk "Global")
			(setq nblk (entsel "\nChoix du bloc :"))
		)
		(setq nblk (entget (car nblk)))
		(while (/= (cdr (assoc 0 nblk)) "INSERT")
			(setq nblk (entget (car (entsel "\nChoix du bloc :"))))
		)
		(setq nblk (cdr (assoc 2 nblk)))

		(setq lis (list (cons 0 "INSERT") (cons 2 nblk)))

		(setq js (ssget "X" lis))

		(if js
			(progn
				(while (ssname js pos)
					(setq blk (ssname js pos))
					(setq blk2 (entget (ssname js pos)))
					(setq ins (cdr (assoc 10 blk2)))
					(command "_scale" blk "" ins fe)
					(setq pos (+ pos 1))
				)
			)
		)
	)
)

(setvar "cmdecho" myecho)
(princ)
)

Te permet de changer l'echelle sans changer le point d'insertion.

 

Merci a son auteur.

 

 

@+

 

[Edité le 31/10/2008 par lesourd2]

Posté(e)

re boonjour

 

Je reviens sur ce sujet qui va etre d'une gd actualite a partir de lundi ..... AIE ......

 

Pour Gilles tout d'abord un grand merci pour ton aide.

J'ai charge le lisp Edit_bloc et il fait merveille sur l'unite des blocs et le facteur d'echelle.

 

LE SEUL SOUCI est il est de TAILLE c'est la supperposition des blocs une fois le coefficient d'echelle

applique. Je veux dire que dans le cas de 3 blocs (1 RJ45+1RJ45Ts+1RJ45GTC) je me retrouve avec un pate de 3 blocs inseres les uns dans les autres. Ce qui est du au point d'insertion de ces 3

blocs qui eux ne changent pas de place ....... D'ou mon souci exprime dans mon post initial .....

De plus quand un bloc est positionne a fleur de voile il se retrouve en partie dans le voile

ce qui va pas plaire aux preposes de synthese.

 

Voila un probleme qui me fait penser que je vais avoir a reprendre TOUS les blocs une fois

modifies (x2) pour les replaces correctement. Et c'est ca que je voulais eviter :casstet: :casstet:

 

Pour Lesourd2 un grand merci aussi pour ton aide . Ton lispe va tres bien (juste un p moins complet que celui de Gilles). Mais j'ai le meme probleme. L'insertion de plusieurs blocs de natures differentes me donne un pate completement embrouille.

 

Peut etre que d'ici lundi une solution apparaitra ....... Sinon il restera la solution manuellle mais

quelle belle galere en perspective.

 

Un bon WE .................

 

 

Posté(e)

Ps: A GILLES et LESOUR2

 

J'ai aussi un petite question dont je n'ai pas la reponse sure ..... Dans le cas de modification

d'echelle sur des blocs avec ces lisps je voudrais savoir si ma biblio de blocs(wblocs) va etre modifee ou si c 'est seulement les blocs du fichier traite qui seront modifies ?

 

Si la biblio initiale venait a etre modifiee il serait peut etre prudent d'en faire une copie ????

Et du coup j'aurais biblio au 1/50 et au 1/100 ?????

 

Merci pour toutes reponses

 

Un tres bon WE :cool:

Posté(e)

Petite précisions.

 

Le LISP donné par lesourd2 modifie l'échelle de références de bloc insérées dans le dessin tandis que Edit_bloc modifie les définitions de bloc (et met à jour les références insérées en conséquences).

Concernant la bibliothèque, tout dépend de comment elle est faite.

Si c'est un dossier contenant un fichier (dwg) par bloc, Edit_bloc ne modifie que les définitions de la collection du dessin (les fichiers source sont inchangés).

Mais si la bibliothèque est constituée de plusieurs blocs dans un seul fichier qu'on peut importer avec le design center, par exemple) alors oui Edit_Bloc permet de modifier l'échelle de tous les blocs de la bibliothèque. Au début de l'histoire de ce LISP c'était sa vocation première.

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

Posté(e)

re

 

Ok Gilles merci pour les precisions ..... dans mon cas j'ai une biblio intitulee Blocs 1/50 que j'ai

constitue par la commande WBlocs. Donc si je modifi l'echelle de ces blocs ma biblio va etre

non plus au 1/50 mais au 1/100...... si j'ai bien compris ? D'ou l'utilite de faire une copie de

sauvegarde de la bib au 1/50 dans un autre repertoire.

 

Pour ce qui est de l'insertion je suppose que tu n'as pas de solution a proposer ...... Sinon

tu m'aurais deja oriente sur un mode d'emploi ......

 

Bon on va faire du calpinage manuel ........ :casstet:

 

Un grand merci pour votre aide bien precieuse.

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é