The Sensor class gives you access to seatbelt sensor 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 | Type | Description |
| acc | real | Activating acceleration. |
| atime | real | Time over which acceleration must be exceeded. |
| colour | Colour | The colour of the sensor |
| dmn | real | Minimum distance |
| dmx | real | Maximum distance |
| dof | integer | Degree of freedom. |
| exists (read only) | logical | true if sensor exists, false if referred to but not defined. |
| include | integer | The Include file number that the sensor is in. |
| label | integer | Sensor number. Also see the sbacid property which is an alternative name for this. |
| model (read only) | integer | The Model number that the sensor is in. |
| nid | integer | Node number. |
| nid1 | integer | Node number 1 |
| nid2 | integer | Node number 2 |
| pulmn | real | Maximum pull-out |
| pulmx | real | Maximum pull-out |
| pulrat | real | Rate of pull-out (length/time units) |
| pultim | real | Time over which rate of pull#out must be exceeded |
| sbrid | integer | Retractor number (for sbstyp = 2 OR 5). |
| sbsfl | integer | Sensor flag. |
| sbsid | integer | Sensor number. Also see the label property which is an alternative name for this. |
| sbstyp | integer | Sensor type. |
| time | real | Time at which sensor triggers |
| transparency | integer | The transparency of the sensor (0-100) 0% is opaque, 100% is transparent. |
Detailed DescriptionThe Sensor class allows you to create, modify, edit and manipulate seatbelt sensor cards. See the documentation below for more details. |
Constructornew Sensor(Model[Model], sbsid[integer], sbstyp[integer], sbsfl (optional)[integer], nid (optional)[integer], nid2 (optional)[integer])DescriptionCreate a new Seatbelt Sensor object. |
Model that sensor will be created in
Sensor number.
Sensor type
Sensor flag. Default 0.
Optional node ID: Compulsory for types 1 and 4.
Optional node ID 2: Compulsory for type 4.
ReturnsSensor object Return typeSensor |
ExampleTo create a new seatbelt sensor in model m with label 100, type 1 and node 1: var s = new Sensor(m, 100, 1, 0, 1);
|
Details of functionsAssociateComment(Comment[Comment])DescriptionAssociates a comment with a sensor. |
Comment that will be attached to the sensor
ReturnsNo return value |
ExampleTo associate comment c to the sensor s: s.AssociateComment(c);
|
Blank()DescriptionBlanks the sensor |
No arguments
ReturnsNo return value |
ExampleTo blank sensor s: s.Blank();
|
BlankAll(Model[Model], redraw (optional)[boolean]) [static]DescriptionBlanks all of the sensors in the model. |
Model that all sensors will be blanked in
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().
ReturnsNo return value |
ExampleTo blank all of the sensors in model m: Sensor.BlankAll(m);
|
BlankFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]DescriptionBlanks all of the flagged sensors in the model. |
Model that all the flagged sensors will be blanked in
Flag set on the sensors that you want to blank
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().
ReturnsNo return value |
ExampleTo blank all of the sensors in model m flagged with f: Sensor.BlankFlagged(m, f);
|
Blanked()DescriptionChecks if the sensor is blanked or not. |
No arguments
Returnstrue if blanked, false if not. Return typeBoolean |
ExampleTo check if sensor s is blanked: if (s.Blanked() ) do_something...
|
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 sensor s: s.Browse();
|
ClearFlag(flag[Flag])DescriptionClears a flag on the sensor. |
Flag to clear on the sensor
ReturnsNo return value |
ExampleTo clear flag f for sensor s: s.ClearFlag(f);
|
Copy(range (optional)[boolean])DescriptionCopies the sensor. The target include of the copied sensor 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().
ReturnsSensor object Return typeSensor |
ExampleTo copy sensor s into sensor z: var z = s.Copy();
|
Create(Model[Model], modal (optional)[boolean]) [static]DescriptionStarts an interactive editing panel to create a sensor |
Model that the sensor 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.
ReturnsSensor object (or null if not made). Return typeSensor |
ExampleTo start creating a sensor in model m: var s = Sensor.Create(m);
|
DetachComment(Comment[Comment])DescriptionDetaches a comment from a sensor. |
Comment that will be detached from the sensor
ReturnsNo return value |
ExampleTo detach comment c from the sensor s: s.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 sensor s: s.Edit();
|
Error(message[string], details (optional)[string])DescriptionAdds an error for sensor. 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 sensor s: s.Error("My custom error");
|
ExtractColour()DescriptionExtracts the actual colour used for sensor. |
No arguments
Returnscolour value (integer) Return typeNumber |
ExampleTo return the colour used for drawing sensor s: var colour = s.ExtractColour();
|
First(Model[Model]) [static]DescriptionReturns the first sensor in the model. |
Model to get first sensor in
ReturnsSensor object (or null if there are no sensors in the model). Return typeSensor |
ExampleTo get the first sensor in model m: var s = Sensor.First(m);
|
FirstFreeLabel(Model[Model], layer (optional)[Include number]) [static]DescriptionReturns the first free sensor label in the model. Also see Sensor.LastFreeLabel(), Sensor.NextFreeLabel() and Model.FirstFreeItemLabel(). |
Model to get first free sensor 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).
ReturnsSensor label. Return typeNumber |
ExampleTo get the first free sensor label in model m: var label = Sensor.FirstFreeLabel(m);
|
FlagAll(Model[Model], flag[Flag]) [static]DescriptionFlags all of the sensors in the model with a defined flag. |
Model that all sensors will be flagged in
Flag to set on the sensors
ReturnsNo return value |
ExampleTo flag all of the sensors with flag f in model m: Sensor.FlagAll(m, f);
|
Flagged(flag[Flag])DescriptionChecks if the sensor is flagged or not. |
Flag to test on the sensor
Returnstrue if flagged, false if not. Return typeBoolean |
ExampleTo check if sensor s has flag f set on it: if (s.Flagged(f) ) do_something...
|
ForEach(Model[Model], func[function], extra (optional)[any]) [static]DescriptionCalls a function for each sensor in the model. |
Model that all sensors are in
Function to call for each sensor
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 Sensor objects or properties for all of the sensors in a model in PRIMER. If the optional property argument is not given then an array of Sensor objects is returned. If the property argument is given, that property value for each sensor is returned in the array instead of a Sensor object |
Model to get sensors from
Name for property to get for all sensors in the model
ReturnsArray of Sensor objects or properties Return typeArray |
GetComments()DescriptionExtracts the comments associated to a sensor. |
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 sensor s: var comm_array = s.GetComments();
|
GetFlagged(Model[Model], flag[Flag], property (optional)[string]) [static]DescriptionReturns an array of Sensor objects for all of the flagged sensors in a model in PRIMER If the optional property argument is not given then an array of Sensor objects is returned. If the property argument is given, then that property value for each sensor is returned in the array instead of a Sensor object |
Model to get sensors from
Flag set on the sensors that you want to retrieve
Name for property to get for all flagged sensors in the model
ReturnsArray of Sensor objects or properties Return typeArray |
GetFromID(Model[Model], number[integer]) [static]DescriptionReturns the Sensor object for a sensor ID. |
Model to find the sensor in
number of the sensor you want the Sensor object for
ReturnsSensor object (or null if sensor does not exist). Return typeSensor |
ExampleTo get the Sensor object for sensor 100 in model m var s = Sensor.GetFromID(m, 100);
|
GetParameter(prop[string])DescriptionChecks if a Sensor 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 Sensor.ViewParameters() method and 'method chaining' (see the examples below). |
sensor property to get parameter for
ReturnsParameter object if property is a parameter, null if not. Return typeParameter |
Keyword()DescriptionReturns the keyword for this sensor (*ELEMENT_SEATBELT_SENSEROMETER) Note that a carriage return is not added. See also Sensor.KeywordCards() |
No arguments
Returnsstring containing the keyword. Return typeString |
ExampleTo get the keyword for sensor s: var key = s.Keyword();
|
KeywordCards()DescriptionReturns the keyword cards for the sensor. Note that a carriage return is not added. See also Sensor.Keyword() |
No arguments
Returnsstring containing the cards. Return typeString |
ExampleTo get the cards for sensor s: var cards = s.KeywordCards();
|
Last(Model[Model]) [static]DescriptionReturns the last sensor in the model. |
Model to get last sensor in
ReturnsSensor object (or null if there are no sensors in the model). Return typeSensor |
ExampleTo get the last sensor in model m: var s = Sensor.Last(m);
|
LastFreeLabel(Model[Model], layer (optional)[Include number]) [static]DescriptionReturns the last free sensor label in the model. Also see Sensor.FirstFreeLabel(), Sensor.NextFreeLabel() and see Model.LastFreeItemLabel() |
Model to get last free sensor 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.
ReturnsSensor label. Return typeNumber |
ExampleTo get the last free sensor label in model m: var label = Sensor.LastFreeLabel(m);
|
Next()DescriptionReturns the next sensor in the model. |
No arguments
ReturnsSensor object (or null if there are no more sensors in the model). Return typeSensor |
ExampleTo get the sensor in model m after sensor s: var s = s.Next();
|
NextFreeLabel(Model[Model], layer (optional)[Include number]) [static]DescriptionReturns the next free (highest+1) sensor label in the model. Also see Sensor.FirstFreeLabel(), Sensor.LastFreeLabel() and Model.NextFreeItemLabel() |
Model to get next free sensor 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).
ReturnsSensor label. Return typeNumber |
ExampleTo get the next free sensor label in model m: var label = Sensor.NextFreeLabel(m);
|
Pick(prompt[string], limit (optional)[Model or Flag], modal (optional)[boolean], button text (optional)[string]) [static]DescriptionAllows the user to pick a sensor. |
Text to display as a prompt to the user
If the argument is a Model then only sensors from that model can be picked. If the argument is a Flag then only sensors that are flagged with limit can be selected. If omitted, or null, any sensors from any model can be selected. from any model.
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.
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.
ReturnsSensor object (or null if not picked) Return typeSensor |
ExampleTo pick a sensor from model m giving the prompt 'Pick sensor from screen': var s = Sensor.Pick('Pick sensor from screen', m);
|
Previous()DescriptionReturns the previous sensor in the model. |
No arguments
ReturnsSensor object (or null if there are no more sensors in the model). Return typeSensor |
ExampleTo get the sensor in model m before sensor s: var s = s.Previous();
|
RenumberAll(Model[Model], start[integer]) [static]DescriptionRenumbers all of the sensors in the model. |
Model that all sensors will be renumbered in
Start point for renumbering
ReturnsNo return value |
ExampleTo renumber all of the sensors in model m, from 1000000: Sensor.RenumberAll(m, 1000000);
|
RenumberFlagged(Model[Model], flag[Flag], start[integer]) [static]DescriptionRenumbers all of the flagged sensors in the model. |
Model that all the flagged sensors will be renumbered in
Flag set on the sensors that you want to renumber
Start point for renumbering
ReturnsNo return value |
ExampleTo renumber all of the sensors in model m flagged with f, from 1000000: Sensor.RenumberFlagged(m, f, 1000000);
|
Select(flag[Flag], prompt[string], limit (optional)[Model or Flag], modal (optional)[boolean]) [static]DescriptionAllows the user to select sensors using standard PRIMER object menus. |
Flag to use when selecting sensors
Text to display as a prompt to the user
If the argument is a Model then only sensors from that model can be selected. If the argument is a Flag then only sensors that are flagged with limit can be selected (limit should be different to flag). If omitted, or null, any sensors 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 sensors selected or null if menu cancelled Return typeNumber |
SetFlag(flag[Flag])DescriptionSets a flag on the sensor. |
Flag to set on the sensor
ReturnsNo return value |
ExampleTo set flag f for sensor s: s.SetFlag(f);
|
Sketch(redraw (optional)[boolean])DescriptionSketches the sensor. The sensor will be sketched until you either call Sensor.Unsketch(), Sensor.UnsketchAll(), Model.UnsketchAll(), or delete the model |
If model should be redrawn or not after the sensor is sketched. If omitted redraw is true. If you want to sketch several sensors and only redraw after the last one then use false for redraw and call View.Redraw().
ReturnsNo return value |
ExampleTo sketch sensor s: s.Sketch();
|
SketchFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]DescriptionSketches all of the flagged sensors in the model. The sensors will be sketched until you either call Sensor.Unsketch(), Sensor.UnsketchFlagged(), Model.UnsketchAll(), or delete the model |
Model that all the flagged sensors will be sketched in
Flag set on the sensors that you want to sketch
If model should be redrawn or not after the sensors are sketched. If omitted redraw is true. If you want to sketch flagged sensors several times and only redraw after the last one then use false for redraw and call View.Redraw().
ReturnsNo return value |
ExampleTo sketch all sensors flagged with flag in model m: Sensor.SketchFlagged(m, flag);
|
Total(Model[Model], exists (optional)[boolean]) [static]DescriptionReturns the total number of sensors in the model. |
Model to get total for
true if only existing sensors should be counted. If false or omitted referenced but undefined sensors will also be included in the total.
Returnsnumber of sensors Return typeNumber |
ExampleTo get the total number of sensors in model m: var total = Sensor.Total(m);
|
Unblank()DescriptionUnblanks the sensor |
No arguments
ReturnsNo return value |
ExampleTo unblank sensor s: s.Unblank();
|
UnblankAll(Model[Model], redraw (optional)[boolean]) [static]DescriptionUnblanks all of the sensors in the model. |
Model that all sensors will be unblanked in
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().
ReturnsNo return value |
ExampleTo unblank all of the sensors in model m: Sensor.UnblankAll(m);
|
UnblankFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]DescriptionUnblanks all of the flagged sensors in the model. |
Model that the flagged sensors will be unblanked in
Flag set on the sensors that you want to unblank
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().
ReturnsNo return value |
ExampleTo unblank all of the sensors in model m flagged with f: Sensor.UnblankFlagged(m, f);
|
UnflagAll(Model[Model], flag[Flag]) [static]DescriptionUnsets a defined flag on all of the sensors in the model. |
Model that the defined flag for all sensors will be unset in
Flag to unset on the sensors
ReturnsNo return value |
ExampleTo unset the flag f on all the sensors in model m: Sensor.UnflagAll(m, f);
|
Unsketch(redraw (optional)[boolean])DescriptionUnsketches the sensor. |
If model should be redrawn or not after the sensor is unsketched. If omitted redraw is true. If you want to unsketch several sensors and only redraw after the last one then use false for redraw and call View.Redraw().
ReturnsNo return value |
ExampleTo unsketch sensor s: s.Unsketch();
|
UnsketchAll(Model[Model], redraw (optional)[boolean]) [static]DescriptionUnsketches all sensors. |
Model that all sensors will be unblanked in
If model should be redrawn or not after the sensors 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().
ReturnsNo return value |
ExampleTo unsketch all sensors in model m: Sensor.UnsketchAll(m);
|
UnsketchFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]DescriptionUnsketches all flagged sensors in the model. |
Model that all sensors will be unsketched in
Flag set on the sensors that you want to unsketch
If model should be redrawn or not after the sensors 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().
ReturnsNo return value |
ExampleTo unsketch all sensors flagged with flag in model m: Sensor.UnsketchAll(m, flag);
|
No arguments
ReturnsSensor object. Return typeSensor |
ExampleTo check if Sensor property s.example is a parameter by using the Sensor.GetParameter() method: if (s.ViewParameters().GetParameter(s.example) ) do_something...
|
Warning(message[string], details (optional)[string])DescriptionAdds a warning for sensor. 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 sensor s: s.Warning("My custom warning");
|
Xrefs()DescriptionReturns the cross references for this sensor. |
No arguments
ReturnsXrefs object. Return typeXrefs |
ExampleTo get the cross references for sensor s: var xrefs = s.Xrefs();
|
toString()DescriptionCreates a string containing the sensor data in keyword format. Note that this contains the keyword header and the keyword cards. See also Sensor.Keyword() and Sensor.KeywordCards(). |
No arguments
Returnsstring Return typeString |
ExampleTo get data for sensor s in keyword format var str = s.toString();
|