vJSONBooleanMaskOps
Combines two masks per index with a boolean operation and outputs a mask or points.

vJSONBooleanMaskOps takes Mask A and Mask B and applies a boolean operation to each index. A value counts as true when it is above Threshold, and Output Mode chooses the form of the result.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| Operation | Dropdown | AND | AND (default), OR, XOR, A AND NOT B, NOT A or NOT B. |
| Output Mode | Dropdown | Mask Scalars (0/1, any axis true) | Mask Scalars (0/1, any axis true) is the default. Per-Axis XYZ Mask gives one 0 or 1 per axis. The three point modes write the A point, the B point or their average when the result is true, and leave the element out when it is false. |
| Threshold | Float | 0 | Values above it count as true. Slider -1 to 1, default 0. |
| Output Amount | Float | 1 | Multiplies the result. Minimum 0, default 1. In the point modes 0 scales the points to 0, 0, 0. |
| X Amount | Float | 1 | Multiplies the X result in the per-axis and point modes. Default 1. |
+5 more parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| Y Amount | Float | 1 | Multiplies the Y result in the per-axis and point modes. Default 1. |
| Z Amount | Float | 1 | Multiplies the Z result in the per-axis and point modes. Default 1. |
| Trim Zeros | Integer | 0 | Removes output elements that are zero on all axes. Default off. |
| Mask A | DATATYPE | — | First mask, one 0 or 1 value per element. |
| Mask B | DATATYPE | — | Second mask, one 0 or 1 value per element. |
Read the full description
Each element is read as X, Y and Z (a single number is used for all three). A value is true when it is above Threshold. Operation (AND, OR, XOR, A AND NOT B, NOT A or NOT B) is applied to each axis and to the whole point, which is true when any axis is true. Missing elements count as 0.
Mask Scalars writes 1 or 0 times Output Amount for the whole point. Per-Axis XYZ Mask writes one 1 or 0 per axis, times Output Amount and X, Y or Z Amount. The three point modes write the A point, the B point or the average of both, scaled by the amounts, when the result is true. When it is false the element is left out, so the output gets shorter.
Trim Zeros removes every output element that is zero on all axes.
Example Connections
- Combine two masks
- Pass the A points where the masks agree
vJSONWeightMap.Output -> vJSONLogicThreshold.Input
vJSONLogicThreshold.Output -> vJSONBooleanMaskOps.MaskA
vJSONPerlin3Noise.Output -> vJSONBooleanMaskOps.MaskB
vJSONBooleanMaskOps.Output -> vJSONApplyMask.Mask
vJSONPointsOnGrid.Output -> vJSONBooleanMaskOps.MaskA
vJSONPointsOnCircle.Output -> vJSONBooleanMaskOps.MaskB
vJSONBooleanMaskOps.Output -> vJSONCameraProjection.ArrayA