lecrabe Posté(e) le 30 octobre 2009 Posté(e) le 30 octobre 2009 Hello Je pensais resoudre mon probleme avec RINS mais non malheureusement :o J'ai souvent des dessins avec des blocs debiles par exemple en terme de point d'insertion !MAIS graphiquement le bloc/symbole est BIEN place ! Donc j'ai besoin d'une routine qui permette en selectionnant UN blocde redefinir un nouveau point d'insertion XYZ La routine analyse le vecteur 3D entre les 2 points et realise une translation/rotation 2D/3D pour calculer les nouveaux parametres d'insertion (XYZ, Rotation, etc) pour mettre a jour TOUTES les insertions du bloc dans le dessin avec la nouvelle definition du bloc (dont en fait SEUL le point d'Insertion a change) Voyez vous ce que je veux dire !? Dans l'attente de vos solutions, Le Crabe vous remercie d'avance PS: en fait RINS marche sur les blocs a l'horizontal ! mais les blocs non ortho se deplacent ! [Edité le 30/10/2009 par lecrabe] Autodesk Expert Elite Team
Bortch59 Posté(e) le 31 octobre 2009 Posté(e) le 31 octobre 2009 Bonjour,tout d'abord bravo pour tout ce travail abattu! La routine IXL m'a particulièrement séduit, et je me demandais si il serait possible d'insérer des blocs dynamiques selon tel ou tel paramètre de visibilté??N'y connaissant rien en LISP, je m'en remet à votre savoir... Ce qui m'amène à ma deuxième question. Je souhaiterais apprendre le langage LISP, existe t'il un ouvrage qui vous à guidé? (il semble y avoir beaucoup de chose sur le net et notamment sur ce forum, mais je préfère avoir un support papier).Merci.
Patrick_35 Posté(e) le 3 novembre 2009 Auteur Posté(e) le 3 novembre 2009 Salut lecrabeCe n'est pas logique. Normalement RINS doit fonctionner sur n'importe quel type de blocTu as un exemple ? Bortch59IXL n'est pas prévu pour les blocs dynamiques.Pour ta 2em question, avec un bouquin autolisp de la V14, chose rare à dénivher maintenant @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Bortch59 Posté(e) le 3 novembre 2009 Posté(e) le 3 novembre 2009 Ma question était mal posée. J'avais compris que IXL n'était pas prévu pour les blocs dynamiques mais est ce qu'il serait possible de le faire ou est ce que je peut arrêter mes recherches maintenant?
mattew62 Posté(e) le 3 novembre 2009 Posté(e) le 3 novembre 2009 Bonjour !! Tout d'abord félicitation pour ce travail et merci de le partager. Je cherchai une astuce pour replacer le point d'insertion d'un bloc dans le graphisme de ce dernier et je suis tombé sur ce topic je me suis donc intéressé à la routine RINS et je vois que c'est un sujet d'actualité entre Le Crabe et Patrick_35 Voilà le retour de mon utilisation : Super méga génial j'adore mais (et oui il y a un mais) j'ai remarqué des cas ou cela fonctionne malcas 1 : le bloc a subit une rotationcas 2 : le bloc a subit un miroir (la propriété échelle X du bloc passe de 1 à -1) dans les deux cas, une fois RINS appliqué le graphisme du bloc est déplacer non pas vers son point d'insertion initial mais vers un autre endroit. Patrick_35 j'espère que mes informations pourront vous aidez à améliorer cette routine.En tous cas je le souhaite ardemment Dans l'espoir d'une mise à jour de RINS je vous salut !!
Patrick_35 Posté(e) le 3 novembre 2009 Auteur Posté(e) le 3 novembre 2009 Vous avez la dernière version ? (V3.00)Car effectivement, il y avait un soucis concernant les blocs avec rotation.Et merci du retour pour les blocs miroités.Ils ne restent pas en place. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lecrabe Posté(e) le 11 novembre 2009 Posté(e) le 11 novembre 2009 Hello Desole, j'etais en vacances ! En effet le probleme principal est avec les blocs en miroir ! Ce petit probleme est corrige avec quelle version svp ? The Decapode is back Autodesk Expert Elite Team
lili2006 Posté(e) le 15 décembre 2009 Posté(e) le 15 décembre 2009 Bonjour à toutes et tous, Salut Patrick_35, J'étais en train de regarder tes dernières mises à jour et je me posais la question sur la routine[surligneur] "Rech " [/surligneur] . A quoi sert le DCL ? Je n'ai que des infos en ligne de commande ? Texte à rechercher : A3-1/100Texte n° 1 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 2 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 3 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 4 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 5 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 6 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 7 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 8 trouvé A3-1/100 (Zoom/Suivant) :Commande:Texte n° 9 trouvé A3-1/100 (Zoom/Suivant) :Commande: En ouvrant la dcl, je crois comprendre que l'on peut faire également des choix de textes, attributs, tableaux, xrefs et ce, dans les différents espaces. Qu'ais-je raté ? Merci d'avance, :P Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Patrick_35 Posté(e) le 15 décembre 2009 Auteur Posté(e) le 15 décembre 2009 Salut Dans le lisp, tu as 3 commandes.rech, que tu connais.recht qui recherche selon un texte sélectionné.recho pour les options de recherches et donc avec une dcl. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lili2006 Posté(e) le 15 décembre 2009 Posté(e) le 15 décembre 2009 Re, Merci Patrick_35, Je n'avais qu'à "décrypter" le lisp,... ;) Je teste de suite, :D EDIT : Nickel ! :P Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
salvanorigatore Posté(e) le 16 décembre 2009 Posté(e) le 16 décembre 2009 Bonjour Patrick_35,puisque on parle de ton lisp RECH j'ai une petite demande :j'ai remarque que la recherche avec ce lisp ne peut se faire que sur l'intégralité d'une phrase et non sur une partie seulement (un texte dans un phrase).[surligneur]Je m'explique : si je cherche "bureau 24" mais que le texte intégral c'est "bureau 24 b25" il sort de la fonction sans avoir rien trouvé[/surligneur] (et sans aucun message d'ailleurs...)Est-il possible de faire en sorte que ton lisp puisse chercher un mot dans une phrase?Merci par avance. " Celui qui a déplacé la montagne, c'est celui qui a commencé par enlever les petites pierres "
Patrick_35 Posté(e) le 16 décembre 2009 Auteur Posté(e) le 16 décembre 2009 Salut Oui, en utilisant les caractères spéciaux comme *, #, etc... Extrait de l'aide (fonction autolisp wcmatch)Wild-card characters Character Definition# (pound) Matches any single numeric digit.@ (at) Matches any single alphabetic character.. (period) Matches any single nonalphanumeric character.* (asterisk) Matches any character sequence, including an empty one, and it can be used anywhere in the search pattern: at the beginning, middle, or end.? (question mark) Matches any single character.~ (tilde) If it is the first character in the pattern, it matches anything except the pattern.[...] Matches any one of the characters enclosed.[~...] Matches any single character not enclosed.- (hyphen) Used inside brackets to specify a range for a single character., (comma) Separates two patterns.` (reverse quote) Escapes special characters (reads next character literally). @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
salvanorigatore Posté(e) le 16 décembre 2009 Posté(e) le 16 décembre 2009 re,merci beaucoup :cool: juste une petite chose : comme je ne suis pas très alaise avec la langue de Shakespeare, aurais-tu la traduction française ?merci d'avance, sinon ça ne fait rien.A + " Celui qui a déplacé la montagne, c'est celui qui a commencé par enlever les petites pierres "
Patrick_35 Posté(e) le 16 décembre 2009 Auteur Posté(e) le 16 décembre 2009 Une traduction via GoogleWild-card caractères Caractère Définition# (Dièse) Correspond à n'importe quel chiffre unique numérique.@ (At) Correspond à tout caractère alphabétique.. (période) Correspond à tout caractère non alphanumérique unique.* (Astérisque) Correspond à toute séquence de caractères, y compris si c'est vide, et il peut être utilisé n'importe où dans le caractère de recherche: au début, milieu ou fin.? (question mark) Correspond à n'importe quel caractère unique.~ (Tilde) Si elle est le premier caractère dans la recherche, tout sauf le caractère spécifié.[...] Correspond à l'un des caractères entre crochets.[~...] Correspond à un caractère isolé, non clos.- (Tiret) L'intérieur de crochets utilisés pour spécifier une plage d'un seul caractère., (Virgule) Sépare deux modèles.`(Quote inverse) Caractères spéciaux Escapes (lit caractère suivant littéralement). @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
salvanorigatore Posté(e) le 16 décembre 2009 Posté(e) le 16 décembre 2009 merci :mad2: " Celui qui a déplacé la montagne, c'est celui qui a commencé par enlever les petites pierres "
PHILPHIL Posté(e) le 30 décembre 2009 Posté(e) le 30 décembre 2009 HELLO PATRICK petit souci avec GEF 3.03 sur AA2010 avec AA2009 il me semble que les modifications dans les fenetres n'engendrait pas une regeneration de chaques presentations NON ?? avec AA2010 je vois defiler toutes présentations la ou je demande une modification de calque est ce que ca vient des fichiers *.ARX qui fonctionnement differement ?ou d'une option / parametre qui a changer ? pour AA2011 a venir les *.arx ne macheront pas aussi peut on récupérer le fichier de base pour etre sur de pouvoir créer son *.arx pour chaque version a venir bonne année à l'année prochaine phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
(gile) Posté(e) le 30 décembre 2009 Posté(e) le 30 décembre 2009 Salut, Un fichier Arx est un fichier compilé, on ne peut pas le modifier.Il faut repartir du fichier source (C++) et recompiler. Les Arx sont compatibles pour toutes les versions correspondant au même format DWG (compatibilité binaire)Arx 16 : 2004 2005 2006Arx 17 : 2007 2008 2009Arx 18 : 2010 et très probablement 2011 et 2012 Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Patrick_35 Posté(e) le 4 janvier 2010 Auteur Posté(e) le 4 janvier 2010 Salut Le zip de GEF contient CprArx18.arx pour les versions 2010.Donc, si le lisp passe en revu les présentations, c'est qu'il n'a pasx trouvé cet arx. Comme (gile) a répondu à la question et s'il a un peu de temps, ce serait bien de transformer cet arx en dll ;) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
PHILPHIL Posté(e) le 6 janvier 2010 Posté(e) le 6 janvier 2010 hello patrick gile ici j'avais modifie le lisp, car il ne trouvait pas CprArx18.arx pensant avoir reussi car pas d'erreur constatées sur la ligne de commandemais en fait patrick tu me dis que l'ARX na pas été trouvé donc . car je vois defiler toutes les presentations . vous avez le meme probleme ? http://www.cadxp.com/sujetXForum-25901.htm a+ bonne année a tousss phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
Patrick_35 Posté(e) le 6 janvier 2010 Auteur Posté(e) le 6 janvier 2010 Salut CprArx18.arx vient de ce messagePour vérifier qu'il fonctionne bien, tu fais au clavier la commande arx, puis L pour load et tu vas rechercher le fichier.Si tout se passe bien, tu n'as pas de message d'erreur.Pour vérifier que l'arx est bien chargé, tu fais sur la ligne de commande arx puis ? et tu dois retrouver l'arx dans la liste proposée.Si le fichier plante car tu es sur une version 64 bits, addresse-toi à son auteur car je suis en 2009 version 32 mais en fait patrick tu me dis que l'ARX na pas été trouvé donc .car je vois defiler toutes les presentations .Oui @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
PHILPHIL Posté(e) le 6 janvier 2010 Posté(e) le 6 janvier 2010 hello patrick merci j'ai maintenant ma réponseil n'est pas compatible en 64bits apparement par contre pour le lien que tu viens de donner oupsss c'est rappé d'avancel'anglais et moi ca fait 4 ( en bon francais qui ne sait pas mettre deux mots d'anglais a suivre ) on ferat sans a+ phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
(gile) Posté(e) le 6 janvier 2010 Posté(e) le 6 janvier 2010 Salut, s'il a un peu de temps, ce serait bien de transformer cet arx en dll Comme j'ai vu que tu n'utilisais que crpvpfreeze et crpvpthaw, je me suis contenté d'implémenter ces deux fonctions (renommées gc-vpFreeze et gc-vpThaw).Ça devrait fonctionner sur toutes les version à partir de 2007 (la classe LispFunction n'existait pas avant cette version) gc-VpFreeze pour geler des calques dans une fenêtre de présentationgc-VpThaw pour dégeler des calques dans une fenêtre de présentationLes deux fonctions retournent T si l'opération s'est passée sans erreur, nil autrement (un message d'erreur est affiché sur la ligne de commande, je ne sais pas en afficher dans l'éditeur vlisp) Arguments:- le nom d'entité (ENAME) ou l'ObjectId (INT) de la fenêtre- un nom de calque (STR) ou une liste de noms de calques (LIST)Exemples d'utilisation(setq vp (car (entsel)) vlvp (vlax-ename->vla-object vp)) (gc-vpfreeze vp "Calque1") (gc-vpthaw (vla-get-ObjectId vlvp) '("Calque1" "Calque2")) Tu trouveras la DLL et le code ici. PS : Si tu veux, on peut essayer d'en implémenter d'autres, ça serait un exercice concret en .NET... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
(gile) Posté(e) le 7 janvier 2010 Posté(e) le 7 janvier 2010 J'ai ajouté une troisième fonction : gc-VpThawAll pour dégeler tous les calques dans la fenêtre. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Patrick_35 Posté(e) le 7 janvier 2010 Auteur Posté(e) le 7 janvier 2010 Salut Merci (gile) :thumbup: Tu es le meilleur :D J'ai testé et approuvé ta dll. Le lisp est modifié suivant la dll Il va vraiment falloir que je m'y mette.J'ai tout installé, c'est juste le temps qui manque :( PS : Si tu veux, on peut essayer d'en implémenter d'autres, ça serait un exercice concret en .NET...why not, c'est l'occasion qui fait le larron ;) ps : comment évaluer la version d'une dll autement que par une fonction ? pps : PHILPHIL, tu peux tester la nouvelle version (3.04) voir si ça fonctionne avec un 64 bits ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant