bonuscad Posté(e) le 9 mars 2009 Posté(e) le 9 mars 2009 Bonjours, Qui n'a pas les express-tools d'installé?Ceux-ci offrent au programmeurs des fonctions (non-documentées) qui pourraient bien rendre des services. dans le dossier "....\...\Express", vous avez un fichier nommé "acetauto.lsp". En ouvrant celui-ci on peut voir toutes les fonctions chargées automatiquement et SURTOUT on peut deviner la forme des arguments à fournir à ces fonctions. Par exemple:(acet-geom-arc-center p1 p2 p3), on devine que la fonction va retourner le centre d'un arc passant par 3 points fournis en argument. Donc certainement plein de petites fonctions intéressantes qui pourrait simplifier la programmation. L'un de vous les utilise t-il? On pourrais peut être les recenser avec un petit laïus associé pour les plus délicates. Il y a aussi quelques fonctions (ai_xxx)... Le seul truc qui me gène, et que par la suite des codes publiés dépendent de fonctions que nous ne maitrisons pas dans l'avenir et entre différentes versions. Mais cela peut être bon à connaitre quand même :P Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Tramber Posté(e) le 9 mars 2009 Posté(e) le 9 mars 2009 Je ne sais plus si jen utilise mais j'ai la doc imprimée dans un classeur.Tiens, j'ai trouvé :www.afralisp.net/lisp/acet-utils.htm Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
Patrick_35 Posté(e) le 9 mars 2009 Posté(e) le 9 mars 2009 Salut Je suis bien d'accord Le problème avec les express, c'est le portage d'une version à une autre.J'évite autant que possible d'y faire appel, malgré certaines fonctions qui pourraient être bien utile comme(acet-ui-pickdir "Message" "c:\\" "Titre") pour choisir un répertoire.(acet-ui-message "Mon Message" "Mon Titre" 16) pour afficher un message via vbaet... Mais on arrive souvent à utiliser d'autres procédés comme avec les activexLe choix d'un répertoire (defun dirbox (/ cdl rep) (if (setq cdl (vlax-create-object "Shell.Application")) (progn (and (setq rep (vlax-invoke cdl 'browseforfolder 0 "Choisissez un répertoire pour traiter tous les dessins et changer tous les objets des dessins en couleur DUCALQUE" 512 "") ) (setq rep (vlax-get-property (vlax-get-property rep 'self) 'path) ) ) (vlax-release-object cdl) ) ) rep ) Un message (defun msgbox (Titre Bouttons Message / Reponse WshShell) (setq WshShell (vlax-create-object "WScript.Shell")) (setq Reponse (vlax-invoke WshShell 'Popup Message 0 Titre (itoa Bouttons))) (vlax-release-object WshShell) Reponse ) La seul chose que j'utilise des express est la progress bas, car je n'ai pas encore réussi à trouver son équivalent. (if (eval 'acet-ui-progress-done) (progn (setq n 0) (acet-ui-progress-init "Un Message" 1000) (repeat 1000 (acet-ui-progress-safe (setq n (1+ n))) (repeat 10000) ; Tempo ) (acet-ui-progress-done) ) ) Et on a exactement le même problème avec les outils doslib.Tu as la fonction getfiledm qui permet un choix multiple de fichiers, chose que je suis incapable à l'heure actuelle de refaire.L'appel est lancé ;) ps : Au lieu de regarder dans le lisp, tu peux aussi faire(vl-remove-if-not '(lambda (x) (wcmatch x "ACET-*"))(atoms-family 1)) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
bonuscad Posté(e) le 9 mars 2009 Auteur Posté(e) le 9 mars 2009 ps : Au lieu de regarder dans le lisp, tu peux aussi faire(vl-remove-if-not '(lambda (x) (wcmatch x "ACET-*"))(atoms-family 1)) Tout à fait, mais avoue que d'avoir le nom de la fonction n'est pas suffisant, tu peux tâtonner longtemps avant de trouver le type d'argument à passer. Tiens! trouves moi les arguments pour la fonction (bpoly), ceux-ci pouvant être optionnels J'en ai trouvé quelques un, mais pas tous... Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
(gile) Posté(e) le 9 mars 2009 Posté(e) le 9 mars 2009 Et on a exactement le même problème avec les outils doslib.Tu as la fonction getfiledm qui permet un choix multiple de fichiers, chose que je suis incapable à l'heure actuelle de refaire.L'appel est lancé J'avais fait ça et ça, c'est des DLL. D'après ce que j'ai pu lire dot NET devrait avoir une meilleure portabilité (les nouvelles versions du .NET Framework ne sont que des ajouts aux versions précédentes) reste à voir ce qu'il en sera des classes managées ObjectARX... On verra avec la version 2010 (nouveau format dwg). PS : J'ai un peu reformaté ton code (dirbox) pour un meilleur affichage. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Bred Posté(e) le 9 mars 2009 Posté(e) le 9 mars 2009 Salut,La fonction acet dont je ne peux personnellement pas me passer est acet-drag-move permettant de garder au bout du curseur l'image de l'objet.Pas trouver d'équivalent avec les activeX.... Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Patrick_35 Posté(e) le 10 mars 2009 Posté(e) le 10 mars 2009 Re bpoly est une fonction des express ? Je peux aussi utiliser la commande _bpoly qui fonctionne avec une bd, et la commande en français est fpoly. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
bonuscad Posté(e) le 10 mars 2009 Auteur Posté(e) le 10 mars 2009 bpoly est une fonction des express ? Non, du tout, c'est une veille fonction datant depuis la version 12 ou 14, qui est la fonction interne de FPOLY. En lisp, tu peux l'appeler avec plusieurs formes optionnelles: (bpoly) -> tu retrouve l'invite de la commande FPOLY en ligne de commande. (bpoly (getpoint)) -> Cherche le contour avec le point fourni. (bpoly (getpoint) '(1.0 0.0 0.0)) -> Cherche le contour avec le point fourni et (là je ne sais pas trop, mais je crois qu'il s'agit du facteur "ray" pour la recherche du contour) (bpoly (getpoint) '(0.0 1.0 0.0) (ssget)) -> Cherche le contour avec le point fourni avec le facteur "ray" en Y et un jeux de sélection. Je pense que d'autres options peuvent encore suivre, mais je ne les ais pas découverte... Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Patrick_35 Posté(e) le 10 mars 2009 Posté(e) le 10 mars 2009 Re J'ai trouvé un lien en anglais sur les fonctionnalitées de bpoly. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Patrick_35 Posté(e) le 12 mars 2009 Posté(e) le 12 mars 2009 (giles)J'ai testé ta DLL, et elle fonctionne très bien (sauf pour +10000 fichiers, mais c'était histoire de pousser les limites) J'aurai juste une question.Elle sera compatible quelque soit la version d'autocad, de windows ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
(gile) Posté(e) le 12 mars 2009 Posté(e) le 12 mars 2009 Salut, À priori, oui. Un des arguments en faveur de .NET est justement sa portabilité. Une DLL qui fonctionne à partir d'une version (ici 2007) devrait fonctionner avec toutes les versions ultérieures, voir les réponses de Tony Tanzillo (en qui on doit pouvoir avoir confiance) ici. PS : quelle version as tu testé ?Je te recommande celle là (la boite de dialogue de sélection des fichiers est la même, mais il y a aussi une boite pour les dossiers, une messagebox et une inputbox et un fichier d'aide le tout dans un msi pour une installation automatique). Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Patrick_35 Posté(e) le 17 mars 2009 Posté(e) le 17 mars 2009 Salut PS : quelle version as tu testé ? Tu vois où la version ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
(gile) Posté(e) le 17 mars 2009 Posté(e) le 17 mars 2009 Je me suis mal exprimé, je voulais dire :- GetFilesLisp (03/11/08) qui ne contient que la fonction getfiles,- LispDialog.zip (02/01/09) installation "manuelle" depuis AutoCAD,- LispDialogSetup.msi (12/03/09) Installation automatique et je recommandais cette dernière. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Patrick_35 Posté(e) le 18 mars 2009 Posté(e) le 18 mars 2009 Re C'est le résultat de la 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
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