Ever wanted to know how to perform a specific operation? Ask the experts.
#61306 by jimgoodman
Fri Aug 16, 2013 12:58 pm
I have one for the alias/toolbar gurus out there.

Most survey files we receive have the spot elevations, contours, and survey points at the actual z height. This is the first step in creating a site model, using any of the several tools available in DataCAD. Occasionally, the survey file will come in "flat" or without the correct z heights.

I am trying to automate the process of changing a series of spot elevation points to the actual z height.
In order to keep track of which points have been processed, I create a layer named "3d Spot Elevations" and turn it off.

The steps I am taking are:

1 2d Edit Menu - Move (F1)
2 Move Z (S3)
3 Enter new z height.
4. Return (to accept new height)
4 To Layer (S1)
5 Select 3d Spot Elevations
6. Select the entity, point, etc.

The processed entity will be on the new layer but not displayed so I know which items have been processed.

I am trying to write an alias that will automate the first 4 steps above, but I need the routine to pause while the z height is entered.

^;^F1^F3^$^S1^

Thanks in advance for any assistance on this.
#61307 by Roger D
Fri Aug 16, 2013 1:29 pm
Extended Code
0170 ª Pause/Prompt
Will do it I Think


From a Dave G post
You can use the PAUSE character (Alt) + (0170) "ª" when defining a keyboard macro string. Inserting this character after a carat "^ª" causes the macro sequence to halt until you click or type. If the pause character is followed by text (i.e., "^ªThis is a comment"), the text will be displayed in DataCAD as a prompt. You may not use the dollar sign ($) character in comment strings.
#61310 by jimgoodman
Fri Aug 16, 2013 4:47 pm
Now that I have this working, it would be great if the macro would cycle through form one entity to the next.
Once the initial sequence is complete S0 exit is issued, S3 Move Z is highlighted. It can be selected two times to get back to a new z height.
^;^F1^F3^ªEnter Z Height^$^S1^

If the target layer is in position F2, the following sequence can be added to get to the next entity.
^F2^F1^ªSelect Entity^S0^S3^S3^

Is there a command that will cause this last sequence of the code to repeat over and over again?
#61311 by Roger D
Fri Aug 16, 2013 6:28 pm
I think there is, I once did it by calling another alias which was just a call back to the one that was running.
I'll have to dissect my alias's again.
Unless Dave G is awake, I think he told me how to do it.
#61314 by Roger D
Sat Aug 17, 2013 11:02 am
Or just look in the Reference Manaul, p45

You can use the PAUSE character (Alt) + (0170) "ª" when defining a keyboard macro string. Inserting this character after a carat "^ª" causes the macro sequence to halt until you click or type. If the pause character is followed by text (i.e., "^ªThis is a comment"), the text will be displayed in DataCAD as a prompt. You may not use the dollar sign ($) character in comment strings.

You can call a command line alias from a keyboard, toolbar, or command line alias macro sequence, allowing you to chain together existing aliases by name. To call a command line alias by name, precede the command name with the special character (Alt) + (0169) "©". For example, (B^;^F7^ªSelect entity to erase^©cp) calls the "cp" alias after going to the Erase menu and waiting for one input


I knew somehow it was the © character, but could not find the documentation until back at the keyboard today.
You might have to have it call a dummy alias that then calls your original alias.

ps. I've requested that the online Extended Command List be updated with this info.

Who is online

Users browsing this forum: No registered users and 26 guests

About DataCAD Forum

The DataCAD Forum is a FREE online community we provide to enhance your experience with DataCAD.

We hope you'll visit often to get answers, share ideas, and interact with other DataCAD users around the world.

DataCAD

Software for Architects Since 1984