Aller au contenu

bseb67

Membres
  • Compteur de contenus

    833
  • Inscription

  • Dernière visite

Tout ce qui a été posté par bseb67

  1. bseb67

    copier - coller très long

    Salut thierry40, Et bien certains des dessinateurs chez nous ont le même problème que toi. Dans le même plan, ils font un copier (command autocad) et lors du collage: définition double du bloc .... définition double du bloc .... Ca prend 2 à 4 min :o ! Le pire c'est que ca s'en va et ca revient. Pour tester, j'ai ouvert un des plans sur mon poste, mon premier copier à fait pareil 285s! puis les suivants 0.005s :P En ayant fait la même chose qu'eux. Pourtant il n'y a pas de blocs invisibles qui sont attrapés par le copier.
  2. salut zebulon_, JE crois savoir quel est ton revendeur, car nous avons le même. Chez nous, on avait reçu la 2008 normal complète, par contre on ne l'a pas vu passer. on avait eu mep2008 en premier, que j'ai installé sur 4 PC dont le mien, et ce début de mois on a eu la 2009 complète et AA2009 et c'est là que j'ai vu dans le stocke des boites qu'il y avait des 2008. Si tu ne veux pas de problèmes ou des lenteurs, reste sur la 2007. Ma mep 2008 bug plus souvent que la 2007, et pour la 2009, j'ai fait des mesures de temps sur mes lisps (ceux utilisés tous les jours par les dessinateurs), ils sont moins rapides.
  3. bseb67

    Pb type de ligne

    Salut didicools, Es-tu sur une version normale d'autocad? Car chez moi j'ai souvent ce problème, mais je travail sur Autocad MEP 2008. En zoomant ou dézoomant sur le dessin tu ne vois pas non plus de différence? Autre chose qui peut poser problème: autofluid. J'ai aussi ce souci d'affichage lorsque je m'en sers. le hic, c'est que je ne sais pas vraiment pourquoi ca vient, mais aussi comment l'affichage redevient normal. :(
  4. Salut cyrkan, Je vois que (Gile) a répondu à tes questions, et je n'aurai pas donné autant de détails. Comme je ne travaille pas le vendredi après-midi, je répond très rarement avant le lundi matin suivant. Si t'a besoin d'aide n'hésite pas à demander, je me suis inscrit sur cadxp l'an dernier afin d'avoir de l'aide dont (Gile) m'a fournit une bonne partie. Et si je peux, aide de mon mieux les autres.
  5. Re, Tout d'abord il y a deux versions, ensuite tu peux enlever les tests des paramètres, mais en programmation il faut toujours vérifier que les arguments passés sont ceux attendus. Sinon gare aux plantages. Mais c'est vrai que lorsque j'ai commencé, je ne faisait pas les tests, au fur et à mesure on se perfectionne mais on devient plus pointilleux ;)
  6. Re, Ok, par contre pour la couleur, cela dépend de ton mode de couleur, si tes entités son en couleur ducalque, il faut que les calques soient de la même couleur. Pour changer de calque, c'est très simple, soit on passe par les données DXF, soit la commande chprop: (defun testDXF( ancien_calque nouveau_calque / liste e le) (cond ((or (= ancien_calque nil) (/= (type ancien_calque) 'STR)) (alert (strcat "Le paramètre ancien_calque n'est pas bon!")) ) ((= (setq liste (ssget "X" (list (cons 8 (strcat "*" ancien_calque "*"))))) nil) (alert "Pas d'entités") ) ((or (= nouveau_calque nil) (/= (type nouveau_calque) 'STR)) (alert (strcat "Le paramètre nouveau_calque n'est pas bon!")) ) ((= (tblsearch "LAYER" nouveau_calque) nil) (alert (strcat "Le calque " nouveau_calque " n'existe pas!")) ) (t (print (strcat "Il y a " (itoa (setq nombre (sslength liste))) " entités à changer de calque")) ; on boucle tant qu'il y a quelque chose dans liste (while (/= (setq e (ssname liste 0)) nil) ; on récupère les données DXF (setq le (entget e)) ; on modifie le calque (setq le (subst (cons 8 nouveau_calque) (assoc 8 le) le)) ; on met à jour (entmod le) ; on supprime e de liste (ssdel e liste) ) ; while ) ) ; cond ) ; testDXF (defun testCHP( ancien_calque nouveau_calque / liste e le) (cond ((or (= ancien_calque nil) (/= (type ancien_calque) 'STR)) (alert (strcat "Le paramètre ancien_calque n'est pas bon!")) ) ((= (setq liste (ssget "X" (list (cons 8 (strcat "*" ancien_calque "*"))))) nil) (alert "Pas d'entités") ) ((or (= nouveau_calque nil) (/= (type nouveau_calque) 'STR)) (alert (strcat "Le paramètre nouveau_calque n'est pas bon!")) ) ((= (tblsearch "LAYER" nouveau_calque) nil) (alert (strcat "Le calque " nouveau_calque " n'existe pas!")) ) (t (print (strcat "Il y a " (itoa (setq nombre (sslength liste))) " entités à changer de calque")) ; on boucle tant qu'il y a quelque chose dans liste (while (/= (setq e (ssname liste 0)) nil) (command "chprop" e "" "calque" nouveau_calque "") ; on supprime e de liste (ssdel e liste) ) ; while ) ) ; cond ) ; testCHP J'avais oublié le test des paramètres. [Edité le 15/4/2008 par bseb67]
  7. Salut! Si tu veux déplacer du même vecteur tes objets, tu peux faire ainsi (defun c:test () (cond ((= (setq liste (ssget "X" (list (cons 8 "*test*")))) nil) (alert "Pas d'entités") ) (t (setq nombre (sslength liste)) (command "deplacer" liste "" '(0.0 0.0 0.0) (list dep_x dep_y dep_z)) ) ) Il te faut juste donner les valeurs à dep_x dep_y et dep_z
  8. bseb67

    Vive la galère

    Non, mais il y a des hotfix, faut voir. http://usa.autodesk.com/adsk/servlet/ps/dl/index?siteID=123112&id=2334435&linkID=9240618
  9. bseb67

    Vive la galère

    Re, Je travail sur XP 32Bits, avec un autocad MEP 2008. Pour ce que j'ai pu voir comme problème avec la 2008 et les consommations de ressources de la 2009, je crois que la 2007 est la meilleur des versions. J'ai testé mes lisps sur la 2009 (version autocad normal), mes lisps sont plus lents de quelques secondes, mais c'est vrai , 4-5s sur 2 à 7 min c'est pas grand chose. Ma config: PC DELL PRECISION 390 XP 32bits SP2 Intel Core 2 Duo 6700 4Go de RAM DDR2 232Go DD en SATA NVidia Quadro FX3500 256Mo J'attends avec impatience le SP3 d'XP pour voir s'il y a bien des gains de perf, car depuis quelques mois, nos pc sont super lent.
  10. bseb67

    Vive la galère

    Salut Jalna! Ton texte n'est pas vide bien-sur? J'ai eu déjà des bugs dans ce genre sur ma MEP2008. Il m'arrive de dessiner des lignes, mais lorsque je veux les sélectionner avec la souris, et bien nada ! :o ! Si je fait un regentout, et un zoom arrière, je vois apparaitre les lignes que j'ai dessiné, plusieurs mètres à coté de là où j'étais (et les avaient mise) des trucs dans ce genre là: http://bseb67.free.fr/cadxp/BugsAutocad/MEP2008/bug_MEP2008.PNG Seule solution, quitter autocad et le relancer. Sinon, j'ai eu droit a un autre bug, les petits carré bleus (poignées d'accrochage) n'étaient plus visible, pourtant dans le menu options c'était activé, et là super malheur :( j'ai carrément du redémarrer mon PC. [Edité le 14/4/2008 par bseb67]
  11. bseb67

    AutoCAD2009

    Re? Et bien je crois que le pb de la commande config3D puis ajuster manuellement est un bug d'AA2009. J'ai rééssayé 3 fois ce matin, et par 3 fois autocad a planté. Par contre, j'ai reçu une version 2009 simple d'autocad. L'installation m'a parut un poil plus longue. Mais pas de bug avec config3D. Le gris de la fenètre et le jaune kk pour le fond sont vraiment moches. Les miniatures pour les présentations, c'est assez chouette. Je pense qu'autodesk a du recevoir des retour sur le fait que vl-load-com n'était plus chargé par défaut sur la 2008, car sur la 2009 c'est de nouvo en route. Maintenant je vais tester mes lisps, puis un des dessinateurs prendra le relais.
  12. bseb67

    AutoCAD2009

    Salut! On a recu AA2009 ce matin. Installation assez rapide (par rapport à MEP 2008): 20Min. Par contre je suis déjà déçu à peine je l'ai lancé :( autocad me donne son petit message de config3D pour la carte graphique, je clique sur la clé pour entrer en mode manuel, et là BAM!!! NEW RECORD for plantage!!! 10s sous autocad. J'ai pas eu le temps de m'y remettre, car j'ai pas mal de développement lisp à faire. a+ [Edité le 7/4/2008 par bseb67]
  13. Salut! Je cherchais la même chose il y a quelque temps pour une appli en lisp. J'ai trouvé une astuce, elle n'est pas super génial, mais cela fonctionne. par contre tu ne peut pas changer de présentation ou EO->EP... Voici ma petite astuce: j'ai rajouter un bouton sur ma dcl, lorsque tu clic dessus, je lance une boite de dialogue doslib avec un message et un simple bouton ok. => Pourquoi? et bien lorsque tu clic sur ok, autocad te rends la main sur la fenêtre autocad et non la dcl. A partir de là tu peux bouger, zoomer dans la présentation en cours. Et même si tu sélectionne à nouveau ta dcl tu peux recliquer sur autocad pour bouger à nouveau. Par contre, si tu quitte la dcl et la relance plus tard, il faut recliquer sur le bouton lancant la bdd doslib. Il faut donc que tu télécharges la bibliothèque arx doslib, que tu la charge dans ton dessin et tu fait ceci: (defun bouger() ; liste des boutons : que OK (setq buttons (list "OK")) ; on lance la bdd (dos_msgboxex "Vous pouvez bouger dans la présentation en cours" "" buttons 3) ) ; bouger et dans le code lisp de ta dcl tu déclare ceci (action_tile "k_bouger" "(bouger)") Voilà, en espèrant que cela te conviendra.
  14. Et bien là, je peux à nouveau te féliciter (Gile). C'est exactement ce que je cherchais. Ca règle super bien le problème: j'ai divisé par 12 le temps de traitement moyen !!! :o Je crois que je vais devoir bientot te faire parvenir un cadeau pour tes aides. A moins que tu sois intéressé par un herbegement gratuit de quelques jours en alsace lors d'un passage (dans ma belle région) pendant les vacances. merci encore.
  15. Salut! Je travail sur des groupes, afin de différencier mes ensembles de lignes. Le problème, c'est lorsque je cherche les entités proche du point que j'ai cliqué le ssget me renvoie en fait toutes les entités du ou des groupes proche de ce point. Et là, je suis obligé de filtré le résultat du ssget pour ne garder que les entités réellement posées proche du point. Pour les lignes je teste si le point se trouve sur la droite (formé des 2 points de la ligne: 10 et 11) puis s'il est bien sur le segment. Il y aurai peut-être une méthode plus rapide de test. Mais si je cherche si le ssget ne pourrai pas me renvoyer que les entités proches et non toutes celles des groupes. J'ai pensé à une pseudo solution, mais à la billou, détruire mes groupes, faire le ssget puis annuler la destruction des groupes, mais je ne crois pas que ce soit rapide. Les mesures de temps de traitement me donnent une moyenne de 1.5s, en partant de 0.25s lorsque mes groupes sont pas trop grands (une dizaine de lignes) à 5s lorsque je suis à 200lignes dans le groupe. Voilà, si quelqu'un a une idée. merci
  16. bseb67

    shell + lisp

    Re, pour les vlax-invoke, comment tu sais ce que tu peux appeler sur un objet, y-a-t-il une fonction qui te liste les possibilités? J'ai trouvé, il y a quelques mois un fichier doc avec toutes les fonctions lisp, vlisp, mais il n'y a que le listing :(. Je suis très avide connaissances maintenant que je travail sous autocad vu que cela me plaît pas mal. Merci encore pour les infos.
  17. bseb67

    shell + lisp

    Salut! Pour ouvrir médiaplayer je fais ceci: (startapp (dos_regget "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Multimedia\\MPlayer2" "Player.Path") filename) ; met une pause qui dure le temps de la vidéo (command "_.delay" (* delai_video 1000)) ; on arrete mediaplayer (stop_processus "Mplayer2.exe") Regget me sert pour connaitre le chemin de mplayer2, filename c'est en fait le chemin+nom de la vidéo delai_video c'est la durée en secondes de la vidéo stop_processus c'est la fonction killapp Mais je serai intéressé de voir comment à du vlisp tu lis un fichier. Le vlisp me paraît très puissant (comme dirait mon premier prof d'info), mais elle m'est très inconnue.
  18. bseb67

    shell + lisp

    C'est bon, j'ai trouvé en cherchant WbemScripting.SWbemLocator sur google une page en russe: (defun killApp (appName / Server processList) (setq Server (vlax-invoke-method (vlax-create-object "WbemScripting.SWbemLocator") 'ConnectServer nil nil nil nil nil nil nil nil ) ) (setq processList (vlax-invoke Server 'ExecQuery (strcat "Select * from Win32_Process Where Name = '" appName "'"))) (vlax-for app processList (vlax-invoke app 'Terminate) ) (vlax-release-object Server) )
  19. bseb67

    shell + lisp

    Salut, Patrick_35: très pratique ton code pour connaitre les processus qui tourne sur le pc :D Tu fais comment pour les killer? Car pour un des mes lisps, j'ai fait des captures vidéos de mon écran pour expliquer comment utiliser les fonctions et lorsqu'on demande de l'aide sur une fonction je lance mediaplayer pour lire la vidéo, mais je ne sais pas comment le fermer.
  20. bseb67

    Probleme boc avec *u125

    Salut , Pour PHILPHIL: Désolé de n'avoir pas encore répondu, mais (Gile) t'as donné la réponse, Pour oliverts: j'ai découvert un bug d'autocad sur les blocs dynamiques et je pense que tu dois avoir le même. Si tu insères un bloc dynamique loin du point 0,0,0 du dessin, là ca va, mais si tu le pivotes, le déplace un peu ou change quoi que se soit, les petites flèches bleues (des propriétés dynamiques) foutent le camp. Mais le pire, c'est que cela m'est aussi arrivé proche du point 0,0,0, après avoir déplacé plusieurs le bloc et de pas grand chose (quelques mètres seulement) et fait des rotations. Mais en v-lisp tu arrive toujours à chopper les propriétés dynamiques. Donc ma super astuce, si les propriétés ne sont plus accessibles, j'ai fait des fonctions v-lisp (spécifique à chaque bloc) qui récupère les infos (position, rotation, propriétés dynamiques), supprime le bloc sélectionné et ré-insère un nouveau avec les paramètres sauvegardés.
  21. bseb67

    Probleme boc avec *u125

    Salut olivertsss, Je travail depuis un moment sur les blocs dynamiques, et oui c'est un peu embêtant le fait qu'ils deviennent des *U, mais comme l'a dit (Gile) c'est le fait que tu modifies les propriétés qui fait changer le nom. La seule solution que j'ai trouvé pour retrouver mes blocs, c'est de passer du v-lisp afin de trouver le nom d'origine.
  22. Merci (gile)! Comme read existe, je me disais bien qu'il devait exister une fonction qui fait ce que je cherche. J'ai cherché s'il y avait un run ou exec, et bien c'est donc eval :D ! Merci encore! :)
  23. Salut! Le sujet n'est peut être pas assez clair, mais je cherche à partir d'une liste de ce genre: (setq LISTE_C '(("RECTANGULAIRE" (choix_dimensions_rectangulaire)) ("CIRCULAIRE" (choix_dimensions_circulaire)) )) En faisant donc un (assoc "CIRCULAIRE" LISTE_C) je récupère donc: ("CIRCULAIRE" (choix_dimensions_circulaire)) et souhaites lancer la fonction (choix_dimensions_circulaire). Est-ce possible? Dois-je plutot remplacer la fonction par une commande c:? Merci.
  24. Salut! Comme te l'a dit vinz34, il faut charger les fonctions vl. Car sur la 2008, elles ne sont pas chargées par défaut comme sur les versions précédentes.
  25. bseb67

    Màj safearray bloc dynamique

    Re, En fait je vais recréer le bloc dynamique en fintant, j'inverse le point d'origine que je n'arrive pas à bouger avec l'autre point du paramètre linéaire => et ca marche! :D Si j'ai le temps je mettrai un post pour le challenge sur les polygone puis sur le tri. Merci encore pour le soutien ;)
×
×
  • 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é