.. auto-generated by script ../../../../utils/nxdl2rst.py from the NXDL source NXcsg.nxdl.xml .. index:: ! NXcsg (contributed definition) ! csg (contributed definition) see: csg (contributed definition); NXcsg .. _NXcsg: ===== NXcsg ===== **Status**: contributed definition, extends :ref:`NXobject` **Description**: constructive solid geometry NeXus class, using :ref:`NXquadric` and :ref:`NXoff_geometry`. **Symbols**: No symbol table **Groups cited**: :ref:`NXcsg` .. index:: NXcsg (base class); used in contributed definition **Structure**: .. index:: operation (field) **operation**: (required) :ref:`NX_CHAR ` One of the standard construction solid geometry set operations, or if the CSG is a pointer to the geometry provided by an :ref:`NXquadric` or an :ref:`NXoff_geometry`. Takes values: Any of these values: * ``UNION`` * ``INTERSECTION`` * ``DIFFERENCE`` * ``COMPLEMENT`` * ``IS_QUADRIC`` * ``IS_MESH`` .. index:: geometry (field) **geometry**: (optional) :ref:`NX_CHAR ` Path to a field that is either an :ref:`NXquadric` (if 'operation' = IS_QUADRIC) or an :ref:`NXoff_geometry` (if 'operation' = IS_MESH) that defines the surface making up the constructive solid geometry component. Compulsory if 'operation' is IS_QUADRIC or IS_MESH. **a**: (optional) :ref:`NXcsg` The first operand of constructive solid geometry operation. Compulsory if 'operation' is UNION, INTERSECTION, DIFFERENCE or COMPLEMENT. **b**: (optional) :ref:`NXcsg` The second operand of constructive solid geometry operation. Compulsory if 'operation' is UNION, INTERSECTION or DIFFERENCE. **NXDL Source**: https://github.com/nexusformat/definitions/blob/master/contributed_definitions/NXcsg.nxdl.xml