VDH-Bruno
Membres-
Compteur de contenus
1 146 -
Inscription
-
Dernière visite
-
Jours gagnés
20
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par VDH-Bruno
-
Entier en texte avec ajout de 0 avant
VDH-Bruno a répondu à un(e) sujet de Olivier Eckmann dans Routines LISP
Commande : (int2str 100 4) "01" Commande : (int2str 1000 4) "1" Commande : (int2str 10 4) "001" Commande : (int2str 12 4) "0012" Si DIMZIN différent de 0 Salutations Bruno -
Bonjour, Pour compléter, c’est un idiome d’implémentation qui est proposé et que l’on retrouve dans de nombreux codes Autolisp, mais qui n’est pas toujours justifié (avec les codes dxf générique), du moins si c’est pour construire des listes à soumettre à entmake, entmakex, entmod. J’avais ci-dessous tenté d’expliquer le pourquoi, dans un petit décryptage des fonctions entmake, entmakex, entmod: https://cadxp.com/topic/40688-exceptions-et-anomalies-dans-certaines-fonctions-lisp/?do=findComment&comment=227875 Et c’est pourquoi ci-dessus j’avais qualifié mon exemple de code "épuré" A+ Bruno
-
Bonjour, Oui lorsque tu le mets manuellement la syntaxe est bonne, regarde le nombre de parenthèses diffèrent dans tes 2 expressions. Pour l'exemple une écriture "épuré" de ce que tu veux faire : (entmod (append (entget (car (entsel))) '((62 . 7)))) Cdt Bruno
-
Bonjour, Sans avoir la possibilité de tester, au premier coup d'œil, je vois un problème de parenthèses essaie de remplacer ceci: ((setq texte (ssget '((0 . "text")))) cpt 0) par (setq texte (ssget '((0 . "text"))) cpt 0) A+
-
Une machine peut-elle avoir une conscience?
VDH-Bruno a répondu à un(e) sujet de Patrick Emin dans Pause café
Bonjour à tous, Dans l'appellation "Intelligence Artificielle", je trouve intéressant l'association de ces 2 mots, tout en gardant à l'esprit le sens du radical du mot Artificielle. Ma petite pensée sur le sujet qui fait et fera couler encore beaucoup d'encre😉 -
Bien vu, pas sur que j'aurais réussi à débugger cela en moins de temps que toi. Merci pour le retour, je garderais cela dans un coin de ma tête, sait on jamais.. A+ Bruno
-
Bonjour -Olivier- J'espère être dans la liste des membres que tu appréciais, bien que je sois en fort retrait sur AutoCAD je ne fais toujours pas partie des retraités, bref je salue avec plaisir ton retour ici. Amicalement Bruno
-
Remplacer un bloc par un autre en conservant l'orientation du bloc remplacé
VDH-Bruno a répondu à un(e) sujet de Steven dans AutoCAD 2020-2024
Bonjour Steven Si tu es toujours dans le même secteur géographique, on peut en discuter en MP si tu le souhaites, l'occasion pour moi de réviser les bases et d'un renvoie d'ascenseur. Salutations Bruno -
Valeur par défaut non prise en compte avec GETWORD
VDH-Bruno a répondu à un(e) sujet de Déméter_33 dans Routines LISP
Bonjour; Peut être que cela répondra à votre besoin: (initget "Oui Non") (setq rep1 (cond ((getkword "\nContinuer ? [Oui/Non] <Oui>: ")) ("Oui")))- 8 réponses
-
Organisation d'une liste (déplacement d'un élément)
VDH-Bruno a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Bonjour, Une proposition tiré de cette discussion sans utiliser nth, (traité comme un chalenge perso pour l'approfondissement de ma compréhension du lisp). (defun moveFromTo (from to lst / loop ele) (defun loop (from to lst) (cond ((minusp (max from to)) lst) ((zerop from) (setq ele (car lst)) (loop (1- from) to (cdr lst))) ((zerop to) ((lambda (l) (cons ele l)) (loop from (1- to) lst))) (T (cons (car lst) (loop (1- from) (1- to) (cdr lst)))) ) ) (if (/= from to) (loop from to lst) lst ) ) _$ (moveFromTo 2 1 '("Lundi" "Mercredi" "Mardi" "Jeudi" "Vendredi" "Samedi" "Dimanche")) ("Lundi" "Mardi" "Mercredi" "Jeudi" "Vendredi" "Samedi" "Dimanche") -
[Challenge] Petite idée pour un codage/décodage Vigenère
VDH-Bruno a répondu à un(e) sujet de DenisHen dans LISP et Visual LISP
*temps Non pas autant que je le souhaiterais, mais il m'en reste tout de même un petit peu pour te décoder (et te déchiffrer 😁) Sinon même si je ne parle pas couramment le F#, je lirais avec intérêt ces lignes de codes, j'aime bien comprendre les avantages qu'offrent d'autres langages, cela me permet par la suite de réussir à développer des approches différentes pour d'autres problèmes. -
[Challenge] Petite idée pour un codage/décodage Vigenère
VDH-Bruno a répondu à un(e) sujet de DenisHen dans LISP et Visual LISP
(decryptChars "X¨»²¦r|si¯´vu¬i°lqi©j" "(gile)") 😉 -
[Challenge] Petite idée pour un codage/décodage Vigenère
VDH-Bruno a répondu à un(e) sujet de DenisHen dans LISP et Visual LISP
Bonjour, Très rapidement étant en temps limité... J'ai retapé ma version de l'époque basé sur l'intégralité de la table de code ASCII, très proche de l'algorithme décrit dans la page Wikipédia: (defun vigenere_ASCII (text key mode / i lgkey) (setq i -1 mode (if mode + -) key (vl-string->list key) lgkey (length key) ) (vl-list->string (mapcar '(lambda (x) (setq i (1+ i)) (rem (+ 256 (mode x (nth (rem i lgkey) key))) 256)) (vl-string->list text) ) ) ) Pour tester: _$ (vigenere_ASCII "J'adore écoute la radio toute la journée" "MUSIQUE" T) "—|´ÀǪm>¶¸ÆÉªmÁ´iö©¶Äs½Àʹ²u¿ªq¿´ÂÇÁ2¶" _$ (vigenere_ASCII "—|´ÀǪm>¶¸ÆÉªmÁ´iö©¶Äs½Àʹ²u¿ªq¿´ÂÇÁ2¶" "MUSIQUE" nil) "J'adore écoute la radio toute la journée" Code que j'ai rapidement adapté pour la demande suivant, sans chercher à plus... Code: (defun vigenere_26 (text key mode / i lgkey) (setq i -1 mode (if mode + -) key (vl-string->list (strcase key)) lgkey (length key) ) (vl-list->string (mapcar '(lambda (x) (cond ((< 64 x 91) (+ (rem (+ 26 (mode (- x 65) (- (nth (rem (setq i (1+ i)) lgkey) key) 65) ) ) 26 ) 65 ) ) ((< 96 x 123) (+ (rem (+ 26 (mode (- x 97) (- (nth (rem (setq i (1+ i)) lgkey) key) 65) ) ) 26 ) 97 ) ) (T x) ) ) (vl-string->list text) ) ) ) Pour tester: $ (vigenere_26 "J'adore ecouter la radio toute la journee" "MUSIQUE" T) "V'uvwhy ioimbul pm lslyi xaolm bu naojvuy" _$ (vigenere_26 "V'uvwhy ioimbul pm lslyi xaolm bu naojvuy" "MUSIQUE" nil) "J'adore ecouter la radio toute la journee" (Ps: De mémoire j'avais une autre variante basé sur la création d'une table d'association, un peu plus fastidieuse à réécrire... que de passer par un calcul arithmétique.) A+ Bruno -
[Challenge] Petite idée pour un codage/décodage Vigenère
VDH-Bruno a répondu à un(e) sujet de DenisHen dans LISP et Visual LISP
Perso je me suis déjà confronté à l'exercice par le passé, ne retrouvant pas mes codes, je retaperais ces quelques lignes quand j'aurais un AutoCAD sous la main... -
[Challenge] Petite idée pour un codage/décodage Vigenère
VDH-Bruno a répondu à un(e) sujet de DenisHen dans LISP et Visual LISP
Bonjour, Historiquement le codage/décodage Vigenère dont la table était constitué des 26 caractères alphabétiques, ne tient pas compte de la casse, ni des caractères spéciaux. Le codage étant initialement basé sur une clef, l'introduction d'une seconde clef est le résultat de variantes survenue par la suite. Edit: Oup's corrigé le lapsus 256 par 26😉 -
pagination automatique
VDH-Bruno a répondu à un(e) sujet de zebulon_ dans Pour aller plus loin en LISP
Je verrais pour intégrer cette possibilité dans le code, pour l'instant je n'ai pas AutoCAD sous la main, donc en provisoire je te propose de ne charger le lisp que sur les fichiers dont tu dois mettre à jour la numérotation. En provisoire pour ton cas si le lisp n'est pas chargé la numérotation reste figé à chaque changement d'onglet. A+ Bruno -
pagination automatique
VDH-Bruno a répondu à un(e) sujet de zebulon_ dans Pour aller plus loin en LISP
Bonjour La Lozère, Juste pour bien comprendre, tu souhaites supprimer ou désactiver la pagination auto? (Le but étant de la figer je suppose) A+ Bruno -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
Bonsoir, Petite variation du code de (gile) pour le plaisir de montrer la souplesse du langage, donc si on ne voulait pas passer par le calcul en coordonnée polaire, et préférer passer par le calcule des coordonnées cartésiennes. La variante suivante travaille directement sur les d'opérateurs mathématiques, les arguments fx et fy stockent les opérandes de déplacement (+ -), dans le même esprit que la proposition de BonusCAD, ceci en remplacement des coefficients directeurs +1 ou -1 utilisé dans le code d'origine. (defun fibSpiral (p i / loop b) (setq b (- (sqrt 2.) 1.)) (defun loop (i px py n m fx fy) (vl-list* (list 10 px py) (cons 42 b) (if (< 0 i) (loop (1- i) (fx px m) (fy py m) m (+ n m) (if (= fy -) + -) fx) ) ) ) (entmakex (append (list (cons 0 "LWPOLYLINE") (cons 100 "AcDbEntity") (cons 100 "AcDbPolyline") (cons 90 (+ i 1)) ) (loop i (car p) (cadr p) 0 1 - +) ) ) ) -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
Merci je prends, j'étais passé à coté de cette propriété. Joli codes comme toujours 🙂 -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
😂😂😂 Excellent!!! Non Bretagne, c'est moins loin pour moi et j'ai pas trop envie de traverser toute la France, mais si un jour j'y vais, je m'organiserais pour faire étape à Marseille😉 -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
Re, Et pour proposer autre chose, très rapidement une variante de la Spirale Bonifacci (version arc de cercle) (defun SpiralFib (p i / sFib cen ang) (defun make_arc (cen ray angdep angfin) (entmakex (list '(0 . "ARC") (cons 10 cen) (cons 40 ray) (cons 50 angdep) (cons 51 angfin) ) ) ) (setq sFib '(1 1) ang (/ pi 2) cen (polar p (/ pi 2) 1.) ) (make_arc cen 1. (- ang) 0.) (make_arc cen 1. 0. ang) (repeat (- i 2) (setq cen (polar cen (+ ang pi) (cadr sFib)) sFib (cons (+ (car sFib) (cadr sFib)) sFib) ) (make_arc cen (car sFib) ang (setq ang (+ ang (/ pi 2)))) ) ) -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
Bonsoir, Bientôt en vacances donc j'ouvre le bal: Spirale Bonifacci (version polyligne) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Spirale Fibonacci ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun spiralFib (p i / make_courbe tan) (defun tan (ang) (/ (sin ang) (cos ang))) (defun make_courbe (dxf42 p ang corde1 corde2 i) (if (>= i 0) (cons (cons 10 p) (cons dxf42 (make_courbe dxf42 (polar p ang corde1) (+ ang (* 0.5 pi)) corde2 (+ corde1 corde2) (1- i)) ) ) ) ) (entmakex (append (list (cons 0 "LWPOLYLINE") (cons 100 "AcDbEntity") (cons 100 "AcDbPolyline") (cons 90 i) ) (make_courbe (cons 42 (tan (* 0.125 pi))) p (* 0.25 pi) (sqrt 2) (sqrt 2) i) ) ) ) La variante Spirale d'Or (version polyligne) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Spirale d'Or ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun spiralOr (p i / make_courbe tan) (defun tan (ang) (/ (sin ang) (cos ang))) (defun make_courbe (dxf42 p ang corde phi i) (if (>= i 0) (cons (cons 10 p) (cons dxf42 (make_courbe dxf42 (polar p ang corde) (+ ang (* 0.5 pi)) (* corde phi) phi (1- i))) ) ) ) (entmakex (append (list (cons 0 "LWPOLYLINE") (cons 100 "AcDbEntity") (cons 100 "AcDbPolyline") (cons 90 i) ) (make_courbe (cons 42 (tan (* 0.125 pi))) p (* 0.75 pi) (sqrt 2) (/ (1+ (sqrt 5)) 2.) i) ) ) ) Salutations Bruno -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
Bonjour (gile) Juste une petite précision dans la modélisation pour le premier rayon de la Spirale d'or (qui est infini), tu pars sur une valeur de 1 (comme pour la spirale de Bonifacci)? La petite précision est utile, pour pouvoir superposer aisément les Spirales au moment de la correction 😉. Autre précision lorsque je lis ceci dans le lien sur Wikipédia : L'assertion suivant me dérange "une spirale d'or est une spirale logarithmique", car une spirale logarithmique est une spirale de croissance continue, ce que n'est pas la spirale d'or qui a un facteur de croissance à chaque quart de tour. Ouf heureusement que c'est précisé à la fin de la phrase, pour invalider l'assertion de départ... A+ Bruno -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
C'est bon pour moi aussi, j'ai emprunté le poste de travail d'un collègue équipé d'un AutoCAD full, pendant la pause déjeuné. -
[Challenge] Spirale de Fibonacci
VDH-Bruno a répondu à un(e) sujet de (gile) dans LISP et Visual LISP
Génial, je n'ai pas d'AutoCAD Full sous la main actuellement, donc je devrais pas être en mesure de proposer quelque chose de suite (pas avant une bonne semaine), mais dès que c'est possible je tenterai un truc, ne serait ce que pour valider les 2 à 3 petites idées qui me viennent en tête à la lecture de l'énoncé :)
