Standard Types

This topic describes the Standard Types for Buildings Space Planning.

This page discusses:

Boolean

Inheritance Path

ObjectType
 Literal
  Enumere
   Boolean

Enumerated Values

Value NLS Value Comment
false false -
true true -

Feature

Inheritance Path

ObjectType
 Feature

Attributes

Name Type Comment
Children List Lists the objects aggregated under an object (usually the objects in the tree). It does not return the parameters aggregated under an object.

This attribute cannot be modified. The list can be empty.

Name String Defines the feature name. This name can be read or written. It usually corresponds to the name in the tree .
NamedURLsListDescribes the URL you can add to an object clicking the Comment and URLs icon in the Engineering Rules Capture app. It can also be modified.

Not all the objects support this capability.

OwnerFeature-
PrimaryTypeType-
UserInfoCommentStringDescribes the comment that the user can add in the Comment and URLs dialog box when adding a URL to an object in the Engineering Rules Capture app. This comment can be modified in the rule. Not all the objects are supporting this capability.
Note: This attribute is available for parameters and features.

List

Inheritance Path

ObjectType
 Feature
  List
Let lst (List)
lst.Append("car")
Message("#", lst[1])
lst[1] = "wheel"

Note: When affecting a list, pay attention to volatile lists copied to persistent ones. If the volatile list contains a large number of items, the persistent one will contain a large number of items as well, which impacts performance. The following mathematical expression 3*x+1 ==> (3*x) + 1 can be encoded as follows:
List("+",
  List("*", 3, "x"),
  1
)

Literal

Inheritance Path

ObjectType
 Literal

Attributes

Name Type Comment
AuthorizedValues List Used to indicate if a value can be modified or not by the end user. This attribute is Read/Write.
ConstantBooleanUsed to indicate if a value can be modified or not by the end user i.e. if the value is locked or not. This attribute is Read/Write.
ShowBooleanUsed to indicate if a parameter must be hidden or shown in the tree. This attribute is Read/Write.
UserInfoComment String -

ObjectType

Inheritance Path

ObjectType

Pointer

Inheritance Path

ObjectType
 Feature
  Pointer

Attributes

Name Type Comment
AllowedType String -
Pointed UndefinedType -

Real

Inheritance Path

ObjectType
 Literal
  Real

Attributes

Name Type Comment
InferiorRange Real Used to apply an inferior range to a real number.

Real.2 =Real.1 .InferiorRange

Important: When the InferiorRange operator is applied to parameters, it lets you valuate ranges. If it is called on a parameter with no range, this operator valuates and applies the range (it corresponds to the check box in the interface). It is impossible to use the EKL to stop applying a range.

SemanticDimLowerLimit LENGTH -
SemanticDimSimpleLimitLENGTH-
SemanticDimTabValueString-
SemanticDimUpperLimitLENGTH-
SuperiorRangeRealUsed to apply a superior range to a real number.

Real.2 =Real.1 .SuperiorRange

Important: When the SuperiorRange operator is applied to parameters, it lets you valuate ranges. If it is called on a parameter with no range, this operator valuates and applies the range (it corresponds to the check box in the interface). It is impossible to use the EKL to stop applying a range.

ToleranceMaxRealLets you access the maximum tolerance that can be applied to parameters of Length and Angle type.
ToleranceMinRealLets you access the minimum tolerance that can be applied to parameters of Length and Angle type.

RuleContext

Type used to represent the execution context of a Business Rule.

Inheritance Path

ObjectType
 Feature
  RuleContext

Attributes

Name Type Comment
CurrentDate Date Returns the current date at the time of the attribute evaluation.
Message String Can be valuated inside the rule to bring back messages to the end user. It is meaningful especially in the context of the validation opening.

Returns a message to the app that uses the business rule opening.

NLSMessageNLSMessageReturns a message to the app that uses the business rule opening.

Note: On the server side, it should be used in priority since the NLS is located in the client runtime view.

OrganizationStringReturns P&O information. Credentials selected at login (strings in read only mode).
ProjectStringReturns P&O information. Credentials selected at login (strings in read only mode).
RoleStringReturns P&O information. Credentials selected at login (strings in read only mode).
SecurityContextStringReturns P&O information. Credentials selected at login (strings in read only mode).
SeverityIntegerInteger that can be valuated inside the rule. It is especially meaningful in the context of the validation opening. By default, the severity is set to 1. It can be valuated in the rule to specify a higher severity. It can be interpreted in different ways depending on the opening. The caller of the opening uses this severity to determine if the validation completely prevents the action, or if it only raises a warning. We recommend that you set the severity to 1 to raise a warning and to 2 to indicate that the severity is higher and does not allow the operation.
  • 0 for information
  • 1 for a warning
  • 2 for limited
  • 3 for fatal

Note: Not to be used on the server side.

UserIDStringUser ID. Returns P&O information.

ValuePointer

Inheritance Path

ObjectType
 Feature
  Pointer
   ValuePointer

Attributes

Name Type Comment
AuthorizedValues List -
Constant Boolean Used to indicate if a value can be modified or not by the end user i.e. if the value is locked or not. This attribute is Read/Write.

/* valuates R with the constantness of P */ 
						R = P.Constant

InferiorRangeReal-
SuperiorRangeReal-
ToleranceMaxReal-
ToleranceMinReal-

Visualizable

Inheritance Path

ObjectType
 Feature
  Visualizable

Attributes

Name Type Comment
Color String You can get and set the color of a Generative Shape Design feature. The Color attribute is defined as a character string. The color can be specified either by its full name, its hexadecimal value or its RGB value. You can find below the hexadecimal and RGB values of the main colors:

Color NamesHexadecimal Values RGB Values
black #000000; 0;0;0
green#00FF00 ; 0;255;0
gray#BEBEBE ; 190;190;190
white#FFFFFF; 255;255;255
brown#A52A2A ; 165;42;42
red#FF0000; 255;0;0
purple#A020F0 ; 160;32;240
navy blue#000080; 0;0;128
blue#0000FF; 0;0;255
magenta#FF00FF; 255;0;255
lime green#00FF00; 50;205;50
olive#808000; 32CD32
yellow#FFFF00; 255;255;0

IsColorInherited Boolean Lets you determine if the color is defined on a given object or if the color is inherited.
IsTransparencyInheritedBooleanLets you determine if the color is defined on a given object or if the color is inherited.
LayerIntegerYou can get/set the layer associated with a feature. This attribute cannot be used in Drafting app. You can find here two examples.

Expert Rule 1:

(for all) 
G:GSMCurve 
 if G.Show == False
 then G.Show = True

Expert Rule 2:

(for all)
P:GSMPoint 
 P.Color = blue 
 P.Show = False 
 Message (Curve pick is set to #, G.Pick) 
 P.Layer = 1 
 Message (Point layer is set to #, P.Layer)
PickBooleanYou can set the "Pickable" status of a feature so that it can or cannot be selected in the work area. The Pick attribute must be set by a Boolean.
ShowBooleanUsed to indicate if a parameter must be hidden or shown in the tree . This attribute is Read/Write and cannot be used in Drafting app.
TransparencyIntegerYou can edit the transparency of EKL types that derive from the Visualizable type like a GeometricFeature. This attribute is used to set the transparency. It varies from 0 (no transparency), the default value, to 255 (full transparency).

Example

let attributes (List)
let pad(GeometricFeature)
let faces (List)
let face (CATFace)

set pad=PartBody\Pad.1 
faces = pad->GetSubElements(2)
set face = faces[1]

face.Transparency=100
Message("Transparency=",face.Transparency)