Aller au contenu

Messages recommandés

Posté(e)

Bonjour à tous et meilleurs voeux pour 2009 !

 

Je suis en train de modifier une de nos routines qui nous permet de générer des réductions soudées selon les normes SMS, DIN ou ISO. Pour l'instant, cela ne fait QUE des réductions concentriques par révolution d'une polyligne.

 

L'objectif de la modification est de pouvoir choisir le type de réduction à générer (concentrique ou excentrique). Pour cela, je souhaiterais utiliser la commande 3D "Lissage" ('_loft' pour les anglophones). Mais je galères sur les paramétres de cette commande en Lisp.

:casstet:

(command "_loft" ? ?)

 

Si quelqu'un pouvait m'expliquer comment faire, ce serait sympa !

 

Cordialement,

 

Fabrice

""Nous avons un avenir et il sera fait de nos rêves si nous avons le courage de bousculer les idées reçues" - S. HONDA

Posté(e)

Salut,

 

Tout dépend des options que veux utiliser.

En règle générale, les arguments requis par la fonction command, outre le nom de la commande, sont les mêmes que les options de ladite commande.

Il n'y a pas grand risque à faire des tests directement en ligne de commande, si les arguments ne sont pas suffisant, l'utilisateur reprend la main, si les arguments ne sont pas valides ça génèrera une erreur.

 

Pour faire un lissage à partir de 2 coupes uniquement (ent1 et ent2) :

(command "_.loft" ent1 ent2 pause "" "")

 

Pour faire un lissage à partir d'une liste de coupes (lst) et suivant un chemin (path) -d'après d'un LISP donné dans ce sujet réponse 11

(defun loft_along_path (lst path)
(command "_.loft")
(mapcar 'command lst)
(command "" "_path" path)
)

 

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

Posté(e)
réponse 11

 

Rien à voir avec le sujet :

(gile), n'as-tu pas remarqué que chaque réponse contient une indication de lien pour que l'on puisse pointer directement avec un lien .... ?

 

Patrick l'avait créé exprès !

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

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

Maitre Gile,

 

Merci pour votre aide !

Après quelques cafouillages (Je ne suis qu'un jeune padawan en LISP !), j'ai reussi à piger cette commande et comment l'exploiter.

Pour info : je te retourne l'extrait de code de la fonction pour avoir un panorama complet (pour la pédagogie !) :

 

(defun trace_dessin-reduc()
 ;Definit les coordonnees du centre du grand diametre1
 (setq x1 0.0)
 (setq y1 0.0)
 (setq z1 0.0)
 (setq pt1 (list x1 y1 z1)) 	;pt1 contient les coordonnées du centre du grand diametre
 ;Definit les coordonnees du centre du petit diametre2
 (setq x2 0.0)
 (setq y2 0.0)
 (setq z2 lg_reduc) 		;lg_reduc est la longueur normalisée de la réduction selon son diametre
 (setq pt2 (list x2 y2 z2)) 	;pt2 contient les coordonnées du centre du petit diametre
 ;place dans ini_obj la valeur d'état de l'accroche objet (actif ou inactif)
 (setq ini_obj (getvar "osmode"))
 ;désactive l'accroche objet
 (command "osmode""0")
 ;Tracage du grand diametre
 (command "_circle" pt1 gray)
 (setq ent1 (entget (entlast))) ;place l'objet cercle dans la variable ent1
 (setq nom_ent1 (cdr (assoc -1 ent1))) ;nom_ent1 contient le nom de la derniere entité créée
 ;Tracage du petit diametre
 (command "_circle" pt2 pray)
 (setq ent2 (entget (entlast))) ;place l'objet cercle dans la variable ent2
 (setq nom_ent2 (cdr (assoc -1 ent2))) ;nom_ent2 contient le nom de la derniere entité créée
 ;Genération du 3D
 (command "_loft" nom_ent1 nom_ent2 "" "") ; genere un solide 3d par lissage
 ;retourne la valeur initiale d'état de l'accroche objet avant exec de la routine
 (command "osmode" ini_obj)
);fin de fonction

 

Votre humble padawan :D

 

Fabrice

""Nous avons un avenir et il sera fait de nos rêves si nous avons le courage de bousculer les idées reçues" - S. HONDA

Posté(e)
réponse 11

 

Rien à voir avec le sujet :

(gile), n'as-tu pas remarqué que chaque réponse contient une indication de lien pour que l'on puisse pointer directement avec un lien .... ?

 

Patrick l'avait créé exprès !

 

Si je l'utilise, mais ça ne fonctionne pas quand la réponse n'est pas sur la première page du message (ou alors, je n'ai pas compris de quoi tu parles).

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

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é