(guide-field-driven-design)= # Field-driven design A **field** is a value that changes from point to point: a stiffness, a color, a wall thickness. In OpenVCAD fields are attributes, so the same field can grade a part's material or drive a geometric size. These guides cover how to grade material, where field values can come from, and what happens when fields overlap. | Guide | Focus | | --- | --- | | [Functional grading](gradients.md) | Linear, nonlinear, periodic, and distance-based gradients of scalars, colors, and volume fractions | | [Fields: driving material and geometry](fields.md) | Build one field and use it for both material grading and geometric sizes | | [Math expressions](math-expressions.md) | The expression syntax used by attributes and other nodes that accept spatial formulas | | [Python functions for attributes](numba-attributes.md) | Write attributes as small compiled Python functions instead of expression strings | | [Attribute conflict resolution](attribute-conflicts.md) | Decide which value wins where parts with different attributes overlap | | [Working with volumes](volumes.md) | Load sampled volumetric data, such as medical images, as a field on ordinary geometry | | [Simulation-driven design](simulation-driven-design.md) | Bring a finite-element result back into OpenVCAD and grade material from it | Start with Functional grading. The other guides can be read in any order. ```{toctree} :maxdepth: 1 :caption: Field-driven design guides gradients fields math-expressions numba-attributes attribute-conflicts volumes simulation-driven-design ```