Functions to help you enter map objects

PMS_MD to place itself in the right Layer, the right color etc.

It is of the Form: PMS_MD What Value Value...;

Example: PMS_MD TCL MYTLINE 5 MYLAYERWe
place in the current line type MYTLINE in the current color 5 and in the layer MYLAYER.
If MYLAYER or MYTLINE did not exist, it would be created.


PMS_INSERT to insert a Symbol.

This function allows an intelligent insertion of symbols in 1 pin, 2 point or 3 point mode with automatic orientation.
For orientation, this command is associated with the Auto lisp function (pms_ORI).
It is of the form :
PMS_INSERT Options NameBlock Parameters

Example
:*^C^CPMS_MD LC L_EDF 1 (PMS_INSERT) 0 1EDF_MTEst
the typical example of what you can associate to one of the MMTOUCH box to enter in loop the Symbol P_EDF.
PMS_INSERT is an Autolisp function (C:PMS_INSERT)
On other box, you put the commands :
(pms_ORI "D") >> to pass in Dynamic Bearing mode(pms_ORI "F") >>
to pass in Fixed Bearing mode(pms_ORI) >> To change the
defaultbearing.


*^C^CPMS_MD LC L_EDF 1 (PMS_INSERT) 3 3EDF_HTEst
interesting to insert a 3 Point Symbol


PMS_TEXTE to start the input of a Text dynamically.

This function allows you to enter TEXT objects dynamically.
It replaces the TEXT command in Autocad. It starts by asking for the text. This allows you to place it dynamically.

Examples:

*^C^CPMS_MD LYJH Topo4Divers WORKING BC 2.0 PMS_TEXTE
: Enter a text and place it in the style 'WORKING', Justified 'LowCenter', of Height 2.0m

*^C^CPMS_MD YJH WORKING BD (* 0.2 INSSCALE) PMS_TEXTE ("My Predefined Text")
: Place 'My Predefined Text' in 'BottomRight' with a height depending on the scale. The text to be placed is put in Lisp form, between parethese and quotation marks. It can thus contain spaces and allows to complete the command line if necessary.

*^C^CPMS_MD Y ALTI PMS_TEXTE Threshold=#Z.3 Meters
: Predefined text containing the altitude of the insertion point. Useful for placing a threshold text for example.
#Z.3' is a keyword meaning to replace '#Z.3' by the altitude of the text insertion point rounded to 3 decimal places.


PMS_POLY to start entering a PMS3DPOLY.

This function allows the input of PMS3DPOLY objects. They are similar to the LWPOLY but allow, among other things, the possibility to put an altitude at each vertex.
Within the framework of the photogrammetry, the LWPOLY have the interest to be able to work with light polylines which preserve the Arcs, the Z the Widths and the Heights.
You will be able at any time to convert them into 3DPOLY or LWPOLY according to the needs of the final customer.

See PMS3DPOLY documentation for more information.

Example
:*^C^CPMS_MD LT L_EDF LEDF_MT PMS_POLYEis
the typical example of what can be associated with one of the MMTOUCH boxes to enter a loop of a 3D low voltage Edf line.


PMS_ORI D or F to define the current symbol insertion angle.

This function allows the definition of a current angle of insertion of symbols or Texts (PMS_INSERT or PMS_TEXTE commands) on (0) points.
(PMS_ORI "D") or PMS_ORI D command : You switch to the dynamic bearing input mode.
(PMS_ORI "F") or command PMS_ORI F : You pass in mode entry of Fixed bearing.
(PMS_ORI) or command PMS_ORI :To change the current bearing.
It is interesting to put these three functions on your MMTOUCH if you have one.


(PMS_MMTOUCH FileNameMMTouch SectionName to change the MMTOUCH menu.

This function allows you to work with several MMTOUCH menus.
This makes it easy to change menus depending on the current folder.
In some cases, it allows to work with several Menu Sheets.
In this last case, it is interesting to put a MMTOUCH box to change the menu for each of them in order to switch very easily.
It is necessary to know that for each MMTOUCH box declared in the file, there is first a search in the file ...MMTOUCH.INI then, if nothing found, search in ..MMTOUCH.DEF.
These parameters of the last menu are kept in the current DWG.
The default menu is declared in PMS3D.(INI/DEF)[ACAD], Variable MENUMMTOUCH=MenuMMTOUCH,MMTOUCHIf
nothing is declared, we take by default MENUMMTOUCH=MenuMMTOUCH,MMTOUCH


Input/Modification of XDATA in PMS3D Application. (command : PMS_XDATA and PMS_XDATAP)
These commands allow to enter and modify XDATA on a selection of entities.
These XDATA are in the application "PMS3D" and are of the form NAME=Value.
The Value can contain several parameters, they are separated by ',' and of the form ,Param1=Value Parametre1,Param2=Value Parametre2PMS_XDATA
Allows to create/replace/delete/List an XDATAPMS_XDATAP
Allows to modify the parameters of an already existing XDATA.

PMS_XDATA ?: Lists the XdataPMS_XDATA
NOMXDT=: Deletes all Xdata named NOMXDTPMS_XDATA
-: Deletes all Xdata concerning PMSPMS_XDATA
("NOMXDT=My value"): Creates or replaces the XDATA NOMDXT .

For example, to define a Hatch pattern on a Closed PMS3DPOLY, the XDATA: "*H=D!NomHATCH,c=18,d=8" means:
It is possible to assign an XDATA during the input of a PMS3DPOLY by the _XD option.
Other predefined XDATA names can be defined later

View the XDATA of one or more entities. (command : PMS_LISTXDATA)
These commands allow to list the XDATA of entities.
In the case of a selection, only the entities having XDATA are listed.

Hatch assignment on a PMS_POLY


It is possible to hatch PMS3DPOLY. This hatching does not load the DWG, it is intrinsic to the PMS3DPOLY itself.
The hatching command on a selection of entities is of the form:
Command: 'PMS_XDATA *H=P!NameHATCH,c=18,d=8The
hatching command during the input of a PMS3DPOLY is of the form:
Command:PMS_POLY _XD *H=P!NameHATCH,c=18,d=8

The Attributes of this Hash command "*H" are:

Entered according to a reference entity. (command : pms_AS)
This command allows to launch the input in loop of an element similar to an already existing element.
The input of a new entity starts with the same properties as the reference element. The
current properties take the values of the entity in reference

Level curves.

Two possibilities to enter the level curves. They are placed in the boxes C.Level and C.NPms of the basic palette, Drawing section
  1. By calling the PMS_ELEV function to position oneself at an elevation to be entered and by starting an Autocad PLINE (LWPOLY
    )Command:*^C^CPMS_MD LTC CNALTI CNMAITRE 1 PMS_CONTINU 2 _PLINE 'PMS_ELEV
  2. By means of the PMS_POLY function followed by arguments _Forme CNiveau.
    This last method has the advantage of smoothing the contour lines in real time.
    Command:*^C^CPMS_MD LTC CNALTI CNMAITRE 1 PMS_CONTINU 2 PMS_POLY _F _CL
The command: PMS_CONTINU 2 allows to start the freehand mode, if the smoothing parameters (min, max and tube distances are defined).

Entering Dimensional Points.

Example command: *^C^CPMS_MD LC PALTI 1 PMS_INSERT 0
1COTENBlock 1COTEN has the characteristic of containing an ATTDEF (Attribute) with name "ALTI".
The insertion function PMS_INSERT automatically updates this "ALTI" Attribute by setting it to the Z value of the corresponding insert.
All attributes beginning with "ALTI" are treated in this way. The default text of this attribute defines the formatting of this altitude.
For example, the default value could be SOL:0.000 meters. An altitude of 12.4567 will give the value "SOL:12.457 meters" to this attribute.

It is also possible to use the "PMS_UPDALTI" function to update already entered Texts or Attributes.
This function is applied after the input. It has the advantage of being able to match a text to its insertion altitude.

Export entities to EXCEL (.csv file).

With this command, you can export Autocad entities to EXCEL type tables.
The autodesk command '_DATAEXTRACTION' is similar to this one, more complex but with other possibilities.
After selecting the entities to export, you need to know what to export and in which column.
For this, you have to provide a comma separated list of fields. Each field corresponds to an EXCEL column.
The list of possible fields is as follows:

Join linear elements (PMS_JOINT).

The 'PMS_JOINT' command allows you to join a whole series of linear elements as long as they respect the Join criteria.
Press [ENTER] at the selection request to access the parameters.
These join criteria are defined by a series of letters, each imposing a criterion.
The letters correspond to: : The Nodes are checked. : Smoothing of the result polyline (the arcs pass in dynamic smoothing and are then smoothed) A tolerance of joint is parameterizable

Cut linear elements on thresholds (PMS_CUT).

The 'PMS_CUT' command allows you to cut a series of linear elements selected on a threshold selection.
Useful to cut elements intersecting a frame for example.
You first select the elements to be cut (linear elements)
You then select your thresholds (linear elements)
The thresholds are automatically excluded from the elements to be cut
There is a cut of the elements to be cut where they intersect the thresholds






Insert points at the intersection of linear elements on thresholds (PMS_CUTINS).

The 'PMS_CUTINS' command allows you to insert points at the intersection of linear elements on a selection of thresholds.
Useful to add points that can be stretched later. Future corner of Network Elements, stretch linear on non-existent point.
You select the elements where you have to insert points (linear elements)
You then select the thresholds (linear elements)
The thresholds are automatically excluded from the elements to be treated
There is creation of vertex wherever there is intersection with the thresholds.

Updates the attributes of the selected Symbols (PMS_UPDALTI)

These attributes must have a name beginning with "ALTI"

Draw the polygon of the current selection ('PMS_DPSEL)

When selecting by lasso (capture or window), this function draws the current selection polygon.
This polygon or rectangle can then be reused with the "PMS_PSEL" command (CP or FP)

Select according to an existing polygon in the drawing('PMS_PSEL)

Use an existing polygon in the drawing to select entities by capture or window.
The interest is that this polygon can be useful for other functions or be used several times.
Useful for selecting entities in a specific area of a drawing.

Archiving an interesting selection (PMS_SETSEL)

Command: PMS_SETSEL 1 To archive selection No 1 and create the variable PMS_SS01This
function allows you to associate a selection set with a No or
variableThe Lisp variable "PMS_SS01" is associated with selection No 1 and is retrieved by !
PMS_SS01This selection can be reused as often as you like by replying to any selection request !PMS_SS01

Zooming in on the elements of a selection archived by PMS_ZOOMSEL

Command: PMS_ZOOMSEL 1 To scroll through the items in the selection PMS_SS01This
function allows you to zoom in on each item in a selection registered by 'PMS_SETSEL'.
During scrolling, there are the options:
Zone Selection According to Entity

For example:
Command: *^C^CPMS_SELPXREF PMS_MD L _z_BATI PMS_POLY\ After selecting an entity, the new PmsPoly will be placed in the same area as this oneInteresting
to enter PXREF outlines for exampleAfter
this function, the current area is the one of the selected entity


Assignment of PMS3D specific variables (PMS_SETVAR)

For example command: PMS_SETVAR POLY_FLECHE_MAX=0.01|DWG_VERSION=16.0 has
the following features:
POLY_FLECHE_MAX=0.01 : When transforming arcs into 3d segments, the maximum allowed deflection is 0.01 metreDWG_VERSION=16
.0 : The save version is in V2000

The variables are: