Aller au contenu

Bred

Membres
  • Compteur de contenus

    2 764
  • Inscription

  • Dernière visite

Tout ce qui a été posté par Bred

  1. Bred

    Routines pour TEXT/MTEXT

    Salut, je jette un coup d'oeuil sur ta demande. juste pour info : j'ai légerement modifié le lisp "coef-txt" ci-dessus pour la forme : lors de la demande du calque, il met entre crochet le calque courant (qui sera donc pris en compte avec une simple validation).
  2. Bred

    Routines pour TEXT/MTEXT

    Re, lecrabe ! je vais ici révéler quelque chose : quand on arrive à un certain niveau, il faut comme en karaté revenir à une ceinture blanche, comme un départ à 0.... Pourquoi ? la ligne de création de calque (vla-add ... est totalement inutile ! en effet : j'avais omis que la chose magique de l'utilsation de entmake, c'est la création automatique du calque !!!! donc, ceci suffit ! : ; met un coef sur une valeur numérique de texte. (defun c:coef-txt (/ COEF L LST-ENT N-VAL SEL X) (setq sel nil) (while (not sel) (setq sel (ssget '((0 . "*TEXT"))))) (initget 1) (setq coef (getreal "\n Coefficient à appliquer :")) (setq L (getstring T (strcat ":\n Nom du Calque sur Lequel créer les textes : <" (getvar "Clayer")">"))) (if (equal L "") (setq L (getvar "Clayer"))) (repeat (setq x (sslength sel)) (setq N-val (* coef (atof (cdr (assoc 1 (entget (ssname sel (setq x (1- x)))))))) lst-ent (cdr (subst (cons 1 (rtos N-val)) (assoc 1 (entget (ssname sel x))) (entget (ssname sel x)))) lst-ent (subst (cons 8 L) (assoc 8 (entget (ssname sel x))) lst-ent)) (entmake lst-ent) ) (princ) ) Désolé de t'avoir fait perdre du temps, mais je suis, je pense, un eternel débutant en lisp... mais je persite ! :P [Edité le 19/7/2007 par Bred]
  3. Super ! merci (gile) et Patrick_35 ! Alors, pour info, nouveau en 2008 par rapport à la liste précédente de (gile) : Nouvelles Méthodes : ("AddMLeader" "CreateCellStyle" "CreateCellStyleFromStyle" "CreateContent" "DeleteCellStyle" "DeleteContent" "EnableMergeAll" "FormatValue" "GetAlignment2" "GetAutoScale2" "GetBlockAttributeValue2" "GetBlockAttributeValue32" "GetBlockTableRecordId2" "GetBlockTableRecordId32" "GetBreakHeight" "GetCellClass" "GetCellContentColor2" "GetCellDataType" "GetCellFormat" "GetCellState" "GetCellStyle" "GetCellValue" "GetColumnName" "GetContentLayout" "GetContentType" "GetCustomData" "GetDataFormat" "GetDataLink" "GetDataLink32" "GetDataType2" "GetFieldId2" "GetFieldId232" "GetFieldId32" "GetFormat2" "GetFormula" "GetGridColor2" "GetGridDoubleLineSpacing" "GetGridLineStyle" "GetGridLinetype" "GetGridLinetype32" "GetGridLineWeight2" "GetGridVisibility2" "GetHasDataLink" "GetHasFormula" "GetIsCellStyleInUse" "GetIsMergeAllEnabled" "GetMargin" "GetOverride" "GetRotation" "GetScale" "GetTextHeight2" "GetTextString" "GetTextStyle2" "GetUniqueCellStyleName" "GetValue" "InsertColumnsAndInherit" "InsertRowsAndInherit" "IsContentEditable" "IsEmpty" "IsFormatEditable" "IsMergeAllEnabled" "LayerPropertyOverrides" "MoveContent" "ObjectIDToObject32" "OverwritePropChanged" "RemoveAllOverrides" "RemoveDataLink" "RenameCellStyle" "ResetCellValue" "SetAlignment2" "SetAutoScale2" "SetBlockAttributeValue2" "SetBlockAttributeValue32" "SetBlockTableRecordId2" "SetBlockTableRecordId32" "SetBreakHeight" "SetCellClass" "SetCellContentColor2" "SetCellDataType" "SetCellFormat" "SetCellState" "SetCellStyle" "SetCellValue" "SetColumnName" "SetContentLayout" "SetCustomData" "SetDataFormat" "SetDataLink" "SetDataLink32" "SetDataType2" "SetFieldId2" "SetFieldId232" "SetFieldId32" "SetFormat2" "SetFormula" "SetGridColor2" "SetGridDoubleLineSpacing" "SetGridLineStyle" "SetGridLinetype" "SetGridLinetype32" "SetGridLineWeight2" "SetGridVisibility2" "SetMargin" "SetOverride" "SetRotation" "SetScale" "SetTextHeight2" "SetTextString" "SetTextStyle2" "SetToolTip" "SetValue" "SetValueFromText" "UpdateAllDataLinks" "UpdateDataLink" "UpdateMTextAttribute") Nouvelles Propriétés : ("AlignSpace" "AllowManualHeights" "AllowManualPositions" "Annotative" "ArrowSize" "ArrowSymbol" "BlockColor" "BlockConnectionType" "BlockScale" "BreaksEnabled" "BreakSize" "BreakSpacing" "ContentBlockName" "ContentBlockType" "ContentType" "DogLegged" "DoglegLength" "DrawLeaderOrderType" "DrawMLeaderOrderType" "EnableBlockRotation" "EnableBlockScale" "EnableDogleg" "EnableFrameText" "EnableLanding" "FirstSegmentAngleConstraint" "HWND32" "Key32" "LabelBlockId32" "LandingGap" "LayoutID32" "LeaderLineColor" "LeaderLinetype" "LeaderLineTypeId" "LeaderLineWeight" "LeaderType" "MaxLeaderSegmentsPoints" "MTextAttribute" "MTextAttributeContent" "MTextBoundaryWidth" "MTextDrawingDirection" "NumCellStyles" "ObjectID32" "OwnerID32" "RepeatBottomLabels" "RepeatTopLabels" "SecondSegmentAngleConstraint" "TableBreakFlowDirection" "TableBreakHeight" "TextAlignmentType" "TextAngleType" "TextAttachmentType" "TextBackgroundFill" "TextDirection" "TextJustify" "TextLeftAttachmentType" "TextLineSpacingDistance" "TextLineSpacingFactor" "TextLineSpacingStyle" "TextRightAttachmentType" "TextStyleName" "TextWidth" "UnderlayLayerOverrideApplied" "Value32" "ZScaleFactor") Ce qu'il n'y a plus : méthodes : nil propriétés : nil ... tant mieux ! ;)
  4. Bred

    Routines pour TEXT/MTEXT

    Alors là.... comprends pas.... Quand je fais fonctionner le lisp "petit à petit" en passant par le visual, pas de souci.... par contre, si je le fais en lançant la commande : http://xs117.xs.to/xs117/07293/tetete.JPG ... et je ne trouve rien sur internet.... :casstet: c'est pas ce qu'il fait ?
  5. Bred

    Routines pour TEXT/MTEXT

    HUUU ! Je le faisait sur 2008... je viens de le tester sur 2006 : ça m'a fait carrément planter autocad (fermeture....) je te tiens au courant.... :exclam:
  6. Bred

    Routines pour TEXT/MTEXT

    Re, heu... c'est bizarre mais mon lisp créait déjà le calque si il n'existait pas .... :casstet: ; met un coef sur une valeur numérique de texte. (defun c:coef-txt (/ COEF N-VAL SEL X L LST-ENT) (vl-load-com) (setq sel nil) (while (not sel) (setq sel (ssget '((0 . "*TEXT"))))) (initget 1) (setq coef (getreal "\n Coefficient à appliquer :")) (setq L (getstring T ":\n Nom du Calque sur Lequel créer les textes :")) (if (equal L "") (setq L (getvar "Clayer"))) [b](if (not (tblobjname "LAYER" L)) (vla-add (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))) L) )[/b] (repeat (setq x (sslength sel)) (setq N-val (* coef (atof (cdr (assoc 1 (entget (ssname sel (setq x (1- x)))))))) lst-ent (cdr (subst (cons 1 (rtos N-val)) (assoc 1 (entget (ssname sel x))) (entget (ssname sel x)))) lst-ent (subst (cons 8 L) (assoc 8 (entget (ssname sel x))) lst-ent)) (entmake lst-ent) ) (princ) ) [Edité le 18/7/2007 par Bred]
  7. Tu as raison.... et tords.... en effet PHILPHIL parle de clé alors que cela devrait un "code de groupe". Mais dans une liste, la clé est bien l'élément permettant de retrouver la liste. (setq lst (list (list "vis22" '("50" "22" "cru")) (list "vis33" '("50" "33" "tol")) (list "vis11" '("38" "22" "ap")) )) (assoc "vis22" lst) et va voir dans l'aide l'explication de assoc :
  8. Bred

    Routines pour TEXT/MTEXT

    Salut, voilà : (attention : met sur calque courant, pas sur calque du texte !) ; met un coef sur une valeur numérique de texte. (defun c:coef-txt (/ COEF N-VAL SEL X L LST-ENT) (vl-load-com) (setq sel nil) (while (not sel) (setq sel (ssget '((0 . "*TEXT"))))) (initget 1) (setq coef (getreal "\n Coefficient à appliquer :")) (setq L (getstring T ":\n Nom du Calque sur Lequel créer les textes :")) (if (equal L "") (setq L (getvar "Clayer"))) (if (not (tblobjname "LAYER" L)) (vla-add (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))) L) ) (repeat (setq x (sslength sel)) (setq N-val (* coef (atof (cdr (assoc 1 (entget (ssname sel (setq x (1- x)))))))) lst-ent (cdr (subst (cons 1 (rtos N-val)) (assoc 1 (entget (ssname sel x))) (entget (ssname sel x)))) lst-ent (subst (cons 8 L) (assoc 8 (entget (ssname sel x))) lst-ent)) (entmake lst-ent) ) (princ) ) [Edité le 18/7/2007 par Bred]
  9. Salut, j'essaye desespérement de créer un style visuel (pour l'impression) ayant : - faces cachées. - Accepte N&B, même pour une vue iso perspective ! - Ombres. Si vous avez une solution, merci !.....
  10. Salut didier, ce que l'on appelle "une clé" c'est le premier élément d'un liste (ex : (8 . "mon-calque")) Et donc, en cherchant cette valeur (clé), on récupère la valeur associée ("Mon-calque")
  11. Wow ! merci ! j'espère que tu as récupéré la liste des propriétés et méthodes quelque-part !.... je pensais à un truc dans le genre, mais je ne me voyais pas saisir toutes les propriétés et méthodes !... c'est une routine à bien garder ! merci encore une fois (gile) !!!! :D :D [Edité le 18/7/2007 par Bred]
  12. Bred

    impression vue

    Désolé, je n'avais pas compris... mais c'est une méthode de travail bizarre : ... déplace les autre qui te gène alors.... ....ou crées une fenêtre polygonale qui "éviteras" les choses que tu ne veux pas imprimer....
  13. Je dois mal m'expliquer : je voudrais créér une routine qui compare les propriétés de deux vla-objects. Donc, je voudrais comparer deux listes obtenus sur la console par (vlax-dump-object .... mais ce n'est pas les propriétés que nous retourne au final cette fonction, mais t ou nil. Ex : je voudrais récupérer ceci dans une variable :
  14. Salut, je m'étais mis en tête d'écrire un routine pour comparer les propriétés de 2 "vla-objets"... mais je suis assez contrarié : vlax-dump-object ne retourne que T ou nil, la liste des propriétés (;...) n'est pas accessible... Auriez-vous une idée comment les récupérer ? merci.
  15. Bred

    impression vue

    Salut, tu peux désactiver les fenêtres par exemple. (propriété - Divers - Actif : non)
  16. Ah, désolé, je n'ai en fait jamais utilisé aliasedit. :P ... :calim:
  17. Bred

    hachure associative en LISP

    Ce ne serait pas la variable HPASSOC que tu cherches ?
  18. Salut que ce soit avec aliasEdit, ou directement en modifiant le AutoCAD.pgp, il faut relancer Autocad.
  19. Bred

    Problème de sélection

    Salut, echo ? il y a deux jours ...
  20. Bonjour et bienvenue ! Ton souhait est assez difficile : une formation en ligne n'est pas simple.... Déjà, dis nous dans quel branche tu dois dessiner, afin que ta demande soit mieux ciblé.
  21. Salut (gile), et merci. mais j'avais déjà testé ces pistes. En fait, l'atténuation est fait à partir d'un valeur dans la base de registre enregistré dans la variable LAYLOCKFADECTL. J'ai posé cette même question dans "Teh Swawp" ici.. J'ai eu un début deréponse, mais qui ne fonctionne pas complètement....
  22. Bred

    isoler calques

    Personnelement j'utilise paint : je récupère l'image d'un bouton existant que je modifie.
  23. Bred

    isoler calques

    Salut, Toutes commandes créée en lisp peuvent s'utiliser comme des commandes "standard" d'Autocad. Il faut bien sûr que le lisp soit chargé au démarrage. ex : dans un bouton : ^C^CcalqG
  24. Bred

    selection des objets...option

    Juste pour info : ceci correspond à la variable PICKADD.
  25. Re, dans l'aide du developpeur (dans l'éditeur visual lisp d'autocad par exemple). ... et sur CADxp bien sûr ! ;)
×
×
  • 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é