Aller au contenu

polyligne sur un cercle?


antonin31

Messages recommandés

Salut,

 

Commande POLYLIGN (_PLINE), clique sur un quadrant du cercle, puis option Arc, option Centre, clique sur le centre du cercle, puis sur un autre quadrants, et CLore.

Utilise les accrochages aux objets.

 

Commande: _pline

Spécifiez le point de départ: qua

de

La largeur courante est de 0.0000.

Spécifiez le point suivant ou [Arc/Demi-larg/LOngueur/annUler/LArgeur]: a

 

Spécifiez l'extrémité de l'arc ou

[Angle/CEntre/DIrection/DEmi-larg/LIgne/Rayon/Second-pt/annUler/LArgeur]: ce

 

Spécifiez le centre de l'arc: cen

de

Spécifiez l'extrémité de l'arc ou [Angle/Longueur]: qua

de

Spécifiez l'extrémité de l'arc ou

[Angle/CEntre/CLore/DIrection/DEmi-larg/LIgne/Rayon/Second-pt/annUler/LArgeur]:

cl

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

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Tu peux aussi utiliser la commande ANNEAU (_DONUT), diamètre interne de l'anneau : le diamètre du cercle, diamètre externe de l'anneau : idem tu plce ton anneau (c'est une polyligne) au centre de ton cercle et Echap pour sortir de la commande.

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

Lien vers le commentaire
Partager sur d’autres sites

Et si tu es "flemmard", avec seulement une sélection du cercle plus éventuellement une épaisseur , cette fonction de conversion:

 

(defun c:circle2lw ( / js ent dxf_ent pt_cen radius fst_pt opp_pt new_ep)
(while (null (setq js (ssget "_:S" '((0 . "CIRCLE"))))))
(setq
	ent (ssname js 0)
	dxf_ent (entget ent)
	pt_cen (cdr (assoc 10 dxf_ent))
	radius (cdr (assoc 40 dxf_ent))
	fst_pt (polar pt_cen 0.0 radius)
	opp_pt (polar pt_cen pi radius)
)
(princ "\nEpaisseur du cercle <")
(princ (getvar "PLINEWID"))
(princ ">: ")
(initget 68)
(setq new_ep (getdist))
(if new_ep (setvar "PLINEWID" new_ep))
(entmake
	(list
		'(0 . "LWPOLYLINE")
		'(100 . "AcDbEntity")
		(assoc 67 dxf_ent)
		(assoc 410 dxf_ent)
		(assoc 8 dxf_ent)
		(if (assoc 6 dxf_ent) (assoc 6 dxf_ent) '(6 . "BYLAYER"))
		(if (assoc 62 dxf_ent) (assoc 62 dxf_ent) '(62 . 256))
		(if (assoc 370 dxf_ent) (assoc 370 dxf_ent) '(370 . -3))
		(if (assoc 48 dxf_ent) (assoc 48 dxf_ent) '(48 . 1.0))
		'(100 . "AcDbPolyline")
		'(90 . 2)
		'(70 . 1)
		(cons 43 (getvar "PLINEWID"))
		(cons 38 (caddr fst_pt))
		(if (assoc 39 dxf_ent) (assoc 39 dxf_ent) '(39 . 0.0))
		(cons 10 (list (car fst_pt) (cadr fst_pt)))
		'(40 . 0.0)
		'(41 . 0.0)
		'(42 . 1.0)
		(cons 10 (list (car opp_pt) (cadr opp_pt)))
		'(40 . 0.0)
		'(41 . 0.0)
		'(42 . 1.0)
		(assoc 210 dxf_ent)
	)
)
(entdel 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

Je veux pas dire mais.........on sort le bazooka pour .........

si j'avais besoin de faire une polyligne sur un cercle, je ferais

contour

1 clic un point dans le cercle

 

je vois pas plus simple :)

Bonne journée

Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.

Lien vers le commentaire
Partager sur d’autres sites

si j'avais besoin de faire une polyligne sur un cercle, je ferais contour

 

Dans la plus part des cas cela fonctionne, mais tout d'abord tu fait un doublon alors que je converti l'entité. Contour ne fonctionne pas toujours et surtout pour des objets non-parrallèle au SCG. Le lisp fonctionne dans n'importe quel SCU depuis un autre SCU/SCG et garde les propriétés de calque, couleur etc...

 

Et puis ce n'est qu'une autre alternative... par contre en modifiant un peu le lisp on pourrait traiter tous les cercles sans aucune saisie de l'utilisateur.

 

La solution est à adapter selon le besoin, contour peut très bien faire l'affaire ;)

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

mais à quoi ça sert de faire une polyligne sur un cercle ?

 

A vrai dire pas à grand chose.... ne serait ce que de pouvoir y appliquer une largeur, ce qui revient au même que d'utiliser la commande ANNEAU (_DONUTS) comme proposé par Gilles.

 

NB: Ne pas confondre avec les épaisseurs que l'on peut appliquer aux objets.

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

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é