# Vertex Map Math Tool

The Vertex Map Math tool is a generalized tool that operates on multiple Vertex Maps. You can use it to scale values, compose maps in different ways, and convert map types. Specific examples include: generating a Weight Map from a U or V coordinate and making a Weight Map from the magnitude of a morph map. You can also create a map with the maximum, minimum, sum, or difference of two maps, or clear one map's entries based on the values in another map.

With the Vertex Map Math tool, you can make a formula for the destination (assuming **Amount** is **100%**) similar to:

`dest = ((sourceA *scaleA) + offsetA) Operation ((sourceB *scaleB) + offsetB)`

with the operation being **Add**, **Subtract**, or similar operators.

The options for the Vertex Map Math tool are:

**Destination**: Specifies the name of the destination Vertex Map. Modo creates a map if needed.

**Amount**: Specifies the amount (as a percentage) of the computed value that goes into the dest, blended like alpha.

**Operation**: Specifies the math operation used to combine the terms Source A and Source B.

Then for each source (#):

map# - the vmap index

scale# - a multiplier to apply to the offset vmap value: src# = scale# * (val# + offset#)

offset# - an amount to add to the vmap value

mode# - the way to deal with multi-dimensional vmap values. if src# is morf and dest is uv:

"Direct" - copy direct component to component, so morf.x->uv.u, morf.y->uv.v

"Component" - pick a single component (index#) so morf.index#->uv.u, morf.index#->uv.v

"Magnitude" - The 'vector length' of the source vmap value

"Maximum","Minimum" - The max. or min. of the components of the source vector

index# - the component of the source map that is used

You can use this tool to make Weight Maps of morph magnitude, go between weights and UVs, invert vmaps, and so forth. The destination map can also be the source. If you do not specify a, the value is 0, but Modo applies the offset and scale values for a constant value term to be available.