La Lozère Posté(e) le 23 novembre 2017 Posté(e) le 23 novembre 2017 Bonjour,Voilà, je cherche à créer UNE hachure suivant un contour sélectionné, dans le calque du contour sélectionné.Donc à partir d'une partit de code que j'ai trouvé (ET COMPRIS), j'arrive à hachurer mon contour:(defun c:hs (/ ss n) (if (setq n -1 ss (ssget) ) (while (setq ent (ssname ss (setq n (1+ n)))) (command "_bhatch" "_select" ent "" "") ) ) (princ)) Ensuite, je cherche à extraire le nom du calque du contour, soit de la sélection "ss", mais c'est la que je plante.Car apparemment, la fonction "ssget" n'est pas compatible avec "entget", ce qui est normal car on demande les infos d'UN objet à partir d'une sélection multiple.Donc j'ai essayé de remplacer "ssget" par "entsel", mais ça ne marche pas... Je me prend la tête depuis 1 heure.... www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
DenisHen Posté(e) le 23 novembre 2017 Posté(e) le 23 novembre 2017 Salut La Lozère. PS : le message suivant est le bon... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
DenisHen Posté(e) le 23 novembre 2017 Posté(e) le 23 novembre 2017 Si tu veux placer les hachures dans le même calque que les contours 1 par 1 :;;; hachure selon contours dans même calque, pour La Lozère de CadXP ;;; DenisHen... (defun c:hs (/ ss n) (setq old_layer (getvar "clayer")) (while (setq ent (car (entsel "\nSélectionnez le contour :"))) (setq NomCalq (cdr (assoc 8 (entget ent))) ) ;_ Fin de setq (setvar "clayer" NomCalq) (command "_bhatch" "_select" ent "" "") (setvar "clayer" old_layer) (princ (strcat "\nNomCalq=" NomCalq)) ) ;_ Fin de while (princ) ) ;_ Fin de defunJ'ai choisi de hachurer chaque contour un par un... Je trouve ça plus "propre"... On aurait pu aussi créer un calque NomCalq + "_HACH" pour faire plus pratique. Exemple, si le contour est dans le calque Contour, on créé un calque Contour_HACH et on place les hachures dedans... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
La Lozère Posté(e) le 23 novembre 2017 Auteur Posté(e) le 23 novembre 2017 Merci Denis, j'ai cherché...; Et je me suis bien pris la tête. Mais comme il faut que j'avance mon taf, j'avais laissé de coté.Du coup, ton code va bien m'aider. Juste un bricole, le top serait que ça marche si l'objet était préalablement sélectionné.Mais MERCI www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
vincentp010 Posté(e) le 23 novembre 2017 Posté(e) le 23 novembre 2017 Tu peux faire ton entget sur ta variable ent:(defun c:hs (/ ss n) (if (setq n -1 ss (ssget) ) (while (setq ent (ssname ss (setq n (1+ n)))) (command "_bhatch" "_select" ent "" "") (setq MONCALQUE (cdr (assoc 8 (entget ent)))) ) ) (princ) ) Aide au téléchargement du cadastre dgfip-download-helper Insertion de photos géolocalisées exif https://www.dropbox.com/s/gkf6o9ac2hxen97/exifscr.zip?dl=0 Script correction BUG SPDC V2, propriétaire département 21 et 22 : https://greasyfork.org/scripts/442400-spdcv2/code/SPDCV2.user.js
DenisHen Posté(e) le 23 novembre 2017 Posté(e) le 23 novembre 2017 Du coup, ton code va bien m'aider.C'est le but, content de t'aider... Juste un bricole, le top serait que ça marche si l'objet était préalablement sélectionné.Là, je ne vois pas trop comment faire... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
La Lozère Posté(e) le 23 novembre 2017 Auteur Posté(e) le 23 novembre 2017 Bon ben merci les gars,Avec votre aide, le support de (gile) et un peu beaucoup de tâtonnement, je suis arrivé à ça, et ça marche:(defun c:hs (/ ss n) (if (setq n -1 ss (ssget) ) (while (setq ent (ssname ss (setq n (1+ n)))) (setq MONCALQUE (cdr (assoc 8 (entget ent)))) (setq CCOURANT (getvar "clayer")) (setvar "clayer" MONCALQUE) (command "_bhatch" "_select" ent "" "") (setvar "clayer" CCOURANT) ) ) (princ) ) www.cad-is.fr Autocad Map 2021 - Covadis/Autopiste V18.0c Pisser sous la douche ne suffira pas
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant