/
NXoff_geometry.nxdl.xml
125 lines (104 loc) · 4.31 KB
/
NXoff_geometry.nxdl.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl" ?>
<!--
# NeXus - Neutron and X-ray Common Data Format
#
# Copyright (C) 2008-2024 NeXus International Advisory Committee (NIAC)
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 3 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# For further information, see http://www.nexusformat.org
-->
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" category="base"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd"
name="NXoff_geometry"
type="group" extends="NXobject">
<symbols>
<doc>These symbols will be used below.</doc>
<symbol name="i"><doc>number of vertices in the shape</doc></symbol>
<symbol name="k"><doc>number of faces in the shape</doc></symbol>
<symbol name="l">
<doc>
number faces which are detecting surfaces or form the boundary of
detecting volumes
</doc>
</symbol>
</symbols>
<doc>
Geometry (shape) description.
The format closely matches the Object File Format (OFF) which can be output
by most CAD software.
It can be used to describe the shape of any beamline component, including detectors.
In the case of detectors it can be used to define the shape of a single pixel, or,
if the pixel shapes are non-uniform, to describe the shape of the whole detector.
</doc>
<field name="vertices" type="NX_NUMBER" units="NX_LENGTH">
<doc>
List of x,y,z coordinates for vertices.
The origin of the coordinates is the position of the parent component, for
example the NXdetector which the geometry describes.
If the shape describes a single pixel for a detector with uniform pixel
shape then the origin is the position of each pixel as described by the
``x/y/z_pixel_offset`` datasets in ``NXdetector``.
</doc>
<dimensions rank="2">
<dim index="1" value="i" />
<dim index="2" value="3" />
</dimensions>
</field>
<field name="winding_order" type="NX_INT">
<doc>
List of indices of vertices in the ``vertices`` dataset to form each face,
right-hand rule for face normal.
</doc>
<dimensions rank="1">
<dim index="1" value="j" />
</dimensions>
</field>
<field name="faces" type="NX_INT">
<doc>The start index in ``winding_order`` for each face.</doc>
<dimensions rank="1">
<dim index="1" value="k" />
</dimensions>
</field>
<field name="detector_faces" type="NX_INT">
<doc>
List of pairs of index in the "faces" dataset and detector id. Face IDs in
the first column, and corresponding detector IDs in the second column.
This dataset should only be used only if the ``NXoff_geometry`` group is
describing a detector.
Note, the face indices must be in ascending order but need not be
consecutive as not every face in faces need be a detecting surface or
boundary of detecting volume.
Can use multiple entries with the same detector id to define detector volumes.
</doc>
<dimensions rank="2">
<dim index="1" value="l" />
<dim index="2" value="2" />
</dimensions>
</field>
<attribute name="default">
<doc>
.. index:: plotting
Declares which child group contains a path leading
to a :ref:`NXdata` group.
It is recommended (as of NIAC2014) to use this attribute
to help define the path to the default dataset to be plotted.
See https://www.nexusformat.org/2014_How_to_find_default_data.html
for a summary of the discussion.
</doc>
</attribute>
</definition>