Skip to content

Latest commit

 

History

History
115 lines (89 loc) · 5.34 KB

File metadata and controls

115 lines (89 loc) · 5.34 KB

🔄 InsertDXFs - Feuille de route

🎯 Objectif initial

Créer un script AutoLISP permettant d'insérer plusieurs fichiers DXF dans un plan AutoCAD de type "gabarit" contenant plusieurs cartouches côte à côte, avec un positionnement précis et un centrage automatique.


✅ Fonctionnalités implémentées

1. 📁 Gestion des fichiers

  • Sélection interactive du dossier via boîte de dialogue
  • Mémorisation du dernier dossier utilisé
  • Gestion des espaces dans les chemins de fichiers
  • Option pour utiliser un dossier par défaut
  • Récupération des fichiers DXF du dossier sélectionné
  • Mode de sélection manuelle des fichiers DXF

2. 🧮 Positionnement et calculs

  • Sélection interactive des points de positionnement
  • Calcul du centre du cartouche à partir des points sélectionnés
  • Calcul automatique de l'espacement horizontal
  • Facteur d'échelle personnalisable
  • Centrage des DXF dans les cartouches

3. 🧱 Insertion et analyse

  • Insertion temporaire pour déterminer les dimensions réelles des DXF
  • Analyse de la boîte englobante des entités
  • Calcul des dimensions réelles avec prise en compte du facteur d'échelle
  • Insertion finale avec centrage précis

4. 🧹 Robustesse et gestion des erreurs

  • Vérifications d'erreurs et gestion des cas limites
  • Gestion des valeurs nil et des chaînes invalides
  • Messages d'information et d'erreur explicites
  • Récapitulatif des opérations effectuées

🚀 Améliorations futures

1. 🖼️ Interface utilisateur

  • Interface graphique DCL : Créer une boîte de dialogue DCL pour remplacer les invites de commande
  • Prévisualisation : Afficher une prévisualisation des DXF avant insertion
  • Visualisation de l'espacement : Afficher une ligne temporaire pour visualiser l'espacement
  • Barre de progression : Ajouter une barre de progression pour les insertions multiples
  • Aide contextuelle : Ajouter des bulles d'aide ou des messages explicatifs

2. 📊 Gestion des cartouches

  • Gestion des attributs : Remplir automatiquement les attributs des cartouches
  • Auto-détection des cartouches : Détecter automatiquement les cartouches disponibles dans le dessin
  • Styles de cartouches : Supporter différents styles de cartouches
  • Disposition en grille : Améliorer la disposition en grille avec options de configuration
  • Rotation des cartouches : Supporter les cartouches avec différentes orientations

3. 🔄 Flux de travail

  • Export en PDF automatisé : Générer automatiquement un PDF après insertion
  • Insertion par lot : Traiter plusieurs dossiers en une seule opération
  • Mémorisation des paramètres : Sauvegarder les paramètres d'insertion (échelle, espacement)
  • Profils d'insertion : Créer et charger des profils d'insertion prédéfinis
  • Intégration avec d'autres scripts : Permettre l'appel depuis d'autres scripts AutoLISP

4. 🛠️ Optimisations techniques

  • Optimisation des performances : Améliorer la vitesse d'insertion pour les grands lots
  • Gestion de la mémoire : Optimiser l'utilisation de la mémoire pour les grands fichiers
  • Mode silencieux : Option pour exécuter sans interaction utilisateur (pour automatisation)
  • Journal d'opérations : Générer un fichier log des opérations effectuées
  • Gestion des erreurs avancée : Améliorer la détection et la récupération des erreurs

5. 🔍 Fonctionnalités avancées

  • Filtrage des DXF : Filtrer les fichiers DXF selon des critères (nom, taille, date)
  • Tri automatique : Trier les fichiers DXF selon un ordre logique avant insertion
  • Insertion intelligente : Analyser le contenu des DXF pour optimiser le placement
  • Gestion des calques : Options pour gérer les calques des DXF insérés
  • Gestion des blocs : Option pour convertir les DXF en blocs nommés
  • Support multi-feuilles : Gérer l'insertion sur plusieurs feuilles/présentations

6. 📱 Compatibilité

  • Support AutoCAD LT : Version compatible avec AutoCAD LT (sans VL/VLA)
  • Support multi-versions : Assurer la compatibilité avec différentes versions d'AutoCAD
  • Internationalisation : Support de plusieurs langues pour les messages et l'interface
  • Portabilité : Version portable ne nécessitant pas d'installation

📈 Priorités de développement

Court terme (prochaine version)

  1. Gestion des attributs des cartouches
  2. Prévisualisation des DXF avant insertion
  3. Mémorisation des paramètres d'insertion

Moyen terme

  1. Interface graphique DCL
  2. Export en PDF automatisé
  3. Disposition en grille améliorée

Long terme

  1. Support multi-feuilles
  2. Insertion intelligente
  3. Profils d'insertion

💡 Idées de refactorisation

  • Modularisation : Diviser le script en modules fonctionnels réutilisables
  • Documentation : Améliorer la documentation du code avec des commentaires détaillés
  • Tests : Ajouter des fonctions de test pour valider le comportement
  • Gestion des dépendances : Améliorer le chargement des bibliothèques requises
  • Nommage : Standardiser les conventions de nommage des variables et fonctions

📝 Document maintenu par Baptiste LECHAT