Aller au contenu

zebulon_

Membres
  • Compteur de contenus

    1 489
  • Inscription

  • Dernière visite

  • Jours gagnés

    19

Tout ce qui a été posté par zebulon_

  1. zebulon_

    insérer un bloc

    j'en suis arrivé là : (defun modif_attrib (E ETIQ VALEUR / LATT ATT) (if (= (type E) 'ENAME) (setq E (vlax-ename->vla-object E)) ) (setq LATT (vlax-invoke E 'getAttributes)) (foreach ATT LATT (if (= (vla-get-TagString ATT) ETIQ) (vla-put-TextString ATT VALEUR) ) ) ) (defun insert_block (NOM BIBLIO PT ECHX ECHY ECHZ ROT LISTEATT / AcDoc SPACE REF LATT UCSZDIR Util INSPT SCALE Dbx) (setq AcDoc (vla-get-ActiveDocument (vlax-get-acad-object))) (setq Util (vla-get-utility AcDoc)) (setq UCSZDIR (trans '(0 0 1) 1 0 T)) (setq ROT (+ ROT (vla-AngleFromXAxis util (vlax-3d-point '(0 0 0)) (vlax-3d-point (trans (getvar "UCSXDIR") 0 ucszdir))))) ;; si le bloc n'existe pas dans le fichier, je le copie à partir d'un fichier bibliothèque (if (not (tblsearch "BLOCK" NOM)) (progn (setq BIBLIO (findfile BIBLIO)) (setq Dbx (ouvrir_dessin_dbx BIBLIO)) (vla-CopyObjects Dbx (vlax-safearray-fill (vlax-make-safearray vlax-vbObject '(0 . 0)) (list (vla-item (vla-get-blocks Dbx) NOM)) ;; faudrait encore voir si NOM existe dans dbx ) (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) ) (vlax-release-object dbx) ) ) ;; j'insère le bloc toujours à partir du header. (if (zerop (vla-get-ActiveSpace AcDoc)) (setq SPACE (vla-get-PaperSpace AcDoc)) (setq SPACE (vla-get-ModelSpace AcDoc)) ) (setq REF (vla-InsertBlock SPACE (vlax-3d-point (trans PT 1 0)) NOM ECHX ECHY ECHZ ROT ) ) (setq SCALE (vla-get-InsUnitsFactor REF)) (setq INSPT (vla-get-InsertionPoint REF)) (vla-ScaleEntity REF INSPT SCALE) ;; mise à jour des attributs (foreach LATT LISTEATT (modif_attrib REF (car LATT) (cadr LATT)) ) ) ouvrir_dessin_dbx se trouve ici, sinon Gille va me dire que j'ai pompé ;). Encore merci à Patrick_35. (insert_block "TOTO" "BLOCKMM.DWG" '(0 0) 1 1 1 0 nil) s'il y a des attributs à modifier (insert_block "TOTO" "BLOCKMM.DWG" '(0 0) 1 1 1 0 '(("ETIQUETTE1" "VALEUR1") ("ETIQUETTE2" "VALEUR2"))) Il y a encore (vla-item (vla-get-blocks Dbx) NOM) qui renvoie une erreur quand NOM n'existe pas. Je n'ai pas encore étudié les vl-catch-all-error... Amicalement Zebulon_ [Edité le 2/5/2007 par zebulon_]
  2. zebulon_

    insérer un bloc

    Je confirme ma crainte. Je récupère un bloc "sans unités" quand le bloc est un fichier externe alors que ce bloc est défini en mm. Je vais encore essayer de passer par un vla-CopyObjects associé avec un vla-get-blocks en me faisant un seul fichier bibliothèque (genre DesignCenter) qui contient déjà tous mes blocs définis à la bonne unité. je vous tiens au courant amicalement Zebulon_
  3. zebulon_

    insérer un bloc

    c'était juste pour faire plus vlisp on ne peut rien te cacher ;) Je m'en vais essayer le scl_upd. J'avais déjà essayé de faire quelque chose comme ça, juste après l'insertion du block( d'où effectivement la présence du progn) (setq SCALE (vla-get-InsUnitsFactor REF)) (setq INSPT (vla-get-InsertionPoint REF)) (vla-ScaleEntity REF INSPT SCALE) ce qui marche bien lorsque le bloc est déjà défini dans l'entête du fichier avec le bon facteur d'unité (qui se met correctement quand on insère avec _insert). Mais lorsque le bloc est un fichier externe, le vla-insertblock le reconnait comme un bloc "sans unité" alors que l'ai défini en mm. Donc, j'ai peur que le cvunit ne m'avance pas beaucoup et que ça ressemble à un bug. amicalement Zebulon_
  4. zebulon_

    insérer un bloc

    bonjour, j'ai fait ceci pour insérer un bloc (defun insert_block (NOM PT ECHX ECHY ECHZ ROT / AcDoc SPACE REF LATT UCSZDIR Util) (setq AcDoc (vla-get-ActiveDocument (vlax-get-acad-object))) (setq Util (vla-get-utility AcDoc)) (setq UCSZDIR (trans '(0 0 1) 1 0 T)) (setq ROT (+ ROT (vla-AngleFromXAxis util (vlax-3d-point '(0 0 0)) (vlax-3d-point (trans (getvar "UCSXDIR") 0 ucszdir))))) (if (zerop (vla-get-ActiveSpace AcDoc)) (setq SPACE (vla-get-PaperSpace AcDoc)) (setq SPACE (vla-get-ModelSpace AcDoc)) ) (if (or (tblsearch "BLOCK" NOM) (findfile NOM) (findfile (setq NOM (strcat NOM ".dwg"))) ) (progn (setq REF (vla-InsertBlock SPACE (vlax-3d-point (trans PT 1 0)) NOM ECHX ECHY ECHZ ROT ) ) ) (alert (strcat "Le bloc \"" (vl-string-rigth-trim ".dwg" NOM) "\" est introuvable")) ) ) mais ça n'a pas l'air de prendre ne compte les unités de blocs. Quand j'insère un bloc externe, je récupère un bloc "sans unité" alors que j'ai créé le bloc en mm. :casstet: Forcément, si je dois travailler en mètres, je n'ai pas le bon rapport d'échelle. Du coup, je reste avec le bon vieux (command "_insert" ...) qui me fait le bon rapport entre les unités. C'est dommage... Vous avez une idée ? Amicalement Zébulon_ PS : sur autocad 2007
  5. zebulon_

    Echelle et type de ligne

    CELTSCALE Moi, je n'utilise jamais. CELTSCALE est toujours à 1. Après, comme PSLTSCALE est à 1, l'aspect s'uniformise de lui même, quelle que soit l'échelle. J'en vois qui "bricolent" les CELTSCALE pour que, avec un PSLTSCALE à 0, ils aient un aspect identique si les échelles diffèrent, et avoir un aspect identique entre l'espace papier et l'espace objet. Ok, ça c'est peut être un point positif de la méthode. Mais, faut réfléchir pour trouver le CELTSCALE qui va bien, faut rien oublier, faut pas vouloir changer d'échelle en cours de route et faut pas vouloir montrer le même objet dans 2 fenêtres d'échelles différentes. Voilà pourquoi je n'aime pas. Amicalement Zebulon_
  6. zebulon_

    Echelle et type de ligne

    Bonjour, PSLTSCALE à 1 c'est comme ça que je fais aussi pour avoir une représentation homogène quelle que soit l'échelle de la fenêtre. Après il suffit de jouer sur l'ECHLTP. Peut-être qu'un petit coup de REGNTOUT arrangera ton affaire, Esbe. oui mais plus d'homogénéité entre les fenêtres d'échelles différentes. Quant à TILEMODE Une variable qui marche comme un interrupteur Amicalement Zebulon_
  7. Bonjour, Je dirais que ça dépend des fichiers autocad qu'on t'a donné. Si ce sont des fichiers qui contiennent des vues en plan, élévations et coupes en 2D, cela demandera du boulot pour en faire un modèle 3D. Faut bien que quelqu'un fasse les extrusions. Enfin, il me semble... Sinon, ça ressemble à ça... http://img264.imageshack.us/img264/4338/2dstudiotf6.gif Par contre, si ces fichiers autocad contiennent des surfaces ou des solides 3D, on peut directement les importer et les exploiter dans 3D Studio, par exemple. Amicalement Zebulon_
  8. zebulon_

    fonction layers

    j'ai cherché aussi, si ça peut te rassurer ;) parce qu'un jour ils nous ont fait le coup de ne plus fournir les outils express (ou bonus, à l'époque) avec les nouvelles versions. Alors, depuis on se méfie. Amicalement Zébulon_
  9. zebulon_

    fonction layers

    le sous-menu layers n'est plus dans le menu express. Il y a eu de la promotion, ce sont maintenant des fonctions qu'on trouve dans le menu AutoCAD, sous-menu CALQUE II, si c'est bien de cela que tu parles ? Amicalement Zebulon_
  10. Bonjour, n'ayant pas encore reçu la version 2008, j'ai du mal à comprendre ton problème. Mais tu parles de lignes de repères associées avec un bloc qui contient un attribut. J'ai pensé qu'il pouvait s'agir d'une bulle de repérage ou quelque chose comme ça ? J'ai lu quelque chose d'intéressant à ce sujet chez Aricad où ils passent par un bloc dynamique. J'ai trouvé l'idée élégante et puis ça permet de creuser un peu du côté des blocs dynamiques. Peut être que cela peut te donner une piste ? Amicalement Zebulon_
  11. posté à 00:18... :exclam: tu ne dors jamais ? (mais bon, comme CadXp est encore à l'heure d'hiver, il devait être 23:18). Le monde appartient à ceux qui se lèvent tôt, pas à ceux qui se couchent tard. Au fait, ça n'a rien à voir avec le sujet, mais le AD de Didier-AD, ça a à voir quelque chose avec AD-COF, AD-FER et AD-TOPO de la société Progiscad ou travaille un certain François DUHEM ? Je ne les connais pas spécialement, mais je me suis un peu intéressé à AD-FER et à Armacad, comme il m'arrive de devoir ferrailler quelques ouvrages. Amicalement Zebulon_
  12. Cruel dilemme en effet. Moi je m'en accommode, parce que mon patron c'est moi. Donc s'il gagne plein de pognon, ça m'arrange plutôt Amicalement Zebulon_
  13. j'ai dit ça par pure jalousie parce que je n'y connais absolument rien aux réacteurs pas d'accord puisque c'est le lisp qui met automatiquement la cote sur le bon calque. Cela fait 15 ans que je fais comme ça et je n'ai jamais mis une cote sur un autre calque que celui qui lui est destiné puisque j'utilise tout le temps mon outil. Après, c'est facile de filtrer les calques de cote en faisant un filtre "cot-*" sur le nom. Maintenant, tu fais comme tu as envie. Les calques sont là pour différencier les choses qui ne sont pas de même nature. Moi, je suis plutôt de l'avis de ne pas se priver, même si la liste devient longue. Il suffit de se définir un certaine logique au niveau des noms de calques pour pouvoir facilement filtrer. Après, si tu as un jour l'opportunité de bosser dans un gros bureau d'études, on te diras "pour les textes, les cotes et les calques, tu feras comme ça et pas autrement !". On passe tous par là un jour ou l'autre. C'est peut être contraignant, mais c'est le seul moyen de bosser ensemble. Et puis, si tu as un jour l'opportunité de travailler dans une cellule de synthèse sur un gros projet, tu n'aimeras pas recevoir des fichiers qui ne contiennent que 3 calques (un pour le trait fin, un pour le trait moyen et un pour le trait fort) où tu ne sauras pas distinguer un mur d'une cloison ou d'une porte. Mais je m'égare ... Amicalement Zébulon_
  14. Bonjour, je vous explique un peu comment je fonctionne avec les cotes. Donc, je commence par créer un style de cote que j'appelle cot-1 dans lequel je défini tous le paramètres de taille de flèche, de taille de texte de décalage etc ... sans me préoccuper de l'échelle. C'est mon style de cote au 1:1ème et tous les autres styles de cotes seront créés à partir de ce modèle. J'en fait une copie que j'appelle, par exemple cot-50,et je change simplement l'échelle générale de l'onglet ajuster du style de cote où je remplace 1 par 50. Je fais pareil pour la cot-100 où je remplace 1 par 100, on s'en serait douté. Etc ... J'ai donc un fichier avec une série de styles de cotes : cot-1 cot-2 cot-5 cot-10 ... cot-50 cot-100 ... cot-500 fichier que j'enregistre comme mon prototype et que j'utilise tout le temps. Je trouve aussi qu'il est intéressant d'avoir un calque par échelle de cotation. Donc un calque cot-50 pour les cotes créées avec le style de cote cot-50, un calque cot-100 etc ... plutôt que d'avoir un seul calque qui s'appelle cotation. Pourquoi ? Parce qu'il m'arrive de vouloir utiliser le même dessin pour en faire 2 fmults avec 2 échelles différentes (un plan d'ensemble au 1:100 + un plan de détai au 1:20l). Donc avec 2 styles de cotations sur le même dessin. Après il suffit de geler les cotes 1:20 dans la fmult 1:100 et inversement. Avantage : s'il y a une modification à faire, on change le plan d'ensemble et le plan de détail est modifié du même coup. Après, sur le principe, je fais un peu comme grand_sapin, c'est à dire que je me place sur le bon style de cotation et le bon calque avant de faire la cote, plutôt que de mettre en branle des réacteurs, comme le propose Bred. le dcl dcl_settings : default_dcl_settings { audit_level = 0 ;} Cct : dialog { label = "PLACER UNE COTE"; : row { : boxed_radio_column { label = "Type de cotation"; key = typ_cot; : radio_button { label = "Linéaire"; mnemonic = "L"; key = lin; } : radio_button { label = "Alignée"; mnemonic = "A"; key = ali; } : radio_button { label = "conTinue"; mnemonic = "T"; key = con; } : radio_button { label = "ligne de Base"; mnemonic = "B"; key = lig; } : radio_button { label = "Ordonnée"; mnemonic = "O"; key = ord; } : radio_button { label = "Rayon"; mnemonic = "R"; key = ray; } : radio_button { label = "anGulaire"; mnemonic = "G"; key = ang; } : radio_button { label = "Diamètre"; mnemonic = "D"; key = dia; } } : boxed_radio_column { label = "ECHELLE"; key = typ_ech; : radio_button { label = "Echelle 1:1"; key = "cot-1"; } : radio_button { label = "Echelle 1:2"; key = "cot-2"; } : radio_button { label = "Echelle 1:5"; key = "cot-5"; } : radio_button { label = "Echelle 1:10"; key = "cot-10"; } : radio_button { label = "Echelle 1:20"; key = "cot-20"; } : radio_button { label = "Echelle 1:25"; key = "cot-25"; } : radio_button { label = "Echelle 1:50"; key = "cot-50"; } : radio_button { label = "Echelle 1:75"; key = "cot-75"; } : radio_button { label = "Echelle 1:100"; key = "cot-100"; } : radio_button { label = "Echelle 1:200"; key = "cot-200"; } : radio_button { label = "Echelle 1:250"; key = "cot-250"; } : radio_button { label = "Echelle 1:500"; key = "cot-500"; } } } spacer_1; ok_cancel; } le lisp ;;; créer un calque (defun calque (NewLayer ColLayer TlLayer) (if (not (tblsearch "LTYPE" TlLayer)) (command "_LINETYPE" "_L" TlLayer "acadiso" "") ) (if (not (tblsearch "LAYER" NewLayer)) (command "_layer" "_M" NewLayer "_CO" ColLayer "" "_LT" TlLayer "" "") (command "_LAYER" "_T" NewLayer "_ON" NewLayer "_S" NewLayer "") ) ) ;------------------------------------------------------------------------------ (defun place_cote (TYP_COT) (cond ((= TYP_COT "lin") (princ (strcat "\nCotation linéaire au 1:" (substr TYP_ECH 5))) (command "_dimlinear") ) ((= TYP_COT "ali") (princ (strcat "\nCotation alignée au 1:" (substr TYP_ECH 5))) (command "_dimaligned") ) ((= TYP_COT "con") (princ (strcat "\nCotation continue au 1:" (substr TYP_ECH 5))) (command "_dimcontinue") ) ((= TYP_COT "lig") (princ (strcat "\nCotation ligne de base au 1:" (substr TYP_ECH 5))) (command "_dimbaseline") ) ((= TYP_COT "ord") (princ (strcat "\nCotation ordonnée au 1:" (substr TYP_ECH 5))) (command "_dimordinate") ) ((= TYP_COT "ray") (princ (strcat "\nCotation rayon au 1:" (substr TYP_ECH 5))) (command "_dimradius") ) ((= TYP_COT "ang") (princ (strcat "\nCotation angulaire au 1:" (substr TYP_ECH 5))) (command "_dimangular") ) ((= TYP_COT "dia") (princ (strcat "\nCotation diamètre au 1:" (substr TYP_ECH 5))) (command "_dimdiameter") ) ((= TYP_COT "rep") (princ (strcat "\nCotation repère au 1:" (substr TYP_ECH 5))) (command "_leader") ) ) ) ;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------ (defun init_cct (/ prefix cfgname cfg) (if (not TYP_COT) (setq TYP_COT "lin") ) (if (not TYP_ECH) (setq TYP_ECH "cot-50") ) ) ;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------ (defun do_accept_cct () (setq TYP_COT (get_tile "typ_cot")) (setq TYP_ECH (get_tile "typ_ech")) (done_dialog 1) ) ;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------ ; programme principal ;------------------------------------------------------------------------------ (defun c:CCT (/ OLD_CMD WHAT_NEXT DCL_ID) (if (= (getvar "cmdactive") 1) (command "_exit") ) ;; (setvar "DIMASSOC" 1) ; cotation non associative ;; (setvar "DIMASSOC" 2) ; cotation associative (init_cct) (setq dcl_id (load_dialog "cct.dcl")) (if (not (new_dialog "Cct" dcl_id)) (exit)) (set_tile "typ_cot" TYP_COT) (set_tile "typ_ech" TYP_ECH) (action_tile "accept" "(do_accept_cct)") (action_tile "cancel" "(done_dialog 0)") (setq what_next (start_dialog)) (unload_dialog dcl_id) (if (= what_next 1) ;OK (progn (setq OLD_CMD (getvar "cmdecho")) (setvar "cmdecho" 0) (if (not (tblsearch "DIMSTYLE" TYP_ECH)) (alert (strcat "Le style de cote " TYP_ECH " n'existe pas")) (progn (calque TYP_ECH "7" "CONTINUOUS") ;; la couleur 7 pour le calque (command "_dimstyle" "_r" TYP_ECH) ;; restaurer le style de cote (place_cote TYP_COT) ) ) (setvar "cmdecho" OLD_CMD) ) ) (princ) ) Bien entendu, pour les textes, je fais quelque chose de tout à fait similaire. Amicalement Zebulon_
  15. Bonjour, je me suis un peu cassé la tête sur le sujet. Du coup je vous transmet ce qu'il en est sorti. Pour commencer, j'ai fouillé dans les exemples fournis par autocad et j'ai pris : c:\program files\Autocad 2007\sample\dynamic blocks\Architectural - Metric.dwg A l'intérieur, il y a un bloc nommé : Arbres - Métrique que j'ai inséré dans un fichier. (setq e (entlast)) (setq e (vlax-ename->vla-object e)) puis, pour voir ce que la variable e à dans le ventre (vlax-dump-object e) ce qui m'affiche Mais, a priori, rien qui permettrait de bricoler les paramètres du bloc dynamique Allons voir plus loin : (setq dbp (vla-getdynamicblockproperties e)) qui nous renvoie un variant puis : (setq dbp (vlax-variant-value dbp)) pour avoir une safearray ensuite : (setq dbp (vlax-safearray->list dbp)) qui nous donne ça commence à devenir intéressant puisqu'on vient de trouver la liste des paramètres du bloc dynamique. En l'occurrence, il n'y a qu'un seul paramètre, qu'on peut extraire avec car. Sinon, s'il y a plusieurs paramètres, on peut envisager d'utiliser un foreach pour les passer en revue. Donc, je prend le premier élément de la liste (setq bp (car dbp)) puis j'en fais un dump (vlax-dump-object bp) Il y a l'air d'y avoir tout en stock : la liste des valeurs admises par exemple : (setq ListeAdmis (vlax-safearray->list (vlax-variant-value (vla-get-AllowedValues bp)))) c'est une liste de variants, dont on peut récupérer les valeurs "en clair" en faisant (setq ListeAdmis (mapcar 'vlax-variant-value ListeAdmis)) et on récupère une belle liste de ce style Maintenant, je voudrais changer la visualisation de ce bloc dynamique qui, par défaut, est "Palmier (vue en plan)". On retrouve cette info dans la propriété Value, qu'il suffit de changer en utilisant une des valeurs de la liste ci dessus : (vla-put-value bp "Type 3 A feuillage persistant (élévation)") Et l'affichage change. Magnifique non ? :) Voilà pour le paramètre de visibilité d'un bloc dynamique. Pour les autres paramètres, c'est a peu près pareil avec d'autres noms de propriétés. Bon amusement Amicalement Zebulon_
  16. là, j'ai fait quelque chose comme ça (defun c:laysel (/ SS FILTRE I E LAY) (setq SS (ssget)) (if SS (progn (setq FILTRE '((-4 . "OR>")) ) (setq I 0) (while (< I (sslength SS)) (setq E (entget (ssname SS I))) (setq LAY (assoc 8 E)) (setq FILTRE (cons LAY FILTRE)) (setq I (+ I 1)) ) [surligneur] (setq FILTRE (cons '(-4 . "< OR") FILTRE))[/surligneur] (setq SS (ssget "_X" FILTRE)) (sssetfirst SS SS) ) ) (princ) ) Attention, il y a un espace en trop après le < de la ligne surlignée. A supprimer, sinon ça marche pas. Si j'enlève l'espace, l'éditeur de CadXP supprime automatiquement le reste de la ligne. L'outil te permet de cliquer sur plusieurs objets (donc un seul aussi : qui peut le plus peut le moins) et ça te filtre tous les objets qui sont sur les calques des objets sélectionnés. c'est déjà un début. Amicalement Zebulon_
  17. je suis bien d'accord avec toi tramber pour avoir essayé également. Je lance une commande, je sélectionne un objet, j'appuie sur shift avec la main gauche pour verrouiller le mode ortho, j'indique la direction avec la souris, et là je pensais pouvoir lâcher ma souris pour taper une valeur au clavier avec la main droite. Perdu... De toute façon, le clavier numérique ne marche pas quand shift est enfoncé, alors... Je suis même allé jusqu'à essayé d'utiliser les chiffres du clavier alpha, mais pas mieux. Donc, à n'utiliser que pour faire des déplacement au pif, à défaut de pouvoir le faire avec le nez sur le pavé numérique Amicalement Zebulon_
  18. zebulon_

    Ma clé saute, saute, saute...

    C'était tout à fait aléatoire, avec une prédilection pour le vendredi en fin d'après midi. Aucune modification du matériel, les clefs USB n'existaient pas, les disques durs externes je n'en avais pas... Et ce n'était pas que sur mon poste. Tous les dessinateurs du BE où j'étais y sont passés un jour ou l'autre. Certains plus souvent que d'autres, va savoir pourquoi ? Amicalement Zebulon_
  19. zebulon_

    vlax-ldata ... suite

    Moi j'ai mais ça ne marche pas mieux. J'utilise plutôt les xdata avec les outils que didier-AD a mis à notre disposition ici Amicalement Zebulon_
  20. zebulon_

    Ma clé saute, saute, saute...

    Cela m'arrivait sans arrêt sur la version 2000. J'en suis même arrivé à regretter le dongle de la version 14. En plus, au bout de quelques plantages de ce style, je ne pouvais plus activer le produit par internet, puisque Autodesk partait du principe que j'étais en train de le truander en installant une même version sur 50 postes. Donc, il fallait les appeler (quelque part en Suisse si je me souviens bien) pour leur demander de bien vouloir avoir l'obligeance de me donner un nouveau code d'activation, s'il vous plait, merci. Sauf que, quand ça t'arrive le vendredi soir et qu'en Suisse ils sont partis en week-end, t'es bien embêté pour continuer à bosser. J'en ai eu marre et j'ai installé un crack. C'est pas bien, je sais, mais au moins, par nature, un crack ne t'ennuie pas avec une clé d'activation. D'un point de vue légal, je m'en accommodais puisque j'avais une version légale installée nulle part. Et puis je n'en serais pas arrivé là si la clé d'activation avait été stable. J'ai craqué (à tous les sens du terme);) Depuis, je suis passé en version 2004, puis 2007 (j'ai sauté quelques étapes, ça m'énerve d'avoir une nouvelle version tous les 6 mois) et là ça à l'air de mieux fonctionner. Amicalement Zébulon_
  21. zebulon_

    ?shx chargement

    Bonjour, en rajoutant des polices de substitution au fichier AutoCAD.fmp c'est expliqué chez cad magazine amicalement Zebulon_
  22. zebulon_

    Sélection multiple

    Moi aussi c'était un clin d'oeil, même si je n'ai pas mis le smilie. Bred, tu essayes de te rattraper aux branches ? Amicalement Zébulon_
  23. zebulon_

    Sélection multiple

    Une des premières règle de galanterie nous demande d'être prévenant et attentionné à l'égard des femmes. Attention (gile), certaines féministes qualifient la galanterie comme un comportement sexiste, puisqu'elle sous-entend que l'homme possèderait un statut supérieur à la femme. D'un autre côté, tu t'exposes à la jalousie de certains membres du sexe dit "fort", puisque, de ce fait, ils ne sont pas traités avec le même égard. Cruel dilemme Amicalement Zebulon_
  24. Bonjour, la variable long est définie comme une entité qui évolue en fonction de l'évolution de la polyligne sélectionnée. Si elle change de longueur, la valeur de l'attribut change aussi. Et c'est ça qui est fort. par contre le contenu de la variable lay est défini une fois pour toute. C'est dommage puisqu'on pourrait construire quelque chose d'associatif sur le modèle de ce qui a été fait pour la variable long Quelque chose du style : lay (strcat "%<\\AcObjProp Object(%<\\_ObjId " (itoa id) ">%).Layer>%" (Regarde la commande champ, ça te donne une bonne idée de ce qui est possible de faire en la matière. En plus, elle affiche la codification, un peu compliquée d'ailleurs, qu'il suffit de copier) Tu changes le calque de la polyligne, l'attribut change aussi. Tant qu'à faire... Amicalement Zebulon_
  25. zebulon_

    interpréteur de commande

    Bonjour, tu veux parler de l'éditeur de texte interne, je pense. C'est vrai qu'il est possible de définir un éditeur de texte autre que celui proposé par défaut par autocad. La commande qui permet de faire cette manip s'appelle mtexted. Elle permet également de revenir à l'éditeur interne 1. Editeur externe : mtexted (entrée) notepad pour définir le bloc note comme éditeur par défaut 2. Editeur interne mtexted (entrée) Interne pour revenir à l'éditeur interne Amicalement Zebulon_ [Edité le 26/3/2007 par zebulon_]
×
×
  • 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é