UF_WEIGHT_properties_s (view source)
 
Defined in: uf_weight.h
 
Also known as:
 
Overview
Structure for passing weight management data.

If the cache_state is UF_WEIGHT_no_cache, the geometric values and their
errors are all set to 0.0, and the units to UF_WEIGHT_units_km.

If the cache_state is UF_WEIGHT_asserted or UF_WEIGHT_inherited, then
density, mass and volume are as follows:
a) either mass is UF_WEIGHT_asserted and the other two are UF_WEIGHT_unknown
b) or two of them are UF_WEIGHT_asserted and the third is UF_WEIGHT_implied.
(This is the only situation in which UF_WEIGHT_implied can be used.)

If the volume_state is UF_WEIGHT_unknown, then the cofm_state and the
mofi_state will also be UF_WEIGHT_unknown. If the cofm_state is
UF_WEIGHT_unknown, then the mofi_state will be UF_WEIGHT_unknown.


Data Members

units
UF_WEIGHT_units_type_t
the units in which the rest of the data is
returned

cache_state
UF_WEIGHT_state_type_t
the state of the returned data. This can be
UF_WEIGHT_no_cache if the data was not available,
UF_WEIGHT_cached if it was calculated from
geometry or other properties,
UF_WEIGHT_asserted if it was directly asserted,
and
UF_WEIGHT_inherited if it was data on a component
found from an assertion on a part.
It cannot be UF_WEIGHT_implied or
UF_WEIGHT_unknown.

accuracy
double
the accuracy of the calculated data when the
cache_state is UF_WEIGHT_cached, in which case it
must be 0.9, 0.99, 0.999, 0.9999, 0.99999 or
0.999999. It is 1.0 if the cache_state is
UF_WEIGHT_asserted or UF_WEIGHT_inherited, or if
no solids were involved in the calculation.

density
double
the density of the data, equal to mass/volume.
This is 0.0 if the density_state is
UF_WEIGHT_unknown.

density_state
UF_WEIGHT_state_type_t
the state of the density data. This is normally
the same value as cache_state, but it can be
UF_WEIGHT_unknown or UF_WEIGHT_implied if the
cache_state is UF_WEIGHT_asserted or
UF_WEIGHT_inherited.

volume
double
the volume of the data, equal to mass/density.
This is 0.0 is the density_state is
UF_WEIGHT_unknown.

volume_error
double
the estimated error range for the volume, in the
same units as the volume.

volume_state
UF_WEIGHT_state_type_t
the state of the volume data. This is normally
the same value as cache_state, but it can be
UF_WEIGHT_unknown or UF_WEIGHT_implied if the
cache_state is UF_WEIGHT_asserted or
UF_WEIGHT_inherited.

mass
double
the mass of the data, equal to volume x density.
This is 0.0 if the mass_state is
UF_WEIGHT_unknown.

mass_error
double
the estimated error range for the mass, in the
same units as the mass.

mass_state
UF_WEIGHT_state_type_t
the state of the mass data. This is normally
the same value as cache_state, but it can be
UF_WEIGHT_implied if the cache_state is
UF_WEIGHT_asserted or UF_WEIGHT_inherited.

area
double
the surface area of the data.

area_error
double
the estimated error range for the surface area,
in the same units as the area.

area_state
UF_WEIGHT_state_type_t
the state of the area field. This is normally
the same value as cache_state, but it can be
UF_WEIGHT_unknown if the cache_state is
UF_WEIGHT_asserted or UF_WEIGHT_inherited.

center_of_mass [ 3 ]
double
the X, Y and Z co-ordinates of the center of
mass, in absolute co-ordinates. These are set
to 0.0 if the cofm_state is UF_WEIGHT_unknown.

cofm_error
double
the estimated error range for the center of mass,
in the same length units. This represents the
radius of a sphere of uncertainty drawn around
the center of mass.

cofm_state
UF_WEIGHT_state_type_t
the state of the center of mass field. This is
normally the same value as cache_state, but it
can be UF_WEIGHT_unknown if the cache_state is
UF_WEIGHT_asserted or UF_WEIGHT_inherited.

moments_of_inertia [ 3 ]
double
the XX, YY and ZZ moments of inertia about the
center of mass (in that order), using absolute
co-ordinates. These are set to 0.0 if the
mofi_state is UF_WEIGHT_unknown.

products_of_inertia [ 3 ]
double
the XY, XZ and YZ products of inertia about the
center of mass (in that order), using absolute
co-ordinates. These are set to 0.0 if the
mofi_state is UF_WEIGHT_unknown. These values
follow the mathematical convention that the
products of inertia are usually negative, unlike
the convention followed by most engineers.

mofi_error
double
the estimated error range for the moments and
products of inertia, in the same units. This
represents the +/- variation in each value.

mofi_state
UF_WEIGHT_state_type_t
the state of the moments and products of inertia
field. This is normally the same value as
cache_state, but it can be UF_WEIGHT_unknown if
the cache_state is UF_WEIGHT_asserted or
UF_WEIGHT_inherited.