OpMap
Overview
OpMap is a math utility for compositing two colors or editing a single color.
For simple blending, see BlendMap. For more artist-familiar compositing, see LayerMap.
Attribute Reference
General attributes
clamp
Bool
default: False
Whether to clamp result to 0 - 1
op1
Rgb bindable
default: [ 1, 1, 1 ]
First operand
![](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/op1.jpg)
op1_factor
Float bindable
default: 1.0
Scalar multiplier on op1
![0](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/fac100.jpg)
![0.5](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/fac105.jpg)
![1](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/add.jpg)
op2
Rgb bindable
default: [ 1, 1, 1 ]
Second operand
![](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/op2.jpg)
op2_factor
Float bindable
default: 1.0
Scalar multiplier on op2
![0](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/fac200.jpg)
![0.5](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/fac205.jpg)
![1](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/add.jpg)
operation
Int enum
0 = “add” (default)
1 = “subtract”
2 = “multiply”
3 = “divide”
4 = “maximum”
5 = “minimum”
6 = “power”
7 = “cross”
8 = “dot”
9 = “invert op1”
10 = “normalize op1”
11 = “op1”
12 = “op2”
13 = “overlay”
14 = “screen”
15 = “abs”
16 = “ceil”
17 = “floor”
18 = “modulo”
19 = “fraction”
20 = “length”
21 = “sine”
22 = “cosine”
23 = “round”
24 = “acos”
25 = “less_than”
26 = “less_than_or_equal”
27 = “greater_than”
28 = “greater_than_or_equal”
29 = “equal”
30 = “not equal”
31 = “and”
32 = “or”
33 = “not”
34 = “xor”
35 = “bit_shift_left”
36 = “bit_shift_right”
37 = “bitwise_and”
38 = “bitwise_or”
39 = “vector_equal”
40 = “vector_not_equal”
Operation
![0 - add](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/add.jpg)
![1 - sub](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/sub.jpg)
![2 - mul](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/mul.jpg)
![3 - div](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/div.jpg)
![4 - max](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/max.jpg)
![5 - min](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/min.jpg)
![6 - power](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/pow.jpg)
![7 - cross](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/cross.jpg)
![8 - dot](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/dot.jpg)
![9 - invert op 1](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/invert.jpg)
![10 - normalize op 1](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/normalize.jpg)
![11 - op1](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/op1.jpg)
![12 - op2](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/op2.jpg)
![13 - overlay](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/overlay.jpg)
![14 - screen](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/screen.jpg)
![15 - abs](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/abs.jpg)
![16 - ceil](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/ceil.jpg)
![17 - floor](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/floor.jpg)
![18 - modulo](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/modulo.jpg)
![19 - fraction](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/fraction.jpg)
![20 - length](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/length.jpg)
![21 - sine](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/sine.jpg)
![22 - cosine](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/cosine.jpg)
![23 - round](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/overlay.jpg)
![24 - acos](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/acos.jpg)
![25 - less_than](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/less_than.jpg)
![26 - less_than_or_equal](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/less_than_or_equal.jpg)
![27 - greater_than](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/greater_than.jpg)
![28 - greater_than_or_equal](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/greater_than_or_equal.jpg)
![29 - equal](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/equal.jpg)
![30 - not_equal](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/not_equal.jpg)
![31 - and](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/and.jpg)
![32 - or](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/or.jpg)
![33 - not](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/not.jpg)
![34 - xor](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/xor.jpg)
![35 - bit_shift_left](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/bit_shift_left.jpg)
![36 - bit_shift_right](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/bit_shift_right.jpg)
![37 - bitwise_and](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/bitwise_and.jpg)
![38 - bitwise_or](https://docs.openmoonray.org/assets/images/user-reference/scene-objects/maps/OpMap/bitwise_or.jpg)
tolerance
Float
default: 0.001
Epsilon. Sets range for almost-equals checking of values