Aller au contenu

Classement

Contenu populaire

Affichage du contenu avec la meilleure réputation le 22/02/2024 dans toutes les zones

  1. Bonjour, Il est impossible d'être exhaustif au sujet des interactions Autocad/Python. Des possibilités infini dans Autocad un peu comme VBA. Au-delà d'Autocad, comme tout les langages de programmations avancés. Si Python est devenu le langage le plus utilisé, ce n'est pas le cas pour les "Autocadiens". Pourquoi ? A vous de me répondre. En attendant voici comment en profiter. Prérequis - Etre administrateur de son poste ou si vous pouvez prendre un ticket au près de votre service informatique qui vous configure votre poste. - Windows 10 ou 11 - Un Autocad d'installé. (full 64 bit qu'importe la version, testé sur 2015 à 2024, non testé avec LT, CIVIL ou MAP : à explorer) - Un EDI comme Visual Studio Code - Avoir des notions de base de Python. C'est peut être le langage le plus facile à apprendre. Je parle bien de la base, car c'est un langage modulaire et que l'utilisation de certain modules n'est pas si simple. Il y a des cours gratuit sur le net, il suffit de demander à votre moteur de recherche préféré. Si vous connaissez déjà un autre langage, l'apprentissage va très vite. - Si vous connaissez l'Autolisp c'est le top, il communique très bien avec Python. De plus, comme Python est présenté comme multi- paradigme, vous pouvez coder en fonctionnel. Je dit bien présenté, car en fait, il est purement orienté objet. Si dans Autolisp tout est liste, tout est objet dans python, même une fonction ou une variable. Installation - Télécharger la dernière version stable de Python - Installer Python. Normalement il n'y a rien à changer dans les options d'installation, mais vérifier quand même que Modifier PATH soit coché et que PIP (utilitaire de téléchargement des Modules) soit installé avec. - Selon l'utilisation il y auras des modules à installer. Cela se fait en ligne de commande Windows avec l'utilitaire PIP. Pour le Module Pyautocad qui permet d'agir dans le Domaine d'Autocad on tape ceci dans l'invite de commande Windows: pip install pyautocad - Et c'est tout, rien à faire dans Autocad, il s'en fout totalement et l'ignore. Voila, je reviendrais avec des exemples.
    1 point
  2. Bonjour, Le module Requests Abordé sur un autre post pour récupérer le temps internet, c'est un module de récupération de données à partir d’API web. Testons une API gouvernementale, documentée ici qui est un "Nominatim" FR. Ici, c'est le reverse qui va nous intéresser, car nous allons récupérer des infos en cliquant un point dans Autocad dans un plan géoréférencé . Créons un fichiers nominreverse.py, toujours dans le dossier transform. import pyperclip import requests def nominreverse(coord, key): rep = requests.get(f'https://api-adresse.data.gouv.fr/reverse/?lon={coord[0]}&lat={coord[1]}') dic = dict(rep.json()) ret = dic['features'][0]['properties'][key] pyperclip.copy(f'{ret}') if __name__ == "__main__": p = pyperclip.paste().split(' ') nominreverse((p[0], p[1]), p[2]) Le fichier nominreverse.lsp (defun nominreverse ( typ msg / pt ) (setq pt (getwsg (getpoint "\n Cliquez un point") (getvar 'cgeocs))) (trans-SetClip (strcat (car pt) " " (cadr pt) " " typ)) (trans-runscr (findfile "nominreverse.py")) (princ (strcat "\n " msg ": " (trans-GetClip))) ) (defun c:getinsse nil (nominreverse "citycode" "Numéro INSEE") (princ)) (defun c:getcom nil (nominreverse "city" "Commune") (princ)) (defun c:getadres nil (nominreverse "label" "Adresse") (princ)) (defun c:getregion nil (nominreverse "context" "Département et Région") (princ)) Chargez le .lsp dans Autocad, puis taper les commandes ci-dessus. Encore la, les possibilités sont immenses faces au nombre d'API Web qu'il y a. Par contre, ne compter pas faire tourner cela dans des boucles intensives sans devoir vous adapter au erreurs. Vous serez limité à un nombre d'appels par seconde pour cette API, d'autre un nombre d'appel par jour et aplli. ou le nombre d'appel consécutif régulier. Il y a toujours des parades, il faut s'adapter à chaque serveur, et pour finir, certaine API propose des solutions alternatives pour cette situation. à bientôt
    1 point
×
×
  • 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é