Aller au contenu

spline en polyligne


didiercaze

Messages recommandés

Salut Didier,

Une aire? Je pense que tu veux parler de surface, mais peut-être que je me trompe.

D'après ce que je sais les créations d'aires sont dans Autodesk Architectural Desktop et pas AutoCAD mais ce n'est pas le sujet de la question.

Néanmoins, si tu souhaite, calculer la surface ou l'aire, d'une région, la commande "aire" > Entrée > Objet, devrait suffir. Cela donne l'aire de la région.

 

La commande "propmeca" est fonctionne bien aussi bien.

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Il me semble que tu peux pas convertir des splines en polylinges. Néanmoins, tu créais une polyligne qui passe par les point de ta courbe (elle sera formée de portions de droite) Quand tu as fini tu lisses la polyligne:

 

Commande: pedit

Options: L (lisser) ou S (spline) [valider]

 

Ca devrait donner de bons résultats. :o

www.concombre-masque.com

 

Lien vers le commentaire
Partager sur d’autres sites

Bonjour

Excuse moi pour le retard à la réponse, mais je n' avais pas vu ta question.

Bon, pour transformer une "SPLINE" en "POLYLIGNE", c'est un peu lourd mais ça fonctionne.

isoler sur un même calque toutes tes "SPLINES"

faire un "WBLOC" de ces objets

ouvrir le nouveau fichier créé

le sauvegarder en "DXF12"

revenir dans le fichier initial

et importer le DXF

les splines sonts devenues des "POLYLIGNES"

OUF,

à bientôt

 

 

Lien vers le commentaire
Partager sur d’autres sites

  • 2 ans après...

Ou ceci, seule différence, tu choisi la definition de la polyligne par une distance de résolution.

Fonctionne pour des SPLINE ou ELLIPSE.

 

 

(defun C:S-E2PL ( / ent typent dxf_ent obj_vlax param_start param_end perim_obj pt_start pt_end res_track flag_ucs last_e old_osmd old_pdmd l_pt)
(while (null (setq ent (entsel "\nChoix de la Spline ou Ellipse à convertir en polyligne: "))))
(setq typent (cdr (assoc 0 (setq dxf_ent (entget (car ent))))))
(cond
	((or (eq typent "SPLINE") (eq typent "ELLIPSE"))
		(vl-load-com)
		(setq
			obj_vlax (vlax-ename->vla-object (car ent))
			param_start (vlax-curve-getStartParam obj_vlax)
			param_end (vlax-curve-getEndParam obj_vlax)
			perim_obj (vlax-curve-getDistAtParam obj_vlax (+ param_start param_end))
			pt_start (vlax-curve-getStartPoint obj_vlax)
			pt_end (vlax-curve-getEndPoint obj_vlax)
		)
		(initget 6)
		(setq
			res_track (getdist (cadr ent) (strcat "\nDistance de résolution< " (rtos (/ perim_obj 100.0)) "> : "))
			last_e (entlast)
			old_osmd (getvar "osmode")
			old_pdmd (getvar "pdmode")
		)
		(if (not res_track) (setq res_track (/ perim_obj 100.0)))
		(initget "Oui Non _Yes No")
		(if (eq (getkword "\nVoulez vous faire une projection sur le SCU courant? [Oui/Non] < Non> : ") "Yes")
			(setq flag_ucs nil)
			(progn
				(command "_.ucs" "_entity" (car ent))
				(setq flag_ucs T)
			)
		)
		(cond
			((and (eq typent "SPLINE") (not (zerop (boole 1 1 (cdr (assoc 70 dxf_ent))))))
				(setq l_pt '("_close"))
			)
			((and (eq typent "ELLIPSE") (zerop (cdr (assoc 41 dxf_ent))) (eq (cdr (assoc 42 dxf_ent)) (* 2 pi)))
				(setq l_pt '("_close"))
			)
			(T
				(setq l_pt (cons (trans pt_end 0 1) '("")))
			)
		)
		(setvar "osmode" 0)
		(setvar "pdmode" 1)
		(setvar "cmdecho" 0)
		(command "_.measure" (car ent) res_track)
		(while
			(and
				(= (cdr (assoc 0 (setq dxf_ent (entget (entlast))))) "POINT")
				(not (equal (entlast) last_e))
			)
			(setq l_pt (cons (trans (cdr (assoc 10 dxf_ent)) 0 1) l_pt))
			(entdel (entlast))
		)
		(command "_.pline" (mapcar 'command (cons (trans pt_start 0 1) l_pt)))
		(if flag_ucs (command "_.ucs" "_previous"))
		(initget "Oui Non _Yes No")
		(if (not (eq (getkword "\nEffacer l'entité source [Oui/Non] < Oui> : ") "No"))
			(entdel (car ent))
		)
		(setvar "osmode" old_osmd)
		(setvar "pdmode" old_pdmd)
		(setvar "cmdecho" 1)
	)
	(T (princ "\nN'est pas une Spline ou Ellipse!"))
)
(prin1)
)
(princ "\nS-E2PL.LSP chargé. Tapez S-E2PL pour convertir SPLINE ou ELLIPSE en POLYLIGNE.")
(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

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é