Aller au contenu

fabcad

Membres
  • Compteur de contenus

    877
  • Inscription

  • Dernière visite

  • Jours gagnés

    8

Tout ce qui a été posté par fabcad

  1. fabcad

    Bd

    Bonsoir zeinot29, Un DBConnect avec AutoCAD MAP, comme cela est surprenant, AutoCAD MAP a son propre gestionnaire de base de données. il vaut mieux passer par cet outil qui se trouve dans le volet taches en faisant attention si la base de données Access est associée et connectée, puis vérifier l'existence du Gabarit de Liens (c'est la clé d e voute si je puis dire de la liaison entre un objet graphique avec son enregistrement Access). Si tu as AutoCAD seul (et non AutoCAD MAP) les champs ne s'affichent pas dans la palette des Propriétés, uniquement via DBConnect avec le gestionnaire de vues de Données. Bonsoir
  2. Bonjour Elen, En VBA, les données d'objets sont gérées si tu charges la bibliothèque de fonctions AutoCAD MAP (fichier d'extension TLB) ou tu auras les Propriétés, Méthodes et Constantes. Bonne programmation, Fabrice
  3. Bonjour à tous, Si cela intéresse, j'ai cette idée de routine qui permettrait de justifier des adresses (numéros de voies) autrement dit des (m)-textes par rapport à une limite (polyligne ou ligne). A gauche ou au-dessus de la limite alors justification Bas Centre. A droite ou en-dessous de la limite alors justification Haut-Centre. Afin d'imager mes propos et si cela peut aider : 2 4 6 8 10 12 14 16 18 20 22 24 Justification Bas-Centre ------------------------------------------------------ lwpolyligne 1 3 5 7 9 11 13 15 17 19 21 23 Justification Haut-Centre Merci pour votre aide, Fabcad[Edité le 13/6/2010 par fabcad] [Edité le 18/6/2010 par fabcad]
  4. Merci Gile, Voici mon code simplifiable j'imagine, (defun traitement_jeu_de_selection (js /) (setvar "cmdecho" 0) (setq nbr (sslength js)) (setq i 0) (while (<= i (- nbr 1)) (setq obj_acad (ssname js i)) (setq obj_vl (vlax-ename->vla-object obj_acad)) (setq obj_index (vla-get-TextString obj_vl)) (if (/= (distof obj_index) nil) (vla-put-color obj_vl acRed) (vla-put-color obj_vl acGreen) );fin if (vlax-release-object obj_vl) (setq i (+ i 1)) ); fin while );fin defun ;;;------------------------------------------------------------------------ ;; Fonction principale (defun c:NUMERIQUES () (setvar "cmdecho" 0) (vl-load-com) (setq js (ssget)) (traitement_jeu_de_selection js) (setq js nil) (prompt "\n---Créé le 08/06/2010 Par Fabrice DEMIEL---") nil ); fin c:NUMERIQUES ;;;------------------------------------------------------------------------ (prompt "\npour lancer Tapez : NUMERIQUES ") (princ) [Edité le 8/6/2010 par fabcad] [Edité le 9/6/2010 par fabcad]
  5. Bonjour à tous, je souhaiterais trier des textuels (textes et mtextes) par leur contenu, c'est a dire si l'objet textuel est un nombre alors le placer dans un calque autocad "NUMERIQUE" sinon placer l'objet soit dans son calque d'origine ou dans un calque "NON_NUMERIQUE". Ou simplement changer la couleur en rouge des textuels numériques. Ceci afin de faire un traitement sur un ensemble de textuels. Merci, Bonne journée, Fabcad [Edité le 8/6/2010 par fabcad]
  6. AutoDESK a prévu la création de ces catégories mais pas la modification ou la suppression, un peu comme les filtres de calques non aboutis. Faut que je creuse ou se trouve ces catégories. Merci des infos, Bonne soirée, Fabcad
  7. Bonjour à tous, Je cherche un moyen pour supprimer les catégories de vues, j'ai regarder dans les variables AutoCAD ainsi que dans les valeurs de la base de registre mais sans aucun résultat. J'imagine que c'est dans les dictionnaires AutoCAD mais là mes connaissances dans ces derniers sont limités. Quelqu'un aurait-il déjà été confronté à ce problème ? Merci, Fabrice
  8. Depuis un certain des sujets se répètent 2 ou trois fois dans la liste d'accueil, cela s'affiche t'il chez tous les membres. On ne sait plus a quel sujet répondre ! C'est un bug ou une fausse manpulation ? Fabcad
  9. Bonjour, si cela peut de servir de base : ; création le 03/04/1996 ; BUT : MODIFIE LES CARACTÉRISTIQUES D'UN OU PLUSIEURS TEXTES ; ********************************************************************************** (defun mod-so (js / nom_ent i chn nbr ent) (setq nbr (sslength js)) (setq i 0) (while (<= i (- nbr 1)) (setq nom_ent (ssname js i)) (setq ent (entget nom_ent)) (setq chn (cdr (assoc 1 ent))) (setq chn (strcat "%%U" chn)) (setq ent (subst (cons 1 chn) (assoc 1 ent) ent)) (entmod ent) (setq i (+ i 1)) ); fin while (setvar "cmdecho" 1) ) ; ********************************************************************************** (defun mod-su (js / nom_ent i chn nbr ent) (setq nbr (sslength js)) (setq i 0) (while (<= i (- nbr 1)) (setq nom_ent (ssname js i)) (setq ent (entget nom_ent)) (setq chn (cdr (assoc 1 ent))) (setq chn (strcat "%%o" chn)) (setq ent (subst (cons 1 chn) (assoc 1 ent) ent)) (entmod ent) (setq i (+ i 1)) ); fin while (setvar "cmdecho" 1) ) ; ********************************************************************************** (defun mod-diam (js / nom_ent i chn nbr ent) (setq nbr (sslength js)) (setq i 0) (while (<= i (- nbr 1)) (setq nom_ent (ssname js i)) (setq ent (entget nom_ent)) (setq chn (cdr (assoc 1 ent))) (setq chn (strcat "%%C " chn)) (setq ent (subst (cons 1 chn) (assoc 1 ent) ent)) (entmod ent) (setq i (+ i 1)) ); fin while (setvar "cmdecho" 1) ) ; ********************************************************************************** (defun mod-pourc (js / nom_ent i chn nbr ent) (setq nbr (sslength js)) (setq i 0) (while (<= i (- nbr 1)) (setq nom_ent (ssname js i)) (setq ent (entget nom_ent)) (setq chn (cdr (assoc 1 ent))) (setq chn (strcat "%%%" chn)) (setq ent (subst (cons 1 chn) (assoc 1 ent) ent)) (entmod ent) (setq i (+ i 1)) ); fin while (setvar "cmdecho" 1) ) ; ********************************************************************************** (defun mod-degre (js / nom_ent i chn nbr ent suf) (setq suf (getstring T "\n suffixe : ")) (setq nbr (sslength js)) (setq i 0) (while (<= i (- nbr 1)) (setq nom_ent (ssname js i)) (setq ent (entget nom_ent)) (setq chn (cdr (assoc 1 ent))) (setq chn (strcat suf "%%D" chn)) (setq ent (subst (cons 1 chn) (assoc 1 ent) ent)) (entmod ent) (setq i (+ i 1)) ); fin while (setvar "cmdecho" 1) ) ; ********************************************************************************** (defun mod-rien (js / nom_ent i chn nbr ent) (setq nbr (sslength js)) (setq i 0) (while (<= i (- nbr 1)) (setq nom_ent (ssname js i)) (setq ent (entget nom_ent)) (setq chn (cdr (assoc 1 ent))) (setq chn (substr chn 4)) (setq ent (subst (cons 1 chn) (assoc 1 ent) ent)) (entmod ent) (setq i (+ i 1)) ); fin while (setvar "cmdecho" 1) ); ********************************************************************************** ; FONCTION MAITRE (defun C:suffixe ( / chx chn ent) (setvar "cmdecho" 0) (setq filtre (list (cons 0 "TEXT"))) (setq js (ssget filtre)) (initget "Souligne Surligne Diametre Pourcent dEgre Normal") (setq chx (getkword "\n Suffixes : /Surligne/Diametre/Pourcent/dEgre/Normal : ")) (if (= chx nil) (setq chx "Souligne")) (cond ((= chx "Souligne") (mod-so js)) ((= chx "Surligne") (mod-su js)) ((= chx "Diametre") (mod-diam js)) ((= chx "Pourcent") (mod-pourc js)) ((= chx "dEgre") (mod-degre js)) ((= chx "Normal") (mod-rien js)) );fin 1 cond );fin c:mod-txt ; ********************************************************************************** ; fonction de conversion de degrés vers radian (defun dtr (a) (* pi (/ a 180.0)) ); fin defun dtr ; **********************************************************************************
  10. fabcad

    Outils SIG pour AutoCAD

    Salut Paul-Henri, Npn ce n'est pas le même utilitaire de ductisoft inc. La il y a un outil pour importer du shapefile Esri dans AutoCAD, avec liaison des objets importés avec le fichier DBF correspondant avec dbconnect, une thématique configurable et d'autres trucs. Bonne journée [Edité le 27/4/2010 par fabcad]
  11. Hello, Tu vas dans les options de MAP via la fonction _mapoptions puis dans l'onglet Volet Taches, cocher Afficher le volet Taches au démarrage. Sinon, clique sur le M pour apparaitre le menu et dans Affichage clique sur Volet Taches (c'est une bascule on/off). Ou alors sur la ligne de commande tape _mapwspace, au message ci-dessous prendre l'option Activé ou _On Volet Tâches [Activé/Désactivé] :_On Réponse de Map : Le volet Tâches est visible. Bonne journée, Fabcad [Edité le 27/4/2010 par fabcad]
  12. Bonjour à tous, A l'adresse : http://www.abcautocad.it/software_autocad.html 4 outils gratuits pour AutoCAD vraiment intéressant. A+
  13. Bonjour à tous, A l'adresse : http://www.abcautocad.it/software_autocad.html 4 outils gratuits pour AutoCAD vraiment intéressant. A+ [Edité le 16/4/2010 par fabcad]
  14. Bonjour, Afin de refaire les ordres de tracé correct (c'est un gros problème sur AutoCAD et AutoCAD MAP) il serait bien de pouvoir faire des Couper ou Copier puis Coller vers les coordonnées d'origine dans le même dessin. A+
  15. fabcad

    Filtre sur des Objects Data

    Il y a des moyens pour filtrer les objets liés avec des données d'objets ou Object Data in english spoken. 1 - Soit avec un projet et comme dessin associé ton dwg qui contient tes mpolygones et par une requête extraire les mpolygones qui correspond à tes critères de champs de table de données d'objet. 2 - Ou dans le gestionnaire d'affichage de la palette tâches d'AutoCAD MAP, faire une requête sur le dessin courant (ton dwg ouvert avec les mpolygones) qui correspond à tes critères de champs de table de données d'objet et décocher la ligne Base du dessin. Voilà, A+ [Edité le 30/3/2010 par fabcad]
  16. C'est bien, la transparence des objets est attendue depuis longtemps par les producteurs de cartes. La transparence est effective sur AutoCAD MAP mais uniquement sur les sources SIG connectées. Je souhaiterais que les objets de type Mpolygone possède aussi cette possibilité ou il faudra attendre la 2013 pour l'obtenir. Il y a un problème majeur c'est l'ordre d'affichage que ce soit dans AutoCAD ou bien dans les cartes crées par stylisation par thème et ou dans l'affichage hybride dwg avec les sources SIG stylisées et connectées. Fabrice
  17. Merci Gile, Ca fonctionne sur map 2009, Bienvenue à un nouveau map(peur) :-) Pour toute question AutoCAD MAP, n'hésite pas. Fabrice
  18. En effet la sélection fonctionne mais un message d'erreur s'affiche après. Peut-on revenir avec Command pour Décomposer le mpolygone mais en gradnat le visuallisp pour la mise à jour du calque. a+ [Edité le 9/3/2010 par fabcad]
  19. Pareil que le décapode dans un nouveau dessin, Commande: EXPL_OD ; erreur: Le serveur ActiveX a renvoyé l'erreur: nom inconnu: ActiveSelectionSet
  20. Aie Erreur dont j'ai copié collé la phrase : Commande: VL_EXPL_OD ; erreur: Le serveur ActiveX a renvoyé l'erreur: nom inconnu: ActiveSelectionSet
  21. Sacré Gile le mot de la fin pour bien rigoler. En effet, je crois qu'Autodesk devrait même te la fournir gratuitement, Je ressaie, A tout de suite, Fabrice
  22. Un message d'erreur avec la version en visual lisp : NB : J'ai enlevé la fonction COPY_OD devant le corps de la fonction expl_OD Commande: EXPL_OD ; erreur: une erreur est survenue dans la fonction *erreur*type d'argument incorrect: stringp # [Edité le 9/3/2010 par fabcad]
  23. J'ai essayé ceci mais ca ne fonctionne pas et je perds la notion de bouclage sur objet : ;; ExplodeAndCopyData ;; Décompose un objet et copie les ObjectData vers les objets résultant (defun ExplodeAndCopyData (source / copy ss n ent) (setq obj_vl_source (vlax-ename->vla-object source)) (setq calque_obj_vl_source (vla-get-Layer obj_vl_source)) (command "_.copy" source "" "" "") (setq copy (entlast)) (command "_.explode" copy) (setq ss (ssget "_P") n -1) (while (setq ent (ssname ss (setq n (1+ n)))) (copy_data source ent "All") ) (entdel source) (setq obj_vl_cible (vlax-ename->vla-object copy)) (setq calque_obj_vl_cible (vla-put-Layer calque_obj_vl_source)) (vlax-release-object obj_vl_source) (vlax-release-object obj_vl_cible) );fin defun ExplodeAndCopyData ;; EXPL_OD ;; Décompose tous les objets sélectionnés et copie les ObjectData (defun c:expl_od (/) (setvar "cmdecho" 0) (vl-load-com) (if (and (setq n -1) (setq ss (ssget))) (while (setq ent (ssname ss (setq n (1+ n)))) (ExplodeAndCopyData ent) );fin while );fin if ); fin c:expl_od
  24. Merci Gile, La routine fonctionne sur Ma MAP 3D 2009, j'ai rajouté le fichier copy_od.lsp au début de la fonction afin de ne pas recharger la fonction au démarrage. Afin de rajouter le calque d'origine en Visuallisp, faut-il ajouter deux fois la fonction (vlax-release-object obj_vl) une pour l'objet effacé et une autre pour l'objet créé ? Merci, Fabrice,
  25. Bonjour à tous, Avec AutoCAD MAP, nous avons l'objet Mpolygone (version améliorée d'une polyligne avec remplissage), il est très facile de convertir une polyligne en mpolygone en conservant les données d'objets mais le contraire n'est pas possible. Lorsqu'il n'y a pas de données d'objets, j'utilise la fonctions Décomposer AutoCAD qui transforme bien le mpolygone en lwpolyligne mais qui perd les données d'objets si précieuses. Je souhaiterais donc une fonction AutoLISP/VisualLISP, 1- la première idée qui m'est venue à l'esprit est d'utiliser la commande décomposer AutoCAD mais à quel endroit utiliser copy_od pour récupérer et copier les données d'objets. 2- recréer une lwpolyligne du mpolygone (avec la différence de géométrie des points sommets) et d'assigner les données d'objets à cet nouvel objet lwpolyligne et d'effacer son équivalent mpolygone. 3- Bien sur le tout dans une boucle afin de traiter plusieurs objets mpolygones en même temps. Merci,
×
×
  • 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é