Fonctions d'aide à la saisie d'objets cartographiques
PMS_MD pour se placer dans le bon Calque, la bonne couleur etc.
Elle est de la Forme: PMS_MD Quoi Valeur Valeur...;
- Quoi = suite de lettres définissant les Valeurs.. qui suivent.:
- T Pour la demande du Type de Ligne courant
- C pour la demande de la couleur courante
- L pour la demande du layer courant. Si le début est _z_MyLayer alors, _z_ sera remplacé par la Zone Courante. On Obtiendra ZCourante$MyLayer
- S Pour la demande de l'échelle courante des Type de ligne sur les LWPOLY ou les PMS3DPOLY
- W Pour la propriété 'CELWEIGHT' ; épaisseur de ligne(en mm)
- I Pour l'échelle par défaut de l'insersion des Symboles. Variable Autolisp: 'INSSCALE'.
- Y Pour Changer le style de Texte par défaut (création si innexistant). Si 'Hauteur' définie, alors HTexte = Hauteur * !INSSCALE.
- J Pour Changer la Justification des Textes Par défaut. Utilisé par la commande PMS_TEXTE
- H Pour Changer la Hauteur des textes par défaut (cas des styles sans Hauteur définie). On peut mettre une hauteur du type (* 0.2 INSSCALE) pour prendre en compte une échelle
- Valeurs : Réponse relatives aux lettres vues ci-avant.
Exemple: PMS_MD TCL MYTLINE 5 MYLAYER
Nous place dans le type de ligne courant MYTLINE dans la couleur courante 5 et
dans le calque MYLAYER.
Si MYLAYER ou MYTLINE n'existait pas, il serait créé.
PMS_INSERT pour insérer un Symbole.
Cette fonction permet une insertion intelligente de symboles en mode 1 pin, 2
points ou 3 points avec une automatisation des orientations.
Pour l'orientation, cette commande est associée à la fonction Auto lisp (pms_ORI).
Elle est de la forme :
PMS_INSERT Options NomBlock Paramètres
- Options :
- 0 ou 1 ou 2 ou 3 selon que l'on veut un symbole sur 1,2 ou trois Points.
Le cas du 0 point est intéressant pour l'insertion d'un symbole sur 1 Point en mode dynamique ou avec gisement constant
- X[Valeur] si l'on veut demander ou définir une échelle en X
- Y[Valeur] si l'on veut demander ou définir une échelle en Y
- G[Valeur] si l'on veut demander ou définir un Gisement
- S Pour imposer une saisie en mode spatial (plan passant par 3
points à saisir)
- NomBlock:
- Nom du Block à insérer. S'il n'existe pas, on le cherche dans le
répertoire PMS3D\Block_Insert\*.DWG. Si encore rien on le crée.
- Paramètres:
- Liste de valeurs permettant de valider les lettres relatives aux
options demandées.
Exemple:
*^C^CPMS_MD LC L_EDF 1 (PMS_INSERT) 0 1EDF_MT
Est l'exemple type de ce que l'on
peut associer à une des case du MMTOUCH pour saisir en boucle le Symbole P_EDF.
PMS_INSERT est une fonction Autolisp (C:PMS_INSERT)
Sur d'autre case, vous mettez les commande :
(pms_ORI "D") >> pour passer en mode Gisement Dynamique
(pms_ORI "F") >> pour
passer en mode Gisement Fixe
(pms_ORI) >> Pour changer de gisement par défaut.
*^C^CPMS_MD LC L_EDF 1 (PMS_INSERT) 3 3EDF_HT
Est intéressant pour insérer un Symbole sur 3 Points
PMS_TEXTE pour lancer la saisie d'un Texte de façon dynamique.
Cette fonction permet la saisie d'objets TEXTE de façon dynamique.
EIle remplace la commande TEXTE d'Autocad. Elle commence par demander le texte. On peut ainsi le placer de façon dynamique.
Exemples:
*^C^CPMS_MD LYJH Topo4Divers WORKING BC 2.0 PMS_TEXTE
: Saisir un texte et le placer dans le style 'WORKING', Justifié 'BasCentre', de Hauteur 2.0m
*^C^CPMS_MD YJH WORKING BD (* 0.2 INSSCALE) PMS_TEXTE ("Mon Texte Prédéfini")
: Placer 'Mon Texte Prédéfini' en 'BasDroit' avec une hauteur dépendant de l'échelle.
Le texte à placer est mis sous forme Lisp, entre parethese et entre guillemets. Il peut ainsi contenir de espaces et permet de compéter la ligne de commande si nécessaire.
*^C^CPMS_MD Y ALTI PMS_TEXTE Seuil=#Z.3 Mètres
: Texte prédéfini contenant l'altitude du point d'insersion. Utile pour placer un texte de seuille par exemple.
'#Z.3' est un mot clé signifiant remplacer '#Z.3' par l'altitude du Point d'insertion du texte arrondie à 3 décimales.
PMS_POLY pour lancer la saisie d'une PMS3DPOLY.
Cette fonction permet la saisie d'objets PMS3DPOLY.
Il sont similaires aux LWPOLY mais laissent entre autre la possibilité de mettre une altitude à chaque sommet de vertex.
Dans le cadre de la photogrammétrie, les LWPOLY ont l'intérêt de pouvoir travailler avec des polylignes légères qui conservent les Arcs, les Z les Largeurs et les Hauteurs.
Vous pourrez à tout moment les convertir en 3DPOLY ou en LWPOLY selon le besoins du client final.
Voir la documentation des PMS3DPOLY pour plus d'informations.
Exemple:
*^C^CPMS_MD LT L_EDF LEDF_MT PMS_POLY
Est l'exemple type de ce que l'on
peut associer à une des case du MMTOUCH pour saisir en boucle d'une ligne Edf
Basse Tension en 3D.
PMS_ORI D ou F pour definir l'angle courant d'insertion des symboles.
Cette fonction permet la définition d'un angle courant d'insersion de symboles ou de Textes (Commandes PMS_INSERT ou PMS_TEXTE)
sur (0) points.
(PMS_ORI "D") ou commande PMS_ORI D :Vous passe en mode saisie gisement dynamique.
(PMS_ORI "F") ou commande PMS_ORI F :Vous passe en mode saisie gisement Fixe.
(PMS_ORI) ou commande PMS_ORI :Pour changer de gisement Courant.
Il est intéressant de mettre ces trois fonctions sur votre MMTOUCH si vous en avez un.
(PMS_MMTOUCH NomFichierMMTouch NomSection pour changer de menu MMTOUCH.
Cette fonction permet de travailler avec plusieurs menus MMTOUCH.
Cela permet de changer de menu facilement en fonction du dossier courant.
Dans certains cas, cela permet de travailler avec plusieurs Feuilles de Menu.
Dans ce dernier cas, Il est intéressant de mettre une case MMTOUCH de changement de menu pour chacun d'eux de
façon à basculer très facilement.
Il faut savoir que pour chaque case MMTOUCH déclarée dans le fichier, il y a
d'abord une recherche dans le fichier ...MMTOUCH.INI puis, si rien trouvé, recherche en ..MMTOUCH.DEF.
C'est paramètres du dernier menu, sont conservés dans le DWG Courant.
Le menu par défaut est déclaré dans PMS3D.(INI/DEF)[ACAD], Variable MENUMMTOUCH=MenuMMTOUCH,MMTOUCH
Si rien n'est déclaré, on prend par défaut MENUMMTOUCH=MenuMMTOUCH,MMTOUCH
Saisie/Modification de XDATA en Application PMS3D. (command : PMS_XDATA et PMS_XDATAP)
Ces commandes permettent de Saisir et modifier des XDATA sur une sélection d'entités.
Ces XDATA se trouvent dans l'application "PMS3D" et sont de la forme NOM=Valeur.
La Valeur peut contenir plusieurs paramètres, ils sont séparés par des ',' et de la forme ,Param1=Valeur Parametre1,Param2=Valeur Parametre2
PMS_XDATA Permet de créer/remplacer/supprimer/Lister un XDATA
PMS_XDATAP Permet de modifier les paramètres d'un XDATA déja existant.
PMS_XDATA ? : Liste les Xdata
PMS_XDATA NOMXDT= : Efface tous les Xdata nommés NOMXDT
PMS_XDATA - : Efface tous les Xdata concernant PMS
PMS_XDATA ("NOMXDT=Ma valeure") : Crée ou remplace le XDATA NOMDXT .
Par exemple, pour définir un motif de Hachure sur une PMS3DPOLY Fermée, le XDATA : "*H=D!NomHATCH,c=18,d=8" signifie :
- *H= : Nom de XDATA Interprété par le programme de Hachurage.
- D! : Motif défini par l'utilisateur. (1er parametre)
- c=18 : Couleur No 18.(2ème paramètre)
- d=8 : Distance de 8 unités entre Hachures.
Il est possible d'affecter un XDATA en cours de saisie d'une PMS3DPOLY par l'option _XD.
D'autres noms de XDATA prédéfinis pourront être définis ultérieurement
Visualisation des XDATA d'une ou plusieurs entités. (command : PMS_LISTXDATA)
Ces commandes permettent de lister les XDATA des entités.
Dans le cas d'une sélection, seulles les entités ayant des XDATA sont listées.
Affectation de hachurage sur une PMS_POLY
Il est possible d'hachurer les PMS3DPOLY. Cet Hachurage ne charge pas le DWG, il est intrinsèque à la PMS3DPOLY elle même.
La commande de hachurage sur une sélection d'entités est de la forme :
Commande: 'PMS_XDATA *H=P!NomHATCH,c=18,d=8
La commande de hachurage en cours de saisie d'une PMS3DPOLY est de la forme :
Commande:PMS_POLY _XD *H=P!NomHATCH,c=18,d=8
Les Attributs de cette commande de Hachurage "*H" sont :
- *H= : Nom de XDATA Interprété par le programme de Hachurage.
- D! : Motif défini par l'utilisateur (User Defined).
- P!NomHatch : Motif prédéfini de nom "NomHatch" (Prédefined).
- C!NomHatch : Motif personalisé de nom "NomHatch" (CUSTOM).
- c=18 : Couleur No 18.
- l=HLAYER : Layer des Hachures.
- t=HTLINE : Type de ligne des Hachures.
- s=2 : Echelle de Hachure (SCALE).
- a=50 : Angle de 50 grades.
- d=8 : Distance de 8 unités entre Hachures.
Saisie selon une entité de référence. (command : pms_AS)
Cette commande permet de lancer la saisie en boucle d'un élément similaire a un élément
déjà existant.
La saisie d'une nouvelle entité démarre avec les mêmes propriétés que l'élément de référence
Les propriétés courantes prennent les valeurs de l'entité en référence
Courbes de Niveau.
Deux posssibilités pour saisir les courbes de Niveau.
Elle sont misent dans les cases C.Niveau et C.NPms de la palette de base, Rubrique dessin.
- En appelant la fonction PMS_ELEV pour se placer à une élévation à saisir
et en démarant une PLINE Autocad (LWPOLY)
Commande:*^C^CPMS_MD LTC CNALTI
CNMAITRE 1 PMS_CONTINU 2 _PLINE 'PMS_ELEV
- Par l'intermédiaire de la fonction PMS_POLY suivie de arguments _Forme
CNiveau.
Cette dernière méthode à l'avantage de lisser les courbes de
niveau en temps réel.
Commande:*^C^CPMS_MD LTC CNALTI CNMAITRE 1
PMS_CONTINU 2 PMS_POLY _F _CL
La commande : PMS_CONTINU 2 permet d'enclencher le mode main levée, si auparavant les paramètres de lissage (Distances mini, maxi et tube sont définies).
Saisie de Points cotés.
Exemple de commande : *^C^CPMS_MD LC PALTI 1 PMS_INSERT 0 1COTEN
Le Bloc 1COTEN a la caractéristique de contenir un ATTDEF (Attribut) de nom "ALTI".
La fonction d'insertion PMS_INSERT met automatiquement à jour ces Attribut "ALTI" en lui mettant la valeure Z de l'insert correspondant.
Tous les attributs commencant par "ALTI" sont traités de cette façon. Le texte par défaut de cet attribut défini le formatage de cette altitude.
On peut par exemple mettre en valeur par défaut : SOL:0.000 mètres. Une altitude de 12.4567 donnera la valeur "SOL:12.457 mètres" à cet attribut.
Il est également possible d'utiliser la fonction "PMS_UPDALTI" pour mettre à jour des Textes ou de Attribut déja saisis.
Cette fonction s'applique après la saisie. Elle a l'avantage de pouvoir faire corresponde un texte à son altitude d'inssertion.
Export entités vers EXCEL (fichier .csv).
Grace à cette commande, vous pouvez exporter des entités Autocad en tableau de type EXCEL.
La commande autodesk '_DATAEXTRACTION' est similaire à celle ci, plus complexe mais avec d'autres possibilités.
Après avoir sélectionner les entités à exporter, vous devez sair ce qu'il faut exporter et dans quelle colonne.
Pour cela, vous devez fournir une liste de champs séparés par des virgules. Chaque champ correspondant à une colonne EXCEL.
La liste des champ possible est la suivante :
- I : Index,No de ligne du tableau
- DXF: Nom DXF de l'entité (LINE,POLYLINE...)
- X,Y,Z : Coordonnées X,Y,Z du point d'insersion dans 3 colonnes.
- TL: Type de ligne de l'entité
- LA: Layer,Claque de l'entité
- XD:NOMXDATA: Valeur de l'attribut PMS3D de nom NOMXDATA
- BN: Nom de Bloc (pour les entités INSERT)
- EX: Echelle X (pour les entités INSERT)
- EY: Echelle Y (pour les entités INSERT)
- EZ: Echelle Z (pour les entités INSERT)
- G: Gisement=Orientation (pour les entités INSERT)
- TA:ATTNAME: Teste d'attribut nommé ATTNAME (pour les entités INSERT)
- XA:ATTNAME: X de l'attribut nommé ATTNAME (pour les entités INSERT)
- YA:ATTNAME: Y de l'attribut nommé ATTNAME (pour les entités INSERT)
- ZA:ATTNAME: Z de l'attribut nommé ATTNAME (pour les entités INSERT)
- T: Texte (pour les entités TEXT)
- V: Liste des coordonnées de toute entité multi points (PMS3DPOLY,POLYLINE....)
Joindre des éléments linéaires (PMS_JOINT).
La Commande 'PMS_JOINT' permet de joindre toute une série d'éléments linéaires pourvu qu'ils respectent les critères de Jointure.
Faire [ENTER] à la demande de selection pour accéder aux paramètres.
Ces critères de jointure sont définis par une suite de lettre, chacune imposant un critère.
Les lettres corespondent à :
- 'C' : La couleur des éléments doit correspondre
- 'T' : Le type de ligne des éléments doit correspondre
- 'W' : Le Thickness (épaisseur) des éléments doit correspondre
- 'L' : Le niveau (LAYER), des éléments doit correspondre
- 'X' : Les éléments joint doivent être dans le même XREF
- '3' : Le test de proximité pour joindre se fait en XYZ
- 'N' : On vérifie les Noeud. Si plus de 2 lignes partent d'un point, Alors on ne joint pas.
- 'D' : On ne joind pas les entités mais on déplace les extrémités des linéaires pour qu'ils se raccordent.
- 'S' : Lissage de la polyligne résultat (les arcs passent en lissage dynamique et sont alors lissés)
Une tolérance de jointure est paramétrable.
Couper des éléments linéaires sur des seuils (PMS_CUT).
La Commande 'PMS_CUT' permet de couper une série d'éléments linéaires sélectionnés sur une sélection de seuils.
Utile pour couper les éléments intersectant un cadre par exemple.
Vous sélectionez dabord les éléments à couper (des éléments linéaires)
Vous sélectionez ensuite vos seuils (des éléments linéaires)
Les seuils sont automatiquement exclus des éléments à couper
Il y a coupure des éléments à couper là où il intersectent les seuils.
Inserer des points à l'intersection d'éléments linéaires sur des seuils (PMS_CUTINS).
La Commande 'PMS_CUTINS' permet d'Inserer des points à l'intersection d'éléments linéaires sur une sélection de seuils.
Utile pour ajouter des points que l'on pourra étirer par la suite. Angle futur d'Eléments de reseau, étirer linéaire sur point non existant.
Vous sélectionez les éléments où vous devez insérer des points (des éléments linéaires)
Vous sélectionez ensuite les seuils (des éléments linéaires)
Les seuils sont automatiquement exclus des éléments à traiter
Il y a création de sommet partout ou il y a intersection avec les seuils.
Met à jour les attributs des
Symboles sélectionnés (PMS_UPDALTI)
Ces attributs doivent avoir un nom commençant par "ALTI"
Dessiner le polygone de la sélection courante ('PMS_DPSEL)
L'lorsque l'on sélectionne par lasso (capture ou fenêtre), cette fonction dessine le polygone courant de sélection.
On peut alors par la suite réutiliser ce polygone ou rectangle de sélection
grâce au commandes "PMS_PSEL" (CP ou FP)
Sélectionner selon un polygone existant dans le dessin('PMS_PSEL)
Utiliser un polygone existant dans le dessin pour sélectionner des entités par capture ou fenêtre.
L'intérêt est que ce polygone de peut être utile à d'autres fonctions ou être utilisé plusieurs fois.
Utile pour sélectionner des entités d'une zone spécifique d'un dessin.
Archivage d'une sélection intéressante(PMS_SETSEL)
Command: PMS_SETSEL 1 >> Pour archiver la sélection No 1 et créer la variable PMS_SS01
Cette fonction permet d'associer un jeu de sélection à un No ou variable
A la sélection No 1 est associée la variable Lisp : "PMS_SS01" que l'on récupère par !PMS_SS01
On peut réutiliser cette sélection à volonté en répondant !PMS_SS01 à toute demande sélection
Zoom sur les éléments d'une sélection archivée par PMS_ZOOMSEL
Command: PMS_ZOOMSEL 1 >> Pour faire dérouler les éléments de la sélection PMS_SS01
Cette fonction permet de zoomer sur chaque élément d'une sélection enregistrée par 'PMS_SETSEL'.
Pendant le déroulement, il y a les options :
- - pour Inverser le sens du défilement
- / pour enlever l'entité en cour de la liste
- . Pour effacer l'entité
d' Autocad
- C pour se mettre en mode Zoom Centre sans adapter l'échelle du Zoom
- E pour se mettre en mode Zoom Centre avec adaptation de l'échelle
pour que l'entité figure à l'écran
- [Enter] pour passer à l'entité suivante
Choix de Zone Selon Entité
Par exemple :
Command: *^C^CPMS_SELPXREF PMS_MD L _z_BATI PMS_POLY\ >> Après sélection d'une
entité, la nouvelle PmsPoly sera placée dans la même zone que celle-ci
Intéressant pour saisir des contours de PXREF par exemple
Après cette fonction, la zone courante est celle de l'entité sélectionnée
Affectation de variables Spécifiques PMS3D (PMS_SETVAR)
Par exemple commande: PMS_SETVAR POLY_FLECHE_MAX=0.01|DWG_VERSION=16.0
a les fonctionnalités suivantes :
POLY_FLECHE_MAX=0.01 : Lors de la transformation des arcs en segments 3d, la flèche maximum autorisée est de 0.01 metre
DWG_VERSION=16.0 : La version de sauvegarde est en V2000
Les variables sont :
- DWG_VERSION: On met la version DXF/DXG par défaut (negatif pour forcer en DXF).
15 pour le save DWG ( V2000 );-15 pour le save DXF ( V2000 );
16 pour la 2004;17=V2007-2009;18=V2010-2012;19=V2013-2014;22=V2018
- POLY_FLECHE_MAX: Fleche maxi pour conversion Arcs en Lignes (PMSPOLY >> 3D POLY)
- PXref_Save_Flag: Conversion PMS3DPOLY en :1=Auto;2=LWPOLY;3=3DPOLY;4=Decompose ; +8: Met Alti à 0