-
Compteur de contenus
1 489 -
Inscription
-
Dernière visite
-
Jours gagnés
19
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par zebulon_
-
Du même tonneau : Une histoire qui se passe à Strasbourg. Quelqu'un tombe dans l'Ill (l'affluent du rhin qui passe à Strasbourg) et crie "Au secours, Au secours !!!" Un vieux Strasbourgeois passant par là lui dit : "Hatsch dü schwemme gelehrt statt franzeesch". Ce qui veut dire : "Tu aurais mieux fait d'apprendre à nager plutôt que d'apprendre le français" Amicalement Zebulon_
-
Même les plus grands font des erreurs. On t'aime bien quand même, va. Amicalement Zebulon_
-
Je pense au contraire qu'elle sert à quelque chose. Disons que le paramètre d'accroche objet est seulement activé sur extrémité et que, au moment où je fais le getpoint, je prend le milieu d'un segment avec le menu contextuel d'accroche objet (ou en tapant mil). Dans la variable PDEP, j'ai les coordonées du milieu du segment. Lorsqu'on arrive à la ligne (command "_mtext" PDEP ...), le texte va s'attacher à l'extrémité du segment à cause des paramètres d'accroche objet extrémité et non pas au milieu (qui n'était activé que localement). Chose qui ne se produit pas quand je fais (command "_mtext" "_non" PDEP ...) Ce n'est pas la liberté de l'utilisateur qui m'intéresse dans le cas présent, mais il me semble qu'il vaut toujours mieux inactiver les paramètres d'accrochages aux objets, lorsqu'on utilise des commandes autocad, à l'intérieur d'un lisp, auquelles on injecte des coordonnées saisies au prélable ou des coordonnées calculées. Il m'arrive aussi de faire, dans le même ordre d'idée : (setq OLDOS (getvar "OSMODE")) (setvar "OSMODE" 0) (command ...) (command ...) (command ...) (setvar "OSMODE" OLDOS) pour ne pas être pollué par des accrochages aux objets au moment où les commandes s'exécutent toutes seules et ne requièrent pas l'intervention d'un opérateur. Ou me trompe-je ? Amicalement Zebulon_
-
entre temps, j'ai vu que j'avais oublié de traiter les accrochages aux objets (defun c:mymtext (/ CURTXTST STHT CURHT PDEP TMP) (if (not TEXTROT) (setq TEXTROT 0.000)) (setq CURTXTST (getvar "textstyle")) (if (zerop (setq STHT (cdr (assoc 40 (tblsearch "style" CURTXTST))))) (setq CURHT (getvar "textsize")) (setq CURHT STHT) ) (prompt (strcat "Style de texte courant : \"" CURTXTST "\" " "Hauteur de texte " (rtos CURHT))) (terpri) (setq PDEP (getpoint "\nSpécifier le point de départ : ")) (if (zerop STHT) (progn (setq TMP (getdist (strcat "\nSpécifier la hauteur <" (rtos CURHT) "> : "))) (if TMP (progn (setq CURHT TMP) (setvar "textsize" CURHT) ) ) ) ) (setq TMP (getangle PDEP (strcat "\nSpécifier l'angle de rotation <" (angtos TEXTROT) "> : "))) (if TMP (setq TEXTROT TMP)) (initdia) (command "_mtext" "_non" PDEP "_h" (rtos CURHT) "_r" (angtos TEXTROT) "_w" "0.00") (princ) ) J'ai rajouté un "_non" avant la saisie du point d'insertion du texte pour que l'accroche objet soit inactif à ce moment là. Amicalement Zebulon_
-
Au fait, j'oubliais un point intéressant. La fameuse loi du 11 février 2005 (chapitre III article 41)fait également évoluer le code de la construction. Jusqu'à aujourd'hui, les ERP (de 5ème catégorie, donc les petits ERP) existants non accessibles devaient être rendus accessibles dans le cadre de travaux. La nouvelle loi donne 10 ans à tous les ERP pour être accessible, sauf impossibilité technique majeure. Parlez-en à vos commerçants, vos banquiers, vos tabac/presse etc... dont les boutiques sont inaccessibles... Il y a du boulot, mes amis... Amicalement Zebulon_ Et les apprentis architectes auront droit à des cours d'accessibilité Zebulon_
-
Justement, les choses changent avec la loi du 11 février Jalna, je t'invite à te renseigner auprès de ta CAF et à visiter le site de mon association http://www.unapei.org et plus spécialement cette page. http://www.unapei.org/unapei_vous/familles/virtual/020_fam_droit_dem/e-docs/00/00/12/1B/document_unapei.md?type=text.html Amicalement Zebulon_
-
sélectionner des objets à partir d\'une Polyligne
zebulon_ a répondu à un(e) sujet de rebcao dans AutoCAD, liste de souhaits
Unis par les liens du lisp, jusqu'à ce que la mort nous sépare... La réponse de Serge, rappelée par ludwig, ne prend en compte que les sommets des polylignes. J'ai essayé de faire quelque chose de plus polyvalent, mais cela reste moins "précis" que ce que propose serge, puisque je fais un point toutes les 1 unité le long de l'objet, sans tenir compte d'éventuels sommets. Mais, de ce fait, mon lisp marche aussi pour des cercles, des ellipses, des polylignes avec des arcs et même des splines. Mais dans une version prochaine, on aura peut-être la possibilité de sélectionner suivant un objet. Christian l'a rèvé, Autodesk l'a fait. (ou va le faire, pour être plus exact) Amicalement Zebulon_ -
sélectionner des objets à partir d\'une Polyligne
zebulon_ a répondu à un(e) sujet de rebcao dans AutoCAD, liste de souhaits
et de l'italique gras = humour gras ? Amicalement Zebulon_ -
Bonjour Jalna, Je suis actif dans des associations de parents de personnes handicapées mentales, l'AAPEI de Saverne (en Alsace pour être précis) et à l'UDAPEI 67. On rencontre le même phénomène de rejet de la part de la société quand le handicap touche l'intelligence, ou même peut-être plus. A titre d'exemple, nous nous battons pour agrandir notre IME (Institut Médico-Educatif) afin d'accueillir plus d'enfants handicapés (trisomie 21, x fragile, polyhandicap etc ...), compte tenu de la liste d'attente collossale et du nombre de parents d'enfant handicapés mentaux contraints d'abandonner leur emploi parce que leur enfant n'a pas de place dans une structure d'accueil. Que diriez-vous si on vous disait que votre enfant "normal" ne peut pas être scolarisé parce qu'il n'y a plus de place à l'école ? A titre professionnel, j'ai été amené à concevoir des Etablissement Recevant du Public (des banques en l'occurence) et, quand je rendais attentif le maître d'ouvrage à ses obligations par rapport à l'accessibilité, j'ai eu quelque fois des réponses du genre : "les handicapés on n'en à rien à foutre", ou bien, "comment on peut faire pour évitre de mettre une rampe ? ça coûte trop cher !". Quand c'est comme ça, je leur rappelle qu'il y a une loi (j'évite de leur dire que c'est des cons, parce que je suis poli et que, si je fais perdre un gros client à mon patron, il va pas être content). Si ça ne suffit pas, j'appelle en douce la commission d'accessibilité compétente, en tant que représentant d'association, et leur demande d'emettre un avis négatif à la demande administrative de construire (PC ou DT). Cela fait perdre du temps, mais, c'est comme avec les enfants, de temps en temps il faut taper sur les doigts pour éduquer. Puis par après, on évite de retravailler pour eux. Maintenant, je peux choisir mes clients puisque je suis indépendant. Fort heureusement, ce n'est pas toujours comme ça. J'ai eu à refaire la Caisse de Crédit Mutuel d'Obernai (là je fais de la pub parce que c'est des gens bien), et ils ont accepté de démolir une partie de leur dalle béton du rez-de-chaussée (et de perdre de la surface d'exploitation) pour y aménager une rampe d'accès, alors qu'ils auraient facilement pu obtenir une dérogation compte tenu des difficultés techniques. Pour terminer ce ptit mot, nous organisons une journée d'étude sur la "loi du 11 février 2005" pour l'égalité des chances, la participation et la citoyenneté des personnes handicapées. Le mercredi 1er février de 9h à 17h Amphitéâtre du CNRS 23 rue du Loess - Bâtiment 01 Strasbourg-Cronenbourg Le programme est disponible en téléphonant à l'UDAPEI au 03.88.84.99.00, si le sujet intéresse quelqu'un. Amicalement Zebulon_
-
sélectionner des objets à partir d\'une Polyligne
zebulon_ a répondu à un(e) sujet de rebcao dans AutoCAD, liste de souhaits
salut les ceintures noires (defun c:selobj (/ ENT vlaobj pt_org pt_end param_strat param_end perim_obj esp X NB liste_pt ss) (vl-load-com) (setq ENT (car (entsel))) (setq vlaobj (vlax-ename->vla-object ent) pt_org (vlax-curve-getStartPoint vlaobj) pt_end (vlax-curve-getEndPoint vlaobj) param_start (vlax-curve-getStartParam vlaobj) param_end (vlax-curve-getEndParam vlaobj) perim_obj (vlax-curve-getDistAtParam vlaobj param_end) ) (setq ESP 1) ;; précision (setq NB (fix (/ perim_obj ESP))) ;; nb se sommets (setq X 0) (setq liste_pt nil) ;; liste des points à injecter au ssget (repeat NB (setq liste_pt (cons (trans (vlax-curve-getPointAtParam vlaobj (vlax-curve-getParamAtDist vlaobj x)) 0 1) liste_pt)) (setq X (+ X ESP)) ) (setq ss (ssget "_wp" liste_pt)) (sssetfirst nil ss) (princ) ) Voilà, vite fait sans trop tester... j'ai fixé la précision arbitrairement à 1 unité, à voir en fonction de la taille des objets utilisés. Amicalement Zebulon_ -
pourquoi la case de dialogue ne s\'ouvre pas?
zebulon_ a répondu à un(e) sujet de thierryd dans Débuter en LISP
(defun c:printtd () (initdia) (command "_plot") (princ)) ça devrait marcher avec la boîte de dialogue Voilà ce que raconte l'aide Amicalement Zebulon_ -
J'ai eu un problème du même ordre sauf qu'il s'agissait de points d'un relevé topo et non d'une courbe de niveau. Les points relevés étaient matérialisés par des textes dont le point d'insertion donnait le X et le Y (le Z était à 0). Le Z relevé était donné par le texte. (defun c:text2pt3d () (setq jeusel (ssget "_x" '((0 . "TEXT")))) (if jeusel (progn (setq OldOS (getvar "OSMODE")) (setvar "OSMODE" 0) (setq I 0) (while (< I (sslength jeusel)) (setq E (ssname jeusel I)) (setq A (entget E)) (setq PTINS (cdr (assoc 10 A))) (setq X (car PTINS)) (setq Y (cadr PTINS)) (setq Z (distof (cdr (assoc 1 A)) 2)) (command "_point" (list X Y Z)) (setq I (+ I 1)) ) (setvar "OSMODE" OldOS) ) ) (princ) ) ce lisp va lire tous les textes, en extraire le point d'insertion pour trouver le X et le Y, va lire la valeur du texte, la convertit en décimal pour trouver le Z. Puis avec X, Y et Z, je place un point. On peut imaginer la même chose avec des attributs. le ssget donnerait quelque chose comme (setq jeusel (ssget "_x" '((0 . "INSERT") (2 . "mettre le nom du bloc ici")))) et à l'intérieur du while, il faudrait aller piocher la valeur de l'attribut. Mais comme un bloc est une entité complexe, il faut rajouter une autre boucle while (while (/= (cdr (assoc 0 a)) "SEQEND") (if (= (cdr (assoc 0 a)) "ATTRIB") (setq Z (distof (cdr (assoc 1 A)) 2)) ) (setq e (entnext e)) (setq a (entget e)) ) donc globalement ça donne : (defun c:attrib2pt3d () (setq jeusel (ssget "_x" '((0 . "INSERT") (2 . "NIVZ")))) (if jeusel (progn (setq OldOS (getvar "OSMODE")) (setvar "OSMODE" 0) (setq I 0) (while (< I (sslength jeusel)) (setq E (ssname jeusel I)) (setq A (entget E)) (while (/= (cdr (assoc 0 a)) "SEQEND") (if (= (cdr (assoc 0 a)) "ATTRIB") (progn (setq PTINS (cdr (assoc 10 A))) (setq X (car PTINS)) (setq Y (cadr PTINS)) (setq Z (distof (cdr (assoc 1 A)) 2)) ) ) (setq e (entnext e)) (setq a (entget e)) ) (command "_point" (list X Y Z)) (setq I (+ I 1)) ) (setvar "OSMODE" OldOS) ) ) (princ) ) ou quelque chose comme ça. Pour une courbe de niveau, c'est plus simple puisque c'est le même niveau partout, donc un _move fait bien l'affaire. Amicalement Zebulon_ [Edité le 10/1/2006 par zebulon_]
-
NHR = Nouvel Hotel de la Région Alsace NHC = Nouvel Hôpital Civil de Strasbourg C'est ça ?
-
Si tu veux conserver l'accrochage aux objets pour la saisie du point de l'axe de symétrie, et l'enlever quand tu fais le @0,100, il vaut mieux laisser tomber les pauses et passer par des variables pour ne désactiver les OSMODE qu'au dernier moment. (defun c:mv(/ OldOS PT1 SS) (setq ss (ssget)) (setq PT1 (getpoint "\nSpécifiez un point de l'axe de symétrie vertical:")) (setq OldOS (getvar "OSMODE")) (setvar "OSMODE" 0) (command "_mirror" ss "" pt1 "@0,100" "_n") (setvar "OSMODE" OldOS) (setq ss nil) (princ) ) Amicalement Zebulon_ [Edité le 10/1/2006 par zebulon_]
-
Je parie aussi 1€ (defun c:mv(/ OldOS) (setq OldOS (getvar "OSMODE")) (setvar "OSMODE" 0) (command "miroir" (ssget) pause pause "@0,100") (setvar "OSMODE" OldOS) (princ) )
-
Bonjour, donc nb_layer vaut toujours 8 et COL varie de 1 à 8 à l'intérieur de la boucle repeat. Si un objet a une couleur plus grande que 8, il n'est jamais sélectionné par le ssget. ces entités sont peut-être sur des couleurs > 8 ? Sinon, je ne vois pas. Amicalement Zebulon_
-
Je la trouve un peu rasoir la démo...
-
Salut kallain, c'est bizarre. Tu es sûr de ne pas avoir fait une Xref Ajouter ? Ou avoir inséré ton fichier comme un bloc au lieu d'une xref ? Parce que sur ma 2004, je n'arrive pas à voir la liste des blocs de la xref avec la commande INSERER bizarre, bizarre Zebulon_
-
oui, mais dans le lisp, si je n'avais pas mis le (initdia) avant la commande _mtext, elle aurait fonctionné comme _-mtext. Autrement dit, sans le initdia, l'éditeur ne s'ouvre pas et _mtext utilisé à l'intérieur d'une ligne (command "_mtext" ...) fonctionne en ligne de commande. Un peu comme les commandes _plot et _-plot. Amicalement Zebulon_ Merci pour l'euro.
-
c'est anatomiquement très difficile, mais c'est la bonne traduction. Donc chose promise chose due, Bertrand et Christian ont gagné un visite commentée de la cathédrale de Strasbourg. On pourra attendre qu'il fasse un peu plus chaud, vers le printemps. On pourra observer le rayon vert, s'il n'y a pas de nuages. http://img471.imageshack.us/img471/8590/dscn00095aj.jpg Observez le personnage de droite, il s'agit de Juda (non pas Juda l'apôtre, mais Juda, un des ancêtres du Christ). Son pied gauche est en verre clair peint en vert et non en verre à vitrail, d'où la naissance du rayon vert. Il tourne sa tête vers le Sud-Est comme s'il attendait la venue du Soleil et le vitrail en médaillon au dessus de sa tête représente un soleil. http://img530.imageshack.us/img530/6774/dscn00165hv.jpg Et le rayon tombe pile sur le dais au dessus de la tête du Christ en croix de la chaire de Geiler de Kaysersberg, tous les midis solaire des jours d'équinoxe. C'est trop beau pour être le fruit du hasard. Cependant, ce phénomène n'a été (re ?) découvert que vers 1980. Amicalement Zebulon_ [Edité le 21/12/2005 par zebulon_]
-
Liste des codes utilisables dans une macro ?
zebulon_ a répondu à un(e) sujet de jifi dans Personnalisation, macros, DIESEL
De rien jifi, comme je passe en Suisse en fin de cette semaine, il faut que je sois sympa avec les helvetes. Amicalement Zebulon_ PS : je ne fais que passer, c'est un racourcis pour aller de la France à la ... France. -
Mr Zebulon Le Zebulon "pincé"
-
Je ne sais pas si ça peut aider, mais si on prend le milieu des 2 points que retourne la méthode getboundingbox ? http://www.cadxp.com/sujetXForum-7992.htm Amicalement Zebulon_
-
additionner la longueur de plusieurs lignes ou polylignes
zebulon_ a répondu à un(e) sujet de laura dans Routines LISP
salut (gile) tu pourrais remplacer ta defun longobjt par quelque chose de ce style (setq ent (car (entsel "\nSélectionner objet : "))) (setq vlaobj (vlax-ename->vla-object ent) pt_org (vlax-curve-getStartPoint vlaobj) pt_end (vlax-curve-getEndPoint vlaobj) param_start (vlax-curve-getStartParam vlaobj) param_end (vlax-curve-getEndParam vlaobj) perim_obj (vlax-curve-getDistAtParam vlaobj param_end) ) en récupérant la valeur de perim_obj. L'avantage c'est que ça marche quel que soit le type d'objet et qu'on n'a pas à se colletiner une série de cond. Amicalement Zebulon_ -
bon, je me suis fait ma commande mtext pour qu'elle ressemble à la commande texte classique (defun c:mymtext (/ CURTXTST STHT CURHT PDEP TMP) (if (not TEXTROT) (setq TEXTROT 0.000)) (setq CURTXTST (getvar "textstyle")) (if (zerop (setq STHT (cdr (assoc 40 (tblsearch "style" CURTXTST))))) (setq CURHT (getvar "textsize")) (setq CURHT STHT) ) (prompt (strcat "Style de texte courant : \"" CURTXTST "\" " "Hauteur de texte " (rtos CURHT))) (terpri) (setq PDEP (getpoint "\nSpécifier le point de départ : ")) (if (zerop STHT) (progn (setq TMP (getdist (strcat "\nSpécifier la hauteur <" (rtos CURHT) "> : "))) (if TMP (progn (setq CURHT TMP) (setvar "textsize" CURHT) ) ) ) ) (setq TMP (getangle PDEP (strcat "\nSpécifier l'angle de rotation <" (angtos TEXTROT) "> : "))) (if TMP (setq TEXTROT TMP)) (initdia) (command "_mtext" PDEP "_h" (rtos CURHT) "_r" (angtos TEXTROT) "_w" "0.00") (princ) ) sauf que je n'ai pas trouvé la variable où autocad stocke la rotation du texte. Si quelqu'un a une idée ? Amicalement Zebulon_
