Curve class

The Curve class gives you access to load curve cards 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

Curve constants

Name Description
Curve.AFTER Insertion of curve data option.
Curve.BEFORE Insertion of curve data option.
Curve.CURVE Load curve type *DEFINE_CURVE
Curve.CURVE_FUNCTION Load curve type *DEFINE_CURVE_FUNCTION
Curve.CURVE_SMOOTH Load curve type *DEFINE_CURVE_SMOOTH
Curve.FUNCTION Load curve type *DEFINE_FUNCTION
Curve.TABLE Load curve type *DEFINE_TABLE

Curve properties

Name Type Description
dattyp integer Data type
dist real Total distance tool will travel
exists (read only) logical true if curve exists, false if referred to but not defined.
function string Function expression for Curve.CURVE_FUNCTION
heading string Curve heading
include integer The Include file number that the curve is in.
label integer Curve number. Also see the lcid property which is an alternative name for this.
lcid integer Curve number. Also see the label property which is an alternative name for this.
lcint integer Number of discretization points for the curve
model (read only) integer The Model number that the curve is in.
ncurves integer Number of points in curve or number of curves in table. The npoints property is an alternative name for this. (read only for tables)
npoints integer Number of points in curve or number of curves in table. The ncurves property is an alternative name for this. (read only for tables)
offa real Offset for abscissa values
offo real Offset for ordinate values
sfa real Scale factor on abscissa value
sfo real Scale factor on ordinate value
sidr integer Stress initialisation by dynamic relaxation
tend real Time curve returns to zero
trise real Rise time
tstart real Time curve starts to rise
type constant Load curve type (Can be Curve.CURVE, Curve.CURVE_FUNCTION, Curve.SMOOTH, Curve.FUNCTION or Curve.TABLE).
version string Version for discretization. Can be blank, "3858" or "5434a"
vmax real Maximum velocity

Detailed Description

The Curve class allows you to create, modify, edit and manipulate curve cards. See the documentation below for more details.

Constructor

new Curve(Model[Model], options [object])

Description

Create a new Curve object.

Arguments

  • Model (Model)

    Model that curve will be created in

  • options (object)

    Options for creating the curve

    Object has the following properties:

    Name Type Description
    dattyp (optional) integer Data type
    dist (Type of load curve must be Curve.CURVE_SMOOTH) (optional) real Total distance tool will travel
    function (load curve type has to be Curve.FUNCTION or Curve.CURVE_FUNCTION) (optional) string Function expression
    heading (optional) string Title for the curve
    lcid integer Curve number
    lcint (optional) integer Data type
    offa (optional) real Offset on abscissa value
    offo (optional) real Offset on ordinate value
    sfa (optional) real Scale factor on abscissa value
    sfo (optional) real Scale factor on ordinate value
    sidr (optional) integer Stress initialisation by dynamic relaxation
    tend (Type of load curve must be Curve.CURVE_SMOOTH) (optional) real Time curve returns to zero
    trise (Type of load curve must be Curve.CURVE_SMOOTH) (optional) real Rise time
    tstart (Type of load curve must be Curve.CURVE_SMOOTH) (optional) real Time curve starts to rise
    type constant Type of load curve. Can be Curve.CURVE, Curve.TABLE, Note this does not have to be defined. In previous versions of PRIMER you could only construct a basic load curve type, therefore the type argument was not used. PRIMER is still backwards compatible with this method of load curve creation.
    vmax (Type of load curve must be Curve.CURVE_SMOOTH) (optional) real Maximum velocity

    Returns

    Curve object

    Return type

    Curve

    Example

    To create a new curve in model m with label 200

    var l = new Curve(Curve.CURVE, m, 200);

    To create a new curve function in model m with label 200 and function '0.5*lc9*vm(22)**3' (example from keyword manual)

    var l = new Curve(Curve.CURVE_FUNCTION, m, 200, 0, "0.5*lc9*vm(22)**3");

    To create a new function in model m with label 200 and function 'x(t)=1000*sin(100*t)' and title 'x-velo' (example from keyword manual)

    var l = new Curve(Curve.FUNCTION, m, 200, "x(t)=1000*sin(100*t)", "x-velo");

    To create a new curve function in model m with label 200' (example from keyword manual)

    var l = new Curve(Curve.CURVE_SMOOTH, m, 200);

    new Curve(Load curve type[constant], Model[Model], lcid[integer], sidr (optional)[integer], sfa (optional)[real], sfo (optional)[real], offa (optional)[real], offo (optional)[real], dattyp (optional)[integer], heading (optional)[string], lcint (optional)[integer])   [deprecated]

    This function is deprecated in version 21.0. It is only provided to keep old scripts working. We strongly advise against using it in new scripts. Support may be removed in future versions.

    Description

    Create a new Curve object.

    Arguments

  • Load curve type (constant)

    Type of load curve. Can be Curve.CURVE, Curve.TABLE, Note this does not have to be defined. In previous versions of PRIMER you could only construct a basic load curve type, therefore the type argument was not used. PRIMER is still backwards compatible with this method of load curve creation.

  • Model (Model)

    Model that curve will be created in

  • lcid (integer)

    Curve number

  • sidr (optional) (integer)

    Stress initialisation by dynamic relaxation

  • sfa (optional) (real)

    Scale factor on abscissa value

  • sfo (optional) (real)

    Scale factor on ordinate value

  • offa (optional) (real)

    Offset on abscissa value

  • offo (optional) (real)

    Offset on ordinate value

  • dattyp (optional) (integer)

    Data type

  • heading (optional) (string)

    Title for the curve

  • lcint (optional) (integer)

    Number of discretization points for the curve

    Returns

    Curve object

    Return type

    Curve

    Example

    To create a new curve in model m with label 200

    var l = new Curve(Curve.CURVE, m, 200);

    new Curve(Load curve type[constant], Model[Model], lcid[integer], sidr (optional)[integer], function (optional)[string], heading (optional)[string])   [deprecated]

    This function is deprecated in version 21.0. It is only provided to keep old scripts working. We strongly advise against using it in new scripts. Support may be removed in future versions.

    Description

    Create a new Curve *DEFINE_CURVE_FUNCTION object.

    Arguments

  • Load curve type (constant)

    Type of load curve. Must be Curve.CURVE_FUNCTION.

  • Model (Model)

    Model that curve will be created in

  • lcid (integer)

    Curve number

  • sidr (optional) (integer)

    Stress initialisation by dynamic relaxation

  • function (optional) (string)

    Function expression

  • heading (optional) (string)

    Title for the curve

    Returns

    Curve object

    Return type

    Curve

    Example

    To create a new curve function in model m with label 200 and function '0.5*lc9*vm(22)**3' (example from keyword manual)

    var l = new Curve(Curve.CURVE_FUNCTION, m, 200, 0, "0.5*lc9*vm(22)**3");

    new Curve(Load curve type[constant], Model[Model], lcid[integer], function (optional)[string], heading (optional)[string])   [deprecated]

    This function is deprecated in version 21.0. It is only provided to keep old scripts working. We strongly advise against using it in new scripts. Support may be removed in future versions.

    Description

    Create a new Curve *DEFINE_FUNCTION object.

    Arguments

  • Load curve type (constant)

    Type of load curve. Must be Curve.FUNCTION.

  • Model (Model)

    Model that curve will be created in

  • lcid (integer)

    Curve number

  • function (optional) (string)

    Function expression

  • heading (optional) (string)

    Title for the curve

    Returns

    Curve object

    Return type

    Curve

    Example

    To create a new function in model m with label 200 and function 'x(t)=1000*sin(100*t)' and title 'x-velo' (example from keyword manual)

    var l = new Curve(Curve.FUNCTION, m, 200, "x(t)=1000*sin(100*t)", "x-velo");

    new Curve(Load curve type[constant], Model[Model], lcid[integer], sidr (optional)[integer], dist (optional)[real], tstart (optional)[real], tend (optional)[real], trise (optional)[real], vmax (optional)[real], heading (optional)[string])   [deprecated]

    This function is deprecated in version 21.0. It is only provided to keep old scripts working. We strongly advise against using it in new scripts. Support may be removed in future versions.

    Description

    Create a new Curve *DEFINE_CURVE_SMOOTH object.

    Arguments

  • Load curve type (constant)

    Type of load curve. Must be Curve.CURVE_SMOOTH.

  • Model (Model)

    Model that curve will be created in

  • lcid (integer)

    Curve number

  • sidr (optional) (integer)

    Stress initialisation by dynamic relaxation

  • dist (optional) (real)

    Total distance tool will travel

  • tstart (optional) (real)

    Time curve starts to rise

  • tend (optional) (real)

    Time curve returns to zero

  • trise (optional) (real)

    Rise time

  • vmax (optional) (real)

    Maximum velocity

  • heading (optional) (string)

    Title for the curve

    Returns

    Curve object

    Return type

    Curve

    Example

    To create a new curve function in model m with label 200' (example from keyword manual)

    var l = new Curve(Curve.CURVE_SMOOTH, m, 200);

    Details of functions

    AddPoint(xvalue[real], yvalue[real])

    Description

    Adds a point to a load curve.

    Arguments

  • xvalue (real)

    The x value of the point.

  • yvalue (real)

    The y value of the point.

    Returns

    No return value.

    Example

    To add a point with values of x=3 and y=5 to curve l:

    l.AddPoint(3, 5);


    AddTableEntry(value[real], load curve[integer])

    Description

    Adds an entry line to a table.

    Arguments

  • value (real)

    The value for for this entry in the table.

  • load curve (integer)

    The load curve corresponding to the defined value.

    Returns

    No return value.

    Example

    To add an entry with a value of 3 for load curve 1000:

    l.AddTableEntry(3, 1000);


    AssociateComment(Comment[Comment])

    Description

    Associates a comment with a curve.

    Arguments

  • Comment (Comment)

    Comment that will be attached to the curve

    Returns

    No return value

    Example

    To associate comment c to the curve 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 curve c:

    c.Browse();


    ClearFlag(flag[Flag])

    Description

    Clears a flag on the curve.

    Arguments

  • flag (Flag)

    Flag to clear on the curve

    Returns

    No return value

    Example

    To clear flag f for curve c:

    c.ClearFlag(f);


    Copy(range (optional)[boolean])

    Description

    Copies the curve. The target include of the copied curve 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

    Curve object

    Return type

    Curve

    Example

    To copy curve c into curve z:

    var z = c.Copy();


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

    Description

    Starts an interactive editing panel to create a curve.

    Arguments

  • Model (Model)

    Model that the curve 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

    Curve object (or null if not made)

    Return type

    Curve

    Example

    To start creating a curve in model m:

    var l = Curve.Create(m);


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

    Description

    Starts an interactive editing panel to create a table.

    Arguments

  • Model (Model)

    Model that the curve 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

    Curve object (or null if not made)

    Return type

    Curve

    Example

    To start creating a table in model m:

    var l = Curve.CreateTable(m);


    DetachComment(Comment[Comment])

    Description

    Detaches a comment from a curve.

    Arguments

  • Comment (Comment)

    Comment that will be detached from the curve

    Returns

    No return value

    Example

    To detach comment c from the curve 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 curve c:

    c.Edit();


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

    Description

    Adds an error for curve. 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 curve c:

    c.Error("My custom error");


    First(Model[Model]) [static]

    Description

    Returns the first curve in the model.

    Arguments

  • Model (Model)

    Model to get first curve in

    Returns

    Curve object (or null if there are no curves in the model).

    Return type

    Curve

    Example

    To get the first curve in model m:

    var c = Curve.First(m);


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

    Description

    Returns the first free curve label in the model. Also see Curve.LastFreeLabel(), Curve.NextFreeLabel() and Model.FirstFreeItemLabel().

    Arguments

  • Model (Model)

    Model to get first free curve 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

    Curve label.

    Return type

    Number

    Example

    To get the first free curve label in model m:

    var label = Curve.FirstFreeLabel(m);


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

    Description

    Flags all of the curves in the model with a defined flag.

    Arguments

  • Model (Model)

    Model that all curves will be flagged in

  • flag (Flag)

    Flag to set on the curves

    Returns

    No return value

    Example

    To flag all of the curves with flag f in model m:

    Curve.FlagAll(m, f);


    Flagged(flag[Flag])

    Description

    Checks if the curve is flagged or not.

    Arguments

  • flag (Flag)

    Flag to test on the curve

    Returns

    true if flagged, false if not.

    Return type

    Boolean

    Example

    To check if curve 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 curve in the model.
    Note that ForEach has been designed to make looping over curves as fast as possible and so has some limitations.
    Firstly, a single temporary Curve object is created and on each function call it is updated with the current curve data. This means that you should not try to store the Curve object for later use (e.g. in an array) as it is temporary.
    Secondly, you cannot create new curves inside a ForEach loop.

    Arguments

  • Model (Model)

    Model that all curves are in

  • func (function)

    Function to call for each curve

  • 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 curves in model m:

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

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

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


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

    Description

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

    Arguments

  • Model (Model)

    Model to get curves from

  • property (optional) (string)

    Name for property to get for all curves in the model

    Returns

    Array of Curve objects or properties

    Return type

    Array

    Example

    To make an array of Curve objects for all of the curves in model m:

    var a = Curve.GetAll(m);

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

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


    GetComments()

    Description

    Extracts the comments associated to a curve.

    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 curve c:

    var comm_array = c.GetComments();


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

    Description

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

    Arguments

  • Model (Model)

    Model to get curves from

  • flag (Flag)

    Flag set on the curves that you want to retrieve

  • property (optional) (string)

    Name for property to get for all flagged curves in the model

    Returns

    Array of Curve objects or properties

    Return type

    Array

    Example

    To make an array of Curve objects for all of the curves in model m flagged with f:

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

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

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


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

    Description

    Returns the Curve object for a curve ID.

    Arguments

  • Model (Model)

    Model to find the curve in

  • number (integer)

    number of the curve you want the Curve object for

    Returns

    Curve object (or null if curve does not exist).

    Return type

    Curve

    Example

    To get the Curve object for curve 100 in model m

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


    GetParameter(prop[string])

    Description

    Checks if a Curve 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 Curve.ViewParameters() method and 'method chaining' (see the examples below).

    Arguments

  • prop (string)

    curve property to get parameter for

    Returns

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

    Return type

    Parameter

    Example

    To check if Curve 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 Curve property c.example is a parameter by using the GetParameter method:

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


    GetPoint(row[integer])

    Description

    Returns x and y data for a point in a curve

    Arguments

  • row (integer)

    The row point you want the data for. Note that curve points start at 0, not 1.

    Returns

    An array containing the x coordinate and the y coordinate.

    Return type

    Array

    Example

    To get the curve data for the 3rd point for curve l:

    if (l.npoints >= 3)
    {
        var point_data = l.GetPoint(2);
    }


    GetTableEntry(row[integer])

    Description

    Returns the value and curve label for a row in a table

    Arguments

  • row (integer)

    The row point you want the data for. Note that curve points start at 0, not 1.

    Returns

    An array containing the value and the load curve label.

    Return type

    Array

    Example

    To get the data for the 3rd point for table t:

    if (t.npoints >= 3)
    {
        var row_data = t.GetTableEntry(2);
    }


    InsertPoint(ipt[integer], xvalue[real], yvalue[real], position[integer])

    Description

    Inserts point values before or after a specified row of data on a load curve.

    Arguments

  • ipt (integer)

    The row you want to insert the data before or after. Note that the row data starts at 0, not 1.

  • xvalue (real)

    The x value of the point.

  • yvalue (real)

    The y value of the point.

  • position (integer)

    Specify either before or after the selected row. Use 'Curve.BEFORE' for before, and 'Curve.AFTER' for after.

    Returns

    No return value.

    Example

    To insert the values after the 3rd row to x=3, y=5 for curve l:

    l.InsertPoint(2, 3, 5, Curve.AFTER);


    InsertTableEntry(ipt[integer], value[real], lcid[integer], position[integer])

    Description

    Inserts a table row before or after a specified row of data on a table.

    Arguments

  • ipt (integer)

    The row you want to insert the data before or after. Note that the row data starts at 0, not 1.

  • value (real)

    The value of the row.

  • lcid (integer)

    The load curve corresponding to the defined value.

  • position (integer)

    Specify either before or after the selected row. Use 'Curve.BEFORE' for before, and 'Curve.AFTER' for after.

    Returns

    No return value.

    Example

    To insert the values after the 3rd row to value=3, lcur=5 for table t:

    t.InsertTableEntry(2, 3, 5, Curve.AFTER);


    Keyword()

    Description

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

    Arguments

    No arguments

    Returns

    string containing the keyword.

    Return type

    String

    Example

    To get the keyword for curve l:

    var key = l.Keyword();


    KeywordCards()

    Description

    Returns the keyword cards for the curve. Note that a carriage return is not added. See also Curve.Keyword()

    Arguments

    No arguments

    Returns

    string containing the cards.

    Return type

    String

    Example

    To get the cards for curve l:

    var cards = l.KeywordCards();


    Last(Model[Model]) [static]

    Description

    Returns the last curve in the model.

    Arguments

  • Model (Model)

    Model to get last curve in

    Returns

    Curve object (or null if there are no curves in the model).

    Return type

    Curve

    Example

    To get the last curve in model m:

    var c = Curve.Last(m);


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

    Description

    Returns the last free curve label in the model. Also see Curve.FirstFreeLabel(), Curve.NextFreeLabel() and see Model.LastFreeItemLabel()

    Arguments

  • Model (Model)

    Model to get last free curve 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

    Curve label.

    Return type

    Number

    Example

    To get the last free curve label in model m:

    var label = Curve.LastFreeLabel(m);


    Next()

    Description

    Returns the next curve in the model.

    Arguments

    No arguments

    Returns

    Curve object (or null if there are no more curves in the model).

    Return type

    Curve

    Example

    To get the curve in model m after curve c:

    var c = c.Next();


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

    Description

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

    Arguments

  • Model (Model)

    Model to get next free curve 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

    Curve label.

    Return type

    Number

    Example

    To get the next free curve label in model m:

    var label = Curve.NextFreeLabel(m);


    Previous()

    Description

    Returns the previous curve in the model.

    Arguments

    No arguments

    Returns

    Curve object (or null if there are no more curves in the model).

    Return type

    Curve

    Example

    To get the curve in model m before curve c:

    var c = c.Previous();


    RemovePoint(row[integer])

    Description

    Removes a row of data from a curve

    Arguments

  • row (integer)

    The row point you want to remove. Note that curve points start at 0, not 1.

    Returns

    No return value.

    Example

    To remove the curve data for the 3rd point for curve l:

    if (l.npoints >= 3)
    {
        var point_data = l.RemovePoint(2);
    }


    RemoveTableEntry(ipt[integer])

    Description

    Removes the value and loadcurve values for a specified row of data on a load curve.

    Arguments

  • ipt (integer)

    The row you want to remove the data for. Note that the row data starts at 0, not 1.

    Returns

    No return value.

    Example

    To remove an entry at row 4:

    t.RemoveTableEntry(4);


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

    Description

    Renumbers all of the curves in the model.

    Arguments

  • Model (Model)

    Model that all curves will be renumbered in

  • start (integer)

    Start point for renumbering

    Returns

    No return value

    Example

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

    Curve.RenumberAll(m, 1000000);


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

    Description

    Renumbers all of the flagged curves in the model.

    Arguments

  • Model (Model)

    Model that all the flagged curves will be renumbered in

  • flag (Flag)

    Flag set on the curves that you want to renumber

  • start (integer)

    Start point for renumbering

    Returns

    No return value

    Example

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

    Curve.RenumberFlagged(m, f, 1000000);


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

    Description

    Allows the user to select curves using standard PRIMER object menus.

    Arguments

  • flag (Flag)

    Flag to use when selecting curves

  • prompt (string)

    Text to display as a prompt to the user

  • limit (optional) (Model or Flag)

    If the argument is a Model then only curves from that model can be selected. If the argument is a Flag then only curves that are flagged with limit can be selected (limit should be different to flag). If omitted, or null, any curves 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 curves selected or null if menu cancelled

    Return type

    Number

    Example

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

    Curve.Select(f, 'Select curves', m);

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

    Curve.Select(f, 'Select curves', l);


    SetFlag(flag[Flag])

    Description

    Sets a flag on the curve.

    Arguments

  • flag (Flag)

    Flag to set on the curve

    Returns

    No return value

    Example

    To set flag f for curve c:

    c.SetFlag(f);


    SetPoint(ipt[integer], xvalue[real], yvalue[real])

    Description

    Sets the x and y values for a specified row of data on a load curve.

    Arguments

  • ipt (integer)

    The row you want to set the data for. Note that the row data starts at 0, not 1.

  • xvalue (real)

    The x value of the point.

  • yvalue (real)

    The y value of the point.

    Returns

    No return value.

    Example

    To set the values for the 3rd row to x=3, y=5 for curve l:

    l.SetPoint(2, 3, 5);


    SetTableEntry(ipt[integer], value[real], load curve[integer])

    Description

    Sets the value and loadcurve values for a specified row of data on a load curve.

    Arguments

  • ipt (integer)

    The row you want to set the data for. Note that the row data starts at 0, not 1.

  • value (real)

    The value for for this entry in the table.

  • load curve (integer)

    The load curve corresponding to the defined value.

    Returns

    No return value.

    Example

    To add an entry with a value of 3 for load curve 1000 at row 4:

    t.SetTableEntry(4, 3, 1000);


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

    Description

    Returns the total number of curves in the model.

    Arguments

  • Model (Model)

    Model to get total for

  • exists (optional) (boolean)

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

    Returns

    number of curves

    Return type

    Number

    Example

    To get the total number of curves in model m:

    var total = Curve.Total(m);


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

    Description

    Unsets a defined flag on all of the curves in the model.

    Arguments

  • Model (Model)

    Model that the defined flag for all curves will be unset in

  • flag (Flag)

    Flag to unset on the curves

    Returns

    No return value

    Example

    To unset the flag f on all the curves in model m:

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

    Curve object.

    Return type

    Curve

    Example

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

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


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

    Description

    Adds a warning for curve. 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 curve c:

    c.Warning("My custom warning");


    Xrefs()

    Description

    Returns the cross references for this curve.

    Arguments

    No arguments

    Returns

    Xrefs object.

    Return type

    Xrefs

    Example

    To get the cross references for curve c:

    var xrefs = c.Xrefs();


    toString()

    Description

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

    Arguments

    No arguments

    Returns

    string

    Return type

    String

    Example

    To get data for curve l in keyword format

    var l = d.toString();