CADxp: Décaler une ligne/polyligne - CADxp

Aller au contenu

Page 1 sur 1

Décaler une ligne/polyligne

#1 L'utilisateur est hors-ligne   DPB6804 

  • ceinture orange
  • Groupe : Membres
  • Messages : 21
  • Inscrit(e) : 10-janvier 08

Posté 10 septembre 2017 - 10:23

Bonjour,
Je voudrait créer un outil me permettant de décaler une ligne/polyligne d'une certaine distance et forcer le résultat dans un layer défini.
J'ai facilement fait l'outil pour déplacer d'une certaine distance mais pour le reste je n'y arrive pas.
Pourriez-vous m'aider.
Merci.
Alain
0

#2 L'utilisateur est hors-ligne   didier 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 8424
  • Inscrit(e) : 18-décembre 02
  • LocationPlanète : Terre

Posté 10 septembre 2017 - 11:55

Coucou

de quoi parles-tu précisément ?

tu souhaites un lisp ?
un outil peut être du dotnet, du script, du lisp ou encore autre chose.
en fonction de tes précisions tu trouveras certainement une réponse
Éternel débutant ...
Programmer AutoCAD
0

#3 L'utilisateur est hors-ligne   DPB6804 

  • ceinture orange
  • Groupe : Membres
  • Messages : 21
  • Inscrit(e) : 10-janvier 08

Posté 10 septembre 2017 - 12:41

Bonjour,
je veux un outil que je mettrais dans la palette qui me décalerait une ligne/polyligne de 0.8 (par exemple) et me mettrait directement cette ligne décalée dans un layer prédéfini.

J'ai ceci dans ma commande ^C^C_offset;0.8; et je change dans général le layer etc...
Mais ça ne fonctionne pas.
Grrrr.
0

#4 L'utilisateur est hors-ligne   didier 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 8424
  • Inscrit(e) : 18-décembre 02
  • LocationPlanète : Terre

Posté 10 septembre 2017 - 16:23

Coucou

On parle donc de macro dont on parle, c'est bien ce que tu voudrais
On ne travaille pas tous le dimanche et donc la fréquentation baisse ce jour-là
Mais dès demain, les cadors de la macro viendront te donner la solution sans aucun doute


Éternel débutant ...
Programmer AutoCAD
0

#5 L'utilisateur est hors-ligne   DPB6804 

  • ceinture orange
  • Groupe : Membres
  • Messages : 21
  • Inscrit(e) : 10-janvier 08

Posté 10 septembre 2017 - 17:59

Voir le messagedidier, le 10 septembre 2017 - 16:23 , dit :

Coucou

On parle donc de macro dont on parle, c'est bien ce que tu voudrais
On ne travaille pas tous le dimanche et donc la fréquentation baisse ce jour-là
Mais dès demain, les cadors de la macro viendront te donner la solution sans aucun doute



C'est bien ça merci. :rolleyes:
0

#6 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 11290
  • Inscrit(e) : 02-septembre 05

Posté 10 septembre 2017 - 18:23

Salut,

Une macro avec un peu de LISP dedans (remplacer "calque_offset" par le nom du calque) :
^C^C(setq *layer* (getvar 'clayer));(setvar 'clayer "calque_offset");_offset;_layer;_current;0.8;\\;(setvar 'clayer *layer*);


Mais quitte à utiliser du LISP autant le faire directement en LISP :
(defun c:BPB6804 (/ clay)         ; <- changer le nom de la commande comme désiré
  (setq clay (getvar 'clayer))
  (setvar 'clayer "CALQUE_OFFSET")	; <- changer le nom du calque comme désiré
  (command-s "_.offset" "_layer" "_current" 0.8)
  (setvar 'clayer clay)
  (princ)
)

Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

#7 L'utilisateur est hors-ligne   DPB6804 

  • ceinture orange
  • Groupe : Membres
  • Messages : 21
  • Inscrit(e) : 10-janvier 08

Posté 10 septembre 2017 - 18:37

Voir le message(gile), le 10 septembre 2017 - 18:23 , dit :

Salut,

Une macro avec un peu de LISP dedans (remplacer "calque_offset" par le nom du calque) :
^C^C(setq *layer* (getvar 'clayer));(setvar 'clayer "calque_offset");_offset;_layer;_current;0.8;\\;(setvar 'clayer *layer*);


Mais quitte à utiliser du LISP autant le faire directement en LISP :
(defun c:BPB6804 (/ clay)         ; <- changer le nom de la commande comme désiré
  (setq clay (getvar 'clayer))
  (setvar 'clayer "CALQUE_OFFSET")	; <- changer le nom du calque comme désiré
  (command-s "_.offset" "_layer" "_current" 0.8)
  (setvar 'clayer clay)
  (princ)
)


Un tout grand merci, je viens d'utiliser la macro qui fonctionne très bien. Il n'y a plus qu'a comprendre comment elle fonctionne. :-)
Bonne soirée.
Alain
0

#8 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 11290
  • Inscrit(e) : 02-septembre 05

Posté 10 septembre 2017 - 19:36

L'option "Calque" ("_Layer") de la commande "_OFFSET" permet de choisir le calque sur lequel sera placé l'entité décalée entre le calque de l'objet source et le calque courant.
La macro, comme le LISP, change le calque courant, lance la commande "DECALER", force l'option "Calque" sur "Courant", puis restaure le calque courant précédent.
Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

#9 L'utilisateur est hors-ligne   julienetu06 

  • ceinture blanche
  • Groupe : Membres
  • Messages : 4
  • Inscrit(e) : 02-mai 19

Posté 06 mai 2019 - 15:26

Bonjour,

Quand vous dîtes qu'il y a du LISP, je peux faire un ce script sur Bloc-Note il fonctionne?
Parce que mon Autocad (LT 2015) me dit qu' il ne comprend pas la fonction ^C^C, alors que c'est le début de toutes les macros que je rencontre.
0

#10 L'utilisateur est hors-ligne   DenisHen 

  • ceinture rouge et blanche 6em dan
  • Groupe : Membres
  • Messages : 3400
  • Inscrit(e) : 17-décembre 05
  • LocationDIERREY SAINT JULIEN (10190)

Posté 06 mai 2019 - 15:44

Bonjour.

Désolé Juliennetu06, mais les version LT d'AutoCAD n'ont pas d'interpréteur LISP, ils ne fonctionneront pas...
Windows 10 Pro 64bits / AutoCAD MAP 3D 2019 (22.0.022.4)
Covadis 16 / Microstation V8i

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres...
Davantage d'avantages, avantagent davantage. (Bobby Lapointe)
La connaissance s'accroît quand on la partage.(Socrate)
0

#11 L'utilisateur est hors-ligne   didier 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 8424
  • Inscrit(e) : 18-décembre 02
  • LocationPlanète : Terre

Posté 06 mai 2019 - 15:59

Coucou

Pourquoi passer par un éditeur de texte pour faire les macros ?
REBCAO serait plus efficace que moi pour la réponse mais le ^C^C en début est pour simuler la commande "annuler" en "DOS"***
Donc je ne vois pas pourquoi il est refusé par ton LT.

Amicalement
***comme quoi sous "Ouine Dose" le "DOS" n'est pas bien loinà ce sujet je regrette ce temps du Ctrl+C opérationnel qui permettait d'avorter des commandes chronophages, de nos jours on devient intime avec le sablier quand on lance une commande qui dure qui dure qui dure...

Éternel débutant ...
Programmer AutoCAD
0

#12 L'utilisateur est hors-ligne   julienetu06 

  • ceinture blanche
  • Groupe : Membres
  • Messages : 4
  • Inscrit(e) : 02-mai 19

Posté 06 mai 2019 - 16:21

Merci pour les réponses rapides et oui je suis sur de l'éditeur de texte mais je galère comme même. C'est pour ça que je demendais si ça marcherai.
REBCAO m'a déjà donné un coup de main mais je vais le recontacter.
0

Partager ce sujet :


Page 1 sur 1


Réponse rapide

  

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)