ConstructionStages class

The ConstructionStages class gives you access to *DEFINE_CONSTRUCTION_STAGES keyword in PRIMER. More...

The PRIMER JavaScript API provides many class constants, properties and methods. For Arup to be able to extend and enhance the API in the future any constant, property or method names beginning with a lowercase or uppercase letter are reserved.
If you need to add your own properties or methods to one of the existing classes then to avoid any potential future conflict you should ensure that the name begins with either an underscore (_) or a dollar sign ($) or the name is prefixed with your own unique identifier.
For example if company 'ABC' need to add a property called 'example' then to avoid any potential future conflict use one of:

Class functions

Member functions

ConstructionStages properties

Name Type Description
ate real Analysis time at end of stage.
atr real Analysis time duration of stage.
ats real Analysis time at start of stage.
exists (read only) logical true if *DEFINE_CONSTRUCTION_STAGES exists, false if referred to but not defined.
heading string The title of the *DEFINE_CONSTRUCTION_STAGES or the empty string if _TITLE is not set
include integer The Include file number that the *DEFINE_CONSTRUCTION_STAGES is in.
istage integer ConstructionStages number. The label is an alternative name for this.
ivel0 integer Flag to set velocities to zero at start of stage.
label integer ConstructionStages number. The istage is an alternative name for this.
model (read only) integer The Model number that the *DEFINE_CONSTRUCTION_STAGES is in.
rte real Real time at end of stage.
rts real Real time at start of stage.

Detailed Description

The ConstructionStages class allows you to create, modify, edit and manipulate *DEFINE_CONSTRUCTION_STAGES. See the documentation below for more details.

Constructor

new ConstructionStages(Model[Model], Stage ID[integer], heading (optional)[string])

Description

Create a new ConstructionStages object.

Arguments

  • Model (Model)

    Model that *DEFINE_CONSTRUCTION_STAGES will be created in

  • Stage ID (integer)

    ConstructionStages id.

  • heading (optional) (string)

    Title for the *DEFINE_CONSTRUCTION_STAGES

    Returns

    ConstructionStages object

    Return type

    ConstructionStages

    Example

    To create a new *DEFINE_CONSTRUCTION_STAGES in model m with label 100:

    var c = new ConstructionStages(m, 100);

    Details of functions

    AssociateComment(Comment[Comment])

    Description

    Associates a comment with a *DEFINE_CONSTRUCTION_STAGES.

    Arguments

  • Comment (Comment)

    Comment that will be attached to the *DEFINE_CONSTRUCTION_STAGES

    Returns

    No return value

    Example

    To associate comment c to the *DEFINE_CONSTRUCTION_STAGES c:

    c.AssociateComment(c);


    Browse(modal (optional)[boolean])

    Description

    Starts an edit panel in Browse mode.

    Arguments

  • modal (optional) (boolean)

    If this window is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the window will be modal.

    Returns

    no return value

    Example

    To Browse *DEFINE_CONSTRUCTION_STAGES c:

    c.Browse();


    ClearFlag(flag[Flag])

    Description

    Clears a flag on the *DEFINE_CONSTRUCTION_STAGES.

    Arguments

  • flag (Flag)

    Flag to clear on the *DEFINE_CONSTRUCTION_STAGES

    Returns

    No return value

    Example

    To clear flag f for *DEFINE_CONSTRUCTION_STAGES c:

    c.ClearFlag(f);


    Copy(range (optional)[boolean])

    Description

    Copies the *DEFINE_CONSTRUCTION_STAGES. The target include of the copied *DEFINE_CONSTRUCTION_STAGES can be set using Options.copy_target_include.

    Arguments

  • range (optional) (boolean)

    If you want to keep the copied item in the range specified for the current include. Default value is false. To set current include, use Include.MakeCurrentLayer().

    Returns

    ConstructionStages object

    Return type

    ConstructionStages

    Example

    To copy *DEFINE_CONSTRUCTION_STAGES c into *DEFINE_CONSTRUCTION_STAGES z:

    var z = c.Copy();


    Create(Model[Model], modal (optional)[boolean]) [static]

    Description

    Starts an interactive editing panel to create a *DEFINE_CONSTRUCTION_STAGES

    Arguments

  • Model (Model)

    Model that the *DEFINE_CONSTRUCTION_STAGES will be created in.

  • modal (optional) (boolean)

    If this window is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the window will be modal.

    Returns

    ConstructionStages object (or null if not made).

    Return type

    ConstructionStages

    Example

    To start creating a *DEFINE_CONSTRUCTION_STAGES in model m:

    var c = ConstructionStages.Create(m);


    DetachComment(Comment[Comment])

    Description

    Detaches a comment from a *DEFINE_CONSTRUCTION_STAGES.

    Arguments

  • Comment (Comment)

    Comment that will be detached from the *DEFINE_CONSTRUCTION_STAGES

    Returns

    No return value

    Example

    To detach comment c from the *DEFINE_CONSTRUCTION_STAGES c:

    c.DetachComment(c);


    Edit(modal (optional)[boolean])

    Description

    Starts an interactive editing panel.

    Arguments

  • modal (optional) (boolean)

    If this window is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the window will be modal.

    Returns

    no return value

    Example

    To Edit *DEFINE_CONSTRUCTION_STAGES c:

    c.Edit();


    Error(message[string], details (optional)[string])

    Description

    Adds an error for *DEFINE_CONSTRUCTION_STAGES. For more details on checking see the Check class.

    Arguments

  • message (string)

    The error message to give

  • details (optional) (string)

    An optional detailed error message

    Returns

    No return value

    Example

    To add an error message "My custom error" for *DEFINE_CONSTRUCTION_STAGES c:

    c.Error("My custom error");


    First(Model[Model]) [static]

    Description

    Returns the first *DEFINE_CONSTRUCTION_STAGES in the model.

    Arguments

  • Model (Model)

    Model to get first *DEFINE_CONSTRUCTION_STAGES in

    Returns

    ConstructionStages object (or null if there are no *DEFINE_CONSTRUCTION_STAGESs in the model).

    Return type

    ConstructionStages

    Example

    To get the first *DEFINE_CONSTRUCTION_STAGES in model m:

    var c = ConstructionStages.First(m);


    FirstFreeLabel(Model[Model], layer (optional)[Include number]) [static]

    Description

    Returns the first free *DEFINE_CONSTRUCTION_STAGES label in the model. Also see ConstructionStages.LastFreeLabel(), ConstructionStages.NextFreeLabel() and Model.FirstFreeItemLabel().

    Arguments

  • Model (Model)

    Model to get first free *DEFINE_CONSTRUCTION_STAGES label in

  • layer (optional) (Include number)

    Include file (0 for the main file) to search for labels in (Equivalent to First free in layer in editing panels). If omitted the whole model will be used (Equivalent to First free in editing panels).

    Returns

    ConstructionStages label.

    Return type

    Number

    Example

    To get the first free *DEFINE_CONSTRUCTION_STAGES label in model m:

    var label = ConstructionStages.FirstFreeLabel(m);


    FlagAll(Model[Model], flag[Flag]) [static]

    Description

    Flags all of the *DEFINE_CONSTRUCTION_STAGESs in the model with a defined flag.

    Arguments

  • Model (Model)

    Model that all *DEFINE_CONSTRUCTION_STAGESs will be flagged in

  • flag (Flag)

    Flag to set on the *DEFINE_CONSTRUCTION_STAGESs

    Returns

    No return value

    Example

    To flag all of the *DEFINE_CONSTRUCTION_STAGESs with flag f in model m:

    ConstructionStages.FlagAll(m, f);


    Flagged(flag[Flag])

    Description

    Checks if the *DEFINE_CONSTRUCTION_STAGES is flagged or not.

    Arguments

  • flag (Flag)

    Flag to test on the *DEFINE_CONSTRUCTION_STAGES

    Returns

    true if flagged, false if not.

    Return type

    Boolean

    Example

    To check if *DEFINE_CONSTRUCTION_STAGES c has flag f set on it:

    if (c.Flagged(f) ) do_something...


    ForEach(Model[Model], func[function], extra (optional)[any]) [static]

    Description

    Calls a function for each *DEFINE_CONSTRUCTION_STAGES in the model.
    Note that ForEach has been designed to make looping over *DEFINE_CONSTRUCTION_STAGESs as fast as possible and so has some limitations.
    Firstly, a single temporary ConstructionStages object is created and on each function call it is updated with the current *DEFINE_CONSTRUCTION_STAGES data. This means that you should not try to store the ConstructionStages object for later use (e.g. in an array) as it is temporary.
    Secondly, you cannot create new *DEFINE_CONSTRUCTION_STAGESs inside a ForEach loop.

    Arguments

  • Model (Model)

    Model that all *DEFINE_CONSTRUCTION_STAGESs are in

  • func (function)

    Function to call for each *DEFINE_CONSTRUCTION_STAGES

  • extra (optional) (any)

    An optional extra object/array/string etc that will appended to arguments when calling the function

    Returns

    No return value

    Example

    To call function test for all of the *DEFINE_CONSTRUCTION_STAGESs in model m:

    ConstructionStages.ForEach(m, test);
    function test(c)
    {
    // c is ConstructionStages object
    }

    To call function test for all of the *DEFINE_CONSTRUCTION_STAGESs in model m with optional object:

    var data = { x:0, y:0 };
    ConstructionStages.ForEach(m, test, data);
    function test(c, extra)
    {
    // c is ConstructionStages object
    // extra is data
    }


    GetAll(Model[Model], property (optional)[string]) [static]

    Description

    Returns an array of ConstructionStages objects or properties for all of the *DEFINE_CONSTRUCTION_STAGESs in a model in PRIMER. If the optional property argument is not given then an array of ConstructionStages objects is returned. If the property argument is given, that property value for each *DEFINE_CONSTRUCTION_STAGES is returned in the array instead of a ConstructionStages object

    Arguments

  • Model (Model)

    Model to get *DEFINE_CONSTRUCTION_STAGESs from

  • property (optional) (string)

    Name for property to get for all *DEFINE_CONSTRUCTION_STAGESs in the model

    Returns

    Array of ConstructionStages objects or properties

    Return type

    Array

    Example

    To make an array of ConstructionStages objects for all of the *DEFINE_CONSTRUCTION_STAGESs in model m:

    var a = ConstructionStages.GetAll(m);

    To return an array containing the value of property 'foo' (for example 'x' for a node) for each *DEFINE_CONSTRUCTION_STAGES in model m:

    var a = ConstructionStages.GetAll(m, 'foo');


    GetComments()

    Description

    Extracts the comments associated to a *DEFINE_CONSTRUCTION_STAGES.

    Arguments

    No arguments

    Returns

    Array of Comment objects (or null if there are no comments associated to the node).

    Return type

    Array

    Example

    To get the array of comments associated to the *DEFINE_CONSTRUCTION_STAGES c:

    var comm_array = c.GetComments();


    GetFlagged(Model[Model], flag[Flag], property (optional)[string]) [static]

    Description

    Returns an array of ConstructionStages objects for all of the flagged *DEFINE_CONSTRUCTION_STAGESs in a model in PRIMER If the optional property argument is not given then an array of ConstructionStages objects is returned. If the property argument is given, then that property value for each *DEFINE_CONSTRUCTION_STAGES is returned in the array instead of a ConstructionStages object

    Arguments

  • Model (Model)

    Model to get *DEFINE_CONSTRUCTION_STAGESs from

  • flag (Flag)

    Flag set on the *DEFINE_CONSTRUCTION_STAGESs that you want to retrieve

  • property (optional) (string)

    Name for property to get for all flagged *DEFINE_CONSTRUCTION_STAGESs in the model

    Returns

    Array of ConstructionStages objects or properties

    Return type

    Array

    Example

    To make an array of ConstructionStages objects for all of the *DEFINE_CONSTRUCTION_STAGESs in model m flagged with f:

    var c = ConstructionStages.GetFlagged(m, f);

    To return an array containing the value of property 'foo' (for example 'x' for a node) for all of the *DEFINE_CONSTRUCTION_STAGESs in model m flagged with f:

    var a = ConstructionStages.GetFlagged(m, f, 'foo');


    GetFromID(Model[Model], number[integer]) [static]

    Description

    Returns the ConstructionStages object for a *DEFINE_CONSTRUCTION_STAGES ID.

    Arguments

  • Model (Model)

    Model to find the *DEFINE_CONSTRUCTION_STAGES in

  • number (integer)

    number of the *DEFINE_CONSTRUCTION_STAGES you want the ConstructionStages object for

    Returns

    ConstructionStages object (or null if *DEFINE_CONSTRUCTION_STAGES does not exist).

    Return type

    ConstructionStages

    Example

    To get the ConstructionStages object for *DEFINE_CONSTRUCTION_STAGES 100 in model m

    var c = ConstructionStages.GetFromID(m, 100);


    GetParameter(prop[string])

    Description

    Checks if a ConstructionStages property is a parameter or not. Note that object properties that are parameters are normally returned as the integer or float parameter values as that is virtually always what the user would want. For this function to work the JavaScript interpreter must use the parameter name instead of the value. This can be done by setting the Options.property_parameter_names option to true before calling the function and then resetting it to false afterwards.. This behaviour can also temporarily be switched by using the ConstructionStages.ViewParameters() method and 'method chaining' (see the examples below).

    Arguments

  • prop (string)

    *DEFINE_CONSTRUCTION_STAGES property to get parameter for

    Returns

    Parameter object if property is a parameter, null if not.

    Return type

    Parameter

    Example

    To check if ConstructionStages property c.example is a parameter:

    Options.property_parameter_names = true;
    if (c.GetParameter(c.example) ) do_something...
    Options.property_parameter_names = false;

    To check if ConstructionStages property c.example is a parameter by using the GetParameter method:

    if (c.ViewParameters().GetParameter(c.example) ) do_something...


    Keyword()

    Description

    Returns the keyword for this *DEFINE_CONSTRUCTION_STAGES. Note that a carriage return is not added. See also ConstructionStages.KeywordCards()

    Arguments

    No arguments

    Returns

    string containing the keyword.

    Return type

    String

    Example

    To get the keyword for ConstructionStages c:

    var key = c.Keyword();


    KeywordCards()

    Description

    Returns the keyword cards for the *DEFINE_CONSTRUCTION_STAGES. Note that a carriage return is not added. See also ConstructionStages.Keyword()

    Arguments

    No arguments

    Returns

    string containing the cards.

    Return type

    String

    Example

    To get the cards for construction_stages c:

    var cards = c.KeywordCards();


    Last(Model[Model]) [static]

    Description

    Returns the last *DEFINE_CONSTRUCTION_STAGES in the model.

    Arguments

  • Model (Model)

    Model to get last *DEFINE_CONSTRUCTION_STAGES in

    Returns

    ConstructionStages object (or null if there are no *DEFINE_CONSTRUCTION_STAGESs in the model).

    Return type

    ConstructionStages

    Example

    To get the last *DEFINE_CONSTRUCTION_STAGES in model m:

    var c = ConstructionStages.Last(m);


    LastFreeLabel(Model[Model], layer (optional)[Include number]) [static]

    Description

    Returns the last free *DEFINE_CONSTRUCTION_STAGES label in the model. Also see ConstructionStages.FirstFreeLabel(), ConstructionStages.NextFreeLabel() and see Model.LastFreeItemLabel()

    Arguments

  • Model (Model)

    Model to get last free *DEFINE_CONSTRUCTION_STAGES label in

  • layer (optional) (Include number)

    Include file (0 for the main file) to search for labels in (Equivalent to Highest free in layer in editing panels). If omitted the whole model will be used.

    Returns

    ConstructionStages label.

    Return type

    Number

    Example

    To get the last free *DEFINE_CONSTRUCTION_STAGES label in model m:

    var label = ConstructionStages.LastFreeLabel(m);


    Next()

    Description

    Returns the next *DEFINE_CONSTRUCTION_STAGES in the model.

    Arguments

    No arguments

    Returns

    ConstructionStages object (or null if there are no more *DEFINE_CONSTRUCTION_STAGESs in the model).

    Return type

    ConstructionStages

    Example

    To get the *DEFINE_CONSTRUCTION_STAGES in model m after *DEFINE_CONSTRUCTION_STAGES c:

    var c = c.Next();


    NextFreeLabel(Model[Model], layer (optional)[Include number]) [static]

    Description

    Returns the next free (highest+1) *DEFINE_CONSTRUCTION_STAGES label in the model. Also see ConstructionStages.FirstFreeLabel(), ConstructionStages.LastFreeLabel() and Model.NextFreeItemLabel()

    Arguments

  • Model (Model)

    Model to get next free *DEFINE_CONSTRUCTION_STAGES label in

  • layer (optional) (Include number)

    Include file (0 for the main file) to search for labels in (Equivalent to Highest+1 in layer in editing panels). If omitted the whole model will be used (Equivalent to Highest+1 in editing panels).

    Returns

    ConstructionStages label.

    Return type

    Number

    Example

    To get the next free *DEFINE_CONSTRUCTION_STAGES label in model m:

    var label = ConstructionStages.NextFreeLabel(m);


    Previous()

    Description

    Returns the previous *DEFINE_CONSTRUCTION_STAGES in the model.

    Arguments

    No arguments

    Returns

    ConstructionStages object (or null if there are no more *DEFINE_CONSTRUCTION_STAGESs in the model).

    Return type

    ConstructionStages

    Example

    To get the *DEFINE_CONSTRUCTION_STAGES in model m before *DEFINE_CONSTRUCTION_STAGES c:

    var c = c.Previous();


    RenumberAll(Model[Model], start[integer]) [static]

    Description

    Renumbers all of the *DEFINE_CONSTRUCTION_STAGESs in the model.

    Arguments

  • Model (Model)

    Model that all *DEFINE_CONSTRUCTION_STAGESs will be renumbered in

  • start (integer)

    Start point for renumbering

    Returns

    No return value

    Example

    To renumber all of the *DEFINE_CONSTRUCTION_STAGESs in model m, from 1000000:

    ConstructionStages.RenumberAll(m, 1000000);


    RenumberFlagged(Model[Model], flag[Flag], start[integer]) [static]

    Description

    Renumbers all of the flagged *DEFINE_CONSTRUCTION_STAGESs in the model.

    Arguments

  • Model (Model)

    Model that all the flagged *DEFINE_CONSTRUCTION_STAGESs will be renumbered in

  • flag (Flag)

    Flag set on the *DEFINE_CONSTRUCTION_STAGESs that you want to renumber

  • start (integer)

    Start point for renumbering

    Returns

    No return value

    Example

    To renumber all of the *DEFINE_CONSTRUCTION_STAGESs in model m flagged with f, from 1000000:

    ConstructionStages.RenumberFlagged(m, f, 1000000);


    Select(flag[Flag], prompt[string], limit (optional)[Model or Flag], modal (optional)[boolean]) [static]

    Description

    Allows the user to select *DEFINE_CONSTRUCTION_STAGESs using standard PRIMER object menus.

    Arguments

  • flag (Flag)

    Flag to use when selecting *DEFINE_CONSTRUCTION_STAGESs

  • prompt (string)

    Text to display as a prompt to the user

  • limit (optional) (Model or Flag)

    If the argument is a Model then only *DEFINE_CONSTRUCTION_STAGESs from that model can be selected. If the argument is a Flag then only *DEFINE_CONSTRUCTION_STAGESs that are flagged with limit can be selected (limit should be different to flag). If omitted, or null, any *DEFINE_CONSTRUCTION_STAGESs can be selected. from any model.

  • modal (optional) (boolean)

    If selection is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the selection will be modal.

    Returns

    Number of *DEFINE_CONSTRUCTION_STAGESs selected or null if menu cancelled

    Return type

    Number

    Example

    To select *DEFINE_CONSTRUCTION_STAGESs from model m, flagging those selected with flag f, giving the prompt 'Select *DEFINE_CONSTRUCTION_STAGESs':

    ConstructionStages.Select(f, 'Select *DEFINE_CONSTRUCTION_STAGESs', m);

    To select *DEFINE_CONSTRUCTION_STAGESs, flagging those selected with flag f but limiting selection to *DEFINE_CONSTRUCTION_STAGESs flagged with flag l, giving the prompt 'Select *DEFINE_CONSTRUCTION_STAGESs':

    ConstructionStages.Select(f, 'Select *DEFINE_CONSTRUCTION_STAGESs', l);


    SetFlag(flag[Flag])

    Description

    Sets a flag on the *DEFINE_CONSTRUCTION_STAGES.

    Arguments

  • flag (Flag)

    Flag to set on the *DEFINE_CONSTRUCTION_STAGES

    Returns

    No return value

    Example

    To set flag f for *DEFINE_CONSTRUCTION_STAGES c:

    c.SetFlag(f);


    Total(Model[Model], exists (optional)[boolean]) [static]

    Description

    Returns the total number of *DEFINE_CONSTRUCTION_STAGESs in the model.

    Arguments

  • Model (Model)

    Model to get total for

  • exists (optional) (boolean)

    true if only existing *DEFINE_CONSTRUCTION_STAGESs should be counted. If false or omitted referenced but undefined *DEFINE_CONSTRUCTION_STAGESs will also be included in the total.

    Returns

    number of *DEFINE_CONSTRUCTION_STAGESs

    Return type

    Number

    Example

    To get the total number of *DEFINE_CONSTRUCTION_STAGESs in model m:

    var total = ConstructionStages.Total(m);


    UnflagAll(Model[Model], flag[Flag]) [static]

    Description

    Unsets a defined flag on all of the *DEFINE_CONSTRUCTION_STAGESs in the model.

    Arguments

  • Model (Model)

    Model that the defined flag for all *DEFINE_CONSTRUCTION_STAGESs will be unset in

  • flag (Flag)

    Flag to unset on the *DEFINE_CONSTRUCTION_STAGESs

    Returns

    No return value

    Example

    To unset the flag f on all the *DEFINE_CONSTRUCTION_STAGESs in model m:

    ConstructionStages.UnflagAll(m, f);


    ViewParameters()

    Description

    Object properties that are parameters are normally returned as the integer or float parameter values as that is virtually always what the user would want. This function temporarily changes the behaviour so that if a property is a parameter the parameter name is returned instead. This can be used with 'method chaining' (see the example below) to make sure a property argument is correct.

    Arguments

    No arguments

    Returns

    ConstructionStages object.

    Return type

    ConstructionStages

    Example

    To check if ConstructionStages property c.example is a parameter by using the ConstructionStages.GetParameter() method:

    if (c.ViewParameters().GetParameter(c.example) ) do_something...


    Warning(message[string], details (optional)[string])

    Description

    Adds a warning for *DEFINE_CONSTRUCTION_STAGES. For more details on checking see the Check class.

    Arguments

  • message (string)

    The warning message to give

  • details (optional) (string)

    An optional detailed warning message

    Returns

    No return value

    Example

    To add a warning message "My custom warning" for *DEFINE_CONSTRUCTION_STAGES c:

    c.Warning("My custom warning");


    Xrefs()

    Description

    Returns the cross references for this *DEFINE_CONSTRUCTION_STAGES.

    Arguments

    No arguments

    Returns

    Xrefs object.

    Return type

    Xrefs

    Example

    To get the cross references for *DEFINE_CONSTRUCTION_STAGES c:

    var xrefs = c.Xrefs();


    toString()

    Description

    Creates a string containing the construction stages data in keyword format. Note that this contains the keyword header and the keyword cards. See also ConstructionStages.Keyword() and ConstructionStages.KeywordCards().

    Arguments

    No arguments

    Returns

    string

    Return type

    String

    Example

    To get data for construction stages c in keyword format

    var str = c.toString();