The InterfaceComponent class gives you access to interface component 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:
| Name | Description |
| InterfaceComponent.NODE | Node option |
| InterfaceComponent.SEGMENT | Segment option |
| Name | Type | Description |
| cid | integer | Coordinate system ID. |
| exists (read only) | logical | true if interface component exists, false if referred to but not defined. |
| include | integer | The Include file number that the interface component is in. |
| model (read only) | integer | The Model number that the interface component is in. |
| nid | integer | Node ID. |
| nsid | integer | Element ID or element set ID. The ssid property is an alternative name for this. |
| option | constant | InterfaceComponent option. Can be InterfaceComponent.NODE, InterfaceComponent.SEGMENT, |
| ssid | integer | Element ID or element set ID. The nsid property is an alternative name for this. |
| title | string | InterfaceComponent title |
Detailed DescriptionThe InterfaceComponent class allows you to create, modify, edit and manipulate interface component cards. See the documentation below for more details. |
Constructornew InterfaceComponent(Model[Model], type[constant], snid/ssid[integer], cid[integer], nid[integer], label (optional)[integer], title (optional)[string])DescriptionCreate a new InterfaceComponent object. |
Model that InterfaceComponent will be created in
InterfaceComponent type. Can be InterfaceComponent.NODE, InterfaceComponent.SEGMENT,
Set node or set segment ID
Coordinate system ID
Node ID
InterfaceComponent number
Title for this interface
ReturnsInterfaceComponent object Return typeInterfaceComponent |
Details of functionsAssociateComment(Comment[Comment])DescriptionAssociates a comment with a interface component. |
Comment that will be attached to the interface component
ReturnsNo return value |
ExampleTo associate comment c to the interface component i_c: i_c.AssociateComment(c);
|
Browse(modal (optional)[boolean])DescriptionStarts an edit panel in Browse mode. |
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.
Returnsno return value |
ExampleTo Browse interface component i_c: i_c.Browse();
|
ClearFlag(flag[Flag])DescriptionClears a flag on the interface component. |
Flag to clear on the interface component
ReturnsNo return value |
ExampleTo clear flag f for interface component i_c: i_c.ClearFlag(f);
|
Copy(range (optional)[boolean])DescriptionCopies the interface component. The target include of the copied interface component can be set using Options.copy_target_include. |
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().
ReturnsInterfaceComponent object Return typeInterfaceComponent |
ExampleTo copy interface component i_c into interface component z: var z = i_c.Copy();
|
Create(Model[Model], modal (optional)[boolean]) [static]DescriptionStarts an interactive editing panel to create a interface component |
Model that the interface component will be created in.
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.
ReturnsInterfaceComponent object (or null if not made). Return typeInterfaceComponent |
ExampleTo start creating a interface component in model m: var i_c = InterfaceComponent.Create(m);
|
DetachComment(Comment[Comment])DescriptionDetaches a comment from a interface component. |
Comment that will be detached from the interface component
ReturnsNo return value |
ExampleTo detach comment c from the interface component i_c: i_c.DetachComment(c);
|
Edit(modal (optional)[boolean])DescriptionStarts an interactive editing panel. |
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.
Returnsno return value |
ExampleTo Edit interface component i_c: i_c.Edit();
|
Error(message[string], details (optional)[string])DescriptionAdds an error for interface component. For more details on checking see the Check class. |
The error message to give
An optional detailed error message
ReturnsNo return value |
ExampleTo add an error message "My custom error" for interface component i_c: i_c.Error("My custom error");
|
First(Model[Model]) [static]DescriptionReturns the first interface component in the model. |
Model to get first interface component in
ReturnsInterfaceComponent object (or null if there are no interface components in the model). Return typeInterfaceComponent |
ExampleTo get the first interface component in model m: var i_c = InterfaceComponent.First(m);
|
FirstFreeLabel(Model[Model], layer (optional)[Include number]) [static]DescriptionReturns the first free interface component label in the model. Also see InterfaceComponent.LastFreeLabel(), InterfaceComponent.NextFreeLabel() and Model.FirstFreeItemLabel(). |
Model to get first free interface component label in
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).
ReturnsInterfaceComponent label. Return typeNumber |
ExampleTo get the first free interface component label in model m: var label = InterfaceComponent.FirstFreeLabel(m);
|
FlagAll(Model[Model], flag[Flag]) [static]DescriptionFlags all of the interface components in the model with a defined flag. |
Model that all interface components will be flagged in
Flag to set on the interface components
ReturnsNo return value |
ExampleTo flag all of the interface components with flag f in model m: InterfaceComponent.FlagAll(m, f);
|
Flagged(flag[Flag])DescriptionChecks if the interface component is flagged or not. |
Flag to test on the interface component
Returnstrue if flagged, false if not. Return typeBoolean |
ExampleTo check if interface component i_c has flag f set on it: if (i_c.Flagged(f) ) do_something...
|
ForEach(Model[Model], func[function], extra (optional)[any]) [static]DescriptionCalls a function for each interface component in the model. |
Model that all interface components are in
Function to call for each interface component
An optional extra object/array/string etc that will appended to arguments when calling the function
ReturnsNo return value |
GetAll(Model[Model], property (optional)[string]) [static]DescriptionReturns an array of InterfaceComponent objects or properties for all of the interface components in a model in PRIMER. If the optional property argument is not given then an array of InterfaceComponent objects is returned. If the property argument is given, that property value for each interface component is returned in the array instead of a InterfaceComponent object |
Model to get interface components from
Name for property to get for all interface components in the model
ReturnsArray of InterfaceComponent objects or properties Return typeArray |
GetComments()DescriptionExtracts the comments associated to a interface component. |
No arguments
ReturnsArray of Comment objects (or null if there are no comments associated to the node). Return typeArray |
ExampleTo get the array of comments associated to the interface component i_c: var comm_array = i_c.GetComments();
|
GetFlagged(Model[Model], flag[Flag], property (optional)[string]) [static]DescriptionReturns an array of InterfaceComponent objects for all of the flagged interface components in a model in PRIMER If the optional property argument is not given then an array of InterfaceComponent objects is returned. If the property argument is given, then that property value for each interface component is returned in the array instead of a InterfaceComponent object |
Model to get interface components from
Flag set on the interface components that you want to retrieve
Name for property to get for all flagged interface components in the model
ReturnsArray of InterfaceComponent objects or properties Return typeArray |
GetFromID(Model[Model], number[integer]) [static]DescriptionReturns the InterfaceComponent object for a interface component ID. |
Model to find the interface component in
number of the interface component you want the InterfaceComponent object for
ReturnsInterfaceComponent object (or null if interface component does not exist). Return typeInterfaceComponent |
ExampleTo get the InterfaceComponent object for interface component 100 in model m var i_c = InterfaceComponent.GetFromID(m, 100);
|
GetParameter(prop[string])DescriptionChecks if a InterfaceComponent 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 InterfaceComponent.ViewParameters() method and 'method chaining' (see the examples below). |
interface component property to get parameter for
ReturnsParameter object if property is a parameter, null if not. Return typeParameter |
Keyword()DescriptionReturns the keyword for this InterfaceComponent (*INTERFACE_COMPONENT). Note that a carriage return is not added. See also InterfaceComponent.KeywordCards() |
No arguments
Returnsstring containing the keyword. Return typeString |
ExampleTo get the keyword for InterfaceComponent ed: var key = ed.Keyword();
|
KeywordCards()DescriptionReturns the keyword cards for the InterfaceComponent. Note that a carriage return is not added. See also InterfaceComponent.Keyword() |
No arguments
Returnsstring containing the cards. Return typeString |
ExampleTo get the cards for InterfaceComponent ed: var cards = ed.KeywordCards();
|
Last(Model[Model]) [static]DescriptionReturns the last interface component in the model. |
Model to get last interface component in
ReturnsInterfaceComponent object (or null if there are no interface components in the model). Return typeInterfaceComponent |
ExampleTo get the last interface component in model m: var i_c = InterfaceComponent.Last(m);
|
LastFreeLabel(Model[Model], layer (optional)[Include number]) [static]DescriptionReturns the last free interface component label in the model. Also see InterfaceComponent.FirstFreeLabel(), InterfaceComponent.NextFreeLabel() and see Model.LastFreeItemLabel() |
Model to get last free interface component label in
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.
ReturnsInterfaceComponent label. Return typeNumber |
ExampleTo get the last free interface component label in model m: var label = InterfaceComponent.LastFreeLabel(m);
|
Next()DescriptionReturns the next interface component in the model. |
No arguments
ReturnsInterfaceComponent object (or null if there are no more interface components in the model). Return typeInterfaceComponent |
ExampleTo get the interface component in model m after interface component i_c: var i_c = i_c.Next();
|
NextFreeLabel(Model[Model], layer (optional)[Include number]) [static]DescriptionReturns the next free (highest+1) interface component label in the model. Also see InterfaceComponent.FirstFreeLabel(), InterfaceComponent.LastFreeLabel() and Model.NextFreeItemLabel() |
Model to get next free interface component label in
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).
ReturnsInterfaceComponent label. Return typeNumber |
ExampleTo get the next free interface component label in model m: var label = InterfaceComponent.NextFreeLabel(m);
|
Previous()DescriptionReturns the previous interface component in the model. |
No arguments
ReturnsInterfaceComponent object (or null if there are no more interface components in the model). Return typeInterfaceComponent |
ExampleTo get the interface component in model m before interface component i_c: var i_c = i_c.Previous();
|
RenumberAll(Model[Model], start[integer]) [static]DescriptionRenumbers all of the interface components in the model. |
Model that all interface components will be renumbered in
Start point for renumbering
ReturnsNo return value |
ExampleTo renumber all of the interface components in model m, from 1000000: InterfaceComponent.RenumberAll(m, 1000000);
|
RenumberFlagged(Model[Model], flag[Flag], start[integer]) [static]DescriptionRenumbers all of the flagged interface components in the model. |
Model that all the flagged interface components will be renumbered in
Flag set on the interface components that you want to renumber
Start point for renumbering
ReturnsNo return value |
ExampleTo renumber all of the interface components in model m flagged with f, from 1000000: InterfaceComponent.RenumberFlagged(m, f, 1000000);
|
Select(flag[Flag], prompt[string], limit (optional)[Model or Flag], modal (optional)[boolean]) [static]DescriptionAllows the user to select interface components using standard PRIMER object menus. |
Flag to use when selecting interface components
Text to display as a prompt to the user
If the argument is a Model then only interface components from that model can be selected. If the argument is a Flag then only interface components that are flagged with limit can be selected (limit should be different to flag). If omitted, or null, any interface components can be selected. from any model.
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.
ReturnsNumber of interface components selected or null if menu cancelled Return typeNumber |
SetFlag(flag[Flag])DescriptionSets a flag on the interface component. |
Flag to set on the interface component
ReturnsNo return value |
ExampleTo set flag f for interface component i_c: i_c.SetFlag(f);
|
Total(Model[Model], exists (optional)[boolean]) [static]DescriptionReturns the total number of interface components in the model. |
Model to get total for
true if only existing interface components should be counted. If false or omitted referenced but undefined interface components will also be included in the total.
Returnsnumber of interface components Return typeNumber |
ExampleTo get the total number of interface components in model m: var total = InterfaceComponent.Total(m);
|
UnflagAll(Model[Model], flag[Flag]) [static]DescriptionUnsets a defined flag on all of the interface components in the model. |
Model that the defined flag for all interface components will be unset in
Flag to unset on the interface components
ReturnsNo return value |
ExampleTo unset the flag f on all the interface components in model m: InterfaceComponent.UnflagAll(m, f);
|
No arguments
ReturnsInterfaceComponent object. Return typeInterfaceComponent |
ExampleTo check if InterfaceComponent property i_c.example is a parameter by using the InterfaceComponent.GetParameter() method: if (i_c.ViewParameters().GetParameter(i_c.example) ) do_something...
|
Warning(message[string], details (optional)[string])DescriptionAdds a warning for interface component. For more details on checking see the Check class. |
The warning message to give
An optional detailed warning message
ReturnsNo return value |
ExampleTo add a warning message "My custom warning" for interface component i_c: i_c.Warning("My custom warning");
|
Xrefs()DescriptionReturns the cross references for this interface component. |
No arguments
ReturnsXrefs object. Return typeXrefs |
ExampleTo get the cross references for interface component i_c: var xrefs = i_c.Xrefs();
|
toString()DescriptionCreates a string containing the InterfaceComponent data in keyword format. Note that this contains the keyword header and the keyword cards. See also InterfaceComponent.Keyword() and InterfaceComponent.KeywordCards(). |
No arguments
Returnsstring Return typeString |
ExampleTo get data for InterfaceComponent ed in keyword format var s = ed.toString();
|