Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'copie'.

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Fonctionnement de ce site
    • Nouvelle règle pour les invités : plus d'écriture possible sans inscription
    • CADxp, comment ça marche?
    • CADxp, vos souhaits
    • Forum test
  • Emploi
    • Emploi, monde du travail
  • AutoCAD
    • AutoCAD 3D
    • AutoCAD 2020-2024
    • AutoCAD LT 2024
    • AutoCAD LT 2020-2023
    • AutoCAD 2019
    • AutoCAD LT 2019
    • AutoCAD 2018
    • AutoCAD LT 2018
    • AutoCAD 2017
    • AutoCAD LT 2017
    • AutoCAD avant 2017
    • AutoCAD LT avant 2017
    • Tutoriaux AutoCAD
    • AutoCAD, liste de souhaits
  • Autres logiciels de CAO
    • Microstation
    • IntelliPlus, IntelliCAD, CadIdesk
    • ZWCAD
  • Architecture, Bâtiment
    • Revit
    • AutoCAD Architecture
    • AutoCAD MEP
    • BIM
  • Mécanique
    • Inventor
    • SolidWorks
    • Creo (ex. Pro/Engineer)
    • Catia
  • SIG, Génie civil, Cartographie, VRD
    • Autodesk Map
    • VRD
    • Covadis
    • Infraworks 360
    • Mensura
    • AutoCAD Civil
    • Autopiste
    • SIG internet
  • Imagerie, animation, PAO, modélisation 3D
    • 3DSMAX
    • Création et retouche d'images
    • Sketchup
    • Autres logiciels d'infographie
    • Lumion 3D
  • Programmation
    • LISP et Visual LISP
    • VBA et VB
    • Personnalisation, macros, DIESEL
    • ObjectARX/DBX, C++, .NET, RealDWG
    • Programmer en s'amusant
    • Suggestions de développements
  • Trucs et astuces
    • AutoCAD trucs et astuces
    • Windows trucs et astuces
  • Matériel CAO
    • Ordinateurs
    • Périphériques d'entrée
    • Périphériques de sortie, impression
  • Divers
    • CAO, généralités
    • Echanges de fichiers
    • Organisation du travail
    • Visualisateurs, annotation
    • Pause café
    • Bibliothèques de composants
    • Formation
  • Logiciels connexes
    • Devis, métré, estimation, quantitatif
    • Calculs et simulation
  • Forums métier
    • Bâtiment
    • Infrastructures

Calendriers

Il n’y a aucun résultat à afficher.

Blogs

Il n’y a aucun résultat à afficher.


Rechercher les résultats dans…

Rechercher les résultats qui contiennent…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

1 résultat trouvé

  1. Salut, Voici ma Lisp qui me fait gagner un temps fou . N'hésiter pas à me faire des retours ou idées d'amélioration. 1. Présentation de la routine LISP d'aplomb et balade entre les étages : - PAN PAN Cette routine permet de définir un écart personnalisé correspondant à la distance entre les étages, rendant vos opérations d'aplomb précises et rapides. C'est un outil très pratique pour les plombages et pour gérer efficacement des plans multi-niveaux. En gros elle fait des Pan, Copies et Déplacements incrémentés. Cette LISP fonctionne aussi sur Autocad LT. 2. Intérêt de la routine Navigation fluide entre les étages : Utilisez les commandes 'BBB' et 'HHH' pour passer rapidement d'un étage à l'autre sans effort. Copie et déplacement précis : Les commandes 'HH', 'BB', 'DH', et 'DB' permettent de copier ou déplacer des éléments avec une grande précision. Cohérence dans la disposition des étages : Grâce à un écart prédéfini, ça assure l'aplomb entre les étages dans votre plan. Flexibilité d'inversion : Appuyez sur 'I' ou 'N' pour inverser facilement la direction (haut/bas) pendant vos opérations. Facilite les Présentations : Copier une fenêtre/présentation, faite 'HHH' dans la fenêtre et vous avez l'étage du dessus d'aplomb avec la disposition de la présentation précédente. 3. Prérequis Avant de commencer, assurez-vous de : Disposer vos étages aligné avec un écart constant entre chaque étages et de préférence un chiffre rond (par exemple : RDC à x0 y0, R+1 à x0 y10, R+2 à x0 y20). Définir l'écart (incrément) entre les étages en utilisant la commande 'EE' avant d'utiliser les autres fonctions. 4. Utilisation Voici comment tirer parti de cette routine : EE : Configurez l'écart (incrément) en spécifiant deux points ( de Bas en Haut) correspondant à la distance entre deux étages consécutifs. Mettez un écart rond pour plus de précision et de facilité. BBB/HHH : Naviguez vers l'étage supérieur ou inférieur. HH/BB : Copiez la sélection d'aplomb sur l'étage supérieur ou inférieur. DH/DB : Déplacez la sélection d'aplomb sur l'étage supérieur ou inférieur. 5. Exemple pratique : Faites une ligne représentant votre décalage entre étages (par exemple, une ligne verticale de 10 de longueur ) Utilisez 'EE' pour définir l'écart (incrément) entre le RdC et le R+1 avec les 2 extrémités de la ligne précédente (par exemple, 10 unités en Y ). Sélectionnez les objets à copier du RdC au R+1. Utilisez 'HH' pour copier d'aplomb vers le haut, répétez (Espace ou Entrer) pour copier au R+2, ou entrez 'I' ou 'N' pour inverser et copier d'aplomb vers le bas au Sous-Sol. 6. Conseils et astuces Configurez des raccourcis clavier (exemple : boutons précédent/suivant de la souris) pour accéder rapidement aux commandes fréquentes, comme ^c^cHHH pour monter d'un étage. Créez des boutons sur la palette d'outils pour un accès rapide aux commandes. N’oubliez pas que vous pouvez inverser la direction ( 'I' ou 'N') pour alterner facilement entre les copies/déplacements vers le haut et vers le bas. Peut aussi servir pour des déplacements/copies rapide dans une légende, tableau ou n'importe quel paterne régulier. Très utile pour avoir des présentations qui plombent d'un étage à l'autre. Cette routine LISP est là pour faciliter les plans multi-étages, c'est une méthode rapide et précise pour naviguer, présenter et manipuler les éléments entre les différents niveaux. Profitez-en ! Bonne journée. ;; Raccourcis clavier ==> ^c^cHHH ;; Raccourcis clavier ==> ^c^cBBB ;; Code AutoLISP pour gérer le décalage en X et en Y et effectuer des opérations de panoramique ;; Code AutoLISP original avec ajout des commandes HH, BB, DH, et DB avec fonctionnalité de répétition ;; Commande EE pour configurer l'écart en X et Y en spécifiant deux points (defun c:ee () ;; Demander à l'utilisateur de spécifier deux points (setq pt1 (getpoint "\nSpécifiez le premier point: ")) (setq pt2 (getpoint "\nSpécifiez le second point: ")) ;; Calculer la distance entre les deux points (setq dx (- (car pt2) (car pt1))) (setq dy (- (cadr pt2) (cadr pt1))) ;; Stocker les valeurs de décalage dans des variables d'environnement (setenv "EcartX" (rtos dx 2 9)) (setenv "EcartY" (rtos dy 2 9)) ;; Afficher les valeurs de décalage (princ (strcat "\nEcart en X défini à: " (rtos dx 2 9))) (princ (strcat "\nEcart en Y défini à: " (rtos dy 2 9))) ;; Message explicatif (princ "\nL'écart a été configuré avec succès.") (princ "\nUtilisez les commandes 'BBB', 'HHH', 'HH', 'BB', 'DH', et 'DB' pour naviguer, copier et déplacer en utilisant ces écarts.") (princ) ) ;; Commande pour effectuer un PAN vers le bas avec les valeurs de décalage en X et Y (defun c:bbb () ;; Récupérer les valeurs des variables de dessin "EcartX" et "EcartY" (setq ecartX (getenv "EcartX")) (setq ecartY (getenv "EcartY")) ;; Si les variables ne sont pas définies, demander à l'utilisateur d'entrer des valeurs (if (not ecartX) (setq ecartX (getreal "\nEntrez la valeur pour Ecart en X: ")) ) (if (not ecartY) (setq ecartY (getreal "\nEntrez la valeur pour Ecart en Y: ")) ) ;; Exécuter la commande PAN avec les valeurs de décalage en X et Y (command "_.pan" "0,0" (strcat "@" ecartX "," ecartY)) (princ) ) ;; Commande pour effectuer un PAN vers le haut avec les valeurs de décalage négatives (defun c:hhh () ;; Récupérer les valeurs des variables de dessin "EcartX" et "EcartY" (setq ecartX (getenv "EcartX")) (setq ecartY (getenv "EcartY")) ;; Si les variables ne sont pas définies, demander à l'utilisateur d'entrer des valeurs (if (not ecartX) (setq ecartX (getreal "\nEntrez la valeur pour Ecart en X: ")) ) (if (not ecartY) (setq ecartY (getreal "\nEntrez la valeur pour Ecart en Y: ")) ) ;; Calculer les valeurs de décalage négatives (setq ecartX-neg (rtos (- (atof ecartX)) 2 9)) (setq ecartY-neg (rtos (- (atof ecartY)) 2 9)) ;; Exécuter la commande PAN avec les valeurs de décalage négatives (command "_.pan" "0,0" (strcat "@" ecartX-neg "," ecartY-neg)) (princ) ) ;; Commande HH (Copie Haut) (defun c:hh () ;; Récupérer les valeurs des variables de dessin "EcartX" et "EcartY" (setq ecartX (getenv "EcartX")) (setq ecartY (getenv "EcartY")) ;; Si les variables ne sont pas définies, demander à l'utilisateur d'entrer les valeurs (if (not ecartX) (setq ecartX (getreal "\nEntrez la valeur pour Ecart en X: ")) ) (if (not ecartY) (setq ecartY (getreal "\nEntrez la valeur pour Ecart en Y: ")) ) ;; Vérifier s'il y a une sélection active (setq sel (ssget)) (if sel (progn (setq multiplier-up 1) (setq multiplier-down 1) (setq direction 1) (setq first-inversion T) (while T (setq current-multiplier (if (> direction 0) multiplier-up multiplier-down)) (setq vector (strcat "@" (rtos (* (atof ecartX) direction current-multiplier) 2 9) "," (rtos (* (atof ecartY) direction current-multiplier) 2 9))) (command "_.COPY" sel "" "0,0" vector) (princ (strcat "\nCopie effectuée: " vector)) (initget "Inverser Nouveau Quitter") (setq input (getkword "\nAppuyez sur Entrée pour continuer, tapez [I]nverser, [N]ouveau ou [Q]uitter: ")) (cond ((= input "Quitter") (exit)) ((or (= input "Inverser") (= input "Nouveau")) (setq direction (* direction -1)) (if first-inversion (setq first-inversion nil) (if (> direction 0) (setq multiplier-up (1+ multiplier-up)) (setq multiplier-down (1+ multiplier-down)) ) ) ) (T (if (> direction 0) (setq multiplier-up (1+ multiplier-up)) (setq multiplier-down (1+ multiplier-down)) ) ) ) ) ) (princ "\nAucune sélection n'a été faite.") ) (princ) ) ;; Commande BB (Copie Bas) (defun c:bb () ;; Récupérer les valeurs des variables de dessin "EcartX" et "EcartY" (setq ecartX (getenv "EcartX")) (setq ecartY (getenv "EcartY")) ;; Si les variables ne sont pas définies, demander à l'utilisateur d'entrer les valeurs (if (not ecartX) (setq ecartX (getreal "\nEntrez la valeur pour Ecart en X: ")) ) (if (not ecartY) (setq ecartY (getreal "\nEntrez la valeur pour Ecart en Y: ")) ) ;; Vérifier s'il y a une sélection active (setq sel (ssget)) (if sel (progn (setq multiplier-up 1) (setq multiplier-down 1) (setq direction -1) (setq first-inversion T) (while T (setq current-multiplier (if (> direction 0) multiplier-up multiplier-down)) (setq vector (strcat "@" (rtos (* (atof ecartX) direction current-multiplier) 2 9) "," (rtos (* (atof ecartY) direction current-multiplier) 2 9))) (command "_.COPY" sel "" "0,0" vector) (princ (strcat "\nCopie effectuée: " vector)) (initget "Inverser Nouveau Quitter") (setq input (getkword "\nAppuyez sur Entrée pour continuer, tapez [I]nverser, [N]ouveau ou [Q]uitter: ")) (cond ((= input "Quitter") (exit)) ((or (= input "Inverser") (= input "Nouveau")) (setq direction (* direction -1)) (if first-inversion (setq first-inversion nil) (if (> direction 0) (setq multiplier-up (1+ multiplier-up)) (setq multiplier-down (1+ multiplier-down)) ) ) ) (T (if (> direction 0) (setq multiplier-up (1+ multiplier-up)) (setq multiplier-down (1+ multiplier-down)) ) ) ) ) ) (princ "\nAucune sélection n'a été faite.") ) (princ) ) ;; Commande DH (Déplacement Haut) (defun c:dh () ;; Récupérer les valeurs des variables de dessin "EcartX" et "EcartY" (setq ecartX (getenv "EcartX")) (setq ecartY (getenv "EcartY")) ;; Si les variables ne sont pas définies, demander à l'utilisateur d'entrer les valeurs (if (not ecartX) (setq ecartX (getreal "\nEntrez la valeur pour Ecart en X: ")) ) (if (not ecartY) (setq ecartY (getreal "\nEntrez la valeur pour Ecart en Y: ")) ) ;; Vérifier s'il y a une sélection active (setq sel (ssget)) (if sel (progn (setq direction 1) (while T (setq vector (strcat "@" (rtos (* (atof ecartX) direction) 2 9) "," (rtos (* (atof ecartY) direction) 2 9))) (command "_.MOVE" sel "" "0,0" vector) (princ (strcat "\nDéplacement effectué: " vector)) (initget "Inverser Nouveau Quitter") (setq input (getkword "\nAppuyez sur Entrée pour continuer, tapez [I]nverser, [N]ouveau ou [Q]uitter: ")) (cond ((= input "Quitter") (exit)) ((or (= input "Inverser") (= input "Nouveau")) (setq direction (* direction -1))) ) ) ) (princ "\nAucune sélection n'a été faite.") ) (princ) ) ;; Commande DB (Déplacement Bas) (defun c:db () ;; Récupérer les valeurs des variables de dessin "EcartX" et "EcartY" (setq ecartX (getenv "EcartX")) (setq ecartY (getenv "EcartY")) ;; Si les variables ne sont pas définies, demander à l'utilisateur d'entrer les valeurs (if (not ecartX) (setq ecartX (getreal "\nEntrez la valeur pour Ecart en X: ")) ) (if (not ecartY) (setq ecartY (getreal "\nEntrez la valeur pour Ecart en Y: ")) ) ;; Vérifier s'il y a une sélection active (setq sel (ssget)) (if sel (progn (setq direction -1) (while T (setq vector (strcat "@" (rtos (* (atof ecartX) direction) 2 9) "," (rtos (* (atof ecartY) direction) 2 9))) (command "_.MOVE" sel "" "0,0" vector) (princ (strcat "\nDéplacement effectué: " vector)) (initget "Inverser Nouveau Quitter") (setq input (getkword "\nAppuyez sur Entrée pour continuer, tapez [I]nverser, [N]ouveau ou [Q]uitter: ")) (cond ((= input "Quitter") (exit)) ((or (= input "Inverser") (= input "Nouveau")) (setq direction (* direction -1))) ) ) ) (princ "\nAucune sélection n'a été faite.") ) (princ) ) ;; Afficher un message pour indiquer que les fonctions ont été chargées (princ "\n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Les commandes suivantes sont disponibles :") (princ "\n 1. 'EE' - Configurer l'écart en spécifiant deux points (de Bas en Haut).") (princ "\n 2. 'BBB' - Effectuer un panoramique vers le Bas.") (princ "\n 3. 'HHH' - Effectuer un panoramique vers le Haut.") (princ "\n 4. 'HH' - Copier la sélection vers le Haut (copies multiples possibles, tapez 'I' ou 'N' pour inverser).") (princ "\n 5. 'BB' - Copier la sélection vers le Bas (copies multiples possibles, tapez 'I' ou 'N' pour inverser).") (princ "\n 6. 'DH' - Déplacer la sélection vers le Haut (déplacements multiples possibles, tapez 'I' ou 'N' pour inverser).") (princ "\n 7. 'DB' - Déplacer la sélection vers le Bas (déplacements multiples possibles, tapez 'I' ou 'N' pour inverser).") (princ "\n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Pour configurer des Raccourcis Clavier pour les Pan dans tes Commandes Personalisée ==> ^c^cHHH & ^c^cBBB - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -") (princ) - PanPan.lsp
×
×
  • 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é