Aller au contenu

KevM

Membres
  • Compteur de contenus

    17
  • Inscription

  • Dernière visite

Tout ce qui a été posté par KevM

  1. Bonjour Steven, vous venez d'apporter un élément de réponse des plus efficaces, c'est la finalité que je cherche effectivement et même plus, le tableau ajoute lui même des lignes tout seul, même si ça ne m'arrange peux être pas dans l'absolue. Je vais creuser ça, ne me reste plus qu'à installer autocad archi pour trouver cette fonction Merci
  2. Bonjour Eric, oui je connais 🙂 Tranche équivalent à zone. De ce côté pas de soucis, mais je voulais que si j'ajoute un bloc qui n'est pas présent dans cette zone plus tard le tableau le compte, sans que j'ai besoin de le refaire. Quand j'utilise cette fonction il ne m'ajoute pas le nouveau bloc présent dans le tableau. Ce que montre Steven est du coup ce que j'aimerai faire effectivement, d'une certaine manière, c'est même plus que ce que j'espérai. Même si c'est complètement différent dans le procédé la finalité semble bonne.
  3. Bonsoir Eric merci pour votre réponse, En réalité c'est de là que je suis partie pour réfléchir à mon tableau. Mon idée est d'avoir un tableau comptant le nombre de blocs par secteur et par type, cependant dans un secteur 1 je n'ai pas forcément les mêmes que dans le secteur 2. Dans le secteur 1 j'ai 10 chaise par exemple et dans le secteur 2 10 bancs, mais peut être qu'avec l'évolution du projet je vais devoir ajouter 5 bancs au secteur 1. Avec un tableau de quantité standard je suis obligé de le refaire (en soit assez rapide), alors que là pas besoin d'y penser ça se met à jour tout seul. Et puis j'avais besoin de pouvoir exporter un seul tableau tableau cad vers excel pour calculer l'entièreté des mes quantitatifs. Mais en prenant du recul par rapport à ce que vous dites, il est vrai qu'il aurait été plus simple de faire les métrés quantités directement dans le cad avec des tableaux par secteurs. Après les tableaux cad sont vachement moins puissants qu'un Excel et on tendance à ramer si beaucoup de cellules + champs.
  4. Bonjour à tous, NB : L'idée de départ avoir un tableau qui compte les blocs mobilier en fonction des secteurs et qui se met à jour automatiquement même quand je rajoute un bloc déjà présent dans le dessin mais pas dans le secteur concerné. Je suis en train de faire des métrés, et sur le sujet là il est question de quantités de bloc (mobilier) découpé en plusieurs tranche. Jusque là pas de soucis. Là ou ça se complique c'est que mon chef de projet souhaite avoir des quantités de bloc par secteur, dans un seul et même tableau. J'ai donc utilisé le champs "Quantité dans aire" dans mes cellules de tableau => {"boundaryObjectHandle":"31EB92C","evaluatorId":"AcCount2","key":{},"name":"nom du bloc","type":"block"} Mais je suis obligé dans chaque cellule de modifier le code à la mains sur chaque ligne du tableau à chaque nouveau bloc, c'est long fastidieux pour une automatisation qui arrive un peu tard dans le projet. J'aimerai pouvoir lier le "nom du bloc" du code à une cellule d'un tableau qui contient le nom du bloc en brut ou via un champs "objet nommée", ça me permettrait de dupliquer mes cellules plus rapidement un peu comme dans Excel sans devoir éditer chaque champs quantité dans aire dans chaque cellule. Et puis si je change le nom du bloc j'aurai juste à modifier le nom dans ma cellule ou si c'est un champs objets nommées je n'aurai rien à faire. J'ai dans un premier temps essayé d'insérer un champs objets nommées dans le champs quantité dans aires, pour voir le comportement {"boundaryObjectHandle":"31EB92C","evaluatorId":"AcCount2","key":{},"name":"%<\AcObjProp Object(%<\_ObjId 2234903587296>%).Name>%","type":"block"} Sa fonctionne en partie dans le sens ou il récupère bien le bon nom sous forme de champs, mais après validation il l'inscrit en brut dans le champs donc ça perd de son intérêt. Et puis ça ne correspond pas totalement à ce que je veux faire avec le liaison à ce que contient ma cellule. De même j'ai regardé les champs pour un tableau mais je n'ai rien vu lié à une cellule. Sauriez vous si c'est possible ? Ou auriez vous une solution de contournement ? Merci d'avance, Bonne journée à tous Le tableau en partie Ce que j'aimerai faire visuellement
  5. KevM

    LISP Bloc DYNAMIQUE en Z

    Ah bah non finalement J'ai essayé d'aller plus loin et essayer de comprendre comment tout ça fonctionne un peu J'ai testé ça, mais je crois que je me suis senti pousser des ailes 😅 (defun c:PTALT (/ ss i blk pt alt) (if (setq ss (ssget "_X" '((0 . "INSERT") (2 . "TCPOINT 500,TCPOINT 200,`*U*") (410 . "Model")) ) ) (repeat (setq i (sslength ss)) (setq blk (ssname ss (setq i (1- i)))) (if (and (= (getpropertyvalue blk "BlockTableRecord/Name") "TCPOINT 500,TCPOINT 200") (setq alt (distof (getpropertyvalue blk "ALT"))) (setq pt (getpropertyvalue blk "Position")) ) (setpropertyvalue blk "Position" (list (car pt) (cadr pt) alt)) ) ) ) (command-s "_attsync" "_name" "TCPOINT 500, TCPOINT 200") (princ) )
  6. KevM

    LISP Bloc DYNAMIQUE en Z

    Salut Gile merci beaucoup pour ce lisp, Si j'analyse bien il suffisait juste d'ajouter à la ligne 3 parenthèse 2 un séparateur virgule suivi ' et finit par étoile pour prendre en compte toute les instances commençant par *U, en revanche je ne saisi pas quelle est la fonction ' ? Ca voudrait dire que je pourrai ajouter plusieurs noms de blocs dans ce lisp, juste en ajoutant les noms de blocs, bien évidemment il faudrait qu'il est tous un attribut alt.
  7. KevM

    LISP Bloc DYNAMIQUE en Z

    Oui effectivement je viens de tester, il arrive à conserver le nom dans les outils / propriétés/ sélection / insert /... mais à un ID différent en réalité. Du coup il faudrait que je trouve un lisp qui prend en compte une sélection et non le nom d'un bloc comme les deux ci dessus
  8. KevM

    LISP Bloc DYNAMIQUE en Z

    Oui j'ai déjà rencontré ce cas de figure comprenant que ça venait des blocs dynamiques, mais par exemple je viens de tester en copiant plusieurs fois le bloc TCPOINT non modifié et modifié, les blocs conservent le nom du bloc ne change pas et reste TCPOINT, je n'ai pas d'apparition de nom de bloc "*U". Sais tu à quelle moment cela se produit ou avec quelle action ?
  9. KevM

    LISP Bloc DYNAMIQUE en Z

    Merci pour vos retours ultra rapide. Voici les deux lisp que j'ai essayé, je suis vraiment novice en lisp, même si j'arrive parfois à lire et bidouiller pour le modifier, je ne sais pas lequel serait le plus approprié pour la plupart des cas. LISP TOPOALT (defun c:TOPOALT (/ jsel i name n ALT pt) (and (or (setq jsel (ssget "_I" '((0 . "INSERT") (2 . "TCPOINT") (66 . 1)))) (setq jsel (ssget '((0 . "INSERT") (2 . "TCPOINT") (66 . 1)))) (setq jsel (ssget "_X" '((0 . "INSERT") (2 . "TCPOINT") (66 . 1)))) ) (repeat (setq n 0 i (sslength jsel)) (setq name (ssname jsel (setq i (1- i))) pt (cdr (assoc 10 (entget name))) ALT (atof (getpropertyvalue name "ALT")) ) (if (entmod (subst (cons 10 (list (car pt) (cadr pt) ALT)) (assoc 10 (entget name)) (entget name) ) ) (setq n (1+ n)) n ) ) (princ (strcat "\nUn total de " (itoa n) "/" (itoa (sslength jsel)) " blocs TCPOINT ont été modifié avec succès")) ) (princ) ) J'ai essayé également celui -ci (defun c:PTALT (/ ss i blk pt) (if (setq ss (ssget "_X" '((0 . "INSERT") (2 . "TCPOINT") (410 . "Model")))) (repeat (setq i (sslength ss)) (setq blk (ssname ss (setq i (1- i))) pt (getpropertyvalue blk "Position") ) (setpropertyvalue blk "Position" (list (car pt) (cadr pt) (atof (getpropertyvalue blk "ALT")))) ) ) (command-s "_attsync" "_name" "TCPOINT") (princ) )
  10. Bonjour, Je me permet de vous demander de l'aide, car je connais des solutions pour attribuer un Z à un bloc / point à partir d'un attribut / TXT, mais je n'arrive pas à faire fonctionner ces solutions pour un bloc dynamique (inversion et position) les différents lisp que j'ai sous la mains TOPOALT / ALTZ / ... ne fonctionne que lorsque je n'ai pas d'élément dynamique dans le bloc. Savez vous si un bloc est un objet différent d'un bloc dynamique ? Si c'est le cas quelle entrée faut il changer dans le lisp pour qu'il prenne en compte le bloc dynamique. Merci d'avance pour votre aide Bonne journée Cote alti.dwg
  11. Je ne pensai pas avoir un soulèvement "anti-chatGPT" 😄, ça me montre néanmoins la voie de l'apprentissage du code lisp / ruby /.... qu'il faut maîtriser avant de jouer à l'apprenti sorcier. Merci pour vos réponses. @didier @lecrabe cela fonctionne parfaitement quand on redéfinit le style TXT sur standard ou que l'on passe son style à hauteur 0, merci. @Olivier Eckmann le lisp fonctionne parfaitement sans avoir besoin de changer la hauteur de texte, je reconnais n'avoir cherché que 20 min et donc pas assez, c'est cool de cumulé plusieurs boulots en un, mais ça bouffe pas mal de temps... je pense que vous connaissez. En tout cas merci pour votre réponse et le lien 🙏 Bonne journée et encore merci, pour moi et mon collègue
  12. Je ne voudrais pas abusé de votre aide, mais je rencontre une erreur dans la barre de commande, quand je regarde le lisp je ne vois pas cette commande "00" d'où cela pourrait provenir ? Commande: ADDZCOORDTEXT Sélectionnez des objets: Spécifiez le coin opposé: 1 trouvé(s) Sélectionnez des objets: _TEXT Style de texte courant: "TER-500" Hauteur de texte: 1.000 Annotatif: Non Justifier: Gauche Spécifiez le point de départ du texte ou [Justifier/Style]: Spécifiez l'angle de rotation du texte <90.0000>: Entrez le texte: Commande: Z = 5.00 Commande inconnue "00". Appuyez sur F1 pour obtenir de l'aide. Merci
  13. Bonjour, @didier, Désolé si je vous ai vexé, avec mon message et ça formulation, je parcours pas mal les forums à la recherche de solutions, je répond même sur certains comme Nas forum par exemple et je peux comprendre que cela vous vexe,. Je n'ai pas la prétention de dire que chat GPT est mieux qu'un humain , la preuve en est. Je vois cela comme un outil. Néanmoins, je pense que ma démarche n'est pas la mauvaise, j'ai essayé de chercher une solution sur un forum avec le peu de temps que j'ai au boulot, ne trouvant pas je me suis dit que plutôt de demander directement sur le forum je vais essayer ce fameux chat GPT que tout le monde parle. J'ai néanmoins bruler une étape c'est de ne pas apprendre le langage lisp, je vous l'accorde. Dans tout les cas je vous remercie pour votre lisp et votre temps
  14. Bonjour, J'aurai besoin d'un coup pouce pour faire un lisp Hier j'ai un collègue qui est venu me voir pour me demander s'il était possible d'ajouter un texte avec l'information Z (altimétrie). J'ai farfouillé 20 mn mais je n'ai pas trouvé mon bonheur, du coup j'ai tenté avec chat GPT et ça nouvelle maj, et bien ça a fonctionné, mais seulement pour un point. (defun c:AddZCoordText () (setq ptEnt (car (entsel "\nSélectionnez un point existant : "))) (setq pt (cdr (assoc 10 (entget ptEnt)))) (setq ptX (car pt)) (setq ptY (cadr pt)) (setq ptZ (caddr pt)) (setq textString (strcat "Z = " (rtos ptZ))) (command "_TEXT" pt (rtos pi 2 2) textString) (princ) ) Je lui ai alors demandé s'il pouvait le faire pour plusieurs point, ce qu'il a fait, je peux bien sélectionner plusieurs points, mais une fois que je valide j'ai une erreur : erreur: type d'argument incorrect: numberp: nil (defun c:AddZCoordText () (setq ss (ssget '((0 . "POINT")))) (setq len (sslength ss)) (repeat len (setq ptEnt (ssname ss (setq i (1- i)))) (setq pt (cdr (assoc 10 (entget ptEnt)))) (setq ptX (car pt)) (setq ptY (cadr pt)) (setq ptZ (caddr pt)) (setq textString (strcat "Z = " (rtos ptZ))) (command "_TEXT" pt (rtos pi 2 2) textString) ) (princ) ) J'ai essayé de lui faire corriger mais, impossible. Plus tard je me suis posé la question de comment cad pouvait traiter ça et j'en suis arrivé à la conclusion que ce n'était pas possible de cette manière, car comment pourrait il savoir où il faut poser le texte et quelles coordonnées Z prendre. Pour ça il faudrait définir une aire autour du point pour qu'il soit capable d'apposer le bon texte au bon endroit ! Savez vous si c'est possible, si quelqu'un aurait déjà codé ce genre de lisp ? Merci par avance pour vos retours 🙂 NB: Je suis vraiment pas bon en code et encore plus en langage lisp, c'est pour ça que j'ai essayé avec Chat gpt (pou d'autres fonction ça marche très bien d'ailleurs)
  15. Bonjour, J'ai un problème lorsque je publie mon dessin via ma présentation, il n'y a qu'une partie des hachures verte qui s'imprime ! Cependant si j'augmente l'échelle de ma hachure celle-ci affiche un peu plus de ma hachure mais pas complètement et puis j'aimerai ne pas changer l'échelle de celle-ci. A noter que les hachures sont toutes dans le même calque, rien n'est gelée, éteint,... et pas de transparence. Ce n'est pas la première fois que j'ai se problème et j'ai pas mal cherché et essayé mais rien n'y fait (seteven/maxhatch ne change rien). J'ai remarqué quelque chose c'est qu'avec l'accélération matérielle activée tout s'affiche dans l'espace présentation, mais lorsque celle-ci est désactivée ce qui est affiché correspond a ce qui va sortir en pdf (à ce propos l'imprimante n'y change rien pdf creator / adobe pdf et traceur = même résultat tout n'est pas sorti) A voir ci dessous les captures Ce que je vois à l'écran accélération matérielle activée : Ce qui s'imprime ( et ce que je vois à l'écran lorsque l'accélération matérielle est désactivée) Si je change l'échelle de hachure Merci d'avance pour vos réponses, bonne journée.
  16. KevM

    Erreur Fatale

    Bonjour, Je n'ai jamais vu ton problème mais ça me semble bizarre qu'une variable modifiée face planter AutoCAD. Essaye peut être de restaurer les paramètres par défaut via démarrer/autodesk /autocad / restaurer les paramètres par défaut. Tu peux aussi essayer de réparer autocad via le panneau de configuration désinstaller un logiciel et clic droit supprimer modifier, une fenêtre devrait s'ouvrir avec plusieurs options. Je ne sais pas si cela va régler ton problème, mais ça vaut peut être le coup d'essayer. Avant toute chose exporte ton espace de travail et tes raccourcis pour ne pas les perdrent. Voilà en espérant avoir peu t'aider :)
  17. Bonjour à toutes et tous, Je travaille sur autocad lt 2017 et j'ai créé un fichier .lin pour un plan de bordure ex 'CC1----CC1----CC1' j'arrive à importer les styles de lignes sans souci. Mais lorsque je modifie les paramètres dans mon fichier .lin et que j'essai de recharger la ligne via le gestionnaire type de ligne (je clic sur charger / choisi mon fichier .lin / sélectionne ma ligne et lui demande de recharger le style ), rien ne se passe dans mon espace objet même en faisant RG ou RGT (Alors que cela fonctionne sur le poste d'un collègue qui a lt 2013). Du coup ça m'oblige à changer mes styles de ligne de calque / purger / et charger la ligne à nouveau ! C'est très énervant de perdre du temps bêtement ! J'ai essayé sur différent fichier AutoCAD.iso / le dwt de mon agence mais ça ne semble pas être lié au fichier, je pense donc à une variable sur lt 2017 (car ça fonctionne sur lt 2013). Si quelqu'un a une idée je suis preneur. Merci par avance :)
×
×
  • 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é