-
Compteur de contenus
8 500 -
Inscription
-
Dernière visite
-
Jours gagnés
19
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par Tramber
-
Nouvelles perspectives pour la photogramétrie
Tramber a répondu à un(e) sujet de thierry.garré dans VRD
TRIMBLE, TRIMBLE !!! Après Tekla (j'ai du mal à voir le rapport mais j'ai lu celà il y a peu) après Sketch'Up (still can't beleive this !) voici Gatewing (ils n'ont pas trainé à mettre leur nom près du logo qu'ils auraient acheté à des belges [contact à Gent]) J'ai plein de bonnes idées, Trimble, ils ne veulent pas me racheter, moi ? :P -
Comparatif entre AutoCAD 2010 et la version 2013
Tramber a répondu à un(e) sujet de Etmo dans AutoCAD 2013
Très belle contribution. Dont les résultats ne m'étonnent guère. Moi, c'est depuis 2006/7 que je peste. Je n'investis pas comme un dingue dans le matos. Et, par exemple, depuis que l'on prévisualise ses sélections ou que l'on doit subir un menu réactif (ruban), il faut bien personnaliser son environnement quand la machine n'est pas de dernière génération. Et l'écologie dans tout ça. On en parle quand ? -
Modifier XData utilisée par Autocad
Tramber a répondu à un(e) sujet de zuperpuz dans Pour aller plus loin en LISP
Pour revenir au mois de juillet, je précise juste qu'il y a la variable LAYOUTREGENCTL pour ton problème en lisp. Maintenant, je reste sans voix quant à ton retour : Pendant les week-ends ou durant les heures de travail ? ;) -
Bonjour ! Vous êtes gentils les amis mais ma présence ici est et sera sporadique pendant plusieurs semaines, je suis charette. Ce bout de code a été remanié cent fois. ... n'hésitez pas B) Je viens juste dire bonjour, livrer de ci de là une réponse rapide. RDV cet été
-
Coup de "Stabilo" sur un texte
Tramber a répondu à un(e) sujet de bonuscad dans Programmer en s'amusant
Chapeau bas en tous les cas ;) Un défi serait d'accrocher mieux à chaque lettre.... -
Le commentaire s'en retrouve au milieu du lisp mais il y a justement une routine de (Gile) en 2ème partie. Excuse-moi mais c'est justement possible en mode Selection. Et grâce à (Gile) ! Tu dois taper SP ou CP, comme d'hab'
-
C'est amusant cette relance. Pas plus tard qu'hier, j'ai voulu l'utiliser et me suis rendu compte que je ne savais pas où était cette routine dans mon ordi. Donc je suis venu la copier ici hier soir !!! .... et je me suis rendu compte qu'il y a avait un problème avec le premier bloc qui faisait office de titre. Résultat non voulu et un peu surprenant. Je me souvenais pourtant que la toute première version marchait bien.... Donc, j'ai tout corrigé ici : (defun c:tabloblo (/ libloc liidbloc ss ss liref ptins tableVL cont) ;;; (prompt "\nSélectionnez les blocs à lister ou ") ;;; ;;; (setq ssu (ssget '((0 . "INSERT")))) ;;; ;;; (setq sst (ssget "_X" '((0 . "INSERT")))) (vl-load-com) (or *acad* (setq *acad* (vlax-get-acad-object))) (initget "Objet Tous Sélection") (setq kw (getkword "\nSélectionnez les blocs ou [Objet/Tous/Sélection] : " ) ) (cond ((= kw "Objet") (and (setq ent (car (entsel "\nSélectionnez le cercle, l'ellipse ou la polyligne: ") ) ) (setq typ (cdr (assoc 0 (entget ent)))) (or (member typ '("CIRCLE" "ELLIPSE")) (and (= typ "LWPOLYLINE") (= 1 (logand 1 (cdr (assoc 70 (entget ent))))) ) ) (setq ss (SelByObj ent "Wp" '((0 . "INSERT")))) ) ) ((= kw "Tous") (setq ss (ssget "_X" '((0 . "INSERT"))))) (T (setq ss (ssget '((0 . "INSERT"))))) ) (if ss (setq liref (mapcar '(lambda (x) (setq x (vlax-ename->vla-object x)) (if (vlax-property-available-p x 'EffectiveName) (vla-get-EffectiveName x) (vla-get-Name x) ) ) (vl-remove-if 'listp (mapcar 'cadr (ssnamex ss))) ) ) (setq liref '()) ) (if ss (setq libloc (remove_doubles (mapcar '(lambda (x) (setq x (vlax-ename->vla-object x)) (if (vlax-property-available-p x 'EffectiveName) (vla-get-EffectiveName x) (vla-get-Name x) ) ) (vl-remove-if 'listp (mapcar 'cadr (ssnamex ss))) ) ) liidbloc (mapcar '(lambda (x) (vla-get-ObjectID (vla-item (vla-get-Blocks (vla-get-activedocument (vlax-get-acad-object) ) ) x ) ) ) libloc ) liref (vl-remove-if-not '(lambda (n) (member n libloc)) liref) ) (vlax-for i (vla-get-Blocks (vla-get-activedocument (vlax-get-acad-object)) ) (if (and (/= (substr (vla-get-name i) 1 1) "*") (= :vlax-false (vla-get-IsXref i)) ) (setq libloc (append libloc (list (vla-get-name i))) liidbloc (append liidbloc (list (vla-get-ObjectID i))) ) ) ) ) (setq ptins (getpoint "\nPoint d'insertion: ")) (vl-load-com) (setq tableVL (vla-addtable (vla-get-modelspace (vla-get-activedocument (vlax-get-acad-object)) ) (vlax-3d-point ptins) (1+(length libloc) ) 3 20 100 ) ) (vla-put-TitleSuppressed tableVL :vlax-true) (vla-put-HeaderSuppressed tableVL :vlax-true) (setq cont -1) (repeat (1-(vla-get-Rows tableVL) ) (vla-settext tableVL (1+(setq cont (1+ cont)) ) 0 (nth cont libloc) ) (vla-settext tableVL (1+ cont ) 1 (length (vl-remove-if-not '(lambda (n) (= n (nth cont libloc))) liref ) ) ) (vla-SetBlockTableRecordId tableVL (1+ cont ) 2 (nth cont liidbloc) :vlax-true ) (vla-setcellalignment tableVL cont 0 5) (vla-setcellalignment tableVL cont 1 5) ) (princ) ) ;;; REMOVE_DOUBLES - Suprime tous les doublons d'une liste (defun REMOVE_DOUBLES (lst) (cond ((atom lst) lst) (T (cons (car lst) (REMOVE_DOUBLES (vl-remove (car lst) lst))) ) ) ) ;;; SelByObj -Gilles Chanteau- 06/10/06 ;;; Crée un jeu de sélection avec tous les objets contenus ou capturés, ;;; dans la vue courante, par un objet (cercle, ellipse, polyligne fermée) ;;; Arguments : ;;; - ent : un objet (ename ou vla-object) ;;; - opt : un mode de sélection (Cp ou Wp) ;;; - fltr : un filtre de sélection (liste) ou nil ;;; ;;; modifié le 26/07/07 : fonctionne avec les objets hors fenêtre (defun SelByObj (ent opt fltr / obj dist n lst prec dist p_lst ss) (if (= (type ent) 'ENAME) (setq obj (vlax-ename->vla-object ent)) (setq obj ent ent (vlax-vla-object->ename ent) ) ) (cond ((member (vla-get-ObjectName obj) '("AcDbCircle" "AcDbEllipse")) (setq dist (/ (vlax-curve-getDistAtParam obj (vlax-curve-getEndParam obj) ) 50 ) n 0 ) (repeat 50 (setq lst (cons (trans (vlax-curve-getPointAtDist obj (* dist (setq n (1+ n)))) 0 1 ) lst ) ) ) ) ((and (= (vla-get-ObjectName obj) "AcDbPolyline") (= (vla-get-Closed obj) :vlax-true) ) (setq p_lst (vl-remove-if-not (function (lambda (x) (or (= (car x) 10) (= (car x) 42) ) ) ) (entget ent) ) ) (while p_lst (setq lst (cons (trans (append (cdr (assoc 10 p_lst)) (list (cdr (assoc 38 (entget ent)))) ) ent 1 ) lst ) ) (if (/= 0 (cdadr p_lst)) (progn (setq prec (1+ (fix (* 25 (sqrt (abs (cdadr p_lst)))))) dist (/ (- (if (cdaddr p_lst) (vlax-curve-getDistAtPoint obj (trans (cdaddr p_lst) ent 0) ) (vlax-curve-getDistAtParam obj (vlax-curve-getEndParam obj) ) ) (vlax-curve-getDistAtPoint obj (trans (cdar p_lst) ent 0) ) ) prec ) n 0 ) (repeat (1- prec) (setq lst (cons (trans (vlax-curve-getPointAtDist obj (+ (vlax-curve-getDistAtPoint obj (trans (cdar p_lst) ent 0) ) (* dist (setq n (1+ n))) ) ) 0 1 ) lst ) ) ) ) ) (setq p_lst (cddr p_lst)) ) ) ) (cond (lst (vla-ZoomExtents *acad*) (setq ss (ssget (strcat "_" opt) lst fltr)) (vla-ZoomPrevious *acad*) ss ) ) )
-
Bonjour, Me voilà tout content d'avoir enfin installé ma version 2013. Sans réfléchir (pourquoi réfléchir un jour de congès ?), je saute tout de suite sur la fonction VUEBASE. On note d'ailleurs que SOLVIEW existe toujours... Mais pour la ligne de commande on repassera ! En effet : Pour commencer, une échelle est réglée à 0.25. Je n'ai pas trouvé de variable mais il m'affiche déjà Echelle = 3" = 1'-0". Ce qui est un peu inopportun. Quand je tape C j'ai l'Orientation E j'ai les lignes cachées V j'ai l'Echelle ! Enfin bref, du grand n'imp' ! Et cliquer sur le mot ne change rien :blink: C'est quand-même drôle mais troublant que je tombe déjà sur un bug à la première fonction lancée....
-
[Résolu] Dessiner une polyligne entre deux points de polyligne...
Tramber a répondu à un(e) sujet de stugeol dans Routines LISP
Salut ! Ta dernière info vient un peu tard ! J'avoue ne pas comprendre exactement le problème. Essayons. Tu cliques sur la polyligne avec la commande NCOPY (espresstools) et ramène la poly dans l'espace courant (0,0 + double ENTREE pour aller vite). Ensuite tu lances à deux reprises la commande "couper au point" isolant ainsi la partie qui t'intéresse.... en effacant donc les 2 bouts qui restent. Est-ce bien l'équivalent à la main de la manip' que tu souhaiterais programmer ? -
Pourtant tu n'es pas loin du but. Il faut être "dans" la fenêtre pour avoir accès à des gels spécifiques à celle-ci. Regarde bien, il y a des colonnes supplémentaires dans le panneau des calques pour le gel par fenêtre.
-
Ah ouais, c'est marqué comme ça ? Il faut savoir si : info est un mot de la langue française idem pour le caractère"+" et enfin se demander si on écrit : "plus d'informations" ou "plus d'information" selon que l'on considère l'information dans son ensemble ou si on attend une série d'informations... :P
-
importer un fichier texte de calque vers autocad
Tramber a répondu à un(e) sujet de lolb75 dans Routines LISP
Ah, tiens, j'ai regardé, Bryce n'utilise pas CONCATENER... mais juste une syntaxe basé sur le guillemet (si j'ai bien vu.) Enfin, de toutes façons pour faire du script pour AutoCAD avec Excel, il faut maitriser... Excel ! -
importer un fichier texte de calque vers autocad
Tramber a répondu à un(e) sujet de lolb75 dans Routines LISP
Regarde mon lien, j'y enseigne l'usage de CONCATENER qui, pour moi, est à peu près la seule fonction Excel à maitriser.... même si j'avoue qu'il est vite compliqué d'insérer des guillemets (il faut taper """ si je me souviens bien.) -
Avec LT, c'est logique ! Impossible de programmer et le language macro n'est pas assez puissant.
-
Ben, vu comme ça, cela parait tout à fait correct. Tu m'as l'air d'avoir compris le COND. Mais bordure vaut "0" ou 0 ? C'est pas pareil... (atoi "0") renvoie 0 (itoa 0) renvoie "0"
-
importer un fichier texte de calque vers autocad
Tramber a répondu à un(e) sujet de lolb75 dans Routines LISP
Ah ouais, c'est marrant ! J'y étais... lolb75, elle tient à quoi ta liste ? Juste à des noms de calque ? ou tu as des caractéristiques à entrer (couleurs, etc,...) ? -
importer un fichier texte de calque vers autocad
Tramber a répondu à un(e) sujet de lolb75 dans Routines LISP
Pour le faire le plus bêtement du monde il faut lancer la commande -CALQUE puis l'option Nouveau et enfin saisir la liste avec des virgules pour séparer. Au delà de ce moyen ultra-basique, faire un script est enfantin (dans un script le "-" devient superflu, à vérifier) : CALQUE N nom1 CALQUE N "nom avec espaces" CALQUE N "etc" Quelques remarques : mettre des guillemets quand il y a des noms avec espaces et ajouter un caractère espace à la fin de chaque ligne (un espace vaut une validation, or il en faut une pour quitter la commande avant de la relancer) En cas de doute sur Excel, je revoie vers ce message! Sinon, nous guider vers le lieu où tu as trouvé ton lisp serait bien ;) -
Coucou ! C'est ton style de texte qu'il faut modifier, pas ton style de ligne... Donc lance la commande STYLE !
-
repasse donc PICKFIRST à 1 dans un premier temps. C'est sans doute ça.
-
Macro changement de calque objet
Tramber a répondu à un(e) sujet de BEMAXIME13 dans Personnalisation, macros, DIESEL
Si tu sais macroter, tu as pouvoir résoudre ton problème avec CHPROP. A toi d'essayer cette commande, elle est assez facile mais le choix des objets doit avoir lieu d'abord. Avec la syntaxe "\" (pause pour choix des objets) ca devrait fonctionner. Tu connais ? -
surface de plusieurs polyligne
Tramber a répondu à un(e) sujet de Patrick05 dans AutoCAD Architecture
Avec la commande AIRE en mode "Ajouter..", tout simplement. -
Irrégularités - traitement des string
Tramber a répondu à un(e) sujet de krunch dans Pour aller plus loin en LISP
En effet ! Je n'avais pas vu les problèmes sur Arc ou il manque le "c". Pas de commentaire pour l'instant, je sèche. Mais sois plus précis sur les résultats attendus B) , ca devient plus facile de suivre. -
Mettre à plat un 3d et garder les longueur
Tramber a répondu à un(e) sujet de Djool57 dans AutoCAD 2010
Ta méthode est bonne. Tu peux l'adapter de mille façons. Par exemple, en réglant UCSFOLLOW à 1 (pour une saisie des objets peut-être plus facile) et en copiant-collant. Dans l'idée, j'ouvrirais un autre fichier (ALT+Tab) pour le collage. En passant d'un SCU à l'autre, et en collant dans un fichier où seul le SCG règne, avec presque toujours le clavier comme ami on peut aller très vite.... quitte à diviser l'espace objet en 2 fenêtres dont une garde son SCU pour spécifier les points en 3D. (et là on a déjà une autre solution que de coller dans un autre fichier...) Bref, question d'organisation car, sauf la commande ALIGNER, tu n'auras pas beaucoup d'outils tout fait ! -
Irrégularités - traitement des string
Tramber a répondu à un(e) sujet de krunch dans Pour aller plus loin en LISP
Pour RTOS, comme le dit la doc, DIMZIN influe. Et cette variable gère donc les zéros de fin de dimensions. Pour les fonctions vl, je ne vois pas trop les problèmes.... -
Tarte à la rubarbe. Cherche pas. Avec des asperges, le crabe. Je précise que c'est la saison et que c'est un marqueur temporel important pour l'Alsacien.
