Part class

The Part class gives you access to parts in D3PLOT. More...

The D3PLOT 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

Part properties

Name Type Description
composite (read only) logical If this is a PART_COMPOSITE. Can be true or false. If there is no ztf file for the model this will be false.
data (read only) real|array Component data for a part passed as an argument to GetMultipleData. Note that data will only exist for the instance of the part passed to GetMultipleData. i.e. it is a local property stored on the specific instance. It is not stored in the D3PLOT database
elementType (read only) constant The type of elements in the part. e.g. Type.SHELL, Type.SOLID etc
include (read only) integer The include file number in the model that the part is in
index (read only) integer The internal index for the part in D3PLOT (starting at 0)
label (read only) integer The Ansys LS-DYNA label for the part
material (read only) Material The Material the part has. This is only available if there is a ztf file for the model. If not null will be returned. If this is a PART_COMPOSITE then null will be returned. Part.GetCompositeData should be used to get material data in this case
model (read only) Model The Model that the part is in
nip (read only) integer Number of integration points (layers) present for _COMPOSITE parts
title (read only) string The title for the part (or null if no title)
type (read only) constant The type for the part (will be Type.PART)

Detailed Description

The Part class allows you to inspect parts in a model. See the documentation below for more details.

Details of functions

Blank(window[GraphicsWindow])

Description

Blanks the part in a graphics window

Arguments

  • window (GraphicsWindow)

    GraphicsWindow) to blank the part in

    Returns

    No return value

    Example

    To blank part p in graphics window g:

    p.Blank(g);


    BlankAll(window[GraphicsWindow], model[Model]) [static]

    Description

    Blanks all of the parts in the model

    Arguments

  • window (GraphicsWindow)

    GraphicsWindow) to blank the parts in

  • model (Model)

    Model that all the parts will be blanked in

    Returns

    No return value

    Example

    To blank all of the parts in model m, in graphics window gw:

    Part.BlankAll(gw, m);


    BlankFlagged(window[GraphicsWindow], model[Model], flag[Flag]) [static]

    Description

    Blanks all of the parts in the model flagged with a defined flag

    Arguments

  • window (GraphicsWindow)

    GraphicsWindow) to blank the parts in

  • model (Model)

    Model that the flagged parts will be blanked in

  • flag (Flag)

    Flag (see AllocateFlag) set on the parts to blank

    Returns

    No return value

    Example

    To blank all of the parts flagged with flag f in model m, in graphics window gw:

    Part.BlankFlagged(gw, m, f);


    Blanked(window[GraphicsWindow])

    Description

    Checks if the part is blanked in a graphics window or not

    Arguments

  • window (GraphicsWindow)

    GraphicsWindow) in which to check if the part is blanked

    Returns

    true if blanked, false if not

    Return type

    boolean

    Example

    To check if part p is blanked in graphics window g:

    if (p.Blanked(g) ) do_something...


    ClearFlag(flag[Flag])

    Description

    Clears a flag on a part

    Arguments

  • flag (Flag)

    Flag (see AllocateFlag) to clear on the part

    Returns

    No return value

    Example

    To clear flag f on part p:

    p.ClearFlag();


    Elements()

    Description

    Returns an array containing the elements in the part

    Arguments

    No arguments

    Returns

    Array of element objects

    Return type

    array

    Example

    To return the elements for part p:

    var elements = p.Elements();


    First(model[Model]) [static]

    Description

    Returns the first part in the model (or null if there are no parts in the model)

    Arguments

  • model (Model)

    Model to get first part in

    Returns

    Part object

    Return type

    Part

    Example

    To get the first part in model m:

    var p = Part.First(m);


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

    Description

    Flags all of the parts in the model with a defined flag

    Arguments

  • model (Model)

    Model that all the parts will be flagged in

  • flag (Flag)

    Flag (see AllocateFlag) to set on the parts

    Returns

    No return value

    Example

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

    Part.FlagAll(m, f);


    Flagged(flag[Flag])

    Description

    Checks if the part is flagged or not

    Arguments

  • flag (Flag)

    Flag (see AllocateFlag) to test on the part

    Returns

    true if flagged, false if not

    Return type

    boolean

    Example

    To check if part p has flag f set on it:

    if (p.Flagged(f) ) do_something...


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

    Description

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

    Arguments

  • model (Model)

    Model that all the parts are in

  • property (optional) (string)

    Name for property to get for all parts in the model

    Returns

    Array of Part objects or properties

    Return type

    Array

    Example

    To get all of the parts in model m:

    var p = Part.GetAll(m);

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

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


    GetCompositeData(ipt[integer])

    Description

    Returns the composite data for an integration point in *PART_COMPOSITE.

    Arguments

  • ipt (integer)

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

    Returns

    An array containing the material id and thickness values.

    Return type

    Array

    Example

    To get the composite data for the 3rd integration point for part p:

    if (p.composite && p.nip >= 3)
    {
        var ipt_data = p.GetCompositeData(2);
    }


    GetData(component[constant], options (optional)[object])

    Description

    Returns the value for a data component.
    Also see GetMultipleData

    Arguments

  • component (constant)

    Component constant to get data for

  • options (optional) (object)

    Object containing options for getting data. Can be any of:

    Object has the following properties:

    Name Type Description
    extra integer The extra data component number if component Component.SOX for solids, Component.BMX for beams or Component.SHX for shells and thick shells
    ip integer Integration point number to get the data at (ip >= 1 or one of the constants Constant.TOP, Constant.MIDDLE or Constant.BOTTOM). If the integration point is not defined it will use the integration point defined on the current GUI "data" panel, which defaults to the middle surface for shells, thick shells, and solids, and Mag All for beams, but may vary if changed by an interactive user. If consistent output from a script is required, independent of any prior interactive activity, an explicit integration point or surface should be defined
    op integer On plane integration point number for shells and thick shells (op >= 1 [default])
    referenceFrame constant The frame of reference to return values in. Either Constant.GLOBAL (default), Constant.LOCAL, Constant.CYLINDRICAL, Constant.USER_DEFINED or Constant.MATERIAL. This is only necessary for directional components (eg X stress) and then only when something other than the default Constant.GLOBAL coordinate system is to be used
    user integer The user-defined component number if component Component.UNOS, Component.UNOV, Component.USSS, Component.USST, Component.UBMS or Component.UBMV

    Returns

    Number if a scalar component, array if a vector or tensor component (or null if the value cannot be calculated because it's not available in the model).
    If requesting an invalid component it will throw an error (e.g. Component.AREA of a node).

    Return type

    real|array

    Example

    To calculate a component and check it has been calculated (note that in the example, the argument extra is optional):

    var value = p.GetData(component, {extra: 1});
    if (value !== null) do_something...


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

    Description

    Gets all of the parts in the model flagged with a defined flag. If the optional property argument is not given then an array of Part objects is returned. If the property argument is given, that property value for each part is returned in the array instead of a Part object

    Arguments

  • model (Model)

    Model that the flagged parts are in

  • flag (Flag)

    Flag (see AllocateFlag) set on the parts to get

  • property (optional) (string)

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

    Returns

    Array of Part objects or properties

    Return type

    Array

    Example

    To get all of the parts flagged with flag f in model m:

    Part.GetFlagged(m, f);

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

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


    GetFromID(model[Model], label[integer]) [static]

    Description

    Returns the Part object for part in model with label (or null if it does not exist)

    Arguments

  • model (Model)

    Model to get part in

  • label (integer)

    The Ansys LS-DYNA label for the part in the model

    Returns

    Part object

    Return type

    Part

    Example

    To get the part in model m with label 1000:

    var p = Part.GetFromID(m, 1000);


    GetFromIndex(model[Model], index[integer]) [static]

    Description

    Returns the Part object for part in model with index (or null if it does not exist)

    Arguments

  • model (Model)

    Model to get part in

  • index (integer)

    The D3PLOT internal index in the model for part, starting at 0.

    Returns

    Part object

    Return type

    Part

    Example

    To get the 51st part in model m:

    var p = Part.GetFromIndex(m, 50);


    GetMultipleData(component[constant], items[array], options (optional)[object]) [static]

    Description

    Returns the value for a data component for multiple parts. For each part a local property called data will be created containing a number if a scalar component, or an array if a vector or tensor component (or null if the value cannot be calculated). The data is also returned as an object.
    Also see GetData

    Arguments

  • component (constant)

    Component constant to get data for

  • items (array)

    Array of Part objects to get the data for. All of the parts must be in the same model.

  • options (optional) (object)

    Object containing options for getting data. Can be any of:

    Object has the following properties:

    Name Type Description
    extra integer The extra data component number if component Component.SOX for solids, Component.BMX for beams or Component.SHX for shells and thick shells
    ip integer Integration point number to get the data at (ip >= 1 or one of the constants Constant.TOP, Constant.MIDDLE or Constant.BOTTOM)
    op integer On plane integration point number for shells and thick shells (op >= 1 [default])
    referenceFrame constant The frame of reference to return values in. Either Constant.GLOBAL (default), Constant.LOCAL, Constant.CYLINDRICAL, Constant.USER_DEFINED or Constant.MATERIAL. This is only necessary for directional components (eg X stress) and then only when something other than the default Constant.GLOBAL coordinate system is to be used
    user integer The user-defined component number if component Component.UNOS, Component.UNOV, Component.USSS, Component.USST, Component.UBMS or Component.UBMV

    Returns

    Object containing the data. A property is created in the object for each part with the label. The value of the property is a number if a scalar component or an array if a vector or tensor component (or null if the value cannot be calculated)

    Return type

    object

    Example

    To calculate a component for parts in array items and use the data property (note that in the example, the argument extra is optional):

    Part.GetMultipleData(component, items, {extra: 1});
    for (i=0; i<items.length; i++)
    {
        if (items[i].data !== null) do_something...
    }

    To calculate a component for parts in array items and use the return value (note that in the example, the argument extra is optional):

    var data = Part.GetMultipleData(component, items, {extra: 1});
    for (d in data)
    {
        Message("Label is " + d);
        if (data[d] !== null) do_something...
    }


    Last(model[Model]) [static]

    Description

    Returns the last part in the model (or null if there are no parts in the model)

    Arguments

  • model (Model)

    Model to get last part in

    Returns

    Part object

    Return type

    Part

    Example

    To get the last part in model m:

    var p = Part.Last(m);


    Next()

    Description

    Returns the next part in the model (or null if there is not one)

    Arguments

    No arguments

    Returns

    Part object

    Return type

    Part

    Example

    To get the next part after part p:

    p = p.Next();


    Pick() [static]

    Description

    Allows the user to pick a part from the screen

    Arguments

    No arguments

    Returns

    Part object or null if cancelled

    Return type

    Part

    Example

    To pick a part:

    var p = Part.Pick();


    Previous()

    Description

    Returns the previous part in the model (or null if there is not one)

    Arguments

    No arguments

    Returns

    Part object

    Return type

    Part

    Example

    To get the previous part before part p:

    p = p.Previous();


    Select(flag[Flag]) [static]

    Description

    Selects parts using an object menu

    Arguments

  • flag (Flag)

    Flag (see AllocateFlag) to use when selecting parts

    Returns

    The number of parts selected or null if menu cancelled

    Return type

    integer

    Example

    To select parts, flagging those selected with flag f:

    var total = Part.Select(f);


    SetFlag(flag[Flag])

    Description

    Sets a flag on a part

    Arguments

  • flag (Flag)

    Flag (see AllocateFlag) to set on the part

    Returns

    No return value

    Example

    To set flag f on part p:

    p.SetFlag(f);


    Total(model[Model]) [static]

    Description

    Returns the total number of parts in the model

    Arguments

  • model (Model)

    Model to get total in

    Returns

    The number of parts

    Return type

    integer

    Example

    To get the number of parts in model m:

    var total = Part.Total(m);


    Unblank(window[GraphicsWindow])

    Description

    Unblanks the part in a graphics window

    Arguments

  • window (GraphicsWindow)

    GraphicsWindow) to unblank the part in

    Returns

    No return value

    Example

    To unblank part p in graphics window g:

    p.Unblank(g);


    UnblankAll(window[GraphicsWindow], model[Model]) [static]

    Description

    Unblanks all of the parts in the model

    Arguments

  • window (GraphicsWindow)

    GraphicsWindow) to unblank the parts in

  • model (Model)

    Model that all the parts will be unblanked in

    Returns

    No return value

    Example

    To unblank all of the parts in model m, in graphics window gw:

    Part.UnblankAll(gw, m);


    UnblankFlagged(window[GraphicsWindow], model[Model], flag[Flag]) [static]

    Description

    Unblanks all of the parts in the model flagged with a defined flag

    Arguments

  • window (GraphicsWindow)

    GraphicsWindow) to unblank the parts in

  • model (Model)

    Model that the flagged parts will be unblanked in

  • flag (Flag)

    Flag (see AllocateFlag) set on the parts to unblank

    Returns

    No return value

    Example

    To unblank all of the parts flagged with flag f in model m, in graphics window gw:

    Part.UnblankFlagged(gw, m, f);


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

    Description

    Unsets a defined flag on all of the parts in the model

    Arguments

  • model (Model)

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

  • flag (Flag)

    Flag (see AllocateFlag) to unset on the parts

    Returns

    No return value

    Example

    To unset flag f on all of the parts in model m:

    Part.UnflagAll(m, f);