Você está na página 1de 94

Index > Using S-FOUNDATION as a standalone product

Using S-FOUNDATION as a standalone product


While S-FOUNDATION supports integration with S-FRAME models, it can also be used as a standalone application.
Load Cases and Load Combinations can be entered manually, and code checks can be run without the existence of
a superstructure.

I. Create Foundations

To create an isolated footing, click on the Isolated Footing Tool icon. In the Tool window, you can modify the default
data before creating any footings, or you may choose to use the default data and change the footings afterward.

The Isolated Footing Tool.

Possible foundation types include Isolated Footing, Combined Footing, Continuous Footing, Strap Footing, Wall
Footing and Mat Foundation. Please see Foundations for more information.

Click on a grid snap in the Visual Editor to place a foundation in the model.
Creating an isolated footing.

II. Define Loads and Soil Properties

To define foundation loads, go to Define > Load Cases and switch to the Reactions tab. Here you can enter loads
applied to the top of the foundation pedestals.

Defining foundation loads.

For more information on load cases, please see Load Cases Dialog and Load Cases and Combinations.
You can view the created loads in the Visual Editor Window using the Reaction Load Tool.

To edit soil properties, go to Define > Soil Profiles. Here you can enter data for the soil profiles used in code checks.
For more information, please see Soil Profiles Dialog.

III. Run the foundation code checks

From the Main Menu, go to Run -> Analyze And Code Check.

Note that by default, checks using the Flexible Method (requiring finite element analysis) will not be included. To
change this, go to the Settings tab in the Design Input Window and under "Run Checks", check the appropriate
categories to include them.

Once the code checks have finished, you can view results graphically in the Visual Editor Window or numerically in
the Design Output Window.

Viewing code check results.

For more information about viewing graphical results, please see the Code Check Result Tool, Rigid Result Tool and
the Flexible Result Tool.

Alternate methods of data entry

In addition to using the Visual Editor and define dialogs to input model data, you can use the following alternative
methods:

• Import Spreadsheets
• Import Toolbox Extensions
Import Spreadsheets

Import spreadsheets provide a convenient way to copy tabular data from an external source such as Excel or S-
FRAME spreadsheets. For more information, please see Import Spreadsheets Dialog.

Import Toolbox Extensions

Several toolbox extensions are included with S-FOUNDATION, including Revit Link Import, Foundation Wizard, and
Import CSV. These can be found in Tools > Toolbox > Import. For more information, please see Toolbox Extensions.

Index

Online Tutorials & Videos


© 2014 S-FRAME Software Inc.

Index > Foundations

Foundations
S-FOUNDATION allows you to easily define and edit isolated footings, combined footings, continuous footings, wall
footings, strap footings, mat foundations and pile foundations. The foundation connections to columns can be
modeled with or without pedestals, and with or without base plates.

Types

Other
Name Description
Names
Image

Pad
A single Footing,
Isolated pedestal or Spread
Footing column on a Footing,
pad. Bucket
Foundation
Two
Combined pedestals or Spread
Footing columns on a Footing
pad.

Three or
more co- Strip
Continuous linear Footing,
Footing pedestals or Spread
columns on a Footing
pad.

Two isolated
footings
connected by
a strap beam
between the
pedestals or
columns. The
Combined
strap can
Strap Footing,
connect
Footing Spread
anywhere on
Footing
the
pedestals, or
in the case of
columns, the
strap will
connect the
pads.
A pad with a
wall on top of
it. The wall
footing may Strip
or may not Footing,
Wall have Continuous
Footing pedestals, Footing,
and may be Spread
loaded along Footing
the wall or at
the
pedestals.
Raft
Footing,
Any number Mat-Slab
of pedestals Foundation,
or columns in On-Grade
Mat any Mat
Foundation configuration. Foundation,
May be Slab-On-
loaded at the Grade
pedestals. Foundation,
Spread
Footing
Any pad can
be converted
to a pile cap
foundation by
converting
Pile the pad to a Deep
Foundations pile cap. Pile Foundation
foundations
are
supported by
the piles and
not the soil.

Pile Foundations

Any foundation, regardless of type, may become a pile foundation. Therefore you could create an isolated footing pile
cap connected to one column, a combined footing pile cap connected to two columns or even a pile supported mat
foundation connected to many columns in any arrangement. The piles in the pile cap can be configured to
automatically organize piles in the most compact way for the pile count, may be configured in rows, or can be
customized to any configuration. Piles may be inclined and rotated and the entire pile group may be offset and
rotated.

IMPORTANT: Please note that all rigid code checks for piles assume that the pile configuration is symmetrical. If a
pile configuration is asymmetrical, code check results for rigid checks will be inaccurate and should not be used.

Pedestals

Pedestals may be rectangle, square, circle or regular polygon shapes such as hexagon or octagon. Pedestal rebar
configurations are generated according to code using the S-CONCRETE Design Engine.

Pads and Pile caps

Pads and pile caps may be rectangle or square shapes. The rebar is configurable in rebar strips, with or without
hooks. You may define rebar strips in two directions, local x and y. Each strip has a top and bottom rebar layer. The
rebar strips may vary in width, bar count, bar size and bar material. You may also define extra rebar in the
longitudinal direction that spans only a portion of the pad to account for variation in moment. The rebar is used to
determine precise effective depths for any location on the foundation.
Base Plates and Straps

Base plates may be rectangle, square or circle shapes. Straps may be rectangle or square shapes.

Piles

Piles may be circle or regular polygon shapes such as hexagon or octagon. Pile rebar configurations are generated
according to code using the S-CONCRETE Design Engine. Piles may be defined on an incline with Pile Batter.

Soil Profiles

Soil Profile definitions allow the user to specify elevation, water table elevation, soil density, saturated soil density,
allowable and ultimate bearing capacity, soil friction and adhesion, and modulus of subgrade reaction.

Tips & Tricks


• Pedestal, base plate, pile, strap, wall, pad and pile cap definitions can be shared between many
foundations to ensure model consistency, ease of construction and to create design groups.

• The concrete used in the foundations may vary between pedestals, piles, straps, walls, pads and
pile caps.

• It is possible to use different soil definitions for each foundation or you may share one definition
between many foundations.

• To model a continuous footing connecting to non-collinear columns you may use a rectangular mat
foundation.

Next: Code Checks

Online Tutorials & Videos


© 2014 S-FRAME Software Inc.

Index > Code Checks

Code Checks
S-FOUNDATION includes structural code checks for pedestals, pads and piles, as well as geotechnical code checks
for foundations and piles. S-FOUNDATION supports the Rigid Method and Flexible Method of design depending on
the object being code checked. The Rigid Method is available for geotechnical checks, pile geotechnical checks, and
Isolated Footing structural checks.
Code Check

S-FOUNDATION defines a code check as the examination of a design requirement that creates a pass/fail status.
The pass/fail status is often determined by comparing a utilization ratio with an acceptable utilization. The utilization
ratio is calculated by the formula: demand / capacity = utilization. Capacities are calculated according to design code
provisions. Demands are calculated using analytical or finite element analysis (FE analysis) solutions depending on
the type of check, and the type of design (Rigid or Flexible) requested.

S-FOUNDATION does not check detailing requirements such as minimum dimensions, minimum reinforcement, bar
spacing and clear cover. It is up to the user to check these requirements.

Code checks often produce multiple utilizations. For instance, the one way shear structural check for a pad will create
utilizations in the x and y directions. The check will report the governing utilization for the purpose of the pass/fail
status; however, all utilization results are available. Intermediate and supplementary calculations are also available
on a code check basis. Code checks are divided into two main categories: Structural and Geotechnical.

Geotechnical checks that use Allowable Stress Design (ASD) use factors of safety, adjustable in the Design Input
Window. The capacity of the check is divided by the corresponding factor of safety, reducing the capacity and
increasing the utilization.

Pedestal Structural Code Checks

S-FOUNDATION uses the S-CONCRETE Design Engine to perform pedestal structural code checks. Pedestals are
divided into a user specified number of sections, to account for changing moments along the pedestal. Each section
is checked through S-CONCRETE as a column, creating utilizations for each section. Pedestals that have a regular
polygon shape (hexagon, octagon, etc.) are converted into the largest circle that fits inside the polygon when running
checks with the S-CONCRETE Design Engine. Pedestal structural code checks include biaxial bending, biaxial
shear, axial force (compression and tension), and torsion.

Pedestal and Pile Shear for ACI and CSA Codes

For ACI and CSA codes, shear utilizations for pedestals and piles are defined as the summation of Shear X, Shear Y,
and Torsion utilizations (if more than one of these is applicable).

Pedestal and Pile Shear for EC2 (Euro) Codes

For EC2 codes, shear and torsion resistances are based either on the contribution of the concrete or the contribution
of the reinforcement, i.e. the contribution of the concrete is ignored when the shear and torsion reinforcement are
considered, Clauses 6.2.1(5) and 6.3.2(5). For this reason, you will see "N/A" for either the Concrete utilization or the
Yield X, Yield Y and Crushing utilizations, since those values are not applicable when determining the overall
utilization.

Pad and Pile Cap Structural Code Checks

S-FOUNDATION can use both the Rigid Method and Flexible Method for pad structural code checks for isolated
footings. For all other foundations types, including pile caps, only the Flexible Method is supported. The Rigid Method
assumes a rigid pad and calculates capacities and demands according to design codes. The Flexible Method
calculates capacities according to design codes, but calculates demands using finite element analysis (FEA). FEA
demands are calculated from the spring reaction forces, or by integrating shell forces along strip lines whose
orientation and widths are based on pad rebar configurations.
The pad structural checks include one-way shear, punching shear and flexure. The pile cap supports punching shear
check only.

Pad structural checks are affected by the critical section location, and the critical section location is dependent on
pedestals. When foundations have pedestals, the pedestal face is used to determine the critical section. When
foundations do not have pedestals, either by setting the foundation pedestal to "None" or setting the height of the
foundation pedestal to zero, the critical section location is affected. When you use a pedestal that has zero height, the
critical section is calculated in the same way as if the pedestal existed with height. When you set the pedestal to
"None", the base plate dimensions are used to calculate the critical section, and when there is no base plate, the
column dimensions are used instead.

One way shear and Flexure code checks using the flexible method will create finite element strip lines for each rebar
zone. These strip lines will be used to calculate demands for each rebar zone. Demands are determined by scanning
the strip line for the worst demand, including the code defined critical section locations. When scanning the strip line
for the worst demand, areas of the strip line that fall under column locations between critical sections will be
excluded. You can view exclusion areas and critical section locations in the code check details. You can adjust the
step of the strip line scan by changing Design Input > Settings > FEA > Strip Lines > Length Stations.

One Way Shear, Rigid Method

One way Shear, rigid method is available for Isolated Footings only. Demands are calculated for four code-specified
critical sections at a distance from the pedestal face, positive (+) and negative (-) sides, in both directions X and Y.
Capacities are calculated on a rebar strip basis, and the largest demand from the + and – sides is used to calculate
the utilization ratio for the strip.

One Way Shear critical sections.

The One way Shear, rigid method assumes the pad rebar is defined according to code specifications. The check
calculates demands at the code defined critical sections because the code states the highest demand will exist there.
The check then compares those demands to the capacities of the rebar zones at those critical sections. It does not
check any zones that do not fall on the critical section; therefore it is up to the user to ensure that pad rebar strips
meet code requirements. For instance, if the rebar allotment is very high in a small strip containing the critical section,
the capacity for that strip will be very high, and the code check will be governed by that strip, regardless of
inadequate rebar content in adjacent strips. This is a limitation of the rigid method, and defining custom rebar strips
should be avoided with the rigid method. The flexible method will check any rebar configuration, see below.

One Way Shear, Flexible Method

For all foundations, the flexible method of calculating One Way Shear demands is done on a rebar zone basis. Finite
element strip lines are auto-created for every rebar zone, in each direction. These strip lines will be used to calculate
demands for each rebar zone. Demands are determined by scanning the strip line for the worst shear, including the
code defined critical section locations. When scanning the strip line for the worst shear, areas of the strip line that fall
under column locations between critical sections will be excluded. You can view exclusion areas and critical section
locations in the code check details. You can adjust the step of the strip line scan by changing Design Input > Settings
> FEA > Strip Lines > Length Stations. Capacities are also calculated on a rebar zone basis, and compared to the
worst zone shear to calculate the utilization ratio for that zone. Effective depths are calculated for the top and bottom
layers, and the minimum excluding zero is used.

Flexure, Rigid Method

Flexure, rigid method is available for isolated footings only. Demands are calculated for code specified rebar strips.
For example, if the code requires one rebar strip in the X direction and three rebar strips in the Y direction.

Flexure critical sections.

The Y direction strips create one pedestal strip and two outer strips. Demands are calculated for the top and bottom
of the pad in zones:

• Top X

• Top Y, pedestal zone

• Top Y, outer zones

• Bottom X

• Bottom Y, pedestal zone

• Bottom Y, outer zones

Multiple capacities are calculated for each user rebar strip on a rebar zone basis. In the event that the user rebar
zones do not match code specified zones, the largest demand from every code zone that overlaps a user zone will be
used to calculate the utilization ratio for the zone. Utilization ratios are reported on a rebar strip basis by selecting the
largest utilization of all the zones in a strip.

The Pad Flexure code check does not take into account the effects of loss of contact with the Rigid Method, however,
the Flexible Method does. When using the Rigid Method with the Pad Flexure code check, it is important to check the
Uplift code check utilization to ensure there is no loss of contact.

Flexure, Flexible Method

For all foundations, the flexible method of calculating Flexure demands is done on a rebar zone basis for the top and
bottom layers independently. Finite element strip lines are auto-created for every rebar zone, in each direction. These
strip lines will be used to calculate demands for each layer in each rebar zone. Demands are determined by scanning
the strip line for the worst moment, including the code defined critical section locations. When scanning the strip line
for the worst moment, areas of the strip line that fall under column locations between critical sections will be
excluded. You can view exclusion areas and critical section locations in the code check details. You can adjust the
step of the strip line scan by changing Design Input > Settings > FEA > Strip Lines > Length Stations. Capacities are
also calculated on a rebar zone basis for the top and bottom layers. Each layer demand is compared to the layer
capacity to calculate the layer utilizations for each zone.

The Pad Flexure code check takes into account the effects of loss of contact with the Flexible Method.

Punching Shear

For all shallow foundations Punching Shear checks are performed at pedestal locations. In pile caps punching shear
checks are also performed at pile locations. The punching shear check considers the following:

• Shape of the punching perimeter. Rectangular for CSA and ACI codes. Rectangular with round
corners for EC2 code.

• A circle or regular polygon pedestal or pile section is converted into an equivalent square section with
the same area for the purpose of this check.

• Distance of the punching perimeter from the pedestal or pile face.

• Location of the pedestal or pile with respect to the edges of the footing or pile cap, i.e. interior, edge,
or corner.

• Axial load from the pedestal or pile and biaxial moments, if any.

• Self-weight of the punched area.

• Self-weight of the punched area.

• Overburden pressure on the punched area.

• Soil pressure under the punched area.

• Eccentricity of the loads mentioned above with respect to the punching section.

• Portion of moments in both directions transferred by uneven shear to the footing or pile cap.

• Special design code provisions, if any.

If the punching perimeter lies outside the pad on opposite sides, a utilization of "N/C" will be shown. This means that
the utilization will not be created, and will not be considered when determining the governing code check.

Effective depth for punching shear is calculated for each layer independently. The layer with the smallest effective
depth, excluding zero is used for the check. The layer effective depth is calculated by averaging the effective depths
in both directions of all the rebar zones under the punching perimeter.
It should be noted that for pile caps, the Punching Shear Check at pedestals ignores the effect of piles located
partially or wholly under the punched area, in reducing the punching load. This can lead to conservative results.

Pile Structural Code Checks

S-FOUNDATION uses the S-CONCRETE Design Engine to perform pile structural code checks. Piles are checked
only at the pile cap face, are assumed to be pin connected and in a bi-symmetrical pile distribution.

Piles that have a regular polygon shape (hexagon, octagon, etc.) are converted into the largest circle that fits inside
the polygon when running checks with the S-CONCRETE Design Engine.

Pile structural code checks include biaxial bending, biaxial shear, axial force (compression and tension), and torsion.

Foundation Geotechnical Code Checks

S-FOUNDATION can use both the Rigid Method and Flexible Method for foundation geotechnical code checks for all
foundations with the exception of strap footings. For strap footings only the Flexible Method is supported. The Rigid
Method assumes a rigid pad, linear pressure distribution, and calculates demands from the total load: pedestal, pad
and soil weights, buoyancy forces, and the loads applied to the pedestal tops from the superstructure. The Flexible
Method calculates demands using the nonlinear compression-only spring reactions derived from a nonlinear finite
element analysis (FEA).

The foundation geotechnical code checks include soil bearing, overturning, uplift and horizontal sliding.

Soil Bearing

The Soil Bearing code check is based on allowable stress design method (ASD). The soil bearing utilization is
calculated as the ratio of the total loads to the level of the footing base divided by the gross allowable soil bearing
capacity. The gross allowable soil bearing capacity is calculated internally by adding the weight of the removed soil
(called overburden pressure) to the entered soil net allowable bearing capacity.

Horizontal Sliding

Horizontal sliding includes the effects of friction, adhesion and passive/active soil pressure.

Pile Geotechnical Code Checks

Pile Geotechnical code checks include vertical and lateral bearing capacity checks as well as uplift checks. The Rigid
Method assumes a bi-symmetrical pile distribution, calculates demands by distributing the total load to the piles, and
does not take into account pile batter. In the Flexible Method, demands are calculated from the spring reactions on
the joint connecting the pile to the pile cap, the pile distribution does not have to be bi-symmetric, and pile batter is
taken into account with joint coordinate systems. Capacities are entered by the user for compressive, tensile and
lateral resistances.

S-FOUNDATION assumes piles to be pin connected to the pile caps. The pile geotechnical shear checks consider
the extra shear due to the effects of torsion.
Intermediate Calculations

In addition to code check results, S-FOUNDATION also reports numerous intermediate calculations and quantities.
Intermediate calculations include effective rebar depths, modulus of rupture, maximum axial, tensile and compressive
resistances, overburden pressure, punching perimeter, pedestal, pad and soil weights and buoyancies, and corner
pressure and area in compression from soil pressure distribution. You can see these intermediate calculations by
drilling down into the details of each code check.

Tips & Tricks


• The Flexible Method uses finite element analysis (FEA) and takes longer to perform than the Rigid
Method. You can speed up your design process by using Rigid Methods to give you a preliminary
design, before running Flexible Methods for your final design.

• Pedestal code checks take into account changing moments along the pedestal by dividing the
pedestal into a number of evenly-spaced sections. If the maximum moment is not at one of the
pedestal ends, you will need to increase the number of sections to capture the effect of the
maximum moment. If the maximum moment is at one of the pedestal ends, you can decrease the
number of sections and speed up pedestal code checks.

Next: Quantities

Online Tutorials & Videos


© 2014 S-FRAME Software Inc.
Index > Load Cases Dialog

Load Cases Dialog


The Load Cases Dialog allows you to define and edit load cases and corresponding reaction loads for analysis/code
check.

Foundation Design

Load Cases have data related to foundation design. This data can be found by expanding the Foundation Design
property. In the Foundation Design property you can choose to run load cases for design, set acceptable utilizations
and assign substructure load factors.

Reaction Loads
The dialog contains two tabs, one for Load Case data and one for the Reaction Loads for the load case. To view/edit
the reaction loads, switch to the Reaction Loads tab. You can also view the reaction loads graphically using the
Reaction Load Tool.

The Reaction Load Tab.

Load Cases and Reaction Loads imported from S-FRAME are read-only; to include editable reaction loads in S-
FOUNDATION, you will need to create new Load Cases in S-FOUNDATION. Reaction Loads are created
automatically for new Load Cases when a Foundation is created, but are assigned default load values. Edit Reaction
Loads after creating Load Cases and Foundations.

For more information about Load Cases, please see Load Cases And Combinations.

For more information about using define dialogs, please see Standard Definition Dialogs.

Next: Load Combinations Dialog

Online Tutorials & Videos


© 2014 S-FRAME Software Inc.

Index > Load Cases and Combinations

Load Cases and Combinations


S-FOUNDATION load cases and combinations can be entered by you or automatically created by opening S-FRAME
models and their associated superstructure finite element analysis (FEA) results. S-FOUNDATION load cases
contain acceptable utilizations for structural and geotechnical checks, loads from the superstructure applied to the
pedestal tops, surcharge loads, and additional loads for foundation weight, soil weight and buoyancy. S-
FOUNDATION load combinations use the factors applied to the combination load cases to calculate pedestal loading,
surcharge and weights. Load cases and combinations can be excluded from code checking, or can be used for
structural checks, geotechnical checks or both.

S-FRAME Load Cases and Combinations

Opening S-FRAME models in S-FOUNDATION will import the model superstructure, load case and load
combinations. Reaction forces from the S-FRAME results will be negated to create the superstructure loads applied
to the pedestal tops. These reaction forces will be added to additional substructure loads. By default, imported load
combinations are set to run both geotechnical and structural checks whereas load cases are not.

When importing load cases, the foundation weight factor is identical to S-FRAME's Z Gravitational Factor but
opposite in sign. Substructure loads, including surcharge loads, and concrete and soil weight (accounting for
buoyancy) are applied to S-FRAME load cases having a non-zero Z-Gravitational Factor by default.

When importing load combinations, load combination load case factors are imported from S-FRAME load
combinations. The combination substructure loads are combined by summing each of the factored load case’s
substructure loads.

After import, you can change the acceptable utilization and code check run status of load cases and combinations,
and with the exception of foundation weight, you can include/exclude additional loads as required.

Importing nonlinear static load cases and load combinations with S-FRAME's incremental results option checked
creates S-FOUNDATION load cases and load combinations with total accumulated results for each load case and
load combination. Importing time history and moving load cases and load combinations produce S-FOUNDATION
load cases and load combinations with results for each time step / moving load step and will produce utilizations for
each step, but will use the governing utilization for results. Vibration and Buckling analyses are ignored during import.

User Defined Load Cases and Load Combinations

Load cases and load combinations may also be created directly by you through tools, dialogs, spreadsheets or
through scripts and by reading files through the OPEN API.

When creating user load cases, you set the load case foundation weight factor, include/exclude additional loads and
set the loads at the pedestal tops.

When creating user load combinations, you set the load cases and factors to include in the combination. Loads at the
pedestal tops and additional loads are created by summing the loads for each load case multiplied by the load case
factor.

Tips & Tricks


• Load cases allow you to include/exclude additional loads with a checkbox. To allow factors for additional
loads other than 1 or 0 (include/exclude), click the Design Input Window > Settings Tab > Settings >
Load Case > Factor Additional Loads.
• Load combinations will calculate additional loads by summing the results of multiplying the additional loads
of each combination load case by its combination factor. To allow additional load factors to be different
than this calculation, check Design Input Window > Settings Tab > Settings > Load Case > Custom Load
Combination Factors.

• Load cases imported from S-FRAME have their code check run status set to off when there are load
combinations, and on, when there are no load combinations. Load combinations imported by S-FRAME
have their code check run status set to on. To change these import settings go to Settings Window >
Application > S-FRAME Import > Run Load Cases.

• Load cases and combinations imported from S-FRAME will create loads for the pedestal tops from all the
imported support/spring reactions, regardless of whether or not the support has a foundation attached to
it. User defined load cases, on the other hand, will make pedestal loads only for joints that have
foundations attached to them. To edit the pedestal loads for user defined load cases, you must first add
foundations to your model.

• Default load cases that are defined when a new model is created have a foundation weight of 1. On the
other hand, new load cases that are added to the model have no foundation weight.

Next: Surcharge Areas and Loads

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Surcharge Areas and Loads

Surcharge Areas and Loads


Surcharge areas and loads are used to model the additional loads your foundations may experience from vehicles,
machinery or other live and dead load sources. Surcharge loads are considered only when using the Flexible Method
of foundation design and will not be considered when using the Rigid Method of foundation design.

Surcharge Areas

Surcharge areas are polygons defined in the global coordinate system that represent the shape of an area that can
be loaded. Surcharge areas can be any shape, may overlap and contain holes, may exceed foundation dimensions
and may intersect multiple foundations.

There are two methods of surcharge area creation: Default and General. The Default method automatically creates a
surcharge area in the shape of a foundation pad and generates holes in the surcharge area for each pedestal in that
foundation. The General method allows the user to create any shape surcharge area by clicking on grid intersections,
in a similar way to creating panels in S-FRAME, and can add holes of any shape. To exclude the pedestal areas in
the general method, the user should add holes for the pedestals.
Surcharge Loads

Surcharge loads are pressures applied to surcharge areas on a load case basis. When using the Flexible Method of
design, the surcharge loads are decomposed into joint loads and applied to the foundation mesh during a finite
element analysis (FEA). The loads applied to overlapping surcharge areas will be summed. Surcharge loads will not
be considered when using the Rigid Method of foundation design.

It is possible to create and load surcharge areas that exceed the physical dimensions of a foundation or intersect
multiple foundations. The surcharge load decomposition algorithm will ignore the effect of the surcharge load in the
space between foundations with very good accuracy; however the most accurate decomposition requires defining
surcharge areas that do not exceed the physical shape of the foundation.

Tips & Tricks


• When modeling large objects that would create surcharge loads over multiple foundations, model
the load as one large area rather than creating an area on each foundation for the portion of the
surcharge area over that foundation. This will save you time and be almost as accurate as
modeling the area over each foundation as a separate area.

• Use the default method of surcharge area creation to quickly cover an entire foundation and
automatically create holes for pedestals.

Next: Finite Element Model

Online Tutorials & Videos


© 2014 S-FRAME Software Inc.

Index > Standard Definition Dialogs

Standard Definition Dialogs


Most definition dialogs follow the same standard format: an object list on the left with the selected object's properties
displayed on the right.
To add or remove an object to or from the model, click the Add/Remove button at the bottom of the object list. Click
the Copy button to create a clone of an existing object (this is useful for creating similar objects with a small number
of changes).

Note that as you change the selection on the left, properties on the right are updated to reflect the selected object.
Here you may edit properties that are not read-only (i.e. grayed out). To apply changes without closing the dialog,
click Apply. To apply changes and close the dialog, click OK. To close the dialog and discard any unapplied changes,
click Cancel or Close.

Next: Units Dialog

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Units Dialog

Units Dialog
The Units Dialog allows you to define unit settings for the current model.
Note that there are two sets of available units: File and Display. Setting the File units will automatically set the Display
units to the same values. If you just want to temporarily change units for easier visualization or data display, you can
modify the settings for Display without converting the underlying model. This will avoid precision errors that can arise
from converting the model to one set of units and then back to the original set.

To set the units to a default metric or imperial system, click the "Set Metric" or "Set Imperial" button.

Next: Materials Dialog

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Materials Dialog


Materials Dialog
The Materials Dialog allows you to define and edit materials.

Materials defined in S-FRAME will have their properties set to read-only whereas materials created in S-
FOUNDATION will be editable.

The optional Cost field is used for calculating material cost in the Quantities results. For more information, please see
Code Checks.

For more information, please see Standard Definition Dialogs.

Next: Base Plates Dialog

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.


Index > Base Plates Dialog

Base Plates Dialog


The Base Plates Dialog allows you to define and edit base plates associated with foundation pedestals.

For more information, please see Standard Definition Dialogs.

Next: Pads / Pile Caps Dialog

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Pads / Pile Caps Dialog

Pads / Pile Caps Dialog


The Pads / Pile Caps Dialog allows you to define and edit pads and pile caps.

Data for pad / pile cap dimensions, centroid offsets, and rebar configuration can be edited here.

Filter

The filter drop-down at the top-left of the dialog contains 3 options for displaying data.

• Pads - Only displays pads


• Pile Caps - Only displays pile caps
• Pads / Pile Caps - Displays both pads and pile caps

Foundation View

Because different foundations with different pedestals can reference the same pad / pile cap, the Foundation setting
lets you view what the pad looks like associated with the selected foundation. If you have just created a new pad that
is not being referenced by any foundation, the only option available is None.
Hide/Show Rebar

To change whether or not the rebar for the pad / pile cap is visible, go to Tools menu of the Pads / Pile Caps Dialog
> Settings to open the Settings dialog. Then go to Show > Rebar and set the boxes to checked for visible, or
unchecked for hidden.

Auto-Calculate Rebar

If you click the 'Auto-Calculate' button in the Rebar section of pad/pile cap properties, S-FOUNDATION will
automatically assign a basic rebar configuration suitable for the current pad/pile cap dimensions. This calculation also
considers the minimum steel area requirements for temperature.

For more information about pad rebar, please see Pad Rebar.

For more information, please see Standard Definition Dialogs.

Next: Pedestals Dialog

Online Tutorials & Videos


© 2014 S-FRAME Software Inc.

Index > Pedestals Dialog

Pedestals Dialog
The Pedestals Dialog allows you to define and edit foundation pedestals.
Data for pedestal dimensions and rebar configuration can be edited here.

For more information, please see Standard Definition Dialogs.

Next: Piles Dialog

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Solver Output Window

Solver Output Window


The Solver Output Window displays output from the Finite Element Analysis solver.
For more information, please see Finite Element Analysis.

Next: Record Playback Window

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Record Playback Window

Record Playback Window


The Record Playback Window allows you to traverse a list of all transactions stored by the Model. It also allows you
to save all the objects in the current Model as a Python script.
Menu

Name Description

Export Generates a python script that recreates the model. The script is then saved and opened
Python in the Script Editor.

Settings Opens the Settings Dialog for the Record Playback Window.

Settings Dialog

Name Description

File Open "Embed Command" generates code to open the file, whereas "Extract Objects"
Commands generates code to create the objects contained in the file.
If enabled, generates code to create the model in its final state. Otherwise, generates
Export Final
code that traces through each transaction (i.e. insert, update, or delete) to create the
State
model.

Transaction List

The leftmost panel of the Record Playback Window contains a list of all transactions stored in the model. Double-
clicking a transaction in the list will change the Model's current state to that of the selected transaction. This is
equivalent to undoing or redoing to the desired transaction. If you modify the Model in any way (creating a foundation
for example) while not on the last transaction, all transactions after the current selected will be cleared.

A '*' indicates the current transaction. Selecting a transaction (single-click) will cause the Transaction Breakdown
(middle panel) to be updated.

Transaction Breakdown

The middle panel of the Record Playback Window contains a breakdown of all the objects inserted, updated and
deleted by the transaction. Selecting a specific object will cause its information to be displayed in the Object Details
(rightmost panel).

Object Details

The rightmost panel of the Record Playback Window contains the details of any object selected in the Transaction
Breakdown (middle panel).

Next: Script Editor Window

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Script Editor Window

Script Editor Window


The Script Editor displays the current Python script for editing.

Quick Menu
Icon Name Description

New File Creates a new, empty script.

Open Opens an existing script.

Saves the current script. If more than one script is open, saves the script
Save
in the currently active tab.

Save As Saves the current script and allows you to specify a different file name.

Save All Saves all open scripts.

Run Script Runs the current script. Output will be sent to the Script Output Window.

Run All Scripts Runs all open scripts. Output will be sent to the Script Output Window.

Unindent Selection Decreases the indent of the selected text by one tab.

Indent Selection Increases the indent of the selected text by one tab.

Comment
Comments out the selected lines (prepends a '#').
Selection

Uncomment
Uncomments the selected lines (removes a '#').
Selection

Print Prints the current script.

Tabs

Multiple open scripts are represented by tabs in the Script Editor.

You can double click the tab to rename the script.

Tab Menu

Right-clicking a tab provides additional options:


Name Description

Save Saves the current script.

Save As Saves the current script and allows you to rename the file.

Close Closes the current script.

Close All But This Closes all scripts except for the current script.

Close All Closes all scripts.

Copy Full Path Copies the full file path of the current script.

Open Containing Folder Opens the folder containing the current script.

Context menu

A context menu is available by right-clicking the Script Editor Window. Menu items are described in detail below.

Name Description

File Controls to create, open, save, and print files.

Edit Controls to cut/paste, undo/redo, find/replace, go to a line number, and select/deselect.

Controls to tab/untab selection, indent/unindent selection, comment/uncomment selection,


Advanced
and collapse/expand all.

Bookmarks Controls to toggle a bookmark, navigate to next/previous bookmark, and clear bookmarks.

Mouse Operations

Set current editing position

Left Mouse Button Click. Click in the Script Editor with the left mouse button to place the caret at a particular location.
This sets the current editing position.

Select text

Left Mouse Button Drag. Click in the Script Editor and move the mouse to select desired text.

Open a Saved Script

Left Mouse Button Drag + Left Mouse Button Release. Drag and drop the script onto the Script Editor. This is
equivalent to clicking Open from the tab menu or File > Open from the context menu.
Code Snippets

Code snippets are pre-defined blocks of code that make it easier to script and create Toolbox Extensions and
Wizards. To access the Code Snippet menu, press Ctrl + ~ while the Scripting Window has focus. The snippet menu
can be navigated using either the enter and arrow keys, or by double-clicking the left mouse button.

The first page of snippets contains definitions for simple python definitions and logic statements. The Toolbox folder
contains definitions for Toolbox Extensions, Wizards, WizardPages, and everything needed to customize them.

Creating a Toolbox Extension With Code Snippets

It is quite easy to create a Toolbox Extension using Code Snippets. The following tutorial will explain how to create a
Toolbox Extension that creates a pad using the Script Editor's built-in Code Snippet menu. To view the finished
version of this tutorial, see CreatePad.py.

Start with a new script file, and save it to Documents\S-FRAME Software\S-FOUNDATION 2014\Toolbox\. Press
Ctrl + ~ to open the Code Snippet menu and navigate to the Toolbox folder.

Import statements at the top of a python script allow access to S-FOUNDATION's internal functionality. The Common
Imports code snippet contains the most commonly referenced namespaces. Next, open the snippet menu again, and
navigate back to the Toolbox folder. Select Extension to insert the bare framework for a Toolbox Extension into the
script.
Next, create an empty line between the <data> tags. Open the snippet menu, navigate to the double folder
(Toolbox > Parameters > double), and select the double parameter. Repeat this twice more, for 3 total double
parameters.

Now it's time to give all of the default parameters meaningful names, and create the body of the Extension method.
At this point, we have a functioning Toolbox Extension that can be accessed from Tools > Toolbox > User > Create
Pad. But we can use snippets to add more features to the existing Extension.

Create an empty line underneath the first line of the Extension declaration (line 6 in the example below). Open the
snippet menu, navigate to the Toolbox folder, and select the Row Grid option.

Select everything between (and including) the <data> tags, and paste it between the second set of <row> tags.
Also, change the height value in the last <row> tag to Auto.
Row heights (and column widths) can contain 1 of 3 values:

Name Description

This indicates the row or column takes up all remaining space. Having 2 rows of
*
height="*" means they will both take up half the available space.

This indicates the row or column should only take up as much space as is needed to
Auto
display the content contained within.

Decimal Value This indicates the row or column should take up exactly the amount of space
(ie: 200) specified.

Create an empty line underneath the first <row> tag (line 8 in the example below). Open the snippet menu, navigate
to the Toolbox folder, and select the Drawing option.
Now change the default values in the width, depth and height properties of the newly added rect object. These values
must match the double parameters that were added to the extension in an earlier step.

Because this Extension only adds a pad to the model, and not a complete foundation, we can add a note to users of
the Extension explaining how to use the pad with a new foundation. Create an empty line underneath the last <row>
tag (line 20 in the example below). Open the snippet menu, navigate to the Toolbox folder, and select the Note
option.
Between the <note> tags, add the information we want to provide:

To use this pad, select ID 1 from the Pad dropdown in the Tool Window.

Now that we have added content to the rows of the grid, we should make the Extension larger so that everything can
be displayed properly. This is done by adding height="600" to the Extension declaration.
The Extension is now complete! Save the python file, and access the Create Pad menu item from Tools > Toolbox
> User.
Tips & Tricks
• When adding an import statement at the top of a script, you can see the list of available classes for the
namespace by pressing Ctrl + Space after "from [namespace] import".

Next: Script Output Window

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Script Output Window

Script Output Window


The Script Output Window displays output from the current Python script.

Quick Menu
Icon Name Description

Save Saves the current text of the Script Output.

Next: Legend Window

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Legend Window

Legend Window
The Legend Window allows you to choose a legend for viewing ranges of discrete values of object data in the Visual
Editor Window.

Select a node in the tree to view its corresponding ranges highlighted in the Visual Editor Window.
You can move the legend in the Visual Editor Window by clicking and holding the left mouse button while it is over the
legend. Select the None node to clear the current legend.

Next: Help Window

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Templates

Templates
When creating a new model with File menu > New, S-FOUNDATION creates some default objects and design
settings. You can override the defaults used in File menu > New by creating a Template. Templates can include
definitions for Project Info, Units, Soil, Materials, Rebar, Pads, Pedestals, Base Plates, Piles, Reports, Grid Systems
and Design Settings.

The Template file format is SFRMT.

Template Preferences

Preferences for Templates can be found in the Preferences Window > Application > Templates. The Template
preferences allow you to use templates, set the Template path and choose which objects to include when saving a
Template. The "include" check boxes do not affect previously saved Templates.

Template Preferences.

Creating and Saving Templates

To create a Template, set up your model with the objects and design settings you want in the Template. Go to the
Template preferences and choose the objects to include. Save the Template by clicking File menu > Save Template.
Remember the location of where you are saving the Template. Go to the Template preferences and check "Use
Templates on File New". Set the Template Path: click the ellipsis button and navigate to the template you just
created. Now click File menu > New and the template will be loaded.

Click File > Save Template to Save a Template.

Loading Templates

The Template identified with the Template Path preference will be loaded every time you click File menu > New. You
can also load a different Template at any time by clicking File menu > Load Template.
Click File > Load Template to load a different Template than the one set in the Template Path.

Next: Importing Third-Party Models

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Importing Third-Party Models

Importing Third-Party Models


S-FOUNDATION includes powerful BIM links to help import and export information in and out of S-FOUNDATION
and 3rd party software.

In addition to the BIM links, all S-FOUNDATION objects and properties are accessible through dialogs and
spreadsheets that support copy/paste operations, and through the S-FRAME OPEN API which gives direct access to
the S-FOUNDATION model through a Python scripting. You can perform file read operations in a python script to
extract a model from a Comma Separated Value (CSV) file and insert the model directly into S-FOUNDATION.

An Import Spreadsheets Dialog allows users to import an entire model, including the superstructure, numerically with
copy/paste as one undoable operation. You open this dialog through the File menu > Import Spreadsheets.

Please see Revit Link for more information on importing Revit documents.

Next: Customization and Automation


Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Customization and Automation

Customization and Automation


S-FOUNDATION allows you to customize, automate, reproduce and share your workflow and best practices using
powerful tools that expose all S-FOUNDATION functionality including:

• Application, design and display settings


• Foundation and superstructure objects and properties
• Analysis and code checks engines
• Analysis and code check results
• Import and export of files
• Excel and PDF report generation
• Extensive 3D and 2D math libraries

Since all functionality is exposed, your ability to customize and automate is limited only by your imagination. For
instance, you could automate the task of reading a file to extract column shape, column location and support loading,
determine initial foundation pedestal size from column shapes, iteratively increase the size of pads until they pass soil
bearing capacity, determine the minimum area of rebar steel required using the pad thickness requirement for one-
way shear, or automate an entire design with constraints. The sky is the limit.

Customization and automation in S-FOUNDATION is done through the S-FRAME Open API using a number of tools
including: Toolbox Extensions, Recording/Playback and an Integrated Development Environment (IDE) for Python
Scripting.

Toolbox Extensions

Toolbox Extensions are utilities that add new functionality and are run by the click of a menu button inside S-
FOUNDATION. They are created by S-FRAME Software or by end users and are created, edited, shared,
downloaded and installed after release to increase functionality without changing software versions.

Toolbox Extensions hide the complexity of implementing functionality from the end user and prevent accidental
modification, but since they are python scripts underneath the hood, they can be opened, modified and saved in an
editor. Python scripts can become Toolbox Extensions by including a special header and are easily installed by
placing them in the Toolbox Extension folder.

Titles and descriptions imbedded in Toolbox Extensions are shown in the S-FOUNDATION menu and explain to the
end-user what the extensions do. The user may be prompted for various parameters for Toolbox Extensions through
a dialog, complete with default parameters and expected units. Toolbox Extensions can be combined into multi-step
wizards that support branch and looping logic, as well as 3D rendering.

The folders to install Toolbox Extensions may be opened by right clicking Toolbox Extension menu items.

Please see Existing Toolbox Extensions for information on the Toolbox Extensions that S-FOUNDATION comes with,
and Automation Tutorial for instructions on how to create your own Toolbox Extension or Wizard.

Record/Playback

The Record/Playback Window records every model transaction, including file new, file open, unit changes, and model
insert, update, and delete operations. The recorded transactions represent what you can undo and redo, and the
Record/Playback window allows you to skip forwards or backwards to any transaction. In the Record/Playback
Window you can inspect transactions to see the state of transaction objects.

Transaction recordings can be output to a python script. This allows you to easily reproduce a model without having
to input it again, and makes it easy to tweak and adjust the model to suit changing situations. Outputting a recording
into python is the easiest way to start scripting. It saves you the time of typing object properties from scratch and is a
great tool for learning about what properties are available. With a little logic, you can turn your transaction recordings
into powerful python scripts and Toolbox Extensions that automate and encapsulate your expertise.

Please see Automation Tutorial for instructions on how to use the Record Playback window to automate the creation
of isolated footings.

Python Scripting

S-FOUNDATION contains an Integrated Development Environment (IDE) that exposes the entire S-FRAME Open
API to python scripts and gives the user complete access to all settings, model objects, analysis and code check
engines and results.

The Python IDE includes:

• Script editor
• Script output window
• Auto-completion and indentation
• Syntax highlighting
• Single script or batch mode
• Errors output as hyperlinks to line in script
• Example scripts and tutorials

Python scripts are very powerful because they expose the complete S-FRAME Open API. In a Python script you can
open S-FRAME superstructure models and analysis results and insert them into the S-FOUNDATION model. You
can dynamically create objects, like foundations, materials, rebar, joints members, panels, loads, load cases and load
combinations and insert them into the model. Once inserted, model objects can be inspected, updated and deleted.
Many objects, such as foundations, create and manage their finite element (FE) model for you once they have been
inserted.
You can perform a code check or finite element analysis in a script and afterwards retrieve the results, or output an
Excel or PDF report. Since python is a fully featured programming language, you can create logic for design
increments and constraints and loop through code check iterations until your requirements are met. All the
application, design and display settings are available so you can fully automate your workflow and even your
graphical user interface.

The S-FOUNDATION Python engine is IronPython and it currently supports Python 2. IronPython is tightly integrated
with Microsoft’s .NET framework, and can make use of the extensive .NET Framework libraries as well as python.

Please see Automation Tutorial for instructions on how to use python scripting to automate the creation of isolated
footings.

Tips & Tricks


• Use the mouse to create a foundation, and then use the Record/Playback Window to output that
foundation to a Python script. This gives you a starting place for scripting, and will list out all the
object properties so you do not have to type them in.

• Use the Help Window to browse the S-FRAME Open API. The help window contains
documentation on all of the API objects, properties and methods.

• Make use of the extensive libraries that come with S-FRAME Open API and the .NET framework in
your scripts. Often the job you need to do already is exposed through these APIs.

Next: Rules

Online Tutorials & Videos


© 2014 S-FRAME Software Inc.

Index > Rules

Rules
Rules are a powerful feature in S-FOUNDATION that allow for the automatic filtering of objects based on user
specified criteria. These filters can be applied to selections, visibility sets and groups defined in the Groups Window.

There are two types of Rules: Property Rules and Logic Rules.

Property Rules

Property Rules are applied directly to an object collection to create a subset of the collection based on a certain
property value. For example, you can limit what is visible in the Visual Editor to only joints at an elevation greater than
0, or only members of type 'Beam'.

To define a Property Rule, go to Define > Rules. Select the object type for the new rule and click 'Add'. Data for your
new rule will appear.
Select the property you want to apply the rule to and enter the desired criteria.

There are several types of property criteria:

Property values can be equal, greater than, or less than a specified numeric
Numeric criteria value or may fall into specified ranges.

Property values may equal, contain, start with or end with a specified
String criteria
alphanumeric value.

Choice criteria Property values must belong to a subset of selected enumeration values.

Boolean (True/False)
Property values must match a true/false condition.
criteria

Appropriate criteria fields for the property type will be automatically shown based on the selected property. Note that
Numeric, String and Choice rules may also be inverted to match the exact opposite condition specified. For instance,
if you want to show all panels that are NOT of type 'Mesh', you can create a rule for panels with a panel type Mesh
and then check the 'Invert' checkbox.

Logic Rules

Logic Rules are special rules which allow for the combination of existing Property and Logic Rules. For example,
somebody may want to show all members of type 'Beam' with IDs between 100 and 200 as well as all joints with IDs
above 1000. This can be accomplished by doing the following:

1. Create a Property Rule for members of type 'Beam'


2. Create another Property Rule for members with IDs in the range of 101-199
3. Create a third Property Rule for joints with IDs greater than 1000
4. Create a Logic Rule combining the three Property Rules: Rule 1 AND Rule 2 OR Rule 3

Note the logical operators between rules: 'AND' means that both surrounding conditions must be met to pass the rule,
whereas 'OR' will pass the rule if one (or both) conditions are met. When combining Property Rules for different
object types (e.g. members and joints), only 'OR' is applicable.
When there are more than two logical operators, they are always evaluated in order from top to bottom; for example,
in this case the 'AND' between rules 1 and 2 is evaluated before the 'OR' preceding rule 3.

Using the Rules

Selection and Visibility

To select objects by rule, go to Selection > Select > Special... and choose the desired Property or Logic Rule. To
show objects by rule, go to Selection > Show > Special... and choose the desired Property or Logic Rule.

Note that you may do the exact opposite by going to Selection > Unselect > Special... or Selection > Hide > Special.

Rule Groups

Rule Groups are a powerful way of creating dynamic groups that contain only grouping-enabled items which pass an
assigned rule. To create a Rule Group, right-click on the 'Groups' folder in the Groups Window and choose 'Create
New Rule Group'.

Pick the rule you want to assign to the group and click 'OK'.
After assigning a rule to the group, the group will automatically contain only items which pass the rule and will be
updated whenever the model changes.

Next: Home Page

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Automation Tutorial

Automation Tutorial
There are several automation features available in S-FOUNDATION, and the creation and analysis of any object can
be automated. There are 3 ways to automate tasks in S-FOUNDATION:

Name Description

Python scripts allow the user direct access to all of S-FOUNDATION's publicly visible
Python API (Application programming interface) objects and functions. Python can be created
Scripts from scratch in the Script Editor window, or generated from the transactions stored in the
Record Playback window.

Toolbox Extensions are a way to provide user input to python methods. They are single
Toolbox
use, and can be created by prepending special XML comments in front of the python
Extensions
method declaration.

Toolbox Toolbox Wizards are similar to Extensions, but provide multi-page functionality, and
Wizards allow for things like conditions (if-else) and loops (while, foreach).

Toolbox Wizards and Extensions can also be created quickly by using the Scripting Window's Code Snippets feature.

Below is a tutorial on the creation of isolated footings using multiple automation tools.

Create a Python Script From the Record Playback Window

See CreatIsolated1.py for an example file of the finished product of this tutorial.

Step 1

Use the Isolated Footing Tool to create a custom footing.


Step 2

Go to the Record Playback window, and select Export -> Python.


Step 3

Save the Python output to the Toolbox folder located at My Documents > S-FRAME Software > S-FOUNDATION
2014 > Toolbox.

Let's choose the filename CreateIsolated.py.

Step 4

Open the Script Editor and examine the Python code.


You can see on lines 36 - 40 that some basic properties of a pad are being set. The width, depth and thickness that
we specified in the Isolated Footing tool are specified here.

pad1 = Pad(1)
pad1.Width = 4000
pad1.Depth = 2500
pad1.IsPileCap = False
pad1.Thickness = 500

You can also see at lines 23 and 24 the joint coordinate where we created the footing.

joint1.X = 5
joint1.Y = 5

At this point you have created a python script that automates the creation of a single Isolated Footing. You can
generate an Isolated Footing with this script at any time by altering the properties of the objects created in the script.
For instance you could change the pad dimensions, or the joint location. Try changing some properties and run the
script. Congratulations, you have just automated your first process!

Scripting in Python gives you access to the full S-FOUNDATION API, and exposes not only objects and properties,
but also methods like running a code check. In addition, you can take the Record/Playback output and add
programming logic to create powerful scripts that add new functionality to S-FOUNDATION. For instance you could
read joint locations from a file, loop on those joint locations and creation multiple Isolated Footings at those location
all in the script.

Python scripts are powerful, but expose their complexity directly to the user by requiring the user to edit and run the
script. This can lead to errors, especially if the script is shared among many people. You can encapsulate your
python script into a user-friendly dialog that runs from the S-FOUNDATION menu with the click of a mouse button.
You do this by turning your python script into a Toolbox Extension.

Create a Toolbox Extension From a Python Script

See CreateIsolated2.py for an example file of the finished product of this tutorial.

Step 1

Let's start creating the Toolbox Extension.


Start by declaring a method named CreateIsolated. Right above the comment # Transaction 1, insert
the following line:

def CreateIsolated():

Step 2

In python, code is considered "part" of a method when it is indented by one underneath that method declaration.
Select all lines after the CreateIsolated method declaration, and press "tab" or the indent button on the Script Editor
window.

Step 3

Next, we have to indicate that a Python method is also a Toolbox Extension.


Right above the CreateIsolated method definition, insert the following lines:

## <extension title="Create Isolated" description="Creates an isolated


footing.">
## </extension>

This declares the method CreateIsolated as a Toolbox Extension. The <extension> XML tags are
prepended with a double hash ##. A title is required within the extension tag (we used "Create Isolated"). A
description is optional, and will show up when the extension menu item tool tip.

Step 4

We can now access our new Toolbox Extension from the S-FOUNDATION menu at Tools > Toolbox > User >
Create Isolated.
The menu item tooltip displays the contents of the description tag as explained in step 3.

Step 5

Click the menu item to run the extension.

An isolated footing has now been created with the same properties, and at the same location as the footing we
created in step 1.

Step 6

Toolbox Extensions can prompt the user to input data.


We are now going to modify the extension declaration we created in step 3 to allow the user to specify the X and Y
co-ordinates of the isolated footing created by the extension. Right above ## </extension>, insert the following
lines:

## <data>
## <parameter type="double" name="x" text="Joint Position X" />
## <parameter type="double" name="y" text="Joint Position Y" />
## </data>

Parameter declarations must be inside of data tags. We will declare both parameters as type double to allow
decimal values. The names of the variables will correspond to their axes, and we will add more descriptive values for
the text attribute (which is displayed to the user in the data grid).

We also have to add two variables to the method signature that we created in step 3. These variable names must
correspond to the name attribute of the parameter declaration.
In this case, the variable names are x and y. Between the parentheses, Replace the line def
CreateIsolated(): with the following line:

def CreateIsolated(x, y):

Step 7

Now we can add a few more attributes to the parameters we declared in step 6.

Let's add some help text to provide additional information about the parameter (which will be displayed as a tooltip
when hovering over the grid). Additionally, if the parameter is a type with a unit, we can specify that in the
unitType attribute. Lastly, we can specify a default value for the parameter in both metric and imperial units.

Starting at the first parameter element, right after <parameter type="double" name="x"
text="Joint Position X", add a space and insert the following code:
helpText="The X position of the joint." unitType="Length" default="5m|5ft"

We'll do a similar thing for the second parameter element. Right after <parameter type="double"
name="y" text="Joint Position Y", add a space and insert the following code:

helpText="The Y position of the joint." unitType="Length" default="5m|5ft"

Parameters have a number of attributes that can be specified:

Name Description

Values can include int (whole number), double (decimal number), bool (true/false),
type
string, or SFrame.Components.ComponentEnum (creates a drop-down with all items of
(Mandatory)
that component type).

name
The name of the variable used by the Python method.
(Mandatory)

helpText Provides additional information about the parameter.

Indicates that the parameter should have a unit when displayed. Values can include
unitType
Length, LengthSmall, Density, Angle, Pressure, and PressurePerUnitLength.

The default value of the parameter. Metric and imperial values are separated with a '|',
default and need to contain the unit. If the unit type is Angle, there is only one value (so no '|' is
needed) and there is no unit required.

Step 8

Once we have added parameters to our Toolbox Extension, we can now assign them to variables within the Python
script. For instance, in the example below, we are taking the parameter we defined as having name x and assigning it
to joint1.X. When the Extension runs, whatever the user specifies for that parameter will be assigned to the joint
location X property.
For the lines setting the X and Y properties of the joint, change the value of '5' to the corresponding variable names.

joint1.X = x
joint1.Y = y

Now save the Python file.

Step 9

Run the CreateIsolated extension again. You will notice a dialog prompting you to enter X and Y values.
Change the default values to 10 and press OK.

Step 10

You will notice that the footing we created back in step one has been re-created, but at grid location 10, 10 instead of
its original location.

You have now created a Toolbox Extension that automates the creation of a single Isolated Footing and
encapsulates that process in an easy to use dialog. You may wish to allow the dialog to create more than one
isolated footing with this extension. You could do this by adding multiple properties for joint locations in the extension,
but this would require you to know how many footing to create beforehand. A more reusable way would be to allow
the user to enter joint locations until they are done adding footings. You can add logic and loops to your Toolbox
Extensions by turning them into Toolbox Wizards.

Create a Toolbox Wizard From a Toolbox Extension


See CreateIsolated3.py for an example file of the finished product of this tutorial.

Step 1

What do we do if we want to create that footing in multiple locations without having to run the extension multiple
times? The next step is to convert our Toolbox Extension into a Wizard.

Toolbox Wizards consist of two parts:

• A wizard declaration that indicates all the methods used, as well as the logical order those methods are
processed.

• A number of wizardpage declarations, similar in form to a Toolbox Extension declaration.

We can give our Wizard a title and a description, so let's call it "Isolated Footing Wizard".

## <wizard title="Isolated Footing Wizard" description="Wizard for


creating isolated footings.">
## </wizard>

We will now add the method created in step 5 (CreateIsolated) to the method declarations. The method declaration
code goes between the wizard tags, and looks like this:
## <methods>
## <method name="CreateIsolated" />
## </methods>

There is an optional property path that can be added to the method declaration if the wizardpage is located in
another file. By default, the Wizard assumes all method declarations are located in the same file as the Wizard.
Specifying the path looks like this:

## <methods>
## <method name="CreateIsolated" path="OtherFile.py" />
## </methods>

For the logic used by the wizard, we want to simply create isolated footings at user-provided co-ordinates until the
user is done. This is accomplished by starting a while loop, and adding the CreateIsolated method
underneath it indented by 1. All methods underneath a while declaration with an indent greater than that of the
"while" will be repeated until the user wishes to continue. The logic declaration goes between the wizard tags,
underneath the method declarations.

## <logic>
## while
## AddJoint
## AddPad
## CreateIsolated
## </logic>

We now have to have to change the extension tags above the CreateIsolated method to wizardpage to
indicate that CreateIsolated is part of a Wizard. Additionally, we have to add the variables wizard and loop to the
method signature of CreateIsolated.

• wizard is a collection of WizardPage objects, and contains all items that have been added by previous
Wizard pages. Using wizard[0] will index into the first page of the wizard, and calling wizard.GetMerged()
will return a collection of all objects added by all previous Wizard pages.

• loop is an integer value indicating how many times the current method has been repeated. This variable is
0 for most methods, and will only be non-zero for methods that are inside while loops.

There are two additional conditionals that can be used in logic declarations:

• if %methodname%
%method2%
else
%method3%
If %methodname% returns a value of true, %method2% will be run, otherwise %method3% will be run.

• foreach Pedestal %methodname%


%methodname% will be run for every pedestal that has been previously added to the wizard collection.

For an example on how to use if and foreach in logic, you can refer to the built-in Wizard "Foundation
Wizard" available at Tools > Toolbox > Import > Foundation Wizard. Right-click the menu item and select Open
Location to view the file.

If you want your Wizard to clear the model before executing, add the property clearModel="true" to the
Wizard declaration. Your XML will look like this:
## <wizard name="wizardName" description="wizard description"
clearModel="true">
## ...
## </wizard>

If clearModel is set to true, and the model has unsaved changes, the user will be prompted whether or not to
save before proceeding with the Wizard.

Step 2

Next we will have to modify the code in CreateIsolated.

Delete the line calling FileNew on the Model, and remove the declaration of the inserted collection.

Step 3

At the bottom of the method, remove the call to App.Model.Insert, and to App.Gui.SetCamera.
Step 4

Now press Ctrl-H to replace all instances of inserted with wizard.


This is because we are not going to insert into the model until we have all of our objects ready, and the wizard
object is our new collection.

Step 5

Now press Ctrl-H to replace all instances of (1) with (loop).


This is because we are going to have multiples of the same types of objects and we want them to be identified
uniquely.

Step 6

Finally, we scroll to the bottom of the method, and replace the ID assignments for JointID, PedestalID, BasePlateID
and PadID with loop (instead of 1). SoilProfileID will stay at 1.
Now save the Python file.

Step 7

Once S-FOUNDATION has re-started, go to Tools > Toolbox > User.

You will notice that our old extension has disappeared, and that the new Wizard we have created (Isolated Footing
Wizard) has appeared at the bottom of the menu.
Step 8

Run the wizard.

You will now be prompted to specify the grid location that the isolated footing will be created to.

Press Add Another and enter 10 for the x and y values. Press Add Another and enter 15 for the x and y values.
Now press Next.

Step 9

The Wizard has completed, and has created 3 copies of our original isolated footing and the locations specified.
However, if you go to the Record Playback window, you will notice that we have created 3 copies of the same pad,
pedestal, base plate, etc. This is inefficient, and we should be able to re-use the same object if the dimensions are
the same.

Step 10

Since the only part of our script that is looping is the joint creation, let's pull the joint creation code out into its own
Wizard page, called "Add Joint".
We'll also need to add the declaration for Add Joint to the methods parameter of the Wizard declaration. We
will also tweak the logic declaration to only loop over AddJoint, with CreateIsolated run only once after the loop is
completed.

Lastly, we'll also need to remove the x and y parameters from both the wizard declaration and the method signature
of CreateIsolated, since it no longer has user input.

Step 11

Since we are only creating one of most of our objects now, we'll have to undo one of our earlier steps and replace all
instances of (loop) with (1).
Step 12

We'll also need to set the ID assignments for JointID, PedestalID, BasePlateID and PadID back to 1 (instead of loop).
In order to access the previously created joints, we will now create merged collection of all objects in the wizard
collection. Indexing into that collection with the Joint component enum will return a list of all joints. All that's left is
creating a for loop to iterate over all the joints, and indenting the isolated footing creation code by one.

merged = wizard.GetMerged()
joints = merged[ComponentEnum.Joint]

for j in joints:
isolatedFooting = IsolatedFooting(j.ID)
isolatedFooting.JointID = j.ID
isolatedFooting.PedestalID = 1
isolatedFooting.BasePlateID = 1
isolatedFooting.SoilProfileID = 1
isolatedFooting.PadID = 1
isolatedFooting.Run = True
isolatedFooting.Name = "f" + str(j.ID)

wizard.Add(isolatedFooting)

Now save the Python file.

Step 13

Run the Wizard again.


You will be prompted again to enter joint locations. Enter values of 5, 10, and 15 and press Next.

Step 14

If you look at the Record Playback window, you will notice that 3 isolated footings (with joints) have been created, but
only one of each of the other objects.

Step 15

Let's expose more input options to the user. We'll do this by pulling the pad creation code into its own Wizard page.
We can also add a visual representation of the pad to the Wizard page as we're creating it. This is done by splitting
the Wizard page into logical grids, oriented either by row or column. Grids can also be nested (where data / drawing
tags are would be a nested grid).

## <wizardpage title="Add Pad" description="Adds a pad." width="800"


height="600">
## <grid orientation="row">
## <row height="*">
## Our drawing object will go here in the next step
## </row>
## <row height="Auto">
## <data>
## <parameter type="double" name="width" text="Pad Width"
helpText="The width of the pad." unitType="LengthSmall"
default="2500mm|98in" />
## <parameter type="double" name="depth" text="Pad Depth"
helpText="The depth of the pad." unitType="LengthSmall"
default="2000mm|79in" />
## <parameter type="double" name="thickness" text="Pad Thickness"
helpText="The thickness of the pad." unitType="LengthSmall"
default="500mm|20in" />
## </data>
## </row>
## </grid>
## </wizardpage>

Step 16

By associating the width, depth and thickness attributes of the rect named Pad with the user input parameters, we
will be able to see the pad in the Wizard page change dimensions as different values are entered. Place the drawing
object inside the first set of row tags as indicated in the previous step.

## <drawing>
## <rect name="Pad" width="width" depth="depth" height="thickness" />
## </drawing>

becomes...

## <wizardpage title="Add Pad" description="Adds a pad." width="800"


height="600">
## <grid orientation="row">
## <row height="*">
## <drawing>
## <rect name="Pad" width="width" depth="depth" height="thickness" />
## </drawing>
## </row>
## ...

Step 17

Lastly, we'll have to add a method declaration for AddPad to the methods tag in the Wizard declaration.
Since CreateIsolated is the last method we want to run in the Wizard, we will add AddPad ahead of CreateIsolated,
but after the while loop containing AddJoints in the logic declaration.

Step 18

Run the wizard again.


As you change the width, depth, and thickness values, you will notice the dimensions of the rendered pad change.
Complete the rest of the Wizard as you please.

Step 33

The pad dimensions you specified in the first step of the Wizard have been applied to all the footings created at the
specified joint locations.
Congratulations, you have completed your first Toolbox Extension and Toolbox Wizard!

Index

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Spreadsheet Window

Spreadsheet Window
The Spreadsheet Window contains the details for all objects currently stored in the Model.

Spreadsheet Manager
The Spreadsheet Manager determines what type of object is displayed in the data grid. It can be hidden by
unchecking the 'Show Manager' check box. Selecting a node in the Spreadsheet Manager will refresh the data grid
with the selected object type.

You can right-click a node to delete all objects of that type.

The Spreadsheet Manager has two sections for displaying objects:

• Input - Allows you to navigate the objects stored in the Model


• Results - Allows you to view calculated results (if any exist)

Spreadsheet Property Ordering and Visibility

Hide/Show and reorder columns in the Spreadsheets

You can change the order and hide and show spreadsheet columns by checking Show Column Visibility in the
Preferences Window. This will open a tree of all of the properties in the current spreadsheet. To hide a property,
uncheck it in the tree. To rearrange properties, drag them in the tree.

Filter

The Spreadsheet filter allows you to reduce the objects displayed in the data grid.
Selection Filter

When the Selection filter is checked, only objects that are selected in the Visual Editor will appear in the
spreadsheet.

Group Filter

When the Group filter is checked, only objects that are in the selected Group in the Groups Window will appear in the
spreadsheet.

Rule Filter

When the Rule filter is checked, only objects that pass the selected rule will appear in the spreadsheet. The drop-
down contains a list of all rules stored in the Model. If None is selected, no rule will be applied even if the Rule
checkbox is checked.

The ellipsis button (...) opens the Rules Dialog.

Data Grid

The Spreadsheet data grid is a Horizontal Data Grid.

Deleting in Spreadsheets

To delete all the objects of a particular type, right click the spreadsheet name in the Spreadsheet Manager and click
Delete. To delete individual objects in the Spreadsheet, select them in the spreadsheet and press the Delete key on
your computer keyboard.

Index

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Import Spreadsheets Dialog

Import Spreadsheets Dialog


The Import Spreadsheets Dialog allows you to input tabular data into the current model. Objects may be created
manually, or data from external sources may be copied and pasted here to insert objects into the S-FOUNDATION
model.

To import objects, select the object type from the tree in the left pane of the dialog. Select the number of rows you
want to add at the bottom right of the dialog and click Insert. Edit the data in the provided spreadsheets and when
finished click 'OK'. The new objects will be inserted into your S-FOUNDATION model.

Next: Key Bindings Dialog

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Mat Foundation Tool

Mat Foundation Tool


The Mat Foundation Tool allows you to create and edit Mat Foundations. For more information about foundation
types, please see Foundations.
Create Mode

To create a new foundation, activate the Mat Foundation tool and change the mode to Create. Left click on two or
more supports or grid snaps in the Visual Editor. On the final location, click a second time to complete the creation of
the foundation. You can also hold down the left mouse button and drag the mouse to create a mat foundation on
multiple supports at once. These support locations are filtered by the current selected grid elevation, within a
tolerance. For information about how to adjust this tolerance, please see Creation Elevation Tolerance.

A rotation can be applied to the mat foundation by either entering it manually or by using an Auto-Generate option. To
rotate the foundation manually, enter a rotation amount in degrees. To automatically rotate a Mat Foundation as you
create it, expand the Rotation Property and check Auto-Generate. This option will apply a rotation to the foundation
based on the first two definition points. The first two definition points will define the local x axis of the foundation.

To create a pile supported footing, check Pile Foundation.

The base plate, pedestal, and pad to use with new foundations are set through their respective dropdown lists. You
can have your foundations use existing base plates/pedestals/pads by selecting them in the dropdowns, click the
ellipsis buttons to create new base plates/pedestals/pads to use, or you can set the dropdowns to Create New or
Auto, which will create new base plates/pedestals/pads when creating new foundations.

These dropdowns are called reference properties and refer to existing base plates/pedestals/pads by their name. To
learn more about using reference properties, please see Reference Properties, Create New and Auto.

Edit Mode

To edit mat foundations, activate the Mat Foundation Tool and change the mode to Edit. Left click on an existing
foundation in the Visual Editor to see its properties in the tool. You can select multiple foundations by holding down
the control key while left clicking. You can also hold down the left mouse button and drag the mouse to select multiple
foundations to edit.

When multiple foundations have different values for a property, the property value will show '?'. When you change
any of the properties, all selected foundations will be edited.

Next: Merge/Split Tool


Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Make a Foundation with Different Pedestal Heights

Make a Foundation with Different Pedestal Heights


When creating foundations, often the height of the pedestals are the same. Sometimes you may need pedestals of
different heights when columns do not end at the same elevations. This can be accomplished by creating pedestals
of different heights, and assigning them to column end joints of different elevations. In S-FOUNDATION, pads are not
inclined, so you must ensure that for each joint, the joint elevation minus the pedestal height at that joint ends up at
the same elevation.

When making a foundation with a foundation tool such as the Mat Foundation Tool, you can only assign one pedestal
in the create mode, so you cannot initially create a foundation with different height pedestals. You will initially make a
foundation with one pedestal height and update the foundation in a separate step. Choose one pedestal from the
drop down and create your foundation normally.

In create mode, choose one pedestal for your foundation.


After creating your foundation, change to the selection tool, and select your foundation. Each pedestal can now be
assigned differently. During this process your foundation will turn red, as its finite element model becomes invalid.
Ignore this warning for now, as we will fix it in a later step.

In edit mode, each pedestal can be assigned differently.

Pedestal locations are defined by joints, and when we change the height of a pedestal, the joint that defines that
pedestal location needs to be moved to maintain the connection of the pedestal to the pad. The foundation becomes
invalid when we change the pedestal heights, but do not move the joints.
Changing pedestals before moving joints.

To fix the invalid foundation, select each joint and move it down by the difference between the height of the pedestal
and the height of the tallest pedestal to re-connect the pedestals to the pad. In this example, the tallest pedestal is
1000 mm, and we have pedestals that are 800 mm, 500 mm and 0 mm. The joint z values of the smaller pedestals
will have to be lowered to -0.2 m, -0.5 m and -1 m.

Changing joint locations to re-connect the pedestals to the pad.

Index

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Mat Foundation Tool

Mat Foundation Tool


The Mat Foundation Tool allows you to create and edit Mat Foundations. For more information about foundation
types, please see Foundations.

Create Mode

To create a new foundation, activate the Mat Foundation tool and change the mode to Create. Left click on two or
more supports or grid snaps in the Visual Editor. On the final location, click a second time to complete the creation of
the foundation. You can also hold down the left mouse button and drag the mouse to create a mat foundation on
multiple supports at once. These support locations are filtered by the current selected grid elevation, within a
tolerance. For information about how to adjust this tolerance, please see Creation Elevation Tolerance.

A rotation can be applied to the mat foundation by either entering it manually or by using an Auto-Generate option. To
rotate the foundation manually, enter a rotation amount in degrees. To automatically rotate a Mat Foundation as you
create it, expand the Rotation Property and check Auto-Generate. This option will apply a rotation to the foundation
based on the first two definition points. The first two definition points will define the local x axis of the foundation.

To create a pile supported footing, check Pile Foundation.

The base plate, pedestal, and pad to use with new foundations are set through their respective dropdown lists. You
can have your foundations use existing base plates/pedestals/pads by selecting them in the dropdowns, click the
ellipsis buttons to create new base plates/pedestals/pads to use, or you can set the dropdowns to Create New or
Auto, which will create new base plates/pedestals/pads when creating new foundations.

These dropdowns are called reference properties and refer to existing base plates/pedestals/pads by their name. To
learn more about using reference properties, please see Reference Properties, Create New and Auto.

Edit Mode

To edit mat foundations, activate the Mat Foundation Tool and change the mode to Edit. Left click on an existing
foundation in the Visual Editor to see its properties in the tool. You can select multiple foundations by holding down
the control key while left clicking. You can also hold down the left mouse button and drag the mouse to select multiple
foundations to edit.

When multiple foundations have different values for a property, the property value will show '?'. When you change
any of the properties, all selected foundations will be edited.
Next: Merge/Split Tool

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Rules

Rules
Rules are a powerful feature in S-FOUNDATION that allow for the automatic filtering of objects based on user
specified criteria. These filters can be applied to selections, visibility sets and groups defined in the Groups Window.

There are two types of Rules: Property Rules and Logic Rules.

Property Rules

Property Rules are applied directly to an object collection to create a subset of the collection based on a certain
property value. For example, you can limit what is visible in the Visual Editor to only joints at an elevation greater than
0, or only members of type 'Beam'.

To define a Property Rule, go to Define > Rules. Select the object type for the new rule and click 'Add'. Data for your
new rule will appear.

Select the property you want to apply the rule to and enter the desired criteria.

There are several types of property criteria:


Property values can be equal, greater than, or less than a specified numeric
Numeric criteria value or may fall into specified ranges.

Property values may equal, contain, start with or end with a specified
String criteria
alphanumeric value.

Choice criteria Property values must belong to a subset of selected enumeration values.

Boolean (True/False)
Property values must match a true/false condition.
criteria

Appropriate criteria fields for the property type will be automatically shown based on the selected property. Note that
Numeric, String and Choice rules may also be inverted to match the exact opposite condition specified. For instance,
if you want to show all panels that are NOT of type 'Mesh', you can create a rule for panels with a panel type Mesh
and then check the 'Invert' checkbox.

Logic Rules

Logic Rules are special rules which allow for the combination of existing Property and Logic Rules. For example,
somebody may want to show all members of type 'Beam' with IDs between 100 and 200 as well as all joints with IDs
above 1000. This can be accomplished by doing the following:

1. Create a Property Rule for members of type 'Beam'


2. Create another Property Rule for members with IDs in the range of 101-199
3. Create a third Property Rule for joints with IDs greater than 1000
4. Create a Logic Rule combining the three Property Rules: Rule 1 AND Rule 2 OR Rule 3

Note the logical operators between rules: 'AND' means that both surrounding conditions must be met to pass the rule,
whereas 'OR' will pass the rule if one (or both) conditions are met. When combining Property Rules for different
object types (e.g. members and joints), only 'OR' is applicable.

When there are more than two logical operators, they are always evaluated in order from top to bottom; for example,
in this case the 'AND' between rules 1 and 2 is evaluated before the 'OR' preceding rule 3.
Using the Rules

Selection and Visibility

To select objects by rule, go to Selection > Select > Special... and choose the desired Property or Logic Rule. To
show objects by rule, go to Selection > Show > Special... and choose the desired Property or Logic Rule.

Note that you may do the exact opposite by going to Selection > Unselect > Special... or Selection > Hide > Special.

Rule Groups

Rule Groups are a powerful way of creating dynamic groups that contain only grouping-enabled items which pass an
assigned rule. To create a Rule Group, right-click on the 'Groups' folder in the Groups Window and choose 'Create
New Rule Group'.

Pick the rule you want to assign to the group and click 'OK'.

After assigning a rule to the group, the group will automatically contain only items which pass the rule and will be
updated whenever the model changes.

Next: Home Page

Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Index > Spreadsheet Window

Spreadsheet Window
The Spreadsheet Window contains the details for all objects currently stored in the Model.
Spreadsheet Manager

The Spreadsheet Manager determines what type of object is displayed in the data grid. It can be hidden by
unchecking the 'Show Manager' check box. Selecting a node in the Spreadsheet Manager will refresh the data grid
with the selected object type.

You can right-click a node to delete all objects of that type.

The Spreadsheet Manager has two sections for displaying objects:

• Input - Allows you to navigate the objects stored in the Model


• Results - Allows you to view calculated results (if any exist)

Spreadsheet Property Ordering and Visibility

Hide/Show and reorder columns in the Spreadsheets


You can change the order and hide and show spreadsheet columns by checking Show Column Visibility in the
Preferences Window. This will open a tree of all of the properties in the current spreadsheet. To hide a property,
uncheck it in the tree. To rearrange properties, drag them in the tree.

Filter

The Spreadsheet filter allows you to reduce the objects displayed in the data grid.

Selection Filter

When the Selection filter is checked, only objects that are selected in the Visual Editor will appear in the
spreadsheet.

Group Filter

When the Group filter is checked, only objects that are in the selected Group in the Groups Window will appear in the
spreadsheet.

Rule Filter

When the Rule filter is checked, only objects that pass the selected rule will appear in the spreadsheet. The drop-
down contains a list of all rules stored in the Model. If None is selected, no rule will be applied even if the Rule
checkbox is checked.

The ellipsis button (...) opens the Rules Dialog.

Data Grid

The Spreadsheet data grid is a Horizontal Data Grid.

Deleting in Spreadsheets

To delete all the objects of a particular type, right click the spreadsheet name in the Spreadsheet Manager and click
Delete. To delete individual objects in the Spreadsheet, select them in the spreadsheet and press the Delete key on
your computer keyboard.

Index
Online Tutorials & Videos

© 2014 S-FRAME Software Inc.

Você também pode gostar