Jump to content
Sign in to follow this  
Atom_Monky

Terrain Builder - Fast Roads/Shapes export script

Recommended Posts

Hi,
i made a small AutoHotkey Script for faster updating my roads in bulldozer while editing the polyline.
It just presses the hotkeys in the right order to save the  shapes document, and opens buldozer when its aktiv.


How To Use:
Ctrl + 1 : Auto export and BD refresh
Ctrl + 2: Switch between BD and TB
F6: Kill the script

 


Requirements :
AutoHotkey:  https://www.autohotkey.com
Buldozer Tools:


How To Install:
(1) Create a file called "Script.ahk"
(2) Paste the code in it.
(3) Run the file as admin.

code:
 

Spoiler

 


SendMode Input
If not A_IsAdmin
{
Run *RunAs "%A_ScriptFullPath%"
ExitApp
}

; Adust this value ( 100 ) to the sleep beteewn each action in ms
FuncMainSleep() {  
    sleep, 100
}

FuncSleep() {
	sleep, 100
}

^$B::
ReloadAllAhkScripts()
Return

;;;;; ctr + 1
^$1::
	SoundBeep, 500, 500
	WinActivate, Terrain Builder
	WinWaitActive, Terrain Builder
	FuncMainSleep()
	SendInput  {LAlt down}
	FuncSleep()
	SendInput  {LAlt up}
	FuncMainSleep()
	SendInput  {enter down}
	FuncSleep()
	SendInput  {enter up}
	FuncMainSleep()
	SendInput  {up down}
	FuncSleep()
	SendInput  {up up}
	FuncMainSleep()
	SendInput  {up down}
	FuncSleep()
	SendInput  {up up}
	FuncMainSleep()
	SendInput  {enter down}
	FuncSleep()
	SendInput  {enter up}
	FuncMainSleep()
	SendInput  {down down}
	FuncSleep()
	SendInput  {down up}
	FuncMainSleep()
	SendInput  {enter down}
	FuncSleep()
	SendInput  {enter up}
	FuncMainSleep()
	Control, Check, , Current, Export shapes to shp file
	FuncMainSleep()
	SendInput  {enter down}
	FuncSleep()
	SendInput  {enter up}
	FuncMainSleep()
	SendInput  {enter down}
	FuncSleep()
	SendInput  {enter up}
	FuncMainSleep()
	SoundBeep, 500, 500
	if WinExist("Buldozer") {
		WinActivate, Buldozer
		WinWaitActive, Buldozer
		FuncMainSleep()
		FuncMainSleep()
		SendInput  {enter down}
		FuncSleep()
		SendInput  {enter up}
		FuncMainSleep()
		SendInput  {1 down}
		FuncSleep()
		SendInput  {1 up}
	}
return

;;;;; ctr + 2
^$2::
	if WinActive("Terrain Builder") {
		WinActivate, Buldozer
		WinWaitActive, Buldozer
	}else{
		WinActivate, Terrain Builder
		WinWaitActive, Terrain Builder
	}
return



F6::
	msgbox, Shape Export colsed.`n beendet!
	exitapp
return

 


edit: select current layer export

Share this post


Link to post
Share on other sites

erm that exports the whole document, what about when you using other shape layers for stuff? They will all get exported as well, an if you have polygons that will mess with the roads working. Or if you have polylines that you use for TP etc, they will end up on your map as undefined roads.

 

If you use multiple layers for different roads (like most people do), you should export using selection of layers. If you keep all roads on one layer (bad idea tbh) it's best to export using active layer.

Share this post


Link to post
Share on other sites
On 4/12/2019 at 8:32 PM, RoF said:

erm that exports the whole document, what about when you using other shape layers for stuff? They will all get exported as well, an if you have polygons that will mess with the roads working. Or if you have polylines that you use for TP etc, they will end up on your map as undefined roads.

 

If you use multiple layers for different roads (like most people do), you should export using selection of layers. If you keep all roads on one layer (bad idea tbh) it's best to export using active layer.


its now includet in the script to select the current layer in the export option 

 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×