User Tools

Site Tools


android:smartgrade:smartgrade_rtk_grade_only

This is an old revision of the document!


SmartGrade

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.

Screen Diagram

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.

Story 5 Version 1.0 Release

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.

  • PDF/Bitmap texture overlay (done)
  • Stake Mode

Interface Changes introduced with Stake Mode

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

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

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.

Features

Staking adds another window/mode to SmartGrade. It also has some custom behaviours that are unique to staking points. Some of these features include:

  • A line connects the picked point to the cursor center.
  • The arrow direction is not the compass but instead point the direction they user needs to walk to find the point.
  • Do we keep the cursor centered or do we pan the screen since we also auto zoom as the user moves closer?
  • AutoZoom. As we move closer to the selected point, the program automatically zooms the screen as we get closer. We turn off autozoom the second the user zooms out until the next point is picked.
  • Generation of staking offsets for the picked point. When a point is picked we generate offset lines. Look farther down for details on the offset lines patterns.

Changing Modes

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

Screen Description

Top Info Bar

The top info bar displays information about the picked point. It includes:

  • Northing/Easting - The northing and easting or Station offset of the picked point (selected under view)
  • Elevation - The elevation of the picked point This is redundant since the picked point is shown at the bottom in Stake mode. Needs to be removed from the graphics
  • Labels - Line Label and point label
  • Distance/Slope - the distance or slope between the point picked and the previous point picked. Blank until two points are picked. Toggles between Distance (default) and slope. Slope to read as % until it reaches 10% then switch to a ratio ie: 10:1

Bottom Info Bar

  • Picked Elevation - The elevation of the selected point
  • Shot Elevation - The current elevation from the GPS/Instrument.
  • Distance - The distance from the GPS location to the selected point.
  • Slope - The slope value calculated by comparing the Picked elevation and the Shot Elevation. Displayed as a percentage up to 10% and as a ratio (10:1) when the slope exceeds 10:1
  • Cut/Fill - The difference between the Shot Elevation and the Picked Elevation. Note: unlike Grade Mode this means that the cut fill does not come off of the isopach.

Selected Point

Offset Lines

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.

Cursor Changes

The cursor is a different style of arrow because the function is different than in grade mode. These changes are:

  • The cursor is not centered in staking mode. (I think when a point is picked we zoom out to keep both the picked point and the cursor on screen. The program autozooms to keep both the cursor and selected point on the screen.
  • The arrow direction is not hooked to the compass as in grade mode. Instead it points the direction to the selected point.
  • A line connects the selected point to the center of the cursor.

AutoZoom

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.

Add Preferences Tab to Settings

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.

GPS Driver Implementation

Intended GPS drivers in order of implementation:

  • Altus
  • Altus Cell
  • Topcon (complete)
  • Topcon (Cell) (A Leica for use with a base station may move ahead of this)
  • Leica
  • Leica Cell
  • Trimble (This may not happen at all)
  • Topcon Total Station?

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).

Story 6 Finishing up SmartGrade v. 1.1

  • Labeling (new implementation)
  • StockPile

Depending upon time estimates we may split Story 6 here and create Story 7.

  • Progress Topo
  • Import ADF to Earthwork 4D library

Labeling

Our first pass at labeling was done before we added track labeling to SmartDirt. This new pass is a derivative from both.

Entering and Exiting Label mode

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.

Labeling Screen Elements

The screen elements shown are for guidance. While I'd like it to look similar

  • Stored Label List- on the left is a stored label list. We need to ship the product with a default list (tbd) that's located in the AGTEK folder. Selecting a label from the list fills in the label text area to the right.
  • Current Label - The current label being used is shown to the right of the label list. Any shot taken has that current label applied to it. The current label can be edited or replaced by tapping it and using keyboard or voice for input.
  • Minimize button - The arrow to the far right minimizes the label mode.
  • Connect by Label button - (L button) This is defaulted on and when selected connects points with identical labels into lines until New Line is pressed. As an application, imaging topoing a curb line. You shoot the bottom of curb labeled “BC” and then shoot the top of curb right next to it and label it “TC”. The result would be two parallel lines describing the curb without needing to shoot first the bottom and then the top.
  • Add to Label List Button - Pressing this button takes the current contents of the right label field and adds them to the label list. If the identical label already exists in the list it does nothing.
  • Cut/Fill label button - toggling this on (depressed like connect by label button) causes the label assigned to each shot to be the cut or fill on that point (ie: C 1.32 , F 0.4).
  • Pattern Label - Pattern Label allows the user to pick a pattern of labels (think cross section or curb profile) and take shots where the labels automatically change in the order designated. This would work together with connect by label. The interface is this. When picked the program asks for the number of points in the pattern. For example, a curb detail might be three, bottom, top, back. He then picks the order, whether it reverses at the end, and the name of the label (much interface to follow, suggestions welcome).

Editing the Label List

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

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

Progress Topo

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:

  • To the existing so the user can see how much dirt has been moved
  • To the subgrade to see how far from done the dirtwork is.
  • To earlier surfaces to see how much progress has been made since the last survey.
  • Converting Stockpiles or New Surveys into permanent surfaces that can be compared to subsequent shots. It also enables the user to clear the Stockpile or New Survey mode switch so Grade mode can be used on those files.

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.

Flow & Interface

When Progress Topo is chosen, the program does the following:

  • Change to the Progress Topo screen (assuming this is a new activity)
  • Calculate and display hull around the survey points. Default the comparison layer to whatever the user had as the Reference layer in the Grade Screen. Allow them to change the Reference surface with standard, lower left surface selector. (note, if this list isn't scrollable, it's going to need it.) The user can also drag hull points like measure in SmartDirt as well as adding and subtracting points. If we do the hull reasonably then the less he'll edit.
  • Pressing 3D calculates and shows the resulting surface. This is not a permanent state, just a preview of the result. The GPS panning should be defaulted off for easy review of the surface.
  • Report should show the volumetric difference. (we need to test this for speed however Surveys are relatively small)
  • Create a finished? (Name? Done?, Make Surface?) menu option that takes the survey points and defined boundary (hull) and turns the points into a surface. Pop up a window for naming the surface. The default can be “##-##-## Survey” but it's user editable (highlighted). The survey data should then become lines on that surface. This also clears the type of file flag (Stockpile, New Survey) so the next time it's opened, the alignment screen shows up and it can be surveyed against.
  • Another option but not mandatory for the user is “Stage”. After we make a surface, the button used to make the surface can change to Stage. This takes the survey layer created and merges it into the reference surface to create a new, combination surface. (Think a progress Topo merged into Existing.) The challenge here might be the clipping into an existing surface.
Add Point

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.

Make Surface

(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.

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.

3D

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.

Delete Point

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.

Report

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

More

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:

  • Add Point
  • Delete Point
  • Make Surface
  • 3D View
  • Report

These are the menu items on More for this state:

  • Save
  • File
  • Change Mode (grade or stake)
  • View
  • Settings
  • Exit

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:

  • Stage - This should be grayed out if there is not at least one intermediate surface picked
  • 3D View
  • Report - Grayed if there aren't two surfaces.
  • Save
  • File? (I can be talked into something else here)

These are the menu items on More for this state:

  • Change Mode (grade or stake)
  • View
  • Settings
  • Exit

Note: Labels really doesn't apply here and should be removed.

ADF to 4D Import

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?).

Story 7 (Version 1.3)

  • Convert interface to 4.0 Action bar style

General Thoughts

Change to 4.0 Action Bar

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.

Story 8 (Version 1.4)

  • Add Section Offset functionality via menu
  • Add Points function in Staking
  • Add Image background toggle to menu (like SmartTrack)
  • Add Point Deletion/Labeling to Grade mode survey points
    • Connectivity after a point is deleted
  • Add Camera support (Similar to SmartPlan/SmartDirt)

Grade

The new order should be this:

  1. Break Line
  2. 3D
  3. Save
  4. Undo
  5. Section Offset
  6. Show Plans Sheets/Show Cut/Fill
  7. Create Benchmark
  8. Labels
  9. File
  10. View
  11. Progress Topo
  12. Stake Mode
  13. Settings

Stake

  1. 3D
  2. Save
  3. Show Plan Sheets
  4. Undo
  5. Points along Line
  6. Labels
  7. Create Benchmark
  8. Grade Mode
  9. File
  10. View
  11. Settings

Add Section Offset functionality via menu

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.

Usage

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.

Add Points function in Staking

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.

Add Image background toggle to menu (like SmartTrack)

Add Point Deletion/Labeling to Grade mode survey points

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.

  • If a point is selected the Undo/Rename Last button changes to “Remove” and selecting it deletes that selected point. (Connectivity remains).
  • The selected point can have its label changed by selecting the top (label bar) or choosing Label from the menu.
  • The Break Line function can also be used to break a line at that at that point. Using this feature on a selected point does ask for confirmation that the user wants to break the survey line.

Connectivity after a point is deleted

  • Add Camera support (Similar to SmartPlan/SmartDirt)

Story 9 (Version 1.5)

  • Add Template labeling scheme
  • Progress Topo line Snap

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.

SmartGrade Future and Offshoots

Stockpile program

  • Stockpile only mode with no alignment (depend on base location and arbitrary base centered coordinate systems)
  • Calculate volumes and upload them as reports and as Google earth models with volumes on them.
  • Comparing stockpiles from week to week and reporting.
  • Editing via touch using isopach volumes.

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.

android/smartgrade/smartgrade_rtk_grade_only.1407873112.txt.gz · Last modified: 2014/08/12 19:51 (external edit)