Aller au contenu

Messages recommandés

Posté(e)

Bonjour j'ai creer des bloc dans un fichier et quand j'ai rouvert ce fichier, les bloc que j'avais creer (des bloc dynamiques) ont étés renommer en *u125 ou*u148 ou etc...

 

le probleme c'est qu'il ne sont plus exploitables, je suis obliger de les décomposer et tout recommencer

 

de quoi cela peut-il provenir?? merci

Posté(e)

Salut,

 

C'est le comportement normal avec les blocs dynamiques.

Quand on modifie leurs propriétés dynamiques, ils deviennent des blocs anonymes.

Il y a là une certaine logique, ces blocs n'étant plus identiques, il faut pouvoir les identifier individuellement.

 

le probleme c'est qu'il ne sont plus exploitables

Que veux tu dire par là ?

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

Posté(e)

Salut olivertsss,

 

Je travail depuis un moment sur les blocs dynamiques, et oui c'est un peu embêtant le fait qu'ils

deviennent des *U, mais comme l'a dit (Gile) c'est le fait que tu modifies les propriétés qui fait

changer le nom.

 

La seule solution que j'ai trouvé pour retrouver mes blocs, c'est de passer du v-lisp afin de trouver le nom d'origine.

Tous pour lisp, Lisp pour tous!

Avec Revit, cela ne vas trop vite...

Posté(e)

reponse pour Gile

 

du fait que mon bloc se soit renommer *uxxx, les fonction dynamiques n'existent plus, je suis donc obliger explser mon bloc pour reatribuer des parametres et actions dynamique

 

Tchao

 

Posté(e)

du fait que mon bloc se soit renommer *uxxx, les fonction dynamiques n'existent plus

 

Ça c'est pas normal.

La disparition des propriétés dynamiques n'est pas due au fait que le bloc ait été renommé.

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

Posté(e)

bonjour

 

bsed67 bonne question de la part de oliverts

comment tu fais en vlisp pour retrouver le nom d'origine ??

 

j'ai cherche dans un bloc avec visual lips " ENA1 " dans toute l'arborescence impossible de retouver le nom de base du bloc

 

 (defun c:inf ()
 (vl-load-com)
 (setq ent1 (car (nentsel "\rSELECTIONNER UNE ENTITE POUR INFO1.")))
 (setq CODE1 (cdr (assoc -1 (entget ent1))))
 (SETq ena1 (vlax-ename->vla-object code1))
 (vlax-dump-object ena1)
 ((vla-get-ModelSpace acadDocument) 'vlax-dump-Object)
)

 

 

j'ai un autre souci de bloc dans un lisp pour aligner des blocs je change la reference " 10 " du bloc sauf que les attributs ne change pas de place

normal ?? pas normal ???

il y a une variable cache dans autocad pour que les attributs bougent en fonction de ma modification du point de base du bloc ??

 

phil

 

 					; ---------------------------------------------------
				; ALIGNEMENT DES BLOCS AVEC POSSIBILITE DE COPIE
				; ---------------------------------------------------

(defun C:ALB (/ ENTX)
 (setvar "cmdecho" 0)
 (command "scu" "")
 (setq COPIETEXT (getcfg "APPDATA/COPIETEXT"))
 (setq TYPEALGN (getcfg "APPDATA/TYPEALGN"))
 (setq DALTX (atof (getcfg "APPDATA/DALTX")))
 (setq DALTY (atof (getcfg "APPDATA/DALTY")))
 (initget "X Y XY")
 (setq	TMP
 (getkword
   (strcat "\nENTRER LE PLAN DE PROJECTION (X) (Y) (XY) ACTUELLEMENT <"
	   TYPEALGN
	   "> : "
   )
 )
 )
 (if TMP
   (setq TYPEALGN TMP)
 )
 (setq
   TMP1 (getdist
   (strcat
     "\nENTRER LA VALEUR DU DECALAGE DES BLOCS SUR X DESIRE <"
     (rtos DALTX 2 8)
     ">: "
   )
 )
 )
 (if TMP1
   (setq DALTX TMP1)
 )
 (setq
   TMP1 (getdist
   (strcat
     "\nENTRER LA VALEUR DU DECALAGE DES BLOCS SUR Y DESIRE <"
     (rtos DALTY 2 8)
     ">: "
   )
 )
 )
 (if TMP1
   (setq DALTY TMP1)
 )
 (initget "oui OUI o O non NON n N")
 (setq	TMP
 (getkword
   (strcat
     "\nVOULEZ VOUS FAIRE DES COPIES DES BLOCS ( O(UI) / N(ON) ) <"
     COPIETEXT
     "> : "
   )
 )
 )
 (if TMP
   (setq COPIETEXT TMP)
 )
 (setq ENTX NIL)
 (prompt "\nSELECTIONNER LE(S) BLOC(S) A MODIFIER :")
 (while (null ENTX)
   (setq ENTX (ssget '((0 . "INSERT"))))
 )
 (setq	POINTREF
 (getpoint
   (strcat
     "\nENTRER LE POINT DE REFERENCE POUR L'ALIGNEMENT : "
   )
 )
 )
 (setq XPOINTREF (car POINTREF))
 (setq YPOINTREF (cadr POINTREF))
 (if (or (= COPIETEXT "oui")
  (= COPIETEXT "OUI")
  (= COPIETEXT "o")
  (= COPIETEXT "O")
     )
   (command "COPIER" ENTX "" "0,0" "0,0")
 )
 (setq COMPT 0)
 (setq COM (sslength ENTX))
 (while (< COMPT COM)
   (progn
     (setq ENT (entget (ssname ENTX COMPT)))
(progn (if (= TYPEALGN "X")
	 (if (= DALTX 0)
	   (setq ENT
		  (subst
		    (cons
		      10
		      (list (car (cdr (assoc 10 ENT))) YPOINTREF 0)
		    )
		    (assoc 10 ENT)
		    ENT
		  )
	   )
	   (setq
	     ENT (subst	(cons 10
			      (list (+ XPOINTREF (* COMPT DALTX))
				    YPOINTREF
				    0
			      )
			)
			(assoc 10 ENT)
			ENT
		 )
	   )
	 )
       )
       (if (= TYPEALGN "Y")
	 (if (= DALTY 0)
	   (setq ENT
		  (subst
		    (cons
		      10
		      (list XPOINTREF (cadr (cdr (assoc 10 ENT))) 0)
		    )
		    (assoc 10 ENT)
		    ENT
		  )
	   )
	   (setq
	     ENT (subst	(cons 10
			      (list XPOINTREF
				    (- YPOINTREF (* COMPT DALTY))
				    0
			      )
			)
			(assoc 10 ENT)
			ENT
		 )
	   )
	 )
       )
       (if (= TYPEALGN "XY")
	 (setq ENT (subst (cons	10
				(list (+ XPOINTREF (* COMPT DALTX))
				      (- YPOINTREF (* COMPT DALTY))
				      0
				)
			  )
			  (assoc 10 ENT)
			  ENT
		   )
	 )
       )
)
     (entmod ENT)
     (command "_attsync" "_n" (cdr (assoc 2 ent))) 
     (setq COMPT (1+ COMPT))
   )
 )
 (command "scu" "p")
 (setcfg "APPDATA/COPIETEXT" COPIETEXT)
 (setcfg "APPDATA/TYPEALGN" TYPEALGN)
 (setcfg "APPDATA/DALTX" (rtos DALTX 2 8))
 (setcfg "APPDATA/DALTY" (rtos DALTY 2 8))
 (princ)
)

 

[Edité le 12/3/2008 par PHILPHIL]

FREELANCE

Autodesk Architecture 2025 sous windows 11 64

REVIT

24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal

Posté(e)

comment tu fais en vlisp pour retrouver le nom d'origine ??

 

C'est la propriété EffectiveName.

 

(setq blk (car (entsel "\nSélectionnez un bloc: ")))
(setq blk (vlax-ename->vla-object blk))
(setq nom (vla-get-EffectiveName blk)) 

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

Posté(e)

j'ai un autre souci de bloc dans un lisp pour aligner des blocs je change la reference " 10 " du bloc sauf que les attributs ne change pas de place

normal ?? pas normal ???

il y a une variable cache dans autocad pour que les attributs bougent en fonction de ma modification du point de base du bloc ??

 

Il faut synchroniser les attributs après le (entmod ent) :

 

(command "_.attsync" "_n" (cdr (assoc 2 ent))) 

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

Posté(e)

Bonsoir à toutes et tous,

 

PHILPHIL, sur ton Lisp, comment fais-ton pour choisir le plan de projection et que répondre si on est en 2D ? Si je prend l'option copie, il le fais bien, mais le colle sur l'original. Je n'arrive donc pas à avoir de décalage. C'est qui le point de référence pour l'alignement ?

 

Merci d'avance.

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

HELLO

 

ok gile ca marche merci

 

lili2006,

 

ce lisp est juste une modification du lisp " ALT" ( alignement des textes ) que tu avais deja essayé

 

pour un alignement sur l'axe des X : entree X

pour un alignement sur l'axe des Y : entree Y

 

si tu rentres

un aligement sur Y

une valeurs pour les decalages "50" par exemple

 

ca empile les blocs tout les 50 unites

si decalage egal "0" ca alignement les bloc sur l'axe Y en modifiant la position des X

 

le decalage peut etre negatif aussi

 

OK ???

 

 

phil

FREELANCE

Autodesk Architecture 2025 sous windows 11 64

REVIT

24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal

Posté(e)

Salut ,

 

Pour PHILPHIL: Désolé de n'avoir pas encore répondu, mais (Gile) t'as donné la réponse,

 

Pour oliverts: j'ai découvert un bug d'autocad sur les blocs dynamiques et je pense que tu dois avoir le même. Si tu insères un bloc dynamique loin du point 0,0,0 du dessin, là ca va, mais si tu le pivotes,

le déplace un peu ou change quoi que se soit, les petites flèches bleues (des propriétés dynamiques) foutent le camp. Mais le pire, c'est que cela m'est aussi arrivé proche du point 0,0,0, après avoir déplacé plusieurs le bloc et de pas grand chose (quelques mètres seulement) et fait des rotations.

Mais en v-lisp tu arrive toujours à chopper les propriétés dynamiques. Donc ma super astuce, si les propriétés ne sont plus accessibles, j'ai fait des fonctions v-lisp (spécifique à chaque bloc) qui récupère les infos (position, rotation, propriétés dynamiques), supprime le bloc sélectionné et ré-insère un nouveau avec les paramètres sauvegardés.

 

 

Tous pour lisp, Lisp pour tous!

Avec Revit, cela ne vas trop vite...

Posté(e)

hello

 

petite precision sur les blocs dynamiques

 

les petites fleches et autres moyens de modification des blocs disparaissent

aussi bien sur la fenetre de dessin que dans la fenetre des proprietes

quand les echelles X,Y,Z ne sont pas exatement les meme

 

phil

 

FREELANCE

Autodesk Architecture 2025 sous windows 11 64

REVIT

24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal

Posté(e)
Salut ,

 

Donc ma super astuce, si les propriétés ne sont plus accessibles, j'ai fait des fonctions v-lisp (spécifique à chaque bloc) qui récupère les infos (position, rotation, propriétés dynamiques), supprime le bloc sélectionné et ré-insère un nouveau avec les paramètres sauvegardés.

 

 

Salut Bseb 67

 

tu peux m'expliquer ce qu'est ton V-lisp pour retrouver les proprietes du bloc, parceque la je vois pas

 

merci, bye

Posté(e)

Bonjour à toutes et tous,

 

Effectivement, PHILPHIL !

 

Par contre, les attributs de blocs se copient sur le point d'insertion de l'original chez moi ?!

Par exemple sur l'image ci-dessous, la lettre A est resté sur le point d'insertion du bloc origine (celui de droite) :

 

<!--url{0}-->

 

Je suis sous une V2008 full !

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

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é