-
Compteur de contenus
6 374 -
Inscription
-
Dernière visite
-
Jours gagnés
30
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par Patrick_35
-
remplir et valider une page web
Patrick_35 a répondu à un(e) sujet de wookichu dans Pour aller plus loin en LISP
Logiquement avec ceci Je pense que l'on peut aussi utiliser (setq http (vlax-create-object "MSXML2.XMLHTTP")) @+ -
Bonjour On a mis une affiche sur notre portail qu'on est charlie et en plus on va acheter Charlie hebdo. Faisons comme dans la fonction public, respectons une minute de silence à midi. ET ca continue, une nouvelle fusillade ce matin à Paris :angry: @+
-
remplir et valider une page web
Patrick_35 a répondu à un(e) sujet de wookichu dans Pour aller plus loin en LISP
Salut Tu as les propriétés Busy, Container ou encore Document qui peuvent indiquer des choses. Je n'ai jamais eu le besoin d'aller chercher un contenu web, mais je sais des programmes le font et sur différents sites. Donc, oui c'est faisable, reste à chercher comment. Un petit tour au marais peut aussi aider. @+ -
Oui, quelle tristesse. C'est l'action de lâches sur des innocents. A éradiquer @+
-
Deplacement de textuels perpendiculairement à des segments de polyligne
Patrick_35 a répondu à un(e) sujet de fabcad dans Pour aller plus loin en LISP
Salut Tu as regardé les lisps de Lee Mac comme DTCurve par exemple ? @+ -
remplir et valider une page web
Patrick_35 a répondu à un(e) sujet de wookichu dans Pour aller plus loin en LISP
Salut Oui, il est possible de faire des choses. Je m'étais ammusé a regarder, mais pas eu le temps d'approfondir plus. Juste pour lancer IE avec une taille défini, sans adresse ni barre de menu (setq ie (vlax-create-object "InternetExplorer.Application")) (foreach par '( ('addressbar :vlax-false) ('menubar :vlax-false) ('toolbar :vlax-false) ('statusbar :vlax-false) ('width 400) ('height 120) ('resizable :vlax-false) ('visible :vlax-true) ) (vlax-put ie (eval (car par)) (cadr par)) ) Un lien qui peut aider. Je pense que l'on peut aussi travailler sur un page web en php, mais je n'ai jamais cherché. @+ -
Salut Oui, avec un arc de cercle ou une spline :huh: @+
-
Salut Je ne comprends pas le besoin du mnl pour le chargement automatique des lisps ? Sinon, pour faire au plus simple, tu peux faire ceci. Tu créés un fichier "ACAD.LSP" (dans le répertoire support) dans lequel tu mets les fichiers lisps à charger via autoload. Gile a indiqué plus haut comment faire. Ne pas oublier de redéfinir la variable acadlspasdoc. @+
-
Bonjour Une bonne et heureuse année 2015 Une petite vidéo @+
-
Bonjour (gile) Merci pour l'info et le code. Tu as le même problème en .NET ? @+
-
Bonjour On m'a contacté pour une demande spécifique et c'est lors des échanges que je me suis aperçu de ce problème. Si tu en connais d'autres, je suis preneur. Merci pour le code et le lien. @+
-
Bonjour Mettez le caractère spécial qui suit dans un texte --> ■ Faites un (vla-get-textstring (vlax-ename->vla-object (car (entsel)))) sur le texte et le caractère se transforme en | :o Faites un (cdr (assoc 1 (entget (car (entsel))))) et vous aurez la bonne valeur. @+
-
attribut correspondant au nom du calque
Patrick_35 a répondu à un(e) sujet de calmar dans AutoCAD 2013
Salut Je suis parti de l'idée de base de Zebulon_, mais en cliquant à l'écran sur l'attribut qui t'intéresse et en utilisant les champs. (defun c:caq(/ doc ent nom ori pos sel nombl) (defun nombl(bl) (if (vlax-property-available-p bl 'effectivename) (vla-get-effectivename bl) (vla-get-name bl) ) ) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (vla-startundomark doc) (and (setq ent (nentsel "\nVeuillez sélectionner un attribut : ")) (eq (vla-get-objectname (setq ent (vlax-ename->vla-object (car ent)))) "AcDbAttribute") (setq pos (vl-position ent (vlax-invoke (setq ori (vla-objectidtoobject (vla-get-database ent) (vla-get-ownerid ent))) 'getattributes))) (ssget "x" (list (cons 0 "insert") (cons 66 1) (cons 2 (strcat "`**," (setq nom (nombl ori)))))) (progn (vlax-for ent (setq sel (vla-get-activeselectionset doc)) (and (eq (nombl ent) nom) (vla-put-textstring (nth pos (vlax-invoke ent 'getattributes)) (strcat "%<\\AcObjProp Object(%<\\_ObjId " (itoa (vla-get-objectid ent)) " >%).Layer>%")) ) ) (vla-delete sel) (vla-regen doc acallviewports) ) ) (vla-endundomark doc) (princ) ) @+ -
Non, directement dans le filtre avec le bouton supprimer @+
-
Bonjour à tous Je n'ai jamais eu ce problème. Bug de la 2015 ? En effaçant la ligne superflue @+
-
Selection rapide --> plusieurs calques
Patrick_35 a répondu à un(e) sujet de a.etudes dans AutoCAD 2013
Salut Lili Surprenant comme filtre. Il m'a laissé perplexe par sa conception et je n'y étais pas au début. Le not sans rien derrière signifie non vide, donc une cote forcée. Comme quoi, je continue d'en apprendre sur les filtres :D Par contre, le "<>" voulait indiquer que c'était une cote non forcée dans les anciennes versions d'Autocad (c'est ce qui me permet d'ailleurs de redonner la valeur dynamique à une cote). Dans un XOR, cela indique en fonction de la version d'Autocad que l'on sélectionne des cotes forcées ou pas. @+ -
Selection rapide --> plusieurs calques
Patrick_35 a répondu à un(e) sujet de a.etudes dans AutoCAD 2013
Je suis d'accord que ce n'est pas simple. Commence d'abord avec les OR, AND et NOT avant de poursuivre avec les caractères spéciaux. @+ -
Selection rapide --> plusieurs calques
Patrick_35 a répondu à un(e) sujet de a.etudes dans AutoCAD 2013
Non, le ~ (tilde) signifie NOT, donc pas le calque Calque_3 @+ -
Selection rapide --> plusieurs calques
Patrick_35 a répondu à un(e) sujet de a.etudes dans AutoCAD 2013
Ton exemple est bien, sauf que tu sélectionnes aussi les objets sur les calques Calque_4, Calque_5 s'ils existent. Je t'ai fait deux exemples qui veulent dire la même chose, mais l'autre utilise les caractères spéciaux. Comme le dit si bien (gile), il faut expérimenter car les filtres sont très puissants si on se donne la peine. Pour exclure tes nuages de révisions, cela peut-être un calque, une couleur, un style de ligne, que sais-je qui peut être affecté spécifiquement à tes nuages et du coup, exclus de la sélection Ps : tu peux voir que tu peux imbriquer les conditions Pps : Si on veut être puriste, dans mon exemple, le not ne sert pas car on désigne les calques. C'est juste pour l'exercice Ppps : Prévoit un aspro pour tes élèves :D @+ -
Selection rapide --> plusieurs calques
Patrick_35 a répondu à un(e) sujet de a.etudes dans AutoCAD 2013
Salut Tout à fait. Dans le filtre, quand on choisis plusieurs éléments (type de ligne, couleur, calque, etc...) cela revient implicitement à faire un AND Maintenant, si l'on souhaite appliquer ce filtre sur plusieurs types d'objets ou plusieurs calques par exemple, un OR permet de le faire (les caractères génériques aussi, mais c'est plus subtil et dans un second temps) Le OR est dit inclusif et permet l'un ou l'autre, voir les deux (pour une logique sur 2 bits --> 00 ou 01 ou 10 ou 11) Le XOR est dit exclusif et permet l'un ou l'autre, jamais les deux (pour une logique sur 2 bits --> 01 ou 10 mais pas 00 ni 11) Le AND est l'addition des conditions. Le NOT est l'exclusion. Après, on peut mélanger les conditions. Par exemple le type de trait cache sur les calques Calque_1 et Calque_2, mais pas le Calque_3 Et idem en ce qui concerne les polylignes @+ -
DCL/LISP Récupération de valeur(s)
Patrick_35 a répondu à un(e) sujet de zebzeb dans LISP et Visual LISP
Salut $value permet de retourner le résultat dans une variable. Dans l'exemple cité, une valeur via la clé "ctb" du dcl sera renvoyé dans la variable ctb du lisp grace à $value @+ -
modification des attributs via Excel
Patrick_35 a répondu à un(e) sujet de etienne.leb-appac dans AutoCAD 2015
Salut Tu as LXL @+ -
Salut Un truc que j'avais, adapté à ta demande (defun c:tpo(/ ent ele lst sel res tot filtre) (setq filtre 'constantwidth) ; Constantwidth pour les épaisseurs, Layer pour les calques, Color pour les couleurs, Linetype pour les types de lignes (and (ssget (list (cons 0 "*POLYLINE"))) (progn (vlax-for ent (setq sel (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object)))) (if (setq ele (assoc (vlax-get ent filtre) lst)) (setq lst (subst (list (car ele) (cons (vla-get-length ent) (cadr ele))) ele lst)) (setq lst (cons (list (vlax-get ent filtre) (list (vla-get-length ent))) lst)) ) ) (vla-delete sel) (setq tot 0) (mapcar '(lambda(x) (setq tot (+ tot (setq res (apply '+ (cadr x))))) (princ "\nTotal polyligne(s) type ") (princ filtre) (princ " --> ") (princ (car x)) (princ (strcat " : " (rtos res))) ) (vl-sort lst '(lambda(a B)(< (car a) (car B)))) ) (princ (strcat "\nTotal : " (rtos tot))) ) ) (princ) ) ps : il ressemble beaucoup à celui de (gile) pps : (setq dimzin (getvar 'dimzin)) Celle-ci est très subtile ;) @+
-
Selection rapide --> plusieurs calques
Patrick_35 a répondu à un(e) sujet de a.etudes dans AutoCAD 2013
Hi Google est ton ami ;) Enjoy @+ -
Salut Pour compléter la réponse de Bruno, tu peux aussi avoir une distance relative avec par exemple @10,0 ou @10<45 Par exemple pour tracer une ligne des coordonnées 100,100 et sur une longueur de 10 --> Ligne --> 100,100 --> @10,0 Ou une ligne des coordonnées 100,100 sur une longueur de 10 et avec un angle à 45° --> Ligne --> 100,100 --> @10<45 Et pour terminer, continuer une ligne depuis le dernier point saisie sur une hauteur de 20 --> Ligne --> @ --> @0,20 ps : je sais aussi que l'on peut saisir des longueurs directement en fonction de la position du réticule pps : l'avantage du @, c'est que l'on peut macroter @+
