Aller au contenu

Points au centre des cercles SVP


Messages recommandés

Posté(e)

 

Bonjour

 

SVP j'aurais besoin d'une petite routine qui à partir d'une sélection de cercles

construise TOUT SIMPLEMENT un joli point graphique AutoCAD au CENTRE !

 

Si une ame charitable pouvait m'aider, ce serait sympa !

 

Merci d'avance, Le Decapode (qui tourne en rond)

 

 

 

Autodesk Expert Elite Team

Posté(e)

Salut,

Que je comprenne :

 

à partir d'une sélection de cercles

construise TOUT SIMPLEMENT un joli point graphique AutoCAD au CENTRE !

 

... au centre de quoi ?

 

- de chaque cercle ?

 

- de la selection de cercle ? (centre de gravité de la surface formée...)

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

(setq sel(ssget '((0 . "CIRCLE"))))
(setq compt 0)
(repeat(sslength sel)
 (command "point"(cdr(assoc 10(entget(ssname sel compt)))))
 (setq compt(1+ compt))
 )
(command)

 

C'est du brut de brut !

 

Pas de SCU, pas de gestion des accrobj, fin de routine avec ENTREE ou ECHAP

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

En reprenant le même principe du Post de ce jour.

(defun c:Pt2center ( / js n dxf_ent dxf_39 dxf_10)
(initget "Tous Sélection _All Select")
(if (eq (getkword "\nChoix des Cercle ? [Tous/Sélection] : ") "All")
	(setq js
		(ssget "_X"
			(list
				(cons 0 "CIRCLE")
				(cons 67 (if (eq (getvar "CVPORT") 2) 0 1))
				(cons 410 (if (eq (getvar "CVPORT") 2) "Model" (getvar "CTAB")))
			)
		)
	)
	(setq js
		(ssget
			(list
				(cons 0 "CIRCLE")
				(cons 67 (if (eq (getvar "CVPORT") 2) 0 1))
				(cons 410 (if (eq (getvar "CVPORT") 2) "Model" (getvar "CTAB")))
			)
		)
	)
)
(cond
	(js
		(setq n -1)
		(repeat (sslength js)
			(setq dxf_ent (entget (ssname js (setq n (1+ n)))))
			(if (cdr (assoc 39 dxf_obj))
				(setq dxf_39 (cdr (assoc 39 dxf_obj)))
				(setq dxf_39 0.0)
			)
			(setq dxf_10 (trans (cdr (assoc 10 dxf_ent)) (cdar dxf_ent) 0))
			(entmake
				(list
					(cons 0 "POINT")
					(cons 100 "AcDbEntity")
					(assoc 67 dxf_ent)
					(assoc 410 dxf_ent)
					(assoc 8 dxf_ent)
					(if (assoc 62 dxf_ent) (assoc 62 dxf_ent) (cons 62 256))
					(if (assoc 6 dxf_ent) (assoc 6 dxf_ent) (cons 6 "BYLAYER"))
					(if (assoc 370 dxf_ent) (assoc 370 dxf_ent) (cons 370 -1))
					(cons 100 "AcDbPoint")
					(cons 10 dxf_10)
					(cons 39 dxf_39)
					(assoc 210 dxf_ent)
				)
			)
		)
		(print (sslength js)) (princ " Point(s) créé(s).")
	)
)
(prin1)
)

 

[Edité le 25/7/2006 par bonuscad]

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

Posté(e)

 

Bonsoir

 

Merci à Tramber et aussi à Bonuscad dont la routine est TIP-TOP ! :) :D :cool:

 

Le Decapode "à vos pieds mais sans les pincer"

 

 

 

Autodesk Expert Elite Team

Posté(e)

Ce fut un plaisir d'aider un congénère !

 

"Le dinosaure lispant" ;)

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

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é