lolobala
Membres-
Compteur de contenus
45 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par lolobala
-
Bonjour à tous, Afin de faire ma mise à l'echelle en automatique, je pensais utiliser la commande amrescale. Mais voilà je coince un peu et j'aurai besoin de vos connaissances. Je sais qu'il est possible de lire une valeur avec openExcel getExcell et getcell mais je n'arrive pas à la faire "travailler" avec la commande amrescale. Est-il possible d'écrire le contenu d'une cellule excel dans un script ? ou dans un lisp ? Voilà ce que j'ai tenté en script : (getexcel "C:/meuble/compo.xls" "presentation" "B16") amrescale (getcell "B16") tout Mais il ne n'en veut pas. En lisp : (defun c:mechauto (/ ) (setq ExcelFile$ "C:\\meuble\\compo.xls") (setq SheetName$ "presentation") (setq MaxRange$ "B16") (GetExcel ExcelFile$ SheetName$ MaxRange$) (setq Cell$ "B16") (GetCell Cell$) (command (getcname "amrescale" (cell$) (ssget "_X" ""))) );defun Je pense que c'est plus simple en lisp mais n'étant pas doué dans ce langage, ça ne marche pas. Auriez-vous une idée ? Merci d'avance. A Bientôt
-
Bonjour à tous, Afin de faire ma mise à l'echelle en automatique, je pensais utiliser la commande amrescale. Mais voilà je coince un peu et j'aurai besoin de vos connaissances. Je sais qu'il est possible de lire une valeur avec openExcel getExcell et getcell mais je n'arrive pas à la faire "travailler" avec la commande amrescale. Est-il possible d'écrire le contenu d'une cellule excel dans un script ? ou dans un lisp ? Voilà ce que j'ai tenté en script : (getexcel "C:/meuble/compo.xls" "presentation" "B16") amrescale (getcell "B16") tout Mais il ne n'en veut pas. En lisp : (defun c:mechauto (/ ) (setq ExcelFile$ "C:\\meuble\\compo.xls") (setq SheetName$ "presentation") (setq MaxRange$ "B16") (GetExcel ExcelFile$ SheetName$ MaxRange$) (setq Cell$ "B16") (GetCell Cell$) (command (getcname "amrescale" (cell$) (ssget "_X" ""))) );defun Je pense que c'est plus simple en lisp mais n'étant pas doué dans ce langage, ça ne marche pas. Auriez-vous une idée ? Merci d'avance. A Bientôt
-
Effectivement c'est bien pour un nouveau dessin. Disons que la fonction, "Effacer les blocs déjà inséré" permet de faire une mise à jour, sans forcemment faire un nouveau dessin. En cas de modif, c'est plutôt pratique. C'est pas grave, le cas n'est pas fréquent non plus...je passe @+ encore merci pour ta disponibilité
-
Bonjour patrick 35, J'ai un soucis depuis que j'ai rajouté la ligne : (vlax-ldata-put "Patrick_35_Excel_Ixl" "0" '("C:\\Mes_répertoires\\Mon_fichier.xls" ("Ma_feuille"))) En faite lorsque je relance la routine avec une modif dans mon fichier excel, les blocs initialement insérés ne sont pas effacés. Je ne peux plus coché ou décochés la case qui est en bas de la boite de dialogue. Est-ce que ça vient du fait que tout est écrit en dur ? Quelle serait la manip à faire pour remedier au problème ? Merci d'avance
-
Merci, Patrick Je n'avais pas vu que plus bas dans la routine principale tu avais : (vl-load-com) (setq cle "Patrick_35_Excel_Ixl" doc (vla-get-activedocument (vlax-get-acad-object))) du coup moi en mettant : (vlax-ldata-put '("chemin de mon fichier.xls" ("feuille1")("feuille2")("feuille3"))) ça ne pouvait pas marcher, il me manquait un truc : ; erreur: no function definition: VLAX-LDATA-PUT Merci beaucoup et bon week-end
-
Bonjour à tous, Je souhaiterai faire une modif sur le lisp IXL. En fait le nom de mon fichier excel est toujours le même, il est toujours au même endroit et ses feuilles sont toujours les mêmes aussi. A chaques utilisation du lisp IXL, pour chaques nouveaux document autocad, je suis obligé de lui redonner le chemin et de lui réindiquer les feuilles qu'il doit lire. En fait ce que je souhaite, c'est de ne plus avoir la boîte dialogue DCL et que le chemin soit en dur. J'ai eu une petite formation sur le lisp, (enfin...) mais là je dois dire qu'il est difficile de mettre les mains dans un truc éxistant. En plus, je suis largué dans ce code complexe. Quelqu'un pourrait-il m'orienter ? Merci pour votre aide
-
Bonjour, Si je comprend bien un correctif devrait arrivé rapidement, c'est ça ?
-
Désolé, il y a eu un bug mon message a été diffusé 2 fois.... Bizarre :exclam:
-
Bonjour à tous Mon travail m'a installé récemment Inventor 2011 sur un nouveau PC windows 64 bits (quelle chance) J'étais auparavant sur Inventor 2008. J'ai constaté qu'il y avait une bibliothèque de matériau, (très pratique) dans l'espace conception. :) J'ai pu constaté aussi qu'on ne pouvait pas réutiliser cette même bibliothèque dans Inventor Studio. :mad: C'est bien dommage. Du coup je trouve l'image réaliste dans l'espace conception, beaucoup plus belle que celle du rendu Inventor studio. En fait le rendu studio ne conserve pas les textures. Il ne me donne que la couleur du matériau. Pas évident à expliquer. Y a t-il une solution pour palier à ce problème ? Merci pour vos réponses.
-
Modifier un bloc dynamique en fonction de son attribut
lolobala a répondu à un(e) sujet de lolobala dans Routines LISP
Bonjour à tous et bonne et heureuse année, à vous !!! Tu avais raison Gile, mes blocs dynamiques étaient mal fait, le problème est résolu. Merci encore pour tes compétences. Au fait, j'ai demandé à mon travail, une formation sur le lisp. Mes chefs se sont aperçu qu'il y avait du potentiel, et d'énorme possibilité avec ces bouts de code. Je serai donc formé au cours de l'année 2011. C'est pas une bonne nouvelle ça ? Je ne devrais plus t'embêter Gile. A bientôt et encore merci. ;) -
Modifier un bloc dynamique en fonction de son attribut
lolobala a répondu à un(e) sujet de lolobala dans Routines LISP
Non effectivement ça ne marche pas. Je suis obligé de le décomposer pour avoir les paramètres de visibilité et d'étirement. ça me surprend....Je vais revoir ça Merci -
Modifier un bloc dynamique en fonction de son attribut
lolobala a répondu à un(e) sujet de lolobala dans Routines LISP
Oui mon bloc est dynamique et a 2 attributs. Un attribut Distance lié à mon paramètre d'étirement, et un attribut Visibilité lié au paramètre de Visibilité. J'ai remplacé : ("ETIQUETTE_1" . "NomProprieteDyn_1") ("ETIQUETTE_2" . "NomProprieteDyn_2") Par : ("DISTANCE" . "Distance") ("VISIBILITE" . "Visibilité") En respectant la casse. Tout marche correctement, maintenant j'ai un autre soucis lié à IXL.. Petit récapitulatif : Ixl permet d'insérer des blocs dans autocad depuis Excel, il insére également les attibuts. L'avantage de Excel ce que l'on peut calculer des positions précise par le biais de formule logique et de calcul complexe. Le problème c'est que Ixl insère des blocs en blocs du coup mon bloc dynamique avec attribut devient un simple bloc sans rien, il faut le décomposer 1 fois pour avoir le dynamisme et 2 fois pour avoir les attributs mais du coup ne sont plus lié au propriété dynamique. Je sais pas si je me suis fait comprendre, pas simple a expliqué. -
Modifier un bloc dynamique en fonction de son attribut
lolobala a répondu à un(e) sujet de lolobala dans Routines LISP
Bonjour lili2006 voilà ce que j'ai écrit : Je vais tenté de voir si ça marche avec ixl. -
Modifier un bloc dynamique en fonction de son attribut
lolobala a répondu à un(e) sujet de lolobala dans Routines LISP
Bonjour Gile Il est vrai que ma demande est assez spécifique, mais suis-je vraiment le seul à vouloir ce genre d'outil ? Je serai étonné de voire que personne n'utilise les blocs dynamiques, les attributs, le lisp et excel pour pouvoir tirer un maximum d'autocad. J'ai parcouru le forum entier, et même d'autre site pour voir s'il y avait un élément de réponse sur ce sujet. Le sujet à été abordé mais sans suite. J'ai trouvé sur cad xp, les champs dynamique et ton lisp de pline_block mais à priori je faisais déjà fausse route. Puisque tu me propose un petit truc complètement différent. sache que j'ai commencé récemment mais mon manque de temps fait que je ne suis pas à la hauteur. Désolé. J'ai testé ce que tu m'as donné, mais quelque chose ne fonctionne pas. Peut être que je m'y prend mal ? Lorsque je lance ton outil, autocad me demande de choisir l'objet. Je sélectionne mon bloc dynamique mais autocad me renvoi 0 trouvé. J'ai bien remplacé par les vrais noms d'étiquettes mais il y a un soucis, je pense. Merci. -
Bonjour à tous. J'utilise actuellement l'excellent ixl de Patrick 35, ce lisp me permet d'insérer des blocs avec attribut à des positions précise, les coordonnées sont calculées en fonction d'un tableau excel. Je souhaiterai aujourd'hui insérer un bloc dynamique et faire varier sa longueur en fonction de son attribut longueur. Le bloc dynamique est muni, de paramètre d'étirement et aussi paramètre de visibilité que je souhaite également gérer. Est-ce que cela est possible ? Peut être en utilisant les expressions de champ ? Je pensais également à pline_block de gile, peut être en combinant les 2 ? Quelqu'un peut-il me mettre sur la voie, je suis à cour d'idée. Merci à vous
-
Par rapport au CD d'insatallation fournit nous avons la base sql, le .Arx, un tuto pour se servir du logiciel et le code source en .cpp et .h. Il y a environ 70 fichier de ce type. Mais d'après l'informaticien la source est incomplète. Le fournisseur à déposé le bilan avant la fin du projet. Le projet devait justement nous permettre de mettre a jour facilement l'esquisse IPN... Bref tout ça pour dire que l'informaticien doit en parler au patron. Donc à suivre.
-
Bonjour nomutt. Je pensais pas que quelqu'un me répondrai aussi vite. Finalement je me suis bien expliqué. J'ai regardé ton site web. Effectivement, je pense que tu as la solution, vu les prestations... Pour ce qui est du code source, je pense que c'est possible. Il faut que j'en parle à ma hiérarchie. Je suis simple utilisateur en B.E.. Le service informatique n'acceptera peut-être pas. Malheureusement, je ne pense pas que la boite ou je bosse soit intérresser pour investir dans une modif de code source :mad: . Et je ne pense pas que tu le fasse gratuitement. Désolé. Il va falloir que je me débrouille. C'est compliqué à modifier ? Le code source ? C'est du C+ compilé en ARX ?
-
Bonjour à tous ! Voilà maintenant 2 ans que je travaille sur autocad mechanical et inventor 2008. L'année dernière l'entreprise dans laquelle je travaille a décidé de faire appel à un revendeur Autodesk pour nous développer un outil très spécial entre autocad et inventor. Malheureusement ce revendeur à déposer le bilan et personne ne sais quoi faire pour maintenir cette outil au gout du jour. Je viens donc chercher de l'aide ici...peut être que quelqu'un à la solution. Qui tente rien n'a rien. On ne sait jamais. L'outil est le suivant : On insert des blocs 2d autocad, on génère un 3d inventor simplement en cliquant sur une icône. (c'est magique) Comment ça marche : Chaque bloc autocad à une correspondance en inventor. La correspondance se fait grace à une table sql. Exemple : 8532113.dwg (bloc autocad) = 8532113.ipt (pièce inventor) Chaque bloc à un point d'insertion, donc une coordonnée (x,y,z) dans autocad. une fois tout les blocs placés, on génère un fichier xml. Ce même fichier sera utilisé dans inventor. Les pièces inventor conserve les coordonnées, leur orientation...etc. Jusque là, tout va bien ? Alors je continu, mais c'est là que ça se gâte, car c'est là que je souhaite intervenir. Lorsque je trace une polyligne sur autocad, dans un calque IPN, inventor me génère un balayage. Il suit la trajectoire polyligne et prend le profil de l'esquisse IPN (magique) L'esquisse trajectoire et IPN dans inventor, n'a aucune cote quand on l'édite. A l'heure actuel je souhaiterai modifier ce profil IPN, Car il à évoluer. Voilà ce que je pense, l'esquisse IPN est écrite en dur quelque part, dans une moulinette. Par des coordonnées de point et de ligne. Je ne sais pas. Peut-être ? Pas facile à expliquer, mais comme je le disais, qui tente rien, n'a rien. Est-ce que quelqu'un à une idée ? Merci de votre aide.
-
MERCI, tout marche à la perfection. Comme d'hab C'était la dernière, au revoir
-
Je me doutais que tu dirais ça... Je ne demande que ça mais, je ne trouve rien de concret sur le site. Je dirais même que trouver son bonheur la dedans, c'est pas évident....en plus je manque cruellement de temps. Il n'y a aucun tuto, j'ai trouvé le site de Reb CAO mais c'est ennuyant de devoir payer. J'aimerai aussi mais ça ne dépend pas de moi, mon patron ne fera rien dans ce sens là, même le service informatique ne serait pas y mettre du sien. Je me retrouve seul au pied du mur.... mon seul recours est ce forum, ou il y a des choses très intéressante. Dommage, tu étais mon sauveur. Je comprend que ça puisse t'ennuyer au bout d'un moment, mais pour moi c'est la solution de faciliter. Désolé. Merci encore pour ton professionnalisme et ta patience. Je m'empresse de tester ça, je te tiens au courant et je ne te dérangerai plus.
-
Salut philouie. Tu as raison, mais dans mon cas il faut que je sache en combien de segment je dois diviser ma polyligne. Je ne connais pas la longueur du segment, je sais juste qu'il doit être inférieur ou égal à 2500 mm.
-
C'est ce qu'il me semblait pour la valeur 63400, mais n'y aurait-il pas un moyen de procédé comme ça : On lance le lisp, On sélectionne la polyligne, (l'objet à diviser) et on récupère la variable longueur X On sélectionne le bloc qui sera répété. Et c'est tout ! La distance entre les blocs sera de : (+1(/X 2500)). Autre chose, par rapport a ma demande de départ je dois avoir un bloc au début de la polyligne mais aussi à la fin.
-
Bonjour Gile, petite question à quoi correspond 63400 ? Autre chose, je pense qu'il y a un petit soucis. Quand j'utilise DIV3D et que j'utilise la calculatrice en mode transparent, en tapant >>>> Expression: trunc(63400/2500)+1 il me redemande le nombre de segment comme s'il ne prenait pas en compte la calculette. Par contre la calculette marche avec le lisp DIVISER. Autre question l'expression LISP, doit être inséré en dur dans le code ? ou au moment de l'exécution du lisp ? Si cest le deuxième cas, ça ne marche pas, ni dans DIV3D, ni dans DIVISER
-
Bonjour à tous. Voilà ma demande, je ne sais pas si c'est réalisable mais bon...qui tente rien n'a rien. J'ai une polyligne 2d ouverte sur laquelle je souhaiterai insérer des blocs. (blocs identiques) Mes 2 premiers blocs seront insérer aux extrémitées de ma polyligne. Ensuite je souhaite diviser cette polyligne, en y insérant les mêmes blocs, à distance égal mais inférieur à 2500 mm. Et pour compliquer la tâche, il faut que mes blocs soit perpendiculaire à la polyligne. C'est peut être pas très clair... J'ai essayé de repartir de lisp éxistant comme celui-ci : http://cadxp.cadmag.info/modules.php?op=modload&name=XForum&file=viewthread&tid=20362#pid85057 Et aussi de MES3D et DIV3D de Gile, mais le principe est complètement différent. Si quelqu'un à une idée, je suis preneur. Merci d'avance
-
C''est nickel, c'est exactement ce que je voulais. Mille fois merci. Tu viens de me faire gagner un temps précieux. @+
