(c) copyright 2016 TIG
All Rights Reserved.
THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS FOR A PARTICULAR PURPOSE
Contents:
The TIG-CutNfill Extension Plugin comes in a RBZ archive.
The Toolset is suitable for SketchUp Pro >= v8M2/v2013 or newer.
This archive can be downloaded onto your computer and auto-installed using the:
SketchUp > Preferences > Extensions > Install…button - into the default
Plugins folder… or if the SketchUcation toolset is installed by using the:
SketchUcation Archive Installer, or from within SketchUp itself using the:
SketchUcation Plugin Store Auto-Install button - both of which offer the
choice of auto-installation into an alternative custom-plugins folder,
if one has been predefined.
The files and subfolders will be installed in the Plugins folder as follows:
TIG-CutNfill.rb a script to create the Extension
TIG-CutNfill a subfolder containing the main code and helper files
TIG-CutNfill_loader.rb a script to create the menu and toolbar items
TIG-CutNfill_core.rbs the main code to create the tool's functions
Help a subfolder containing
TIG-CutNfill_help.html this document...
TIG-CutNfill_help_files a subfolder containing nine PNG files used in this document
Images a subfolder containing
four PNG files which are the icons for the Toolbar's buttons
Strings a subfolder containing
EN-US.strings an editable file which defines the text-strings used in the
menus etc [this can be copied for other locale translations:
e.g. ES.strings would be for Spanish wording]
Note: If the RBZ archive is a pre-licensed version purchased from the SketchUcation Shop,
then the Tool's subfolder will already include the #.lic license-file.
Also note that if its version is subsequently updated, you do not need to re-purchase a pre-licensed,
version, just install the EVAL version, and it will find and use any existing license-file...
The Extension should load with the RBZ installation, and thereafter it should auto-load whenever
SketchUp starts - unless its Extension or Plugin has been disabled.
If it does not auto-load check that its Plugin is Enabled and then that its Extension is activated.
If the Extension is activated then its Toolbar [TIG-CutNfill] should also be activated -
if not [for example you have previously closed it] then reactivate it from the Toolbars list.
The loaded Tool adds a submenu in the "Plugins" menu named "TIG-CutNfill".
This contains three items:
Tool
Skirt-Tool
Help…
The first item activates the main Tool.
The second item activates the Skirt-Tool.
The third item opens this Help document.
If desire, you can easily add shortcuts to activate these, using SketchUp > Preferences > Shortcuts
The loaded Tool adds a Toolbar named "TIG-CutNfill".

This contains three buttons:
Tool
Skirt-Tool
Help…
The first button activates the main Tool.
The second button activates the Skirt-Tool.
The third button opens this Help document.
Before using the Tool you need to have two solid groups for your terrain meshes -
"Existing" and "Proposed".
The "Existing" group must be named "EXTG" -
or the alternative name if reset in the .strings file.
The "Proposed" group's name is unimportant.
These two groups must both have a 'skirt' with a common flat base -
there is a Skirt-Tool provided to assist you in adding this: see Skirt-Tool...
Of course the groups also need to be 'Solid' and contain mesh surfaces which
can intersect with one another to find the Cut and Fill volumes.
So no nested groups or components, just the meshes' faces and edges.
Every edge must have two faces - no fewer and no more.
The groups need to be located with a common 'bounds.min' corner location -
i.e. bottom-left of the skirt's base.
This sets their relative locations in 3d and thereby determines the volumes which
will be calculated.

Preselect the two groups and activate the Tool from either its
Toolbar button or its submenu item.
EVAL/License: Unless you have purchased a pre-licensed version
from the SketchUcation Shop, please see this section below…
Next- assuming you are in either the EVAL [with available uses],
or you have a License, and you can therefore continue…
If the Selection is not acceptable there are several possible
error-messages - which can include:
Too few or too many items are selected.
The selection is not two Groups.
Two Groups are selected, but neither of them is named "EXTG".
Two Groups are selected, but both of them are named "EXTG".
The two selected Groups do not have a common 'bounds.min'.
One or both of the selected Groups are NOT 'Solids'.
Assuming you have set up things appropriately…
One of two dialogs now open.
[EVAL mode]
[Licensed mode]
Reset or accept the "Volume Units": cu.m, cu.yds, cu.ft - this defaults to cu.m,
you can change that in line#12 of the TIG-CutNfill_loader.rb
to use any of the '.strings' file's defined Constants: M3 or FT3 or YD3
Reset or accept the number of "Decimal Places" to be used [default 0, min 0 - max 6]
The dialog's last used values are remembered throughout that session.
Cancel - to stop - [no changes are made].
OK - to continue.
On OK the Tool processed the two preselected groups.
Their meshes are intersected and split up into 'Cut' and 'Fill' groups -
which are colored green and red respectively.
A new 'CutNfill' group is made containing these as sub-groups.
If there is no volume resulting from the intersection, for a Cut or a Fill,
then that group will contain just a guide-point [cpoint] - its volume will report as '0' -
this might occur if there is just Cut or just Fill involved in the work.
This can also occur if two intersected Solids produce a form which is non-Solid.
In that case the tool will have tried to make that form into a Solid.
That is reported in the closing dialog/status-bar text.
A block of Text is added to the new group.
This shows the volume of the Cut and the Fill, and the Total [ = Cut - Fill ].
If the net Total result is -ve [Cut] then the text is shown green,
if it is +ve [Fill] then it is shown red,
and if it is exactly balanced [ = 0 ] then it is shown in the default text-color [black].

The equivalent Text is also used in the closing Message and printed in
the Ruby Console [if it is open when you activate the Tool…]
The creation of the 'CutNfill' group is one step undo-able.
Note:
The example above is deliberately simplistic for illustrative purposes,
but the Tool will calculate 'Cut and Fill' for very complex terrains…
Be sensible about the areas of mesh the Tool is asked to process,
including large areas of terrain which are the same in both the EXTG group
and the Proposed group will take a much longer time to process, and increase the risk
of failure by generating non-Solid results, and then those parts will be discarded anyway.

The Status-Bar will shows progress with . . . .
Please be patient as it can take some time to process very complex meshes…
Unless you have bought a pre-licensed version from the SketchUcation Shop...
The Tool initially works in EVALuation mode.
You start with 10 free uses.
Each activation of the Tool will start it with a 'nag-dialog':
this reports how many uses you have remaining, counting down to 1.

The Tool then continues to work.
All of its prompts etc contain the text 'EVAL'.
After each completed Cut and Fill operation the counter for
the remaining uses is reduced by 1.
If your have reached your 10 free uses then the 'nag-dialog' tells you
and the Tool stops working, until it is licensed.

At the end of the EVAL period [our even before that],
you can purchase a license from the author [TIG] through PayPal.com,
or by buying/downloading a pre-licensed version from the SketchUcation Shop.
Note: You do not need to re-purchase an updated pre-licensed version,
installing a newer EVAL version will simply reuse any license-file
that is already in the Tool's subfolder.
The license may be used with several installations of the Toolset.
However, if you are part of a large commercial company, then please
consider if it is 'fair' to pay for only one license and use it many times…
The cost per license is $20.
[this is discounted at the Shop for Premium mambers].
Alternatively you can use this PayPal button and be sent the license-file:
Once your payment is cleared then you will be sent an RBZ archive,
it will go to the email address you have used for the payment.
Install this archive in the same way as the main Toolset's RBZ.
It should be downloaded onto your computer and auto-installed using the:
SketchUp > Preferences > Extensions > Install… button or if the
SketchUcation toolset is installed by using the: SketchUcation Archive Installer.
A single file called #.lic will be added to the TIG-CutNfill subfolder.
The license file needs installing for every occurrence of the Toolset plugin,
including those for users who have created custom plugins-folders,
or where the main Plugins folder is created on a per-user basis [e.g. MACs]
When the Tool is next used the license file should be found:
There will be a one off license validation confirmation message:

now there should be no more nag-dialogs,
and the EVAL text should no longer appear in the prompts etc.
However, if the license file is found to be invalid,
then you will get this message:

If you have any remaining EVAL uses you may continue to use those,
otherwise the Tool will stop working, until it is properly licensed.
Resolve the issue with the license: typical problems are:
The license file is invalid because it has been 'copied', rather than 'installed'.
You have attempted to change the contents of the license file.
Address all licensing issues directly to the author [TIG]…
The Skirt-Tool adds new Geometry around a Selected Terrain Mesh Group.
Select the Group and activate the Skirt-Tool...
Like the main Tool it checks for a valid license and remaining free uses,
with 'nag-dialogs' etc when appropriate.
However, unlike using the main Tool, running the Skirt-Tool does NOT reduce
your remaining free uses of the main Tool itself...
If the Selection is unsuitable there are error-messages, then the Skirt-Tool exits.
The Group is checked.
If the Geometry is unsuitable there are error-messages, then the Skirt-Tool exits.
These errors can include - No Faces or No Suitable Faces within the Group.
Other 'auto-fixed errors' include Unfaced Edges and Reversed Faces within the Group.
The Skirt-Tool runs and adds a basic vertical 'skirt' around the sides of the mesh,
with a flat base face.
These changes are one-step undo-able.
If desired, you can subsequently PushPull the flat base of the 'skirt', but remember
that you must always have a flat base below the lowest part of both Terrain Meshes.
The 'EXTG' and subsequent 'Proposed' Terrain Mesh Groups must both have very similar
'skirts', and their 'bounds.min' [bottom-left corner] must be at the same point in 3d,
because this will be used to determine the Cut and Fill Volumes that are calculated later…
