This is an old revision of the document!
SmartGrade is an intermediate product between SmartDirt and SmartSet. For someone familiar with SmartDirt, the changes can be summed up as SmartDirt with RTK instrument support and saving of survey data. The addition of RTK does add the need for considerable RTK processes like Alignment, recover, Rod Height & monument adjustments as well as saving of the RTK data points. In many ways this could almost be considered Story 2 of the SmartSet product although organizing this as a separate project means creating separate programming infrastructure and changes in priority of completion.
For a screen storyboard of the program flow, see this file: https://agtek.s3.amazonaws.com/Agtek/8IkNFVo2Xtv5
See Completed Stories section for earlier stories.
SmartGrade is bitten by a radioactive spider Version 1.0 Releaseand gets the capabilities of SmartSet added to it. In the meantime SmartSet dies a fiery death but leaves its icon to live on in SmartGrade.
This is a realignment in priorities thankfully before we actually started them. I don't think it changes anything we've already done although it will delay some things like Progress Topo. The first priorities are PDF/Bitmap texture overlay, Stockpile and Stake Mode. Stake mode requires an addition the menu (Stake or Grade) and and additional question to the user before or after alignment.
New Notes: I'm clipping Story 5 and moving Progress Topo and Stockpile to Story 6 in order to produce version 1.0 of the software. Story 5 is really about Adding Staking mode and includes all the PDF work we did for SmartDirt.
Adding Staking to SmartGrade creates an interface change to the flow we've had previously. After the Alignment choice is made (Shoot or Recover) we need to ask . (do we use the time after picking the job file to quickly read benchmark and recover info while doing the calculations in the background? Seems like a good opportunity to do a lot of the calculation in the background while the user doesn't need much horsepower. Open selected mode
PDF/Bitmap Overlay substitutes a PDF file or bitmap for the cut/fill color. At first pass, just being able to read a PDF file and display it georeferenced background is sufficient. Hopefully we could use it as a PDF rather than rendering it to a bitmap. Within Earthwork 4D files we store the transformation and name of the background PDF files. Bitmaps that are zoomed against are obviously only as good as the bitmap.
A more advanced role for the more advanced products is to lay the PDF as textures over the 3D view. This is not necessary for the first release of this feature.
My educated WAG is that we don't have the memory to display the isopach/cut fill colors at the same time we display a PDF File/Bitmap. What we can probably do is offer to do one or the other. As part of the .esw file we have filename references and positioning to the overlays both. I envision a scenario where we load the surface trimeshes on demand along with either the isopach cut/fill color or the overlay.
Substory edit (2012-11-26): Image work is mostly what is in SmartDirt. Instead of displaying the images draped upon the 3-d surface, display the images flat plane, but set the vertical elevation of the planes to be the minimum of the design (display) surface.
Staking is the process of picking and finding a point on a job file. The info bars look similar but have different behaviour than Grade Mode.
Staking adds another window/mode to SmartGrade. It also has some custom behaviours that are unique to staking points. Some of these features include:
Adding Staking means we have to have a way of choosing Staking or Grade Mode. The first place we choose is after alignment. Once the deviation is accepted, we now need to ask whether to go to Stake or Grade mode. Once past the alignment process the user can toggle between modes by choosing “Stake Mode” or “Grade Mode” off of the More menu.
Stake Mode zoomed out, Stake Mode autozoomed in, Stake mode menu, Stake Mode More menu
Top Info Bar
The top info bar displays information about the picked point. It includes:
Bottom Info Bar
Selected Point
Offset lines are a feature that reflects the real world need to not put stakes in the ground at the actual selected point but instead move then a fixed distance away as to not interfere with the actual work.
Staking offsets is a key feature of stake mode. GradePilot first introduced the feature and I intend to mirror that. At it's most basic, offset lines generate two visible lines perpendicular to the line of the selected point. In cases like a corner, an additional offset line is generated at a 45 deg angle. The length of this line is based on value (offset distance) stored under settings. The default is 5 feet. I suspect non-US customers probably use 2 meters. (Question, Are there enough items that we need another tab under Settings? Defaults?). Bill, please look up the rules we came up with for generating Offsets (line angles, etc.) we used under GradePilot because it worked well and was the result of trial and error.
Another feature of the offset lines is to thicken and generate a tone when the user moves to align with them. Bill, please look at GradePilot for the tolerances we used previously to determine alignment.
The cursor is a different style of arrow because the function is different than in grade mode. These changes are:
Staking mode includes an autozooming feature. This is modeled after a feature in Gradepilot designed to streamline the staking process and not require the user to interact with the screen once a point is selected for staking. By zooming as necessary until a certain threshold (it used to be 5 feet but we'll have to experiment) is reached, the user can simply move as necessary. Zooming out turns off autozoom until the next point is picked. We may have to experiment with the trigger on this on since it may be possible to zoom out inadvertently. I'll also run Gradepilot to see if there is any other nuances I've missed.
The preferences tab contains clear survey, Show record button on screen, Show camera (future), offset distance, and Collection Distance. Clear Survey, Offset distance, and collection distance are moved from their current locations on the menu, the View-Other tab, and the Settings-GPS tab respectively. Show Record button puts a small button on the staking screen beneath the onscreen zoom buttons when this is checked. The default is off. In that case the only way to record a Stake point is to press the button on menu.
Intended GPS drivers in order of implementation:
Figure on Altus (base & Cell) and Topcon for first release with immediate work on Topcon cell and Trimble drivers. (MJA: Probably only time for Altus cell assuming SG 1.,0 @ December 14).
Depending upon time estimates we may split Story 6 here and create Story 7.
Our first pass at labeling was done before we added track labeling to SmartDirt. This new pass is a derivative from both.
The original implementation brought up the labeling interface only when the top bar was tapped. This is handy but a too obscure to be the only method of bringing up the label view. Multiple users including myself got into the mode by accident and could not figure out how to get out of it.
I like the convenience of the top bar so to supplement it, I want to add “Labeling” to the More-menu options and that triggers the display of the labeling window. It also acts as a toggle to drop the labeling mode. Tapping the top display should also enable and disable labeling. I've also added a small up-facing triangle on the label screen that's intended to disable labeling.
Pressing and holding on a survey point allows the user to edit the label like we do in SmartDirt labels.
The screen elements shown are for guidance. While I'd like it to look similar
The label list is edited by pressing and holding on the desired label. This is similar to how we handle operations on files in the File window. Selecting Edit displays a message box (similar to rename) and Delete asks for a confirmation. Labels are added by entering them in the current label box and pressing the + button.
New Editing Interface There's not enough room at some resolutions for the keyboard while in this mode. Instead, when the user taps in the current label field, we need to bring up a text box (like SmartDirt uses for labeling) that ensures we have enough room.
Stockpile is a variation on New Survey specifically concerned with quantifying a pile of dirt or a hole in the ground. The startup is very similar to New survey in that there is no alignment and no background file. There are two Entry steps to Stockpile. Surveying the base which forms one surface and surveying the interior details which form the pile (or hole). The steps after entry are reviewing the stockpile in 3D and calculating the volumes. Note: I think we can be more innovative on how we display the 3D and calculate the volumes compared to the SitePilot product. Stockpile volumes on the phone calculate quickly. We also have a 3D view that is easily navigated and inspected compared to previous products. I think we should be able to view a 3D on the fly any time after the initial base is entered. There is some time used to calculate but it's pretty fast. Although I have a report view shown I also wonder if we might just show it with the 3D view. The report options could be put on that menu too.
KMZ example with Stockpile model (collada DAE) https://agtek.s3.amazonaws.com/Agtek/dS50YT3edmwy
Calculating a Progress Topo is the process of making and comparing a surface created from survey points to another surface. Examples of reasons for different comparison surfaces are:
Starting the Progress Topo process is a user triggered event. Typically it happens after all of the survey points are collected and applies to Grade, Stockpile, and New Survey modes. The Progress Topo menu command is on the More menu in each of those modes.
When Progress Topo is chosen, the program does the following:
Creates another point on the hull at the closest point to the subsequent tap. Usage is menu - add point then tap to create point on existing hull closest to the tap. The user fine tunes position by measure-like dragging.
(shorter name?) Permanently creates a surface from the Survey data lines using the hull boundary as the limit. Ask for user confirmation and name of the surface before creation takes place. Once done, the menu option changes to Stage.
Not present until a surface is created. Pressing this button merges the surface just made into the current reference surface. Once pressed the program ask for confirmation (“Stage <surface name> into Existing?”) and merges the surface on an “Yes” press. It does not get rid of the Existing surface (our example) but does create a new surface based on the merger. This can replace the surface created in Make Surface.
Creates a temporary surface based on the survey data and Hull and allows the user to review the results. This is a non-permanent surface. The only way to create a permanent surface is Make Surface.
Allows the user to remove a point on the hull. I'm debating whether this is necessary. Implement last. Since a hull by nature is somewhat imprecise, if you wanted to delete a point you could just slide it next to a point you want to keep and it wouldn't matter.
Calculates volumes and report it based on current boundary (hull). Reporting similar to SmartDirt Measure. After backing out of the report view, the user will see cut/fill color
Probably File, Change mode (Stake, Grade), Settings,View, and Exit accessible here.
During the Set Boundary State the following menu items should be present with the first 5 being on the main screen and the remainder on More:
These are the menu items on More for this state:
Note: Labels really doesn't apply here and should be removed.
After making the surface or for situations where there was no survey data (Stage State) the following menu items should be present with the first 5 being on the main screen and the remainder on More:
These are the menu items on More for this state:
Note: Labels really doesn't apply here and should be removed.
Progress Topo is going to highlight the need to get the finished surfaces and linework back to 4D. The 4d mechanism of importing is virtually the same for all types of data, including it's own files. When chosen from the open dialog, the imported file's data is displayed as layers within the CAD Import screen. The user picks the layer data and specifies the desired layer that it should go into.
Our goal here is to simply create a library/translator so Earthwork can read all the ADF data (excepting Isopachs, other?).
The 4.0 action bar with light background is preferable for outside work. I've got to figure out how to migrate the 2.0 style programs SmartDirt and SmartGrade to the new look. The primary problem is how to show the current mode and the file name since the action bar tends to slide as many icons on the screen as it can. At this point we should also migrate to multiple layouts. Each would optimized for Tablets and phones and for the different orientations.
Grade
The new order should be this:
Stake
Section Offset allows the user to specify a vertical adjustment to compensate for sectional thicknesses or leave grade high (for pad finish) while using the finished design grade for models. It's especially useful when the sections aren't known at the time the model is built and are adjusted in the field.
This feature is also part of SmartBlade and should be able to be used as common code.
Job is aligned and in Grade mode. Selecting Section Offset from the menu displays a dialog asking for the amount of model offset. A negative value subtracts that value from the model surface. A positive value adds to the model surface. When a Section offset is specified the value should display next to the surface the shots are being compared against.
Selecting Section Offset and setting the value to 0 resets Section Offset and removes the value from the main screen.
Adding points along a line is a function that the old Graphic Grade program had. The purpose it serves it to give the gradesetter the ability to stake points that were not in the original data file but would be helpful to machines. Staking along the bottom of a slope is common.
Another feature that was in Graphic Grade and is supported by Earthwork 4D is creating stakelist points that can then be picked in SmartGrade staking. This means that we'll need to add a layer type in the ADF file to support it and add the stakelist point to the ADF creator export.
Interface
Add Points is a menu option only available when a line is picked. When selected it displays a dialog asking for the spacing of points along the line. The default is 5 ft/2 meters. The user can put in any value up to 100'/33 M and the pressing Ok adds a stakelist point along the line starting at the given distance from the first point on the line and repeating at that distance until the end of the line. Elevations are interpolated based on the elevations of the elevations of the points that make up the line.
Earthwork 4D supports entry of Stake List points. The primary use of Stake list points is to make staking more regimented and less prone to an error in selecting the correct point to stake. It's often used when the actual survey user is inexperienced and the file preparer wants to make sure the user stakes the correct point.
I don't think we currently do anything with stake list points when writing an ADF. We need to extend the ADF format to support stake list points as a unique entity. You can get an example of an esw with stake list points here: https://agtek.s3.amazonaws.com/Agtek/mLWeGsJbssLU. The AGTEK building in this file has a stake list point on each corner.
Stake List points in SmartGrade are enabled by an option under View-Other (“Select Stake List Points Only”). When on, Stake mode only allows selection of Stake List points and no other. I do not wish to make the setting persistent past the session because I can see it causing support issues. What I would like to do is when switching to Stake mode, the program checks to see if Stake List points exist. If they exist, ask the user. “This file contains a Stake List. Do you wish to stake only the Stake list points?”. Saying Yes flips on the setting, Saying No keeps it off.
We have not previously allowed survey points to be deleted or labeled except for the Undo feature in any AGTEK RTK product. We're going to do it here and here's how it will work.
* The Undo button/menu item is renamed to “Remove Last” * In Grade mode we do not currently allow anything to be selected but we will now.
After deletion of the point we should not break the line. A typical usage is to remove a single errant point. In this case, after deletion, connect the points on either side.
There is no pick for grade mode but there's no reason we couldn't pick survey points for deletion, labels, etc.
Do we even show the labels at the top if the user hasn't set them?
We can use Lat/Long positioning relative to benchmarks before we actually align. Once we shoot the first point we'll still use it for rotation but not position. This may make it easier to actually find field benchmarks during the initial setup. Benchmarks shot in should not overwrite the lats/longs on the benchmarks if present on any two benchmarks in the file. The Google Earth benchmarks are often much better than the ones established by the base. Since we really only use the Lat/long in Benchmarks for GE, matching it is more important.
3D Staking - it appears like it should work with the quality we now have in 3D. The toughest part is probably picking in a 3D view but it would also serve as a confirmation besides labels that you have the correct point picked.
Stockpile program
We could sell a ton of these on subscription. It's really simple for the user. There's not question any more of what pile they surveyed because of the GE location. There's a lot of need for measurement like this out there and we already have a large amount of the tech done.