IGASolid class

The IGASolid class gives you access to IGA solid 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

IGASolid properties

Name Type Description
exists (read only) logical true if IGA Solid exists, false if referred to but not defined.
id (read only) integer ID of the IGA solid. Only used in PRIMER.
include integer The Include file number that the IGA Solid is in.
model (read only) integer The Model number that the IGA Solid is in.
nisr real Interpolation elements in the local r-direction.
niss real Interpolation elements in the local s-direction.
nist real Interpolation elements in the local t-direction.
pid integer Part ID.
rid integer Solid refinement ID.
sid integer Isogeometric Solid (patch) ID.

Detailed Description

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

Constructor

new IGASolid(Model[Model], details[object])

Description

Create a new IGASolid object.

Arguments

  • Model (Model)

    Model that IGA solid will be created in

  • details (object)

    Details for creating the IGASolid

    Object has the following properties:

    Name Type Description
    nisr (optional) real Interpolation elements in the local r-direction.
    niss (optional) real Interpolation elements in the local s-direction.
    nist (optional) real Interpolation elements in the local t-direction.
    pid integer Part ID.
    rid (optional) integer Solid refinement ID.
    sid integer Isogeometric Solid (patch) ID.

    Returns

    IGASolid object

    Return type

    IGASolid

    Example

    To create a new IGA solid in model m using sid 10, part id 100:

    var igso = new IGASolid(m, {sid: 10, pid: 100});

    To create a new IGA solid in model m using sid 20, part id 200 with nisr as 3.3, niss as 4.4, nist as 5.5 and rid as 6:

    var igso = new IGASolid(m, {sid: 20, pid: 200, nisr: 3.3, niss: 4.4, nist: 5.5, rid: 6});

    Details of functions

    AssociateComment(Comment[Comment])

    Description

    Associates a comment with a IGA Solid.

    Arguments

  • Comment (Comment)

    Comment that will be attached to the IGA Solid

    Returns

    No return value

    Example

    To associate comment c to the IGA Solid igso:

    igso.AssociateComment(c);


    Blank()

    Description

    Blanks the IGA Solid

    Arguments

    No arguments

    Returns

    No return value

    Example

    To blank IGA Solid igso:

    igso.Blank();


    BlankAll(Model[Model], redraw (optional)[boolean]) [static]

    Description

    Blanks all of the IGA Solids in the model.

    Arguments

  • Model (Model)

    Model that all IGA Solids will be blanked in

  • redraw (optional) (boolean)

    If model should be redrawn or not. If omitted redraw is false. If you want to do several (un)blanks and only redraw after the last one then use false for all redraws apart from the last one. Alternatively you can redraw using View.Redraw().

    Returns

    No return value

    Example

    To blank all of the IGA Solids in model m:

    IGASolid.BlankAll(m);


    BlankFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]

    Description

    Blanks all of the flagged IGA Solids in the model.

    Arguments

  • Model (Model)

    Model that all the flagged IGA Solids will be blanked in

  • flag (Flag)

    Flag set on the IGA Solids that you want to blank

  • redraw (optional) (boolean)

    If model should be redrawn or not. If omitted redraw is false. If you want to do several (un)blanks and only redraw after the last one then use false for all redraws apart from the last one. Alternatively you can redraw using View.Redraw().

    Returns

    No return value

    Example

    To blank all of the IGA Solids in model m flagged with f:

    IGASolid.BlankFlagged(m, f);


    Blanked()

    Description

    Checks if the IGA Solid is blanked or not.

    Arguments

    No arguments

    Returns

    true if blanked, false if not.

    Return type

    Boolean

    Example

    To check if IGA Solid igso is blanked:

    if (igso.Blanked() ) do_something...


    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 IGA Solid igso:

    igso.Browse();


    ClearFlag(flag[Flag])

    Description

    Clears a flag on the IGA Solid.

    Arguments

  • flag (Flag)

    Flag to clear on the IGA Solid

    Returns

    No return value

    Example

    To clear flag f for IGA Solid igso:

    igso.ClearFlag(f);


    Copy(range (optional)[boolean])

    Description

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

    IGASolid object

    Return type

    IGASolid

    Example

    To copy IGA Solid igso into IGA Solid z:

    var z = igso.Copy();


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

    Description

    Starts an interactive editing panel to create a IGA Solid

    Arguments

  • Model (Model)

    Model that the IGA Solid 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

    IGASolid object (or null if not made).

    Return type

    IGASolid

    Example

    To start creating a IGA Solid in model m:

    var igso = IGASolid.Create(m);


    DetachComment(Comment[Comment])

    Description

    Detaches a comment from a IGA Solid.

    Arguments

  • Comment (Comment)

    Comment that will be detached from the IGA Solid

    Returns

    No return value

    Example

    To detach comment c from the IGA Solid igso:

    igso.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 IGA Solid igso:

    igso.Edit();


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

    Description

    Adds an error for IGA Solid. 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 IGA Solid igso:

    igso.Error("My custom error");


    First(Model[Model]) [static]

    Description

    Returns the first IGA Solid in the model.

    Arguments

  • Model (Model)

    Model to get first IGA Solid in

    Returns

    IGASolid object (or null if there are no IGA Solids in the model).

    Return type

    IGASolid

    Example

    To get the first IGA Solid in model m:

    var igso = IGASolid.First(m);


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

    Description

    Flags all of the IGA Solids in the model with a defined flag.

    Arguments

  • Model (Model)

    Model that all IGA Solids will be flagged in

  • flag (Flag)

    Flag to set on the IGA Solids

    Returns

    No return value

    Example

    To flag all of the IGA Solids with flag f in model m:

    IGASolid.FlagAll(m, f);


    Flagged(flag[Flag])

    Description

    Checks if the IGA Solid is flagged or not.

    Arguments

  • flag (Flag)

    Flag to test on the IGA Solid

    Returns

    true if flagged, false if not.

    Return type

    Boolean

    Example

    To check if IGA Solid igso has flag f set on it:

    if (igso.Flagged(f) ) do_something...


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

    Description

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

    Arguments

  • Model (Model)

    Model that all IGA Solids are in

  • func (function)

    Function to call for each IGA Solid

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

    IGASolid.ForEach(m, test);
    function test(igso)
    {
    // igso is IGASolid object
    }

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

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


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

    Description

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

    Arguments

  • Model (Model)

    Model to get IGA Solids from

  • property (optional) (string)

    Name for property to get for all IGA Solids in the model

    Returns

    Array of IGASolid objects or properties

    Return type

    Array

    Example

    To make an array of IGASolid objects for all of the IGA Solids in model m:

    var a = IGASolid.GetAll(m);

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

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


    GetComments()

    Description

    Extracts the comments associated to a IGA Solid.

    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 IGA Solid igso:

    var comm_array = igso.GetComments();


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

    Description

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

    Arguments

  • Model (Model)

    Model to get IGA Solids from

  • flag (Flag)

    Flag set on the IGA Solids that you want to retrieve

  • property (optional) (string)

    Name for property to get for all flagged IGA Solids in the model

    Returns

    Array of IGASolid objects or properties

    Return type

    Array

    Example

    To make an array of IGASolid objects for all of the IGA Solids in model m flagged with f:

    var igso = IGASolid.GetFlagged(m, f);

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

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


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

    Description

    Returns the IGASolid object for a IGA Solid ID.

    Arguments

  • Model (Model)

    Model to find the IGA Solid in

  • number (integer)

    number of the IGA Solid you want the IGASolid object for

    Returns

    IGASolid object (or null if IGA Solid does not exist).

    Return type

    IGASolid

    Example

    To get the IGASolid object for IGA Solid 100 in model m

    var igso = IGASolid.GetFromID(m, 100);


    GetParameter(prop[string])

    Description

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

    Arguments

  • prop (string)

    IGA Solid property to get parameter for

    Returns

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

    Return type

    Parameter

    Example

    To check if IGASolid property igso.example is a parameter:

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

    To check if IGASolid property igso.example is a parameter by using the GetParameter method:

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


    Keyword()

    Description

    Returns the keyword for this IGA solid (*IGA_SOLID). Note that a carriage return is not added. See also IGASolid.KeywordCards()

    Arguments

    No arguments

    Returns

    string containing the keyword.

    Return type

    String

    Example

    To get the keyword for IGA solid igs:

    var key = igs.Keyword();


    KeywordCards()

    Description

    Returns the keyword cards for the IGA solid. Note that a carriage return is not added. See also IGASolid.Keyword()

    Arguments

    No arguments

    Returns

    string containing the cards.

    Return type

    String

    Example

    To get the cards for IGA solid igs:

    var cards = igs.KeywordCards();


    Last(Model[Model]) [static]

    Description

    Returns the last IGA Solid in the model.

    Arguments

  • Model (Model)

    Model to get last IGA Solid in

    Returns

    IGASolid object (or null if there are no IGA Solids in the model).

    Return type

    IGASolid

    Example

    To get the last IGA Solid in model m:

    var igso = IGASolid.Last(m);


    Next()

    Description

    Returns the next IGA Solid in the model.

    Arguments

    No arguments

    Returns

    IGASolid object (or null if there are no more IGA Solids in the model).

    Return type

    IGASolid

    Example

    To get the IGA Solid in model m after IGA Solid igso:

    var igso = igso.Next();


    Pick(prompt[string], limit (optional)[Model or Flag], modal (optional)[boolean], button text (optional)[string]) [static]

    Description

    Allows the user to pick a IGA Solid.

    Arguments

  • prompt (string)

    Text to display as a prompt to the user

  • limit (optional) (Model or Flag)

    If the argument is a Model then only IGA Solids from that model can be picked. If the argument is a Flag then only IGA Solids that are flagged with limit can be selected. If omitted, or null, any IGA Solids from any model can be selected. from any model.

  • modal (optional) (boolean)

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

  • button text (optional) (string)

    By default the window with the prompt will have a button labelled 'Cancel' which if pressed will cancel the pick and return null. If you want to change the text on the button use this argument. If omitted 'Cancel' will be used.

    Returns

    IGASolid object (or null if not picked)

    Return type

    IGASolid

    Example

    To pick a IGA Solid from model m giving the prompt 'Pick IGA Solid from screen':

    var igso = IGASolid.Pick('Pick IGA Solid from screen', m);


    Previous()

    Description

    Returns the previous IGA Solid in the model.

    Arguments

    No arguments

    Returns

    IGASolid object (or null if there are no more IGA Solids in the model).

    Return type

    IGASolid

    Example

    To get the IGA Solid in model m before IGA Solid igso:

    var igso = igso.Previous();


    RedrawAll(Model[Model]) [static]

    Description

    Redraws all *IGA_SOLIDs whose graphics are out of date in a specified model

    Arguments

  • Model (Model)

    Model to redraw IGA SOLIDs in

    Returns

    No return value

    Example

    Redraw all out of date *IGA_SOLIDs following a change to an *IGA_SOLID or related IGA entity in model m1:

    IGASolid.RedrawAll(m1);


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

    Description

    Allows the user to select IGA Solids using standard PRIMER object menus.

    Arguments

  • flag (Flag)

    Flag to use when selecting IGA Solids

  • prompt (string)

    Text to display as a prompt to the user

  • limit (optional) (Model or Flag)

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

    Return type

    Number

    Example

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

    IGASolid.Select(f, 'Select IGA Solids', m);

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

    IGASolid.Select(f, 'Select IGA Solids', l);


    SetFlag(flag[Flag])

    Description

    Sets a flag on the IGA Solid.

    Arguments

  • flag (Flag)

    Flag to set on the IGA Solid

    Returns

    No return value

    Example

    To set flag f for IGA Solid igso:

    igso.SetFlag(f);


    Sketch(redraw (optional)[boolean])

    Description

    Sketches the IGA Solid. The IGA Solid will be sketched until you either call IGASolid.Unsketch(), IGASolid.UnsketchAll(), Model.UnsketchAll(), or delete the model

    Arguments

  • redraw (optional) (boolean)

    If model should be redrawn or not after the IGA Solid is sketched. If omitted redraw is true. If you want to sketch several IGA Solids and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To sketch IGA Solid igso:

    igso.Sketch();


    SketchFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]

    Description

    Sketches all of the flagged IGA Solids in the model. The IGA Solids will be sketched until you either call IGASolid.Unsketch(), IGASolid.UnsketchFlagged(), Model.UnsketchAll(), or delete the model

    Arguments

  • Model (Model)

    Model that all the flagged IGA Solids will be sketched in

  • flag (Flag)

    Flag set on the IGA Solids that you want to sketch

  • redraw (optional) (boolean)

    If model should be redrawn or not after the IGA Solids are sketched. If omitted redraw is true. If you want to sketch flagged IGA Solids several times and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To sketch all IGA Solids flagged with flag in model m:

    IGASolid.SketchFlagged(m, flag);


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

    Description

    Returns the total number of IGA Solids in the model.

    Arguments

  • Model (Model)

    Model to get total for

  • exists (optional) (boolean)

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

    Returns

    number of IGA Solids

    Return type

    Number

    Example

    To get the total number of IGA Solids in model m:

    var total = IGASolid.Total(m);


    Unblank()

    Description

    Unblanks the IGA Solid

    Arguments

    No arguments

    Returns

    No return value

    Example

    To unblank IGA Solid igso:

    igso.Unblank();


    UnblankAll(Model[Model], redraw (optional)[boolean]) [static]

    Description

    Unblanks all of the IGA Solids in the model.

    Arguments

  • Model (Model)

    Model that all IGA Solids will be unblanked in

  • redraw (optional) (boolean)

    If model should be redrawn or not. If omitted redraw is false. If you want to do several (un)blanks and only redraw after the last one then use false for all redraws apart from the last one. Alternatively you can redraw using View.Redraw().

    Returns

    No return value

    Example

    To unblank all of the IGA Solids in model m:

    IGASolid.UnblankAll(m);


    UnblankFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]

    Description

    Unblanks all of the flagged IGA Solids in the model.

    Arguments

  • Model (Model)

    Model that the flagged IGA Solids will be unblanked in

  • flag (Flag)

    Flag set on the IGA Solids that you want to unblank

  • redraw (optional) (boolean)

    If model should be redrawn or not. If omitted redraw is false. If you want to do several (un)blanks and only redraw after the last one then use false for all redraws apart from the last one. Alternatively you can redraw using View.Redraw().

    Returns

    No return value

    Example

    To unblank all of the IGA Solids in model m flagged with f:

    IGASolid.UnblankFlagged(m, f);


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

    Description

    Unsets a defined flag on all of the IGA Solids in the model.

    Arguments

  • Model (Model)

    Model that the defined flag for all IGA Solids will be unset in

  • flag (Flag)

    Flag to unset on the IGA Solids

    Returns

    No return value

    Example

    To unset the flag f on all the IGA Solids in model m:

    IGASolid.UnflagAll(m, f);


    Unsketch(redraw (optional)[boolean])

    Description

    Unsketches the IGA Solid.

    Arguments

  • redraw (optional) (boolean)

    If model should be redrawn or not after the IGA Solid is unsketched. If omitted redraw is true. If you want to unsketch several IGA Solids and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To unsketch IGA Solid igso:

    igso.Unsketch();


    UnsketchAll(Model[Model], redraw (optional)[boolean]) [static]

    Description

    Unsketches all IGA Solids.

    Arguments

  • Model (Model)

    Model that all IGA Solids will be unblanked in

  • redraw (optional) (boolean)

    If model should be redrawn or not after the IGA Solids are unsketched. If omitted redraw is true. If you want to unsketch several things and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To unsketch all IGA Solids in model m:

    IGASolid.UnsketchAll(m);


    UnsketchFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]

    Description

    Unsketches all flagged IGA Solids in the model.

    Arguments

  • Model (Model)

    Model that all IGA Solids will be unsketched in

  • flag (Flag)

    Flag set on the IGA Solids that you want to unsketch

  • redraw (optional) (boolean)

    If model should be redrawn or not after the IGA Solids are unsketched. If omitted redraw is true. If you want to unsketch several things and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To unsketch all IGA Solids flagged with flag in model m:

    IGASolid.UnsketchAll(m, flag);


    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

    IGASolid object.

    Return type

    IGASolid

    Example

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

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


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

    Description

    Adds a warning for IGA Solid. 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 IGA Solid igso:

    igso.Warning("My custom warning");


    Xrefs()

    Description

    Returns the cross references for this IGA Solid.

    Arguments

    No arguments

    Returns

    Xrefs object.

    Return type

    Xrefs

    Example

    To get the cross references for IGA Solid igso:

    var xrefs = igso.Xrefs();


    toString()

    Description

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

    Arguments

    No arguments

    Returns

    string

    Return type

    String

    Example

    To get data for IGA solid igs in keyword format

    var s = igs.toString();