Aller au contenu

Fraid

Membres
  • Compteur de contenus

    2 523
  • Inscription

  • Dernière visite

  • Jours gagnés

    23

Tout ce qui a été posté par Fraid

  1. :) je n'avais pas compris, je voyais des courbes...
  2. Bonjour, Ils me semble que c'est impossible.
  3. En effet, très intéressant. Il explose beaucoup de chose, c'est la solution que j'ai choisi aussi. Avec les blocs, si on les BURST, on élimine beaucoup de soucis. Pour les arcs, pour être au plus juste, il faut utiliser les tangentes passant par chaque point ... C'est plus sportif
  4. Bonjour, Merci Olivier, pour l'Algorithme de Ronald Graham, simple et efficace. J'avais mis ce sujet de coté, intéressé par les problèmes soulevés. En fait, cela n'est pas si simple. La première étape, est d'établir la liste des points de l'emprise de chaque objet. Si c'est facile avec les points, cela l'est déjà moins avec les polylignes avec des arcs par exemple. Avec les blocs, c'est une usine à gaz qu'il faut mettre en place pour envisagé tout les cas (attributs, dynamique ...) Une liste exhaustive d'objets aurait été préférable, car une solution pour tous, n'est pas envisageable. Une fois que l'on a la liste des points, on relie chaque point à tout les points, et on récupère avec contour, le contour. (ne connaissant pas Ronald) Donc, Valentin, dit nous quels sont exactement les objets Autocad à prendre en compte, de quoi sont composé tes blocs, et on pourras plus t'aider.
  5. Bonjour, Il faut cliquer sur find file puis sur le .lsp que tu veux voir. Sinon, rien de terrible, voir même inutile, exemple la fonction when ...
  6. Bonjour, Regarde comment fait Lee Mac
  7. il ne faut pas, nous sommes tous des débutant, depuis plus ou moins longtemps... tu fait des efforts, et c'est cela qui compte. sans vouloir te décourager, il y avais juste à rajouter un filtre au ssget comme cela nb (- (sslength (ssget "_C" pt1 pt2 '((0 . "LWPOLYLINE")))) 1) et bravo
  8. c'est effectivement une base de travail, il y a d'autre testes et filtres à mettre en place. comme le SCU, je pense que cela plante si il n'est pas en général. n’hésite pas à demander si tu ne t'en sort pas.
  9. je n'avais pas vu ton image .... en effet j’étais à coté je te propose cette petite fonction ;nbpolep : Renvois le nombre de polylignes passant sur la largeur de la polyligne sélectionnée, nil si échoue. (defun nbpolep ( / oldosmode pol pt pt1 pt2 ep in nb) (setq oldosmode (getvar 'osmode) pol (entget (car (entsel "\n Sélectionnez une polyligne: "))) pt (cdr (assoc 10 pol));premier point ep (cdr (assoc 43 pol));largeur ) (setvar 'osmode 0) (if (> ep 0) (setq in (+ (/ ep 2) (/ ep 100));incrément légèrement supérieur à la moitié de la largeur pt1 (mapcar '(lambda (x) (- x in)) pt) pt2 (mapcar '(lambda (x) (+ x in)) pt) nb (- (sslength (ssget "_C" pt1 pt2 )) 1) ) (princ "\nLa polyligne doit avoir une largeur") ) (setvar 'osmode oldosmode) nb )
  10. après si c'est pour sélectionner des polylignes similaires et très proches, tu fais une sélections rectangulaire autour du premier point.
  11. Je ne comprend rien à ce que tu dit. Du moment qu'une polyligne croise celle sélectionnée, elle est prise en compte grâce à ssget "_F" qui sélectionne selon un trajet. Cela n'a rien à voir avec le nombre de sommet.
  12. Bonjour, Tu peux facilement obtenir la liste des points de ta polyligne avec ceci ;Retourne la liste des points 2d (coordonnées SCO) des sommets de la polyligne sélectionnée. (defun massoc (key alst) (if (setq alst (member (assoc key alst) alst)) (cons (cdar alst) (massoc key (cdr alst))) ) ) puis l'utiliser comme ceci (- (sslength (ssget "_F" (massoc 10 (entget (car (entsel "\n Sélectionnez une polyligne: ")))))) 1)
  13. Bonjour, Cela ne correspond pas pile poil à ta demande, mais je pense que tu sauras l'adaptée. Une fonction Autolisp qui lance une visionneuse en html qui retourne le chemin de l'image choisie. C'est aussi en suite de ce Post, mais sans l'API javascript d'Autocad morte née... Tout d'abord les fichiers à télécharger ici le zip à décompresser dans c:/Data/ si vous ne voulez pas éditer les fichiers. et oui, beaucoup de fichiers, mais nous allons "ouvrir" que ceux qui commence par acadvue. acadvue.lsp ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;acadvue : Fonction retournant le chemin d une image choisie dans une visionneuse html. ;Argument dir : String, chemin du dossier contenant les images. ;Retour : String, chemin de l image choisie, nil si echec. ;Dépendances : DOSLIB ( https://wiki.mcneel.com/doslib/home ) ;Compatible Autocad 2014 et au dela. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;By Fraiddd 07/2019;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun acadvue (dir / listefichier oldcmdecho) (setq oldcmdecho (getvar "cmdecho")) (if (vl-file-directory-p dir) (foreach file '("*.svg" "*.jpg" "*.jpeg" "*.png" "*.gif");A éditer selon les besoins (mapcar '(lambda (OoO);Pour chaque fichier (setq OoO (dos_strreplace OoO "\\" "/");Inversion des obliques pour etre lisible par javascript OoO (dos_strreplace OoO " " "%20");Remplacement des éventuels espaces listefichier (cons (strcat "\"" OoO "\"") listefichier);Construction de la liste en rajoutant 2 guillemets ) ) (dos_find (strcat dir file));Liste des fichiers ) ) (princ "^\nChemin invalide") ) (if listefichier (progn (setvar "cmdecho" 0) (setq listefichier (lst2str (reverse listefichier) ","));Retournement et Conversion de la liste en texte ;Ecriture d une liste javascript en utf-8 (dos_writetextfile "c:/Data/acadvue/js/acadvuedir.js" (list (strcat "var listeimgs = [" listefichier "];")) nil 2) (dos_clipboard "");Vidage du presse papier (command "_webload" "" "c:/Data/acadvue/js/acadvueload.js");Lancement de la visionneuse (while (not (dos_clipboard));On attent tant que le presse-papier est vide (command "_.delay" 2000) ) (setvar "cmdecho" oldcmdecho) (dos_strreplace (dos_clipboard) "%20" " ");Replacement des éventuels espaces ) nil ) ) ;;============================================================;; ;; Concatène une liste et un séparateur en une chaine(gile) ;; Arguments ;; lst : la liste à transformer en chaine ;; sep : le séparateur (defun lst2str (lst sep) (if (cdr lst) (strcat (vl-princ-to-string (car lst)) sep (lst2str (cdr lst) sep)) (vl-princ-to-string (car lst)) ) ) ;;============================================================;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;Exemple d utilisation (defun c:acv (/ oldsecureload dossier image *error*) (defun *error* ( msg );Restaure la variable secureload en cas d erreur (setvar "secureload" oldsecureload) (or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*") (princ (strcat "\n** Error: " msg " **"))) (princ) ) (setq oldsecureload (getvar "secureload")) (setvar "secureload" 0);Ce n est pas conventionnel... (if (setq dossier (dos_getdir "acadVue" "C:\\" "Sélectionnez un dossier contenant des images." nil)) (setq image (acadvue dossier));On lance acadVue (setq image "unload");si on annule la selection du dossier ) (setvar "secureload" oldsecureload);Restaure la variable secureload (cond ((= image "unload")(princ (strcat "\nAbandon" )));Si annulation du choix du dossier ((= image nil)(princ (strcat "\nAucune image dans le dossier: Abandon" ))) (image (princ (strcat "\nLe fichier " image " a été choisi" ))) ) (princ) ) acadvueload.js, lancé par la fonction Autolisp avec "_WEBLOAD" window.open('C:/Data/acadvue/acadvue.html', 'acadVue', 'height=920, width=880, top=50, left=400, toolbar=no, menubar=no, location=no, resizable=yes, scrollbars=yes, status=no'); acadvue.html, ouvert par le précédant. <!DOCTYPE HTML> <html lang="fr"> <head> <title>acadVue</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <link href="./css/bootstrap.css" rel="stylesheet"> <link href="./css/acadVueStyle.css" rel="stylesheet"> <link href="./css/font-awesome.min.css" rel="stylesheet"><!-- https://fontawesome.com/v4.7.0/icons/ --> <script src="./js/jquery-3.4.1.min.js"></script> <script src="./js/popper.min.js"></script> <script src="./js/bootstrap.min.js"></script> <script src="./js/jQueryRotate.js"></script> </head> <body> <div class="container"> <header class="row"> <div class="col-lg-12" id="titre"> <h1 class="bg-primary text-white text-center"><strong>acadVue</strong></h1> </div> </header> <div class="row" id="content"> <div class="col-lg-12 text-center" > <a class="text-primary">____</a> <button type="button" id="rotleftbutton" class="btn btn-primary "> <i class="fa fa-undo fa-rotate-180 fa-flip-horizontal" aria-hidden="true"></i> </button> <a class="text-primary">____</a> <button type="button" id="choicebutton" class="btn btn-primary ">Choisir</button> <a class="text-primary">____</a> <button type="button" id="rotrightbutton" class="btn btn-primary "> <i class="fa fa-undo" aria-hidden="true"></i> </button> <a class="text-primary">____</a> </div> <div class="col-lg-12 align-content-center" > <div id="acadVueCarousel" class="carousel slide" data-ride="carousel" data-interval="false"> <div class="carousel-inner" id="inner"></div> <a class="carousel-control-prev" href="#acadVueCarousel" role="button" data-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="sr-only">Previous</span> </a> <a class="carousel-control-next" href="#acadVueCarousel" role="button" data-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="sr-only">Next</span> </a> </div> </div> </div> <!-- <footer class="row"> --> <!-- </footer> --> </div> <script src="./js/acadvuedir.js"></script> <script src="./js/acadvueutil.js"></script> <script src="./js/acadvuebuilder.js"></script> <script src="./js/acadvuereac.js"></script> </body> </html> acadvuebuilder.js, qui écrit une partie du caroussel html, selon la liste transmise par le lisp et lancer dans le html, créant une variable globale listeimgs . var nbimgs =listeimgs.length;//nombre d'images //Ecriture de la 1ere ligne des introducteurs (image active) document.getElementById("inner").innerHTML += '<div class="carousel-item active"><img src=' + listeimgs[0] + ' class="mx-auto d-block img-thumbnail w-75" alt=' + nameSrc(listeimgs[0]) + '><div class="carousel-caption"><h3>' + nameSrc(listeimgs[0]).replace(/%20/g, " ") + '</h3></div></div>'; //Ecriture des autres lignes si plus d'une image if (nbimgs > 1){ for (var i = 1; i < nbimgs; i++){ document.getElementById("inner").innerHTML += '<div class="carousel-item"><img src=' + listeimgs[i] + ' class="mx-auto d-block img-thumbnail w-75" alt=' + nameSrc(listeimgs[i]) + '><div class="carousel-caption"><h3>' + nameSrc(listeimgs[i]).replace(/%20/g, " ") + '</h3></div></div>'; } } acadvuereac.js, // Réaction des boutons en jquery + javascript $('#choicebutton').on('click', function(){//si on clic sur le bouton choisir var imageActive = $('.carousel-inner .active img'),//On récupère l'image active cheminimageActive = imageActive[0].getAttribute('src');//On récupère le chemin complet de l'image copyStringToClipBoard(cheminimageActive);//on le copie dans le presse papier setTimeout(window.close(),2000);//On ferme la fenêtre }); $('#rotrightbutton').on('click', function(){//si on clic sur le bouton tourné vers la droite var imageActive = $('.carousel-inner .active img'),//On récupère l'image active deg = $(imageActive).getRotateAngle(),//On récupère son angle de rotation deg = parseInt(deg) - 90;//On y enlève 90 degré $(imageActive).rotate({ animateTo:deg});//on tourne l'image }); $('#rotleftbutton').on('click', function(){//si on clic sur le bouton tourné vers la gauche var imageActive = $('.carousel-inner .active img'),//On récupère l'image active deg = $(imageActive).getRotateAngle(),//On récupère son angle de rotation deg = parseInt(deg) + 90;//On y ajoute 90 degré $(imageActive).rotate({ animateTo:deg});//on tourne l'image }); acadvueutil.js // Déduire le nom d'un fichier de son lien en javascript. function nameSrc(source) { var name = source.slice(source.lastIndexOf("/") + 1, source.length); return name; }; //Copier un texte dans le presse papier en jquery function copyStringToClipBoard(texte){ var $temp = $('<input>'); $("body").append($temp);//création d'une entrée texte temporaire $temp.val(texte).select();//on lui transmet l'argument texte et on le selectionne document.execCommand("copy");//copie dans le presse papier $temp.remove();//efface l'élément temporaire }; Il y a donc 2 exemples d'interpolation: Autolisp vers Javascript par l’écriture d'une variable Javascript globale Javascript vers Autolisp par le presse papier les puriste regretterons l'utilisation abusive du DOSLIB, mais comme c'est Framework partie, autant rester dans le même esprit. Je suis désolé de mes maladresses éventuelles, je ne suis qu'un apprenti. une fois que vous avez charger le DOSLIB correspondant a votre Autocad, il suffit d'approuvé le dossier acadvue puis de charger acadvue.lsp et taper acv pour tester.
  14. Fraid

    Adieu Patrick_35

    Merci encore Patrick, à bientôt.
  15. Bonjour, Si tu connais un peux le html et javascript , il me semble que l'on peut faire un visionneur de photo, intégrer à une palette et placer son chemin, par exemple, dans le presse papier à chaque clic. pas le temps en ce moment de pencher vers cela. mais dès que je peux...
  16. on charge la page comme plus haut. Arff, cela fonctionne mais ce n'est pas beau... J'ai volontairement mis une erreur et nous allons debugguer ensemble. cliquez sur votre page et F12 Tada!! Le voila notre botte secrète. cliquer sur l'icone en bas à gauche. la console s'ouvre et toutes les erreurs sont claires. il manque un dossier dans le chemin des ressources. il suffit de retourné dans l'index et supprimer un point avant chaque liens, et renommer le jquery en <script src="./js/jquery-3.4.1.min.js"></script> celle la je ne l'ai pas fait exprès... Le developer tools est indispensable, il y beaucoup de chose à explorer.
  17. Pour des raisons pratiques il faut mieux créer un domaine de noms. Ici, tout les fichiers créer devront commencer par pp (sauf index.html) Le squelette index.html à enregistrer dans le dossier pagepal (à coté des dossiers css et js) <!DOCTYPE HTML> <html lang="fr"> <head> <title>PagePal</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <link href="../css/bootstrap.css" rel="stylesheet"> <link href="../css/ppStyle.css" rel="stylesheet"> </head> <body> <div class="container"> <header class="row"> <div class="col-lg-12" id="titre"> <h1 class="bg-primary text-white text-center"><strong>pagPal</strong></h1> </div> </header> <section class="row"> </section> <footer class="row"> </footer> </div> <script src="../js/Autodesk.AutoCAD.js"></script> <script src="../js/jquery.min.js"></script> <script src="../js/bootstrap.min.js"></script> </body> </html> le CSS ppStyle.css à placer dans css [class*="col"] { margin-bottom: 20px; } body { margin-top: 5px; } .container { padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; } @media (min-width: 768px) { .container { width: 750px; } } @media (min-width: 992px) { .container { width: 980px; } } @media (min-width: 1200px) { .container { width: 1170px; } }
  18. Merci Denis, Les pages risquent donc de ne pas être compatible avec tout les Autocads... On verras bien, je n'ai pas encore fait de testes dans ce sens, on les feras ensembles. Pour faire notre page test, il faut s'organiser un minimum. Créer un dossier dans un emplacement approuvé. Ici je l'appel pagpal et dans ce dossier créer 2 dossiers css js le tout en minuscule dans js il faut télécharger les ressources nécessaires plutôt que de mettre des liens puisque nous sommes en local. L'API Autocad V1 pour 2014 V2 pour 2015 V3 pour la suite Bootstrap maintenant c'est la 4.3 Télécharger sur ce site le Compiled CSS and JS. le décompresser puis placer les fichiers dans vos dossier correspondant. JQUERY , Framework Javascript indispensable à bootstrap sur ce site, choisissez the compressed, production
  19. Personne n'a vu la boulette que j'ai fait dans le 1er post, ce n'est pas Chrome, mais Chromium, qui est utilisé comme navigateur. Chrome est la version Google de Chromium. C'est un détail qui a quand même son importance puisque on auras forcement un moment ou un autre un problème de compatibilité CSS et/ou Javascript. Si j'ouvre le gestionnaire des tâches de windows quand il y une page ouverte dans Autocad, dans l'onglet Processus je vois bien Chromium en action, clic droit/Propriété/Détails me donne sa version, ici 2.0 sur 2015. Et vous? Ce numéro de version ne correspond à rien quand on va sur le Site Officiel J'imagine donc que c'est une version spécial Autodesk. Mais vous verrez, il y a une aide intégrée pour nous aider à surmonter cela.
  20. Pour compléter, les Streams sont des flux d'octets, comme dans tes câbles réseaux. Quand tu fais une requête dans ton navigateur pour recevoir une page internet, tu envois un flux au serveur, qui l’interprète, fait sa cuisine, puis te renvois un autre flux que ton navigateur va interpréter en page. Ici c'est plus simple, on transforme un texte en flux que l'on interprète aussitôt. Comme pour interprété un flux en texte il faut un encodage, on en profite pour le changer.
  21. Bonjour DenisHen, Attention, Java et Javascript n'on pas grand chose en commun hormis, quelque peux la syntaxe et le fait qu'ils soient orientés objet. Javascript est forcément "embarqué" et Java est autonome. Si vous voulez mieux connaitre Javascript les cours de chez w3C sont sympa.
  22. Avant de se lancer dans notre première page "palettienne", il faut rappeler quelques détails. Tout les fichiers textes (html, css, js) doivent être enregistrer en UTF-8. L'utilisation de notepad++ ou similaire est conseillé. Du coup, si vous voulez les écrire en LISP, il faut utiliser une fonction comme celle ci de Gile. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; gc:WriteStream ;; Ecrit un texte dans un fichier suivant l'encodage de caractère spécifié ;; Retourne le chemin du fichier ou nil si l'opération a échoué. ;; ;; Arguments ;; text : le texte à écrire ;; filename : le chemin du ficher ;; charset : le système d'encodage (exemples : "iso-8859-1" (ascii/ANSI), "utf-8", "unicode") (defun gc:WriteStream (text filename charset / stream result) (vl-load-com) (if (setq stream (vlax-create-object "ADODB.Stream")) (progn (setq result (vl-catch-all-apply (function (lambda () (vlax-put stream 'Charset charset) (vlax-invoke stream 'Open) (vlax-invoke stream 'WriteText text 0) (vlax-invoke stream 'SaveToFile filename 2) (vlax-invoke stream 'Close) ) ) ) ) (vlax-release-object stream) (if (not (vl-catch-all-error-p result)) filename ) ) ) ) C'est une page locale, nous l'enregistrons dans un dossier approuvé par Autocad. D'après la doc, il faut modifier la variable Autocad TRUSTEDDOMAINS en ajoutant ce dossier de cette manière *.mondossier* Pour TRUSTEDPATHS, cela pourrais avoir des conséquences, car malgré le s, il semble que l'on puisse n'en mettre qu'un seul... dans le doute n’hésiter pas à créer un nouvel utilisateur spécialement pour les expérimentations.
  23. He coucou Oui, je suis d'accord avec toi, mais l'aventure informatique, vaut la peine d’être racontée.
  24. Pourquoi coder dans une page internet placer dans une palette? Pour réaliser une super interface utilisateur.Tout simplement. Pourquoi ne pas travailler directement dans Autocad? Car les autres langages présents, le font déjà très bien. Nous allons donc pour continuer, rester dans une palette. Testons comment réagissent les pages une fois "dedans". test.js Acad.Application.addPalette('Google', 'https://www.google.com'); La page s'affiche bien, mais le format de la palette n'est pas pris en compte... Par contre avec le site de Bootstrap Acad.Application.addPalette('bootstrap', 'https://getbootstrap.com'); Aucun soucis, il est effectivement responsive (s'adapte à tout les formats). C'est donc ce genre de technologie Web qu'il faut mettre en place pour éviter de se prendre la tête avec le format de la palette. C'est un peux le pré-requis de trop, 2 ans que j'y suis...j'ai la tête dure.... Pas dans bootstrap, mais dans l'ensemble avec php en +. Je vous prépare donc un squelette html responsive pour réaliser une IU personnalisable à souhait. et bon courage à toi Goldorack
  25. He Bonjour, Pourquoi ce langage implanté dans Autocad depuis la version 2014 n'est toujours pas utilisé ou si peux? Après quelque recherches, nous trouvons rapidement quelques réponses. - Tutoriel minable, rien ne fonctionne en l’état. - Documentation sans exemple et contenant des erreurs - Nombreux pré-requis : HTML, CSS, Javascript, bien connaitre Autocad, connaitre un langage orienté objet (C++,c#,Java...), un Framework CSS comme Bootstrap est un plus. Pourtant, comme nous allons voir plus loin, il offre des outils intéressants, simples à mettre en place. Aucune installation n'est nécessaire pour débuter et mes test son effectués sur 2015 (V2 de Javascript). Commençons traditionnellement avec l'affichage d'"Hello_world". le code javascript à enregistrer dans hw.js en UTF-8 dans un dossier approuvé par Autocad. alert('Hello, world!'); Vous taper WEBLOAD dans Autocad, valider charger puis indiquer le chemin du .js comme cela c:/votre chemin/hw.js Maintenant que nous savons que Javascript fonctionne dans Autocad, testons quelques fonctions de l'API. Restons avec Hello, World, que nous allons afficher dans une page html modal. Modifions le hw.js Acad.Application.showModalDialog('c:/votre chemin/hw.html'); puis créons hw.html à coté, toujours en UTF-8 <p>Hello, World!!</P> on charge avec WEBLOAD. Et hopopop, cela fonctionne aussi. Nous n'avons pas encore utilisé Autodesk.AutoCAD.js. C'est normal, nous travaillons dans 2 D.O.M. différents, Autocad et un navigateur Internet (c'est Chromium qui à été choisi) Dans Autocad l'API est implémenté, dans Chromium il faut l'appeler avec ceci dans le HEAD de la page. <script src="https://df-prod.autocad360.com/jsapi/v2/Autodesk.AutoCAD.js" </script> Il existe 4 versions de cette API - V1 pour 2014 - V2 pour 2015 - V3 2016 à 2022 - V4 2023 et plus il y a juste à changer le numéro au niveau de l'adresse. Continuons dans Autocad avec Acad.Application.activedocument.addPalette Acad.Application.activedocument.addPalette('HW', 'c:/votre chemin/hw.html'); et gardons la même page. Et ben la, cela ne fonctionne pas 😮 Beaucoup, me semble t'il, se sont arrêté la. Mais si on regarde bien, une palette n'a rien a faire dans le document actif. Essayons plutôt Acad.Application.addPalette('HW', 'c:/votre chemin/hw.html'); Et la, miracle, la page apparaît dans une nouvelle palette 😄 Voila, il faut bidouiller, mettre les mains dans le cambouis... Je vais m’arrêter là pour l'instant, et vous raconterais mes aventures dans le DOM de chrome dans une palette Autocad.
×
×
  • 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é