-
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
-
decaler calque a une distance de 440 mm
Patrick_35 a répondu à un(e) sujet de drezic dans AutoCAD 2010
Salut Un truc vite fait, sans faire de décalage (defun c:mog(/ act att blo cod doc dxf ent fen fol lay lst nom old sel txt val) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (vla-startundomark doc) (vlax-for lay (vla-get-layers doc) (setq nom (vla-get-name lay)) (if (not (zerop (atoi nom))) (setq lst (cons nom lst)) (or (eq nom (getvar "clayer")) (vla-put-freeze lay :vlax-false) (vla-put-layeron lay :vlax-true) ) ) ) (setq lst (cons "PDG" (vl-sort lst '<))) (foreach fol lst (if (vl-catch-all-error-p (setq lay (vl-catch-all-apply 'vla-item (list (vla-get-layouts doc) fol)))) (setq lay (vla-add (vla-get-layouts doc) fol)) (and (ssget "x" (list (cons 410 fol))) (progn (vlax-map-collection (setq sel (vla-get-activeselectionset doc)) 'vla-delete) (vla-delete sel) ) ) ) (vla-put-activelayout doc lay) (setq fen (vla-addpviewport (vla-get-block lay) (vlax-3d-point '(210.0 148.5 0.0)) 420. 297.)) (vla-put-layer fen "0") (vla-put-color fen "256") (vla-put-viewporton fen :vlax-true) (vla-getxdata fen "ACAD" 'cod 'val) (setq dxf (mapcar '(lambda(a) (cons 1003 a))(vl-remove fol lst)) cod (reverse (append '(1002 1002) (mapcar 'car dxf) (cddr (reverse (vlax-safearray->list cod))) ) ) val (reverse (append (list (vlax-make-variant "}")(vlax-make-variant "}")) (mapcar '(lambda(a)(vlax-make-variant (cdr a))) dxf) (cddr (reverse (vlax-safearray->list val))) ) ) ) (vla-setxdata fen (vlax-safearray-fill (vlax-make-safearray vlax-vbInteger (cons 0 (1- (length cod)))) cod) (vlax-safearray-fill (vlax-make-safearray vlax-vbVariant (cons 0 (1- (length val)))) val) ) (vla-zoomextents (vlax-get-acad-object)) (vla-display fen :vlax-false) (vla-display fen :vlax-true) (vla-put-mspace doc :vlax-true) (vla-zoomextents (vlax-get-acad-object)) (vla-put-mspace doc :vlax-false) (vla-put-displaylocked fen :vlax-true) ) (vla-put-activelayout doc act) (vla-endundomark doc) (princ) ) @+ -
Merci bseb67 Si tu le souhaites, tu as une version avec plus de fonctionnalités. Ce que j'aime avec cette api, c'est que l'on peut travailler aussi bien avec open office qu'avec excel. @+
-
question sur (sssetfirst..)
Patrick_35 a répondu à un(e) sujet de krunch dans Pour aller plus loin en LISP
Salut Met la variable grips à 0 @+ -
Salut Avec le lisp de (giles) SSD, tu sélectionnes tes blocs dynamiques, puis avec les propriétés (ctrl+1), tu appliques le paramètre de visibilité souhaité @+
-
C'est qu'il se fâcherait notre gilou national ;) Je me doute qu'il est plaisant de faire la même chose en .net, histoire de mieux maîtriser les boites de dialogues. Si je prenais le temps d'approfondir, c'est ce que j'aurai fait, mais en 1er. @+
-
Bien sûr ! C'est d'ailleurs ce que j'ai fait en .NET... Ok, c'est donc l'excuse pour passer en .net ;) @+
-
Salut Avec une list_box par exemple. @+
-
Ah oui, je me suis planté de login ;) @+
-
Salut Je vais prendre le temps de changer tous les liens @+
-
Merci lili, pour toi aussi et tous tes proches Donc, avec une gabarit (defun c:lili(/ att cla col ent feu fic gab lig nom xls nombl) (defun nombl(bl) (if (vlax-property-available-p bl 'effectivename) (vla-get-effectivename bl) (vla-get-name bl) ) ) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object)) [surligneur]nom "Nom_Bloc[/surligneur] [surligneur]gab "c:/test/gabarit.xls"[/surligneur] ) (or lancer_excel (load (findfile "api_xls.lsp")) ) (or (setq xls (lancer_excel)) (setq xls (lancer_ooo)) ) (and xls (progn (and (findfile (setq fic (strcat (vl-filename-directory gab) "/" (substr (getvar "dwgname") 1 (- (strlen (getvar "dwgname")) 3)) "xls"))) (vl-file-delete fic) ) (vl-file-copy gab fic) (setq cla (ouvrir_fichier xls fic)) (and (ssget "x" (list (cons 0 "insert") (cons 2 (strcat "`**," nom)) (cons 66 1))) (progn (setq col 65 lig 2 feu (feuille_active cla) ) (vlax-for ent (setq sel (vla-get-activeselectionset doc)) (and (eq (nombl ent) nom) (foreach att (vlax-invoke ent 'getattributes) (ecrire_cellule cla feu (strcat (chr col) (itoa lig)) (vla-get-textstring att)) (setq col (1+ col)) ) (setq col 65 lig (1+ lig) ) ) ) (vla-delete sel) (sauver_fichier cla) (princ (strcat "\nCréation du fichier : " fic)) ) ) (and cla (fermer_fichier cla)) (fermer_appli (list xls cla)) ) ) (princ) ) @+
-
Salut Avec FOG par exemple @+
-
Salut lili et tous mes voeux de bonne année, de bonne santé à vous tous. Quelque chose dans ce style ? (defun c:lili(/ att cla col ent feu fic lig nom xls nombl) (defun nombl(bl) (if (vlax-property-available-p bl 'effectivename) (vla-get-effectivename bl) (vla-get-name bl) ) ) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object)) nom [surligneur]"Un_bloc"[/surligneur] ; Nom du bloc ) (or lancer_excel (load (findfile "api_xls.lsp")) ) (or (setq xls (lancer_excel)) (setq xls (lancer_ooo)) ) (and xls (progn (and (setq fic (strcat (getvar "dwgprefix") (getvar "dwgname") ".xls")) (setq cla (nouveau_fichier xls fic)) (progn (and (ssget "x" (list (cons 0 "insert") (cons 2 (strcat "`**," nom)) (cons 66 1))) (progn (setq col 65 lig 1 feu (feuille_active cla) ) (vlax-for ent (setq sel (vla-get-activeselectionset doc)) (and (eq (nombl ent) nom) (foreach att (vlax-invoke ent 'getattributes) (ecrire_cellule cla feu (strcat (chr col) (itoa lig)) (vla-get-textstring att)) (setq col (1+ col)) ) (setq col 65 lig (1+ lig) ) ) ) (vla-delete sel) (sauver_fichier cla) (princ (strcat "\nCréation du fichier : " fic)) ) ) ) ) (and cla (fermer_fichier cla)) (fermer_appli (list xls cla)) ) ) (princ) ) ps : requiert Api_Xls
-
Salut Très bonne initiative :D Ce qui est le cas, mais qu'on voit en prog uniquement. Si on veut aller plus loin, c'est aussi vrai pour les espaces papiers. Juste pour simplifier (à mon sens) La table des blocs est la "palette" ou "bibliothèque" qui contient tous les symboles de mon dessin. On peut la compléter par la palette d'outils ou en utilisant parcourir lors de l'insertion d'un nouveau symbole. Une référence de bloc (ou objet/entité) fait appel à la table des blocs pour afficher le symbole (suivant les calques bien sur) Cette référence peut-être dupliquée plusieurs fois dans le dessin avec des échelles, couleurs, etc... différents, ce qui donne un ensemble d'objets. Pour cette ensemble d'objets, si on modifie la définition du bloc, ils sont tous modifiés. Pour ce qui est des blocs dynamiques, s'ils ont des noms anonymes, c'est qu'en réalité, chaque état du bloc est en réalité un bloc (créé automatiquement par autocad) Par exemple J'insère un bloc dynamique et lui donne un état. Autocad lui affecte un nom anonyme du style "*U122" et créé obligatoirement une définition de bloc. Je modifie un état de mon bloc, le nom anonyme de ma référence change. Autocad a de nouveau créé une nouvelle définition de bloc. Si je purge le dessin, j'ai un paquet de définition de blocs anonymes qui peuvent être "effacé" Un Tuto de Didier Lourdelle sur les blocs. C'est ma même chose --> insérer un bloc dans un dessin. @+
-
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
Avec le bouton d'options @+ -
Salut Pour quelle raison ? Si un bloc peut-être purgé, c'est qu'il n'est plus dans le dessin ? ps : si un bloc dyn change d'état dans un dessin, il a un nouveau nom anonyme, c'est pour cela que l'on purge plusieurs blocs anonymes @+
-
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
J'avais pas vu le bouton, trop visible ;) Et en utilisant Revo Uninstaller ? En réduisant la taille de l'image pas exemple, sans compter la durée @+ -
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
C'est avec lui que j'ai fais ma capture vidéo, j'ai du rater quelque chose. Avec Magic Swf2Gif @+ -
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
Merci, mais j'ai du chercher pour ne travailler qu'avec des free. C'est très simple comme démarche :( D"abord une capture vidéo en avi. Convertion de l'avi en swf (flash) puis en Gif. Reste plus qu'à déposer l'image chez un hébergeur. Si tu as un free qui permet la capture vidéo directement en gif, je suis preneur. @+ -
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
Donc, c'est OK ;) http://img574.imageshack.us/img574/6469/demoe.gif @+ -
Chemin d\'un fichier Lisp Chargé
Patrick_35 a répondu à un(e) sujet de fabcad dans Pour aller plus loin en LISP
Salut Je suis comme Didier, je ne comprends pas tout. @+ -
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
Salut Un exemple (hauteur texte = 10) @+ -
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
jarod34 & lecrabe : bug corrigé pierrevigneux : ça fonctionne avec une v2004. Il faut que les points soient sur la poly. @+ -
Icrémentation Texte dans l\'ordre d\'une Polyligne
Patrick_35 a répondu à un(e) sujet de jarod34 dans Visual LISP
Voila, c'est fait lecrabe @+ -
Reactor: insertion d\'une image
Patrick_35 a répondu à un(e) sujet de Carboleum dans Pour aller plus loin en LISP
Que cherche tu à faire exactement ? @+ -
Reactor: insertion d\'une image
Patrick_35 a répondu à un(e) sujet de Carboleum dans Pour aller plus loin en LISP
Salut Avec :vlr-objectAppended de vlr-acdb-reactor ? @+
