Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes '[résolut]'.

  • 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. Bonjour le forum🙂, Je sollicite votre aide pour un problème que nous rencontrons. Depuis plusieurs mois, mon collègue et moi, qui sommes de véritables novices en Lisp, travaillons sur un code ci-dessous pour créer une boîte englobante (rectangle) autour d'une sélection de blocs contenant plusieurs attributs. Nous souhaitons que cette boîte (rectangle) soit placée sur le calque "Rectangle" en couleur verte, et nous aimerions inclure une option pour demander un décalage. Nous avons essayé d'intégrer différents morceaux de code sans succès. Si quelqu'un pouvait jeter un coup d'œil à notre code, ce serait vraiment sympa😉. Merci d'avance pour votre aide ! (defun c:BoxBlocAttrib ( / ss i Ent ObjType AttribList Bbox MinPt MaxPt Pt1 Pt2 Pt3 Pt4 Decal) (setq oldcmd00 (getvar "cmdecho")) (setvar "cmdecho" 0) ;; Fonction pour décaler un point (defun DeltaXY (Pt1 DeltaX DeltaY) (list (+ (car Pt1) DeltaX) (+ (cadr Pt1) DeltaY) ) ) ;; Fonction pour calculer la boîte englobante entre deux points (defun AddToBoundingBox (bbox point) (setq MinPt (mapcar 'min (car bbox) point)) (setq MaxPt (mapcar 'max (cadr bbox) point)) (list MinPt MaxPt) ) ;; Demander la sélection des blocs (setq ss (ssget '((0 . "INSERT")))) ; Sélection des blocs (setq Decal (getdist "\nDécalage ? <10> : ")) (if (= Decal nil)(setq Decal 10)) ;; Créer ou définir le calque "Rectangle" avec une couleur verte (if (not (tblsearch "layer" "Rectangle")) (progn (command "_.-layer" "_Make" "Rectangle" "_Color" "Vert" "" "") ) (command "_.-layer" "_Set" "Rectangle" "") ) ;; Boucler sur chaque bloc sélectionné (setq i 0) (while (< i (sslength ss)) (setq Ent (ssname ss i)) (setq ObjType (cdr (assoc 0 (entget Ent)))) ; Récupérer le type d'objet ;; Initialiser la boîte englobante (setq Bbox nil) ;; Si c'est un bloc avec attributs, on récupère les attributs et leur boîte englobante (if (eq ObjType "INSERT") (progn (setq AttribList (entnext Ent)) (while (and AttribList (eq (cdr (assoc 0 (entget AttribList))) "ATTRIB")) (command "_ucs" "_Entity" AttribList) (setq Tb_list (textbox (list (cons -1 AttribList)))) (setq Pt1 (car Tb_list)) (setq Pt2 (cadr Tb_list)) (if Bbox (setq Bbox (AddToBoundingBox Bbox Pt1)) (setq Bbox (list Pt1 Pt2)) ) (setq Bbox (AddToBoundingBox Bbox Pt2)) (setq AttribList (entnext AttribList)) ) ;; Décaler les points de la boîte englobante (setq Pt1 (car Bbox)) (setq Pt1 (DeltaXY Pt1 (* Decal -1) (* Decal -1))) (setq Pt2 (cadr Bbox)) (setq Pt2 (DeltaXY Pt2 Decal Decal)) (setq Pt3 (list (car Pt1) (cadr Pt2))) (setq Pt4 (list (car Pt2) (cadr Pt1))) ;; Dessiner le rectangle sur le calque "Rectangle" (command "_layer" "_set" "Rectangle" "") (command "_rectang" Pt1 Pt2) ;; Restaurer le SCU (système de coordonnées utilisateur) (command "_ucs" "_p") ) ) ;; Passer à l'objet suivant (setq i (1+ i)) ) (setvar "cmdecho" oldcmd00) (princ) )
×
×
  • 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é