Aller au contenu

Patrick_35

Membres
  • Compteur de contenus

    6 374
  • Inscription

  • Dernière visite

  • Jours gagnés

    30

Tout ce qui a été posté par Patrick_35

  1. Patrick_35

    La justice sociale

    Bonjour Le vélo, il n'y a que ça de vrai :D Regardez en chine http://www.chine-informations.com/usb/membres/photos/139/chine-parking-de-velo_1230672835.jpg Même les transporteurs s'y mettent ;) http://trendland.com/wp-content/uploads/2010/09/AlainDelorme_Totem-600x397.jpg http://trendland.com/wp-content/uploads/2010/09/AlainDelorme_Totem-5-600x397.jpg http://trendland.com/wp-content/uploads/2010/09/AlainDelorme_Totem-3-600x397.jpg Remarquez, il y a un romantique, seul l'homme a des fleurs. Une note d'humour http://www.villiard.com/images/prix_essence/plien-argent-super.gif http://www.villiard.com/images/prix_essence/siphonner-fuel.gif http://www.villiard.com/images/prix_essence/pret-achat-gaz.jpg @Dinosor Le biker, c'est plutôt la note bad boy que banquier. Sacrilège que de se débarrasser de sa Harley au prétexte que cela fait américain plein de fric. Ce n'est pas du tout l'image que j'en ai. Regarde les hell's angels avec leurs amis outlaws (humour). @+
  2. Salut Apparement d'un bug. Si tu pouvais me donner un exemple avec les types de lignes que tu importes pour que je regarde. Cela me surprend quand même, car chez moi, tout fonctionne. Surement une particularité à comprendre. @+
  3. Erratum, j'ai confondu princ et write Après un resr rapide, ceci fonctionne (defun c:test(/ fic) (setq fic (open "c:/test/test.txt" "w")) (princ "Ceci est un test" fic) (close fic) (princ) ) @+
  4. Salut Essaye un write a la place d'un write-line sur la dernière ligne @+
  5. Salut Voici un lisp qui automatise l'import de styles de lignes. Tu lances GST afin de définir le fichier source (dwt, dwg ou dxf) Tu choisis tous les types de lignes qui t'interesse. Tu lances dans un autre dessin CST qui importe les types de lignes définies auparavant. Le lancement du lisp peut-être automatique (via _appload) Le fichier source peut-être sur le réseau. (defun Ouvrir_dessin_dbx(dwg / dbx doc lan rel DLLRegister ProgID->ClassID DBX-Register Get-ObjectDBX) ; Calls REGSVR32 to Register a DLL silently (defun DLLRegister (dll) (startapp "regsvr32.exe" (strcat "/s \"" dll "\""))) ; Returns the ProgID for a given ClassID if found in registry (defun ProgID->ClassID (ProgID) (vl-registry-read (strcat "HKEY_CLASSES_ROOT\\" progid "\\CLSID"))) ; Try to Register ObjectDBX if not done so already ; Returns the Class Name if already registered / sucessfully registered ; Else returns nil if failure (defun DBX-Register (classname filename / server acver) (cond ((not (and classname filename)) (DBX-Register (strcat "ObjectDBX.AxDbDocument." (itoa (setq acver (atoi (getvar 'ACadVer))))) (strcat "AxDb" (itoa acver) ".dll") ) ) ((ProgID->ClassID classname) classname) ((setq server (findfile filename)) (cond ((and (DLLRegister server) (ProgID->ClassID classname)) classname) (t nil) ) ) (t (DBX-Register "ObjectDBX.AxDbDocument" "AxDb.dll")) ) ) ; Try to reference ObjectDBX - returns the ActiveX object if sucessful ; Else returns nil if failure (defun Get-ObjectDBX (/ classname) (if (setq classname (DBX-Register nil nil)) (vla-getinterfaceobject (vlax-get-acad-object) classname) ) ) (and (setq dwg (findfile dwg)) (progn (vlax-for doc (vla-get-documents (vlax-get-acad-object)) (and (eq (strcase (vla-get-fullname doc)) (strcase dwg)) (setq dbx doc lan T) ) ) (and (not dbx) (setq dbx (Get-ObjectDBX)) (vla-open dbx dwg) ) ) ) (list dbx lan) ) (defun c:gst(/ bda dbx doc lin lst rec res) (defun bda( titre dwg lst / dcl fil n pos res tmp txt) (setq tmp (vl-filename-mktemp "ret" nil ".dcl") fil (open tmp "w") ) (foreach txt (list "gst : dialog {" "key = \"titre\";" "fixed_width = true;" "alignment = centered;" "is_cancel = true;" "width = 60;" (strcat ": list_box {label = \"Styles de lignes depuis " (vl-filename-base dwg) (vl-filename-extension dwg) "\";") " key = \"lst\";" " height = 20;" " multiple_select=true;}" "spacer;" "ok_cancel;" "}" ) (write-line txt fil) ) (close fil) (setq dcl (load_dialog tmp)) (new_dialog "gst" dcl "") (start_list "lst") (mapcar 'add_list lst) (end_list) (set_tile "titre" titre) (action_tile "lst" "(setq pos $value)") (action_tile "accept" "(done_dialog 1)") (action_tile "cancel" "(done_dialog 0)") (and (eq (start_dialog) 1) (progn (while (not (eq pos "")) (setq n (read pos) res (cons (nth n lst) res) pos (substr pos (+ 2 (strlen (itoa n))) (strlen pos)) ) ) ) ) (unload_dialog dcl) (vl-file-delete tmp) (reverse res) ) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (if (setq rec (getenv "Patrick_35_Style_Ligne_Fichier")) (or (findfile rec) (setq rec (strcat (vl-filename-directory rec) "/"))) (setq rec (strcat (vla-get-templatedwgpath (vla-get-files (vla-get-preferences (vlax-get-acad-object)))) "/")) ) (and (setq rec (getfiled "Choix d'un Gabarit" rec "dwt;dwg;dxf" 8)) (car (setq dbx (Ouvrir_dessin_dbx rec))) (progn (vlax-for ent (vla-get-linetypes (car dbx)) (or (wcmatch (strcase (setq lin (vla-get-name ent))) "*|*,CONTINU*,BYLAYER,BYBLOCK") (setq lst (cons lin lst)) ) ) (and (setq lst (bda "GST v1.00" rec (acad_strlsort lst))) (setq n 0) (progn (while (setq ent (nth n lst)) (setenv (strcat "Patrick_35_Style_Ligne_" (itoa n)) ent) (setq n (1+ n)) ) (setenv "Patrick_35_Style_Ligne_Total" (itoa n)) (setenv "Patrick_35_Style_Ligne_Fichier" rec) (princ "\nStyles de lignes mémorisés.") ) ) (or (cadr dbx) (vlax-release-object (car dbx))) ) ) (princ) ) (defun c:cst(/ dbx doc ent fic lst n rec tab) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (or (getenv "Patrick_35_Style_Ligne_Fichier") (c:gst)) (and (setq rec (getenv "Patrick_35_Style_Ligne_Fichier")) (if (setq fic (findfile rec)) (and (car (setq dbx (Ouvrir_dessin_dbx rec))) (progn (setq n 0) (while (< n (atoi (getenv "Patrick_35_Style_Ligne_Total"))) (setq lst (cons (getenv (strcat "Patrick_35_Style_Ligne_" (itoa n))) lst) n (1+ n) ) ) (vlax-for ent (vla-get-linetypes (car dbx)) (and (member (strcase (setq lin (vla-get-name ent))) lst) (not (tblsearch "ltype" lin)) (setq tab (cons ent tab)) ) ) (vla-copyobjects (car dbx) (vlax-safearray-fill (vlax-make-safearray vlax-vbObject (cons 0 (1- (length tab)))) tab ) (vla-get-linetypes doc) ) (or (cadr dbx) (vlax-release-object (car dbx))) ) ) (alert (strcat "Le fichier " rec " est introuvable.\nVeuiller lancer GST pour définir un nouveau Gabarit.")) ) ) (princ) ) @+
  6. Salut Ah, je savais bien que BonusCad avait écrit quelque chose sur ce sujet. J'ai cherché sur le forum en vain. Dès que j'ai un peu de temps, je regarde pour importer le/les styles de lignes depuis un fichier existant à partir d'un lisp. Il restera à affecter un bouton au lisp. @+
  7. Du moment que tu retrouves ta femme et tes enfants <img src='http://cadxp.com/public/style_emoticons/<#EMO_DIR#>/laugh.gif' class='bbc_emoticon' alt=':(rires forts):' /> @+
  8. Regarde la taille de tes caractères. S'ils sont trop gros, tu ne pourras pas diminuer la taille du tableau aussi facilement. @+
  9. Ben oui, si j'ai bien compris, vous cherchez à importer un type de ligne depuis un dwg (ouvert ou pas) DesignCenter le fait très bien et même plus comme recopier des calques, des blocs, etc... @+
  10. Salut Un exemple pour forcer la largeur d'un tableau à 200 (setq tab (vlax-ename->vla-object (car (entsel)))) ; sélection du tableau (vla-put-width tab 200) @+
  11. Bonjour Et le DesignCenter ? @+
  12. Salut Tu parles de sélectionner ce qui est sous le bloc mais je vois que tu utilises le point d'insertion du bloc, c'est différent car le point de base peut se trouver à Pétaouchnok du bloc. Si tu pouvais préciser. @+
  13. Salut J'ai remarqué que si tu utilises trop souvent toutes les options (surtout ce qui est sensible) de JAV sur le même dessin, le fichier plante. Pour la config, j'ai la même, donc pas de soucis de compatibilité. @+
  14. Salut Avec -jav (getenv "Patrick_35_Jav") Pour connaitre la valeur du bit et setenv pour forcer la valeur Bit 0 --> Contrôle des erreurs Bit 1 --> Purger les application Bit 2 --> Lignes de longueur 0 Bit 3 --> Textes vide Bit 4 --> Blocs vide Bit 5 --> Groupes vide Bit 6 --> Effacer Xdatas Bit 7 --> Proxys. Bit 8 --> Zombies Blocs Bit 9 --> Zombies Dictionnaires Bit 10 --> Liste d'échelles Bit 11 --> Liens dxe Bit 12 --> Filtres de calques Bit 13 --> Nettoyer Dictionnaires Bit 14 --> Dictionnaires vide Bit 15 --> Supprimer Dictionnaires Bit 16 --> Purger le dessin Bit 17 --> Images (raster) orphelines Bit 18 --> Caractères non imprimable Bit 19 --> Police de texte inconnue Bit 20 --> Wipeouts Bit 21 --> Xrefs orphelins Bit 22 --> Présentations vide Donc, que pour les proxys + zombies (+ (expt 2 7) (expt 2 8) (expt 2 9)) @+
  15. Salut Ou avec JAV. Si on a besoin que du trait, on peux sortir la grosse artillerie. @+
  16. Salut Merci à toi, mais méfiance à la surenchère des lisps, il y en aura bien un qui boira le café à ta place ;) @+
  17. Bonjour Après un test rapide de GstatCAD2012 La 1ere approche est bonne lors de l'installation, sauf que tout est en anglais, mais bon... Tout se déroule correctement et 1ere bonne surprise, il propose l'installation du module VBA, auquel je réponds immédiatement oui. L'installation terminée, je lance le logiciel, et pas de surprise. Il me propose par défaut de choisir un gabarit, je prends donc le métric et je me retrouve bien en face d'un clone avec son interface type rubans. Moi qui ai horreur de ce type d'affichage, je cherche en vain comment revenir à une interface classique. Il va falloir faire avec. A la lecture des rubans, une autre bonne surprise est de trouver les express d'installés par défaut. Je vois même dans les express, un comparateur DWG, intéressant. Une autre bonne surprise est de retrouver les onglets avec les noms de fichiers (C'est l'addon MdiTabs d'autodesk). Cela me fais penser donc à jouer avec la variable TASKBAR, histoire de voir si c'est un clone 100%, et bien raté, variable inconnue. Bon, on attaque la partir graphique. Les zooms sont fluides et rapides. Un bon point Certains raccourcis ne sont pas reconnus comme EO/EP. Ok, je fais faire un tour du coté des express pour lancer aliasedite (eh bien non, c’est dans manage qu’on le retrouve) J'ajoute donc mes deux raccourcis (EO et EP) et cela fonctionne immédiatement. Je teste quelques commandes, comme tracer une ligne, voir le gestionnaire des calques, etc... et tout fonctionne bien, pas de plantage. Je ne vais pas m'attarder avec les commandes de base et attaquer directement ce qui fait en général défaut aux clones, les champs. J'ouvre un dessin contenant lesdits champs et mauvaise surprise. Impossible de modifier un attribut contenant déjà un champ. Bon, je décide d'en ajouter un qui se traduit sous la forme d'un Mtext. Je lui indique pour l’exemple le nom du dessin. Le texte s'insère bien et je décide aussi d’ajouter au champ le répertoire du dessin. Là aussi, mauvaise surprise, impossible d'éditer le champ. On va pousser un peu plus les champs histoire de voir en ajoutant du diesel. Une chose simple, récupérer la valeur de l'onglet $(getvar,ctab) Et bien, ce n'est pas possible car on n'a pas expression diesel et si un dessin contient déjà ce type de champs, GstatCAD2012 les ignorent tout simplement. Ok, je regarde vite fait du coté des blocs dynamiques (avec la commande _bedit car non trouvé dans les menus) Tout m'a l'air de fonctionner correctement. Je regarde vite fait comment est constitué le bloc par une commande lisp (entget (car (entsel))) et la réponse est typique d'autocad. Ok, je vais voir un peu du coté du vlisp et je lance JAV. Voila le premier plantage. Bon, je lance quelque chose de plus simple, LSTATT pour compter des blocs. Second plantage mais on peut sauvegarder et récupérer son dessin (ouf). Ok, je ne suis pas têtu. Quelque chose de plus simple encore, VERR pour verrouiller une fenêtre. Victoire, celui-ci fonctionne. Je test avec UNVERR et bien que le lisp m'indique que tout est ok, ce n'est pas le cas. Mes fenêtres sont toujours verrouillées. En conclusion, si quelqu’un cherche un clone, celui-ci semble de tenir ses promesses, sauf pour les champs et les lisps qu'ils faut surement adapter au clone. Pas du 100% compatible. Un test plus approfondi nous dira tous ses défauts et qualités, mais qu’apporte il de plus face à des concurrents comme ZWCAD ? @+
  18. Bonjour Je vais faire un peu de mauvais esprit (à prendre au second degré) ;) A la lecrabe [Humour on] Donc, il fait ce qu’il peut. Donc, il est urgent d’attendre car c’est une m…e avec pleins de bugs [Humour off] Et les champ sont aussi intégrés ? Et question coût, car c’est le nerf de la guerre ? Ensuite, qu’apporte de plus GstarCAD par rapport à la concurrence (zwcad, iplus, etc) Si c’est comme avec iplus, c’est pas du 100% compatible vlisp, à tester donc. @+
  19. Patrick_35

    Modifier par lot chemin Xref

    Salut La commande redir des express tools couplée avec SuperAutoScript @+
  20. Patrick_35

    Déplacement Z à "0"

    Salut Et comme 1e99 dépasse la limite d'Autocad, cela veut dire que tu écrases tes objets au plafond, et qu'ensuite, tu les ramènes au sol. @+
  21. Salut Merci pour l'info. Il ne reste plus qu'à faire les mises à jour. Pour te répondre, tu modifies ton 1er message avec l'éditeur complet. Tu auras ainsi le titre du message. @+
  22. C'est certain que c'est déconcertant au premier abord, mais si tu fais un copier/coller de l'ensemble et que tu ajoutes la commande -traceur en remplacement de (mon_impression) ; Mon Impression en cours..., cela se fera tout seul :D Sinon, une autre solution pour éviter le désordre dans pdfcreator est de faire une pause du style (repeat 10000000) @+
  23. Je pense que ce sujet va t'intéresser @+
  24. Salut Dommage de ne pas utiliser pdfcreator ;) @+
  25. Salut Oui, et aussi en copie, déplacement, rotation, changement de calque, de couleur, etc... Dès que quelque chose modifie le bloc, l'angle des attributs du bloc sélectionné sont mis à zéro. @+
×
×
  • 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é