Aller au contenu

DenisHen

Membres
  • Compteur de contenus

    4 029
  • Inscription

  • Dernière visite

  • Jours gagnés

    21

Tout ce qui a été posté par DenisHen

  1. Je ne sais pas d'où vient cette erreur, De Lambert 1 -> WGS84 -> Lambert 1 : Les deux coordonnées Lambert 1 sont identiques ! ! ! Mais les coordonnées WGS84 ne sont pas bonnes... Alors comment faire ? ? ?
  2. Merci Guillaume pour ton aide, C'est bien là qu'est le problème, apparemment, cette DLL est utilisée par des millions de gens ainsi que dans un petit programme de conversion : Convers29.exe. Mais ce programme me donne des coordonnées différentes de celles de Circé, et dons, d'AutoCAD aussi... Si quelqu'un a une solution à mon vrai problème : une conversion de points de Lambert1 à WGS84 en VBA... Denis...
  3. Bonjour à la communauté, Voilà, j'ai un petit souci de transformation de coordonnées Lambert 1 vers WGS84. Dans Circé, un point X=747989,753 et Y=75616,217 (qui est en Lambert 1) est transformé en Latitude=48,36376959 et Longitude=4,33377296 en WGS84. Mais dans un tableau Excel utilisant "ConversApi.dll", cette même conversion me donne Latitude=39,41510558336010 et Longitude=4,03053199491486 J'utilise le même méridien pour les deux transformations : Greenwich. Je ne comprend pas pourquoi il y a une telle différence. Si quelqu'un a une explication ou un conseil, je suis preneur... Denis...
  4. J'ai fini pas réussir à comprendre le programme de mon prédécesseur par..."approximations successives"... Et j'ai réussi à faire ce que je voulais. BonusCad avait, une fois de plus, raison... Cette routine est bien trop spécifique pour justifier une demande à la communauté et qu'il serait inutile de la poster ici, car elle est pour un cas de figure tellement particulier que personne ne serait à même de rencontrer... Merci pour vos réponses... Denis...
  5. Merci BonusCad pour cette réponse... Effectivement, je n'arrive à rien. Je n'ai pas trouvé l'OD qui est traité dans ce code... Merci encore pour cette réponse...
  6. Cette routine (celle de mon prédécesseur) travaille effectivement sur un fichier attaché... Mais quand je la lance, je n'ai plus de message d'erreur, mais ça plante AutoCAD... GRRR, je ne sais pas trop comment je vais faire pour m'en sortir...
  7. Bonjour à tous, Effectivement BonusCad, j'avais mal compris... Peux-tu toutefois me dire, s'il te plait, ce qu'il y a dans ent = "PWLINE" ? Cp ou Wp ? Filtre ? J'ai l'impression que ce code "fouille" toutes les entités du dessin... Me trompe-je ? (Waouw : "Me trompe-je"... Comme au XIX siècle... :mellow: ) Pour ma part, j'ai récupéré ce qu'avait fait mon prédécesseur, mais je n’arrive pas à comprendre cette routine... (defun c:SupCommuneVide () (setq prefDAOTSS (ade_prefgetval "DontAddObjectsToSaveSet")) (ade_prefsetval "DontAddObjectsToSaveSet" T) (setq dwg_id (last (ade_dslist))) (setq extdwg (ade_dwgproplist dwg_id "extents")) (setq pBG (car extdwg)) (setq pHD (cadr extdwg)) (while (not (setq ssCommuneInExtents (ssget "_C" pBG pHD '((0 . "LWPOLYLINE") (8 . "Limite des communes") ) ) ) ) (setq pBG (list (- (car pBG) 10000) (- (cadr pBG) 10000))) (setq pHD (list (+ 10000 (car pHD)) (+ 10000 (cadr pHD)))) ) (setq stNomCommuneTraite "Commune-Traite") (if (not (tblsearch "layer" stNomCommuneTraite)) (command "-calque" "n" stNomCommuneTraite "") ) (setq i 0) (princ "\n") (setq ade_cmddia_before_qry (getvar "cmddia")) (setvar "cmddia" 0) (setq lstcommuneTraite nil) (repeat (sslength ssCommuneInExtents) (setq ename (ssname ssCommuneInExtents i)) (setq stNomCommune (ade_odgetfield ename "comm6" "CHAINE" 0)) (setq nbrObj 0) (ade_qryclear) (ade_qrysettype "preview") (ade_qrydefine (list "" "" "" "Location" (list "polyline" "polygon" "crossing" ename) "" ) ) (ade_qrydefine '("AND" "" "NOT" "Property" ("layer" "=" "Limite des communes") "" ) ) (setq nbrObj (ade_qryexecute)) (if (> nbrObj 0) (progn (princ (strcat "\n##Nom commune: " stNomCommune " nombre d'objets requeté: " (rtos nbrObj) ) ) (setq lstcommuneTraite (append lstcommuneTraite (list (list stNomCommune nbrObj)) ) ) (command "chprop" ename "" "ca" stNomCommuneTraite "") ) ) (setq i (1+ i)) ) (setvar "cmddia" ade_cmddia_before_qry) (setvar "clayer" "0") (setq ss2del (ssget "x" '((8 . "Commune-lim-Topo3")))) (command "_erase" ss2del "") (setq ss2del (ssget "x" '((8 . "POINT")))) (command "_erase" ss2del "") (setq ss2del (ssget "x" '((8 . "POINT-ALTITUDE")))) (command "_erase" ss2del "") (setq ss2del (ssget "x" '((8 . "POINT-NUMERO")))) (command "_erase" ss2del "") (command "zoom" "et") (ade_prefsetval "DontAddObjectsToSaveSet" prefDAOTSS) (setq stFileTxt (strcat (setq stFileDir (getvar "dwgprefix")) (setq stNetFileBaseName (vl-filename-base (getvar "dwgname") ) ) ".txt" ) ) (princ "\nGénération du fichier texte") (setq fDesc (open stFileTxt "w")) (progn (mapcar '(lambda (stNomCom) (princ stNomCom fDesc) (princ "\n" fDesc) ) lstcommuneTraite ) (princ) ) (close fDesc) (mapcar 'car lstcommuneTraite) ) Si quelqu'un pouvait me dire ce qui ne va pas dans ce code... Cette routine me répond : Peut-être cherche-t-elle un fichier attaché ? Mais ces polylignes sont maintenant dans mon DWG... Je sais, c'est super difficile de lire le code d'un autre, surtout s'il n'est pas commenté... Merci en tous cas pour vos réponses...
  8. Bonjour à tous, Lilian : exact, je fais un traitement, depuis des "points topographiques" levé par un collègue, depuis Excel en VBA. Cette routine place des blocs et les oriente selon un fichier de levé ".cod". Je ne maitrise pas l'endroit des insertions de blocs. Cette routine travaille sur l'ensemble des communes mais quelques unes sont concernées. BonusCad : un grand merci pour ton futur développement. Il serait peut-être judicieux de demander aussi à l'utilisateur dans quel calque travailler. D'autre personnes pourraient en avoir besoin... LeCrabe : c'est exactement ça... Encore merci à tous...
  9. Merci messieurs pour vos réponses, En gros, je peux avoir juste deux ou trois petits icônes dans une commune. Mais jouer avec le zoom sur l'intérieur de toutes les communes (2777) me prendrait des heures, sans compter sur d'éventuelles erreurs humaines... J'aimerai donc supprimer toutes les polylignes "vides"... Désolé lecrabe, mais c'est juste l'inverse, ne garder QUE les polylignes contenant des entités. Merci encore pour votre aide... Denis...
  10. Bonjour à tous, Voilà, j'ai un fichier dans lequel il y a 2777 polylignes représentant des contours de communes (elles sont dans le calque "LimCommune"). Après plusieurs manipulations (notamment des VBA depuis Excel) il y a quelques entités à l'intérieur de certaines communes (admettons dix) donc, à l'intérieur de dix polylignes. J'aimerai supprimer les 2767 autres polylignes restantes qui n'ont rien dans leur "contenu géographique"... Si quelqu'un a une astuce ou un conseil, je suis preneur... Et bonne année à tous... Denis...
  11. Bonjour à tous, Et mille mercis à fabcad, ça fonctionne nickel... Encore merci... Denis...
  12. Un grand salut au Décapode pour son secours... Je vais joindre mon "commune.dwg" (car là, je suis chez moi) dès lundi pour votre aide... J'avais déjà vue cette aide dans GéoRezo, mais je n'ai pas su la reproduire au boulo... On se revois lundi... Si je n'ai pas un surplus "magic" de boulo né pendant le week-end... Comme ça arrive souvent... Encore un grand merci à toi Docteur Zoidberg ;-) Denis...
  13. Bonjour à tous, Voilà, un client m'a fourni un dwg avec des limites de communes dont il s'occupe (2777 pour être précis) mais je n'ai QUE les contours. Ces contours sont des polylignes fermées qui sont associées à OD:COMMUNE dans l'attribut "Nom_Commun". J'aimerai écrire tous les noms de ces commune dans le centre géographique des polylignes concernées par l'OD... Si quelqu'un a une astuce ou un conseil, je suis preneur... Et bonne année à tous... Denis...
  14. Je pense qu'en "supprimant" l'annotativité du style de texte devrait suffire, mais je n'ai pas essayé...
  15. DenisHen

    lisp export

    J'ai du mal comprendre... Ton client ne veut rien dans l'Espace Objet ? C'est pas un peu bizarre ?
  16. Effectivement Patrick_35, j'avais oublié mais j'ai aussi ce problème avec le LiSP de (gile)... Mais en "pire"... Dans ton LiSP, les filtres apparaissent immédiatement mais ne sont pas "actifs". Dans la routine de (gile), ils n'apparaissent pas tout de suite et ne sont "actif" que si on ferme le gestionnaire des calques et qu'on l'affiche à nouveau... A+
  17. Merci Guillaume, Une erreur est survenue lors de la désinstallation, mais après réinstallation, tout fonctionne correctement... Encore merci... Denis...
  18. Merci Guillaume pour ton attention, Effectivement, j'ai bien VBA Enable d'installé
  19. Effectivement, ça ne fonctionne pas, ni depuis le LiSP, ni depuis VBA... "LAYERMANAGERSTATE" ne sert à rien pour notre problème... Désolé...
  20. Bonjour à tous, J'ai installé AutoCAD 2014 MAP AVEC le VBA. Mais lorsque je lance l'éditeur VBA depuis AutoCAD, il me dit 2 fois que VBA n'est pas installé... J'ai continuer en installant VBA Enable ("AutoCAD_2014_VBA_Enabler_English_Win_64bit_dlm.exe") obtenu sur le site d'AutoDesk. Même résultat... Si quelqu'un a une astuce ou un conseil, je suis preneur... Denis...
  21. Peut-être avec un truc comme çà : (setq old_LayerVar (getvar "LAYERMANAGERSTATE")) ...... ...... (setvar "LAYERMANAGERSTATE" 0) (setvar "LAYERMANAGERSTATE" old_LayerVar) J'ai retranscris ça vite fait depuis mes macros en VBA... Il faudrait tester... En tous cas, merci pour ton aide... Denis...
  22. DenisHen

    lisp export

    Bonjour auclyde, Si tu cherches à exporter tes présentations, c'est sans doute pour les importer ailleurs... Pourquoi ne pas les importer avec DesignCenter ?
  23. Bonjour Patrick_35, Ça fonctionne nickel... Merci... Mais il y a un truc bizarre, qui n’est certainement pas en rapport avec cette routine, mais lorsque le filtre est créé, il apparait bien dans le gestionnaire de calque mais il est inopérant. Pire, parfois ils n'apparaissent pas dans le gestionnaire de calques... Il faut changer de dessin puis revenir sur le premier DWG pour que le(s) nouveau(x) filtres soient « actif(s) »... Curieux, non ? Encore merci... Denis...
  24. Bonjour, Il me semble que c'est parce que ce style a subit des modifications sans être enregistré...
  25. Salut, Lili2006, à mon avis, copier/coller C: cd\ cd "C:\Program Files\Autodesk\AutoCAD 2016\" start /high AutoCAD.exe dans un fichier appelé AcadHight.bat puis, une fois fermé double-cliquer dessus... Stugeol, ce n'est pas "ACAD.EXE" qu'il faut lancer ? Il devrait lancer AutoCAD en version "prioritaire"...
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité