Use this when you want to do quick math on a number or on a property of any object within a flow, for example adding a parking ratio to a value from a lookup table, scaling every number in a list of unit areas, or setting a value in a settings object. The Modify Property node applies one math operation and passes the result on.
Category: Objects
Kind: Operation
Description: Apply an operator (+ - * / % ** =) to a numeric property of an object. "=" sets the value. If no property is given, the object itself is treated as the number. If a list is provided, the operation is applied to each item.
Inputs
Name | Abbreviation | Type | Access | Description |
Object | O | Any | Item | The object or number to change. Connect a list to change every item in it. |
Property | P | String | Item | Optional. The name of the property to change. Leave it empty to do the math on the number itself. |
Operator | O | String | Item | The math to apply. The default is |
Value | V | Number | Item | The number to apply. The default is 1. |
Outputs
Name | Abbreviation | Type | Access | Description |
Object | O | Any | Item | The changed object or number. A list in gives a list out. |
Warnings and errors
Message | Cause | Fix |
| Property is empty and the input is not a plain number. | Enter the property to change, for example parameters.bayWidth. |
| The operator is not one the node knows. | Use one of the listed operators. You can also write them as +=, -= and so on, and ^ for powers. |
How to
Open the flow in the Flow Builder and add the Modify Property node.
Connect a number, an object, or a list of them to the Object connector.
To change a property on an object, type the property name into Property. To change a plain number, leave Property empty.
Type an operator into Operator and a number into Value, or connect nodes to them.
Connect the output to the next node in your flow.
Operators
Type one of these operators into the Operator input. The examples start from 10 and a value of 2.
Operator | What it does | Result |
| Adds the value. | 12 |
| Subtracts the value. | 8 |
| Multiplies by the value. | 20 |
| Divides by the value. | 5 |
| Returns the remainder after dividing by the value. | 0 |
| Raises the number to the power of the value. | 100 |
| Sets the number to the value. | 2 |
Compound forms like +=, -=, *= and /= work the same as the plain operators. Spaces around the operator are ignored, and an empty Operator counts as +.
Change a number or a property
Property empty: Modify Property does the math on the Object itself. Connect 7, use
+and a value of 2, and the output is 9. This works for a single number or a list of numbers.Property set: Modify Property does the math on that property of the object and outputs a changed copy of the object. Use a dot to reach a nested property, for example
setbacks.front.
How Modify Property handles edge cases
A property that doesn't exist yet counts as 0. Adding 2 to a missing property creates it with a value of 2.
The node never changes the original object. It outputs a changed copy.
Dividing by 0 returns Infinity, and
%by 0 returns NaN. Guard the value upstream if it can reach 0.
Modify Property works on numbers. A text value gives an unexpected result: adding 1 to the text "10" returns "101". Make sure the value holds a number.
Modify Property or Modify Feature Property
Use Modify Property for plain numbers, lists of numbers, and settings or data objects.
Use Modify Feature Property to change a property on a geometry, like its base height. It reads and writes the geometry's own properties, so you type
baseHeightinstead of the full path.
Set a property to any kind of value with Write Property. Read a value back out with Read Property.
