stack_components
Fully constrain two components in a stacked arrangement by creating three mates in one call. Faces touch and positions align on the other two axes.
Instructions
Apila dos componentes con restricción completa (3 mates en una llamada).
Un solo mate cara-contra-cara solo bloquea UN eje — los componentes quedan libres en los otros dos. Esta herramienta hace tres mates en una sola llamada: las dos caras nombradas se tocan Y los componentes comparten posición en los otros dos ejes. Uso típico: apilar piezas para fixture de ensamble, montar bocina sobre placa, alinear placas paralelas. [en: Fully constrain two components in a stacked arrangement (3 mates in one call). A single face mate locks only ONE axis — this tool creates three so the components are fully positioned: the named faces touch AND positions match on the other two axes.]
Args: component1_name, component2_name: SW component instance names from get_active_assembly_info. face1_position, face2_position: One of "top", "bottom", "left", "right", "front", "back". MUST be on opposite ends of the same axis (e.g., "top" + "bottom", "left" + "right", "front" + "back"). Same-direction pairs or different-axis pairs raise ValueError.
Example — stack Pieza1-A on top of Pieza1-B (A's bottom touches B's top, same X and Z position): stack_components("Pieza1-A", "bottom", "Pieza1-B", "top")
Returns:
Dict with mates list of three Mate dicts in creation order:
[touching_faces_mate, perp_axis_1_mate, perp_axis_2_mate].
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| face1_position | Yes | ||
| face2_position | Yes | ||
| component1_name | Yes | ||
| component2_name | Yes |