Tuesday, 28 April 2015

Is this a joke ?

Leica TPS1200 battery cost 200 euros+vat !!!
Leica TPS1100 battery cost 180 euros+vat !!!

Leica TPS1200 RoadRunner : Bridge cross sections

I stakeout all bridges, underpasses, overpasses, gutters, ditches etc the way the pictures below show.




This is possible following the below steps...
1. creating corridors using Civil 3D
2. using custom Microsoft VisualBasic.NET 2013 DLL program running from within Civil 3D (using NETload command) to export Corridor Sections (no need for sample lines) as proper LandXML cross sections
3. using custom Microsoft VisualBasic.NET 2013 EXE program to load Civil 3D LandXML exported alignment and profile, clean it from superelevations and cross sections that might have been exported also with it and finally attach the above exported LandXML sections to a compact LandXML file
4. using Leica LandXML converter from LandXML to RoadRunner job.
 
All overpasses, underpasses, bridges, boxes, walls i staked out, for the past three years, were made this way.
 
If anyone wants to try the above methods just leave a comment and i will create a new post with links for the mentioned programs and instructions.

Thursday, 26 March 2015

Civil 3D 2014 custom subassembly : DaylightMaxOffset (no slope changes) aka TKV_LimitedDaylight

2017.01.11 link update

This subassembly is a specially designed slope to surface for cases where a max distance is set but also a constant slope is desired. Using autodesk DaylightMaxOffset slope is changing if max distance is reached. Using this one slope set from user is kept. This can be used for eg retaining walls.

DropBox link to download the subassembly

Civil 3D 2014 custom subassembly : Basic link

2017.01.11 link update

There are multiple basic links that come with Civil 3D 2014.
The one i 've made using SAC is able to use multiple ways of defining the second point.
It is also possible to use target parameters for offset and elevation for the first point.

Link to download subassembly from DropBox

Saturday, 14 March 2015

Leica RoadRunner-LandXML import

I do heavy use of autodesk Civil 3D and Leica RoadRunner 5.0 for roads, bridges, underpasses, overpasses etc.

At present time i prefer to use my programs to do the exporting from Civil 3D to LandXML.
I use the Civil 3D LandXML export only for the alignment and profiles.
Then with a program i developed i export CrossSections consisting of the points i choose in the order i set.
Finally i use another program of my own with which i join alignment and cross sections on the fly (although i can do this by hand-using a simple text editor to edit do the proper LandXML file joining)

This is just an online guide to remind me problems and tricks for future use.

1. DesignCrossSectionSurf are ignored. Only CrossSectSurf are loaded.

2. Multiple axies can exist in a single LandXML file but...
    2a. only one axis with cross sections can be loaded or else an error is reported and importing stops . Unfortunately even though a success message is displayed when importing multiple axies with only one of them containing cross sections in fact not a single cross section is loaded. Layers do exist. One for each alignment. But each layer is an empty of cross sections alignment.
    2b. user cannot select which axis to load. All of them are loaded. Each axis is set on a seperate layer mention this having in mind Carlson SurvCE way of improting LandXML.

3. Each CrossSect can have multiple CrossSectSurf . They will be represented as layers with their correspondent names. But the points will not be named with the codes mentioned in Civil 3D since CrossSectSurf format does not keep point codes. The names used are of type for example L1:3. L if left side, 1 for the first point in sequense,3 the ascending number for the layer when imported (it was loaded as the third one).

In case someone wants to preserve the point naming, since DesignCrossSectSurf are ignored, has to use Autodesk Civil 3D->Toolbox->Leica Geosystems->X-change->Export data to job.

But ALL points for each feature line checked when building corridor will be assigned. No layering takes place inside a baseline. Layering takes place only if multiple corridor and/or baselines exist.

For example if a corridor has three baselines but only the two of them were checked when building the corridor then the RoadRunner job will include those two base lines as layers with all of their points that belong to checked feature lines.
This means that point joining to lines for X-Slope will be sequential using the axis criteria. So if those lines are not the desired then the user has to go back and edit road job using the include/exclude key and store it.

Finally using Leica X-change for autodesk Civil 3D user can have multiple corridors with multiple baselines all in one job. Layering takes place at baseline level.

4. While in RoadRunner staking or checking then only points in selected layer appear. Again i mention this having in mind Carlson SurvCE in which all layers are visible but only the current is selectable.
A good practice is to include a layer with all points in it just for checking that no mistaken assignment took place when building LandXML CrossSectSurfs (layers).

Addition 2015-03-16

LandXML supports multiple gaps in CrossSectSurf . Multiple PntList2D are meant to be gaps.
But Leica RoadRunner importer does ignore them. No gaps. All points are joined sequentially.

But it is possible to enter points in what ever order. Points are joined the way they are ordered in PntList2D. That is perfect compared to Trimble's logic (Trimble Link-exporting road as surface). This way it is possible to enter points with same horizontal offset the way user wants to or even draw correctly closed shapes !

Addition 2015-03-17

If CrossSects->CrossSectSurf->PntList2D starts from right to left (descending order by offset) then ALL points are named as right even if there are points with negative offset.

Also if points start with negative offset but they are not ordered by ascending offset, just after the first positive offset, then all points even if negative they are named as right.

So for the points to get correctly named by RoadRunner LandXML importer, a good practice is to be ordered in PntList2D from left to right. But even if not correctly named this leads to no mistakes while staking or checking.

 

Saturday, 1 November 2014

Custom Windows desktop software x64 : TGO report file manipulation

Trimble Geo Office report files contain data that is difficult to use.
Each cross section contains various points.
If you want to draw them as continuous lines then you have to do this by joining points one by one.

My solution...
It is quite easy for an Excel user to get rid of useless data and create a simple text file with PENH data.
With my Civil 3D 2014 custom command PENH2SO the file can be converted to an extended one with station and offset for each point.
Finally this file can give as many files as needed. Every point next to axis is added to a unique file.
L01 for the first left point next to axis for each cross section ordered by ascending station, L02 for the second one...R01 for the first right ones, R02 for the second...X for the axis.
If there is a break then a new file is created, eg L0101,L0102...
From within Civil 3D  using my custom command PENHLOAD each line in seerate file can be drawn.

It does not run from within Civil 3D but from the Windows desktop. The program must be downloaded with the addition of the below following DLL to the same location.

Main program
Required DLL

Civil 3D 2014 custom command : Point East North Elevation file to Station and offset and surface elevation

With custom command PENH2SOE a file with Point East North Elevation data with a comma, space or tab delimiter can be loaded. The user selects a reference alignment and a file with PENHSO extension is created. It contains the above data extended with points' station and offset.
With custom command PENH2AS a similar file can be loaded. But the user can optionally select a surface to get an additional output extension, the surface elevation. File extension is PENH2AS.

Prerequisites