This document gives specifications for the custom HDF data types that are used in the DIRSIG HDF data formats.
ClassicBalfourRecord
Type |
H5T_COMPOUND |
Represents a single row in the classic Balfour type-specific table. Holds the coefficients for the classic Balfour model.
Field Name | Data Type | Description |
---|---|---|
coefficients |
H5T_ARRAY [5] NATIVE_FLOAT |
Balfour A0-A4 coefficients |
DataDrivenTempRecord
Type |
H5T_COMPOUND |
This type is used as a record in the data-driven temperature model data table. It represents a single time sample in a data-driven time series.
Field Name | Data Type | Description |
---|---|---|
timeSec |
NATIVE_FLOAT |
Time of the samples [s] |
tempK |
NATIVE_FLOAT |
Temperature at that time [K] |
DecalRecord
Type |
H5T_COMPOUND |
A record in the type-specific table for decal instances.
Field Name | Data Type | Description |
---|---|---|
materialId |
NATIVE_UINT |
An index into the material properties table. The decal will only appear when the object’s material matches this ID. |
parentInstanceId |
NATIVE_UINT |
The type-specific instance index in the static instance table to which the decal is applied |
DrapeProjectorRecord
Type |
H5T_COMPOUND |
A record in the type-specific table for drape projection. Contains the parameters for an orthographic projection.
Field Name | Data Type | Description |
---|---|---|
xOrigin |
NATIVE_FLOAT |
The x-coordinate of the origin in scene ENU meters |
yOrigin |
NATIVE_FLOAT |
The y-coordinate of the origin in scene ENU meters |
pixelSize |
NATIVE_FLOAT |
Pixel size in meters |
Flex Motion Types
CirclingPathRecord
Type |
H5T_COMPOUND |
Represents a record in the flex motion circling path location engine.
Field Name | Data Type | Description |
---|---|---|
startTimeSec |
NATIVE_DOUBLE |
The start time of the path in seconds |
center |
The center of the path |
|
radiusM |
NATIVE_DOUBLE |
The radius of the path in meters |
linearVelocityMS |
NATIVE_DOUBLE |
The linear velocity in meters/second |
EngineTableRecord
Type |
H5T_COMPOUND |
Represents a single row in the flex motion engine index table.
Field Name | Data Type | Description |
---|---|---|
locationEngineIndex |
NATIVE_UINT |
Index of the location engine |
orientationEngineIndex |
NATIVE_UINT |
Index of the orientation engine |
LocationEngineRecord
Type |
H5T_COMPOUND |
A record in the flex motion location engine index table.
Field Name | Data Type | Description |
---|---|---|
type |
The type of the location engine |
|
typeSpecificIndex |
NATIVE_UINT |
The index in the type-specific table |
LocationEngineType
Type |
H5T_ENUM |
Constants for the supported types of location engines for FlexMotion.
Name | Value | Description |
---|---|---|
Circling |
0 |
Circling path around a fixed point |
Sgp4 |
1 |
SGP4 orbital model |
StraightPath |
2 |
Straight path between two points |
Waypoints |
3 |
Time-series of waypoints |
OrientationEngineRecord
Type |
H5T_COMPOUND |
A record in the flex motion orientation engine index table.
Field Name | Data Type | Description |
---|---|---|
type |
The type of the orientation engine |
|
typeSpecificIndex |
NATIVE_UINT |
The index in the type-specific table |
OrientationEngineType
Type |
H5T_ENUM |
Constants for the supported types of orientation engines for FlexMotion.
Name | Value | Description |
---|---|---|
Quaternion |
0 |
Time series of quaternions |
LookAt |
1 |
Constantly look at a location engine |
Spin |
2 |
Spin around a fixed axis with a time-series of velocities |
Velocity |
3 |
Point in the direction of the velocity vector |
QuaternionsRecord
Type |
H5T_COMPOUND |
A record in the flex motion quaternion orientation engine table.
Field Name | Data Type | Description |
---|---|---|
timeSec |
NATIVE_DOUBLE |
The time in seconds |
quaternion |
The quaternion at the given time |
SpinDataRecord
Type |
H5T_COMPOUND |
A record in the flex motion spin orientation engine table.
Field Name | Data Type | Description |
---|---|---|
timeSec |
NATIVE_DOUBLE |
The time in seconds |
spinRateRadSec |
NATIVE_DOUBLE |
The spin rate in rad/sec at the given time |
StraightPathRecord
Type |
H5T_COMPOUND |
A record in the flex motion straight path location engine type-specific table.
Field Name | Data Type | Description |
---|---|---|
startTimeSec |
NATIVE_DOUBLE |
Start time of the path in seconds |
startPt |
The start point of the path |
|
headingDegEofN |
NATIVE_DOUBLE |
The heading in degrees east of north |
linearVelocityMS |
NATIVE_DOUBLE |
The linear velocity along the path in meters/second |
WaypointsRecord
Type |
H5T_COMPOUND |
A record in the flex motion waypoints location engine table.
Field Name | Data Type | Description |
---|---|---|
timeSec |
NATIVE_DOUBLE |
The time of the waypoint in seconds |
waypoint |
The waypoint |
VelocityDataRecord
Type |
H5T_COMPOUND |
A record in the flex motion velocity orientation engine.
Field Name | Data Type | Description |
---|---|---|
constraintOption |
NATIVE_DOUBLE |
The option for the constraint (must be 2) |
constraintVector |
The constraint vector (currently unused) |
KeyframeMotionRecord
Type |
H5T_COMPOUND |
Represents a record in the keyframe motion data table, with a dual quaternion, a scaling and a time.
Field Name | Data Type | Description |
---|---|---|
timeSec |
NATIVE_DOUBLE |
The time for the sample in seconds |
dqReal |
Real component of the dual quaternion |
|
dqDual |
Dual component of the dual quaternion |
|
scale |
Scale factors |
IterativeBalfourRecord
Type |
H5T_COMPOUND |
Represents a single row in the iterative Balfour type-specific table. Holds the coefficients for the iterative Balfour model.
Field Name | Data Type | Description |
---|---|---|
coefficients |
H5T_ARRAY [6] NATIVE_FLOAT |
Balfour A0-A5 coefficients |
MapIndexRecord
Type |
H5T_COMPOUND |
Represents a single row in the type-specific table for a map type. Holds the index in the map path table and the projector index in the map’s projector table.
Field Name | Data Type | Description |
---|---|---|
pathIndex |
NATIVE_UINT |
Index in the map paths table of the path to the map |
projectorIndex |
NATIVE_UINT |
Index of the projector inside the specified map to use |
MasterTableRecord
Type |
H5T_COMPOUND |
Represents a single row in the master table of the data model. A row is defined as follows:
Field Name | Data Type | Description |
---|---|---|
type |
The type of the row |
|
typeSpecificIndex |
NATIVE_UINT |
The index in the type-specific table |
parentIndex |
NATIVE_UINT |
Index in the master table of this instances parent (uint32_max if none exists). |
MasterTableType
Type |
H5T_ENUM |
Constants for the type of rows that can appear in the master table.
Type | Value | Description |
---|---|---|
Unknown |
0x0 |
Unknown type |
StaticInstance |
0x1 |
Static (no motion) instance |
DynamicInstance |
0x2 |
Dynamic (keyframe dual-quaternion) motion instance |
DecalInstance |
0x4 |
Decal instance |
FlexMotionInstance |
0x8 |
Flex motion instance |
FacetizedObject |
0x10 |
Facetized object |
Sphere |
0x20 |
Sphere primitive object |
Box |
0x40 |
Box primitive object |
Disk |
0x80 |
Disk primitive object |
Cylinder |
0x100 |
Cylinder primitive object |
Source |
0x200 |
In-scene source object |
ConeFrustum |
0x400 |
Cone frustum primitive object |
RegularGrid |
0x800 |
RegularGrid plugin object |
MaterialRecord
Type |
H5T_COMPOUND |
Represents a single row in the top-level materials table. Holds the type of materials and the indices into the optical properties and temperature model tables.
Field Name | Data Type | Description |
---|---|---|
type |
The type of the material |
|
optPropIndex |
NATIVE_UINT |
Index into the optical properties table (if needed by the type) |
tempModelIndex |
NATIVE_UINT |
Index into the temperature models table (if needed by the type) |
MaterialType
Type |
H5T_ENUM |
Constants for the various types of materials supported in our data models.
Name | Value | Description |
---|---|---|
Null |
0x0 |
No material |
Surface |
0x1 |
A material on a surface |
Volume |
0x2 |
A material in a volume |
PureMap |
0x4 |
A pure material map |
MixedMap |
0x8 |
A material mixture map |
OpticalPropertiesRecord
Type |
H5T_COMPOUND |
Represents a single row in the optical properties index table. Holds the type of the optical property and the type-specific index of the reflectance and transmission property.
Field Name | Data Type | Description |
---|---|---|
type |
NATIVE_UINT |
Bitwise or of the reflectance and transmission property types |
reflectanceIndex |
NATIVE_UINT |
Type-specific index of the reflectance property |
transmissionIndex |
NATIVE_UINT |
Type-specific index of the transmission property |
The type column is a bitwise combination of the following values:
Type | Value | Description |
---|---|---|
None |
0x00000000 |
No optical property |
DiffuseReflectance |
0x00000004 |
Diffuse (Lambertian) reflectance |
DiffuseTransmission |
0x00000008 |
Diffuse (Lambertian) transmission |
DeltaReflectance |
0x00000010 |
Delta (specular) reflectance |
DeltaTransmission |
0x00000020 |
Delta (specular) transmission |
WardReflectance |
0x00000040 |
Ward reflectance |
WardTransmission |
0x00000080 |
Ward transmission |
SphericalDataReflectance |
0x00000100 |
Spherical data (SQT) reflectance |
SphericalDataTransmission |
0x00000200 |
Spherical data (SQT) transmission |
AbsorptionCoefficient |
0x00000400 |
Absorption coefficient |
ScatteringCoefficient |
0x00000800 |
Scattering coefficient |
PureOpticalPropertiesMap |
0x10000000 |
A map of optical properties |
ReflectanceMap |
0x20000000 |
Spectral reflectance map |
MixedOpticalPropertiesMap |
0x40000000 |
A map of optical properties |
Primitive Types
BoxRecord
Type |
H5T_COMPOUND |
A record in the box primitive table.
Field Name | Data Type | Description |
---|---|---|
minPt |
Minimum point of the box |
|
maxPt |
Maximum point of the box |
ConeFrustumRecord
Type |
H5T_COMPOUND |
A record in the cone frustum primitive table.
Field Name | Data Type | Description |
---|---|---|
topCapRadius |
NATIVE_FLOAT |
Radius of the top cap |
bottomCapRadius |
NATIVE_FLOAT |
Radius of the bottom cap |
bottomCapCenter |
Center of the bottom cap |
|
height |
NATIVE_FLOAT |
Height of the cone frustum |
topCapPresent |
NATIVE_UCHAR |
Non-zero if the top cap is present |
bottomCapPresent |
NATIVE_UCHAR |
Non-zero if the bottom cap is present |
isFlipped |
NATIVE_UCHAR |
Non-zero if the shape is flipped |
CylinderRecord
Type |
H5T_COMPOUND |
A record in the cylinder primitive table.
Field Name | Data Type | Description |
---|---|---|
capACenter |
Center of the A cap |
|
capBCenter |
Center of the B cap |
|
capAPresent |
NATIVE_UCHAR |
Whether the A cap is present |
capBPresent |
NATIVE_UCHAR |
Whether the B cap is present |
radius |
NATIVE_FLOAT |
Radius of the cylinder |
DiskRecord
Type |
H5T_COMPOUND |
A record in the disk primitive table.
Field Name | Data Type | Description |
---|---|---|
center |
The center of the disk |
|
normal |
The normal vector of the disk |
|
radius |
NATIVE_FLOAT |
The radius of the disk |
SphereRecord
Type |
H5T_COMPOUND |
A record in the sphere primitive table.
Field Name | Data Type | Description |
---|---|---|
center |
The center of the sphere |
|
radius |
NATIVE_FLOAT |
The radius of the sphere |
ProjectorRecord
Type |
H5T_COMPOUND |
Represents a row in a map’s projector table. Contains the information about how to project the map onto a piece of geometry.
Field Name | Data Type | Description |
---|---|---|
type |
Type of the projector |
|
typeSpecificIndex |
NATIVE_UINT |
Type-specific index of the projector (if needed by the type) |
xMirror |
NATIVE_UINT |
Non-zero to mirror the map in the X dimension |
yMirror |
NATIVE_UINT |
Non-zero to mirror the map in the Y dimension |
ProjectorType
Type |
H5T_ENUM |
Constants for the various types of map projectors supported in our data models.
Name | Value | Description |
---|---|---|
UV |
0 |
Project using the geometry’s UV coordinate system |
Drape |
1 |
Orthographic projection onto a geometry in scene ENU space |
Quaterniond
Type |
H5T_COMPOUND |
Represents a quaternion.
Field Name | Data Type | Description |
---|---|---|
w |
NATIVE_DOUBLE |
W-component of the quaternion |
x |
NATIVE_DOUBLE |
X-component of the quaternion |
y |
NATIVE_DOUBLE |
Y-component of the quaternion |
z |
NATIVE_DOUBLE |
Z-component of the quaternion |
Quaterniond
Type |
H5T_COMPOUND |
Represents a quaternion.
Field Name | Data Type | Description |
---|---|---|
w |
NATIVE_FLOAT |
W-component of the quaternion |
x |
NATIVE_FLOAT |
X-component of the quaternion |
y |
NATIVE_FLOAT |
Y-component of the quaternion |
z |
NATIVE_FLOAT |
Z-component of the quaternion |
RangeEndInclusive
Type |
H5T_COMPOUND |
This type is used in many different tables to express index ranges in another table. The inclusive ending index is used to express that all ranges must have data and cannot be empty.
Field Name | Data Type | Description |
---|---|---|
begin |
NATIVE_UINT |
Beginning index of the range |
endInclusive |
NATIVE_UINT |
Ending (inclusive) index of the range |
RegularGridDataRecord
Type |
H5T_COMPOUND |
A record in a regular grid data table.
Field Name | Data Type | Description |
---|---|---|
xIndex |
NATIVE_INT |
X index of voxel |
yIndex |
NATIVE_INT |
Y index of voxel |
zIndex |
NATIVE_INT |
Z index of voxel |
optPropId |
NATIVE_INT |
Optical property index of voxel (direct opt. prop. ID, no remapping) |
tempK |
NATIVE_FLOAT |
Temperature of the voxel [K] |
concPpm |
NATIVE_FLOAT |
Concentration of the voxel [ppm] |
Source Types
BlinkRecord
Type |
H5T_COMPOUND |
A record in the source blink table.
Field Name | Data Type | Description |
---|---|---|
frequencyHz |
NATIVE_FLOAT |
Frequency of the blinking in Hz |
offsetSec |
NATIVE_FLOAT |
Offset (phase) of the blinking in seconds |
CosineModelRecord
Type |
H5T_COMPOUND |
A record in the cosine shaping model table.
Field Name | Data Type | Description |
---|---|---|
weight |
NATIVE_FLOAT |
The weight on the cosine term |
shapeFactor |
NATIVE_FLOAT |
The shape factor (exponent) on the cosine term |
ModulationRecord
Type |
H5T_COMPOUND |
A record in the source cosine modulation table.
Field Name | Data Type | Description |
---|---|---|
frequencyHz |
NATIVE_FLOAT |
Frequency of the cosine in Hz |
magnitude |
NATIVE_FLOAT |
Magnitude on the cosine |
phaseRad |
NATIVE_FLOAT |
Phase of the modulation in radians |
ModulationType
Type |
H5T_ENUM |
Constants for the modulation types.
Name | Value | Description |
---|---|---|
None |
0 |
No modulation |
Blinking |
1 |
Blinking |
Modulating |
2 |
Cosine-series modulation |
ShapeType
Type |
H5T_ENUM |
Constants for the source types.
Name | Value | Description |
---|---|---|
Unknown |
0 |
Unknown type |
Omnidirectional |
1 |
Omnidirectional source |
DirectionalCosine |
2 |
Cosine-weighted directional source |
SourceRecord
Type |
H5T_COMPOUND |
A record in the source master table.
Field Name | Data Type | Description |
---|---|---|
curveIndex |
NATIVE_UINT |
The index for the spectral power curve |
shapeModelType |
The type of the shape model |
|
shapeModelIndex |
NATIVE_UINT |
The index in the shape model type-specific table |
modulationType |
The type of modulation |
|
modulationIndex |
NATIVE_UINT |
The index in the modulation type-specific table |
gain |
NATIVE_FLOAT |
The gain on the light source |
SphericalDataIndexRecord
Type |
H5T_COMPOUND |
Represents a row in the spherical data type-specific data table. Contains the index of the DHR curve, as well as the range of the data in the data table.
Field Name | Data Type | Description |
---|---|---|
curveIndex |
NATIVE_UINT |
The index of the DHR curve in spectral curves table |
bufferRangeIndex |
NATIVE_UINT |
The index for this SQT in the buffer range table |
StaticInstanceRecord
Type |
H5T_COMPOUND |
Represents a single row in the static instance transform table.
Field Name | Data Type | Description |
---|---|---|
affine |
H5T_ARRAY[12] NATIVE_FLOAT |
First three rows of the 4x4 homogenous affine transform matrix |
TemperatureModelRecord
Type |
H5T_COMPOUND |
Represents a row in the temperature model index table. Holds a temperature type and an index in the type-specific table.
Field Name | Data Type | Description |
---|---|---|
type |
Type of the temperature model |
|
typeSpecificIndex |
NATIVE_UINT |
Index in the type-specific table |
TemperatureModelType
Type |
H5T_ENUM |
Constants for the various types of temperature models supported in our data models.
Name | Value |
---|---|
None |
0 |
DataDriven |
1 |
ThermMap |
2 |
TemperatureMap |
3 |
BalfourMap |
4 |
Therm |
5 |
ClassicBalfour |
6 |
IterativeBalfour |
7 |
ThermRecord
Type |
H5T_COMPOUND |
Respresents a row in the THERM temperature model type-specific data table. Contains the thermal properties that are inputs to the THERM model.
Field Name | Data Type | Description |
---|---|---|
specificHeat |
NATIVE_FLOAT |
Specific Heat [L/cm/C] |
massDensity |
NATIVE_FLOAT |
Density of the material [g/cm^3] |
thermalConductivity |
NATIVE_FLOAT |
Thermal conductivity [W / m * K] |
thickness |
NATIVE_FLOAT |
Thickness of the material (volume / surface area) [cm] |
solarAbsorption |
NATIVE_FLOAT |
Solar absorption, can be -1 to indicate it should be computed from optical properties [unitless 0 - 1] |
thermalEmissivity |
NATIVE_FLOAT |
Thermal emissivity, can be -1 to indicate it should be computed from optical properties [unitless 0 - 1] |
selfGeneratedPower |
NATIVE_FLOAT |
Self-generated thermal energe [L / hr] |
exposedArea |
NATIVE_FLOAT |
"fudge factor" for how much of the material is exposed to air [unitless -1 - 1] |
Vector3d
Type |
H5T_COMPOUND |
Represents a vector in 3-space.
Field Name | Data Type | Description |
---|---|---|
x |
NATIVE_DOUBLE |
X-component of the vector |
y |
NATIVE_DOUBLE |
Y-component of the vector |
z |
NATIVE_DOUBLE |
Z-component of the vector |
Vector3f
Type |
H5T_COMPOUND |
Represents a vector in 3-space.
Field Name | Data Type | Description |
---|---|---|
x |
NATIVE_FLOAT |
X-component of the vector |
y |
NATIVE_FLOAT |
Y-component of the vector |
z |
NATIVE_FLOAT |
Z-component of the vector |
WardRecord
Type |
H5T_COMPOUND |
Represents a row in the Ward optical property type-specific data table. Contains the index of the four spectral curves.
Field Name | Data Type | Description |
---|---|---|
diffuseIndex |
NATIVE_UINT |
Index of the diffuse curve |
specularIndex |
NATIVE_UINT |
Index of the specular curve |
specularWidthParallelIndex |
NATIVE_UINT |
Index of the specular width curve in the parallel direction |
specularWidthOrthogonalIndex |
NATIVE_UINT |
Index of the specular width curve in the orthogonal direction |