.. auto-generated by script ../../../../utils/nxdl2rst.py from the NXDL source ../../../../base_classes/NXshape.nxdl.xml .. index:: ! NXshape (base class) ! shape (base class) see: shape (base class); NXshape .. _NXshape: ======= NXshape ======= **Status**: base class, extends :ref:`NXobject`, version 1.0 **Description**: This is the description of the general shape and size of a component, which may be made up of ``numobj`` separate elements - it is used by the :ref:`NXgeometry` class **Symbols**: No symbol table **Groups cited**: none **Structure**: .. index:: shape (data field) **shape**: :ref:`NX_CHAR ` general shape of a component Any of these values: * ``nxflat`` * ``nxcylinder`` * ``nxbox`` * ``nxsphere`` * ``nxcone`` * ``nxelliptical`` * ``nxtoroidal`` * ``nxparabolic`` * ``nxpolynomial`` .. index:: size (data field) **size[numobj, nshapepar]**: :ref:`NX_FLOAT ` {units=\ :ref:`NX_LENGTH `} physical extent of the object along its local axes (after NXorientation) with the center of mass at the local origin (after NXtranslation). The meaning and location of these axes will vary according to the value of the "shape" variable. ``nshapepar`` defines how many parameters: - For "nxcylinder" type the parameters are (diameter,height) and a three value orientation vector of the cylinder. - For the "nxbox" type the parameters are (length,width,height). - For the "nxsphere" type the parameters are (diameter). - For nxcone cone half aperture - For nxelliptical, semi-major axis, semi-minor-axis, angle of major axis and pole - For nxtoroidal, major radius, minor radius - For nxparabolic, parabolic parameter a - For nxpolynomial, an array of polynom coefficients, the dimension of the array encodes the degree of the polynom .. index:: direction (data field) **direction**: :ref:`NX_CHAR ` Any of these values: ``concave`` | ``convex`` **Source**: Automatically generated from https://github.com/nexusformat/definitions/blob/master/base_classes/NXshape.nxdl.xml