A3DUVParameterizationData
-
struct
A3DUVParameterizationData Structure for parameterizing surfaces.
2.0This structure is used in surface definitions (see Surfaces Module). Its members specify a trimming domain (2-dimensional range) and parameterization settings.
- Default settings. If reparameterization is unnecessary (the implicit parameterization is used), the
m_dUCoeffAandm_dVCoeffAmembers must be set to 1, them_dUCoeffBandm_dVCoeffBmembers must be set to 0, and them_bSwapUVshould be set to false. - UV domain. The
m_sUVDomainmember defines the 2-dimensional range for a surface. Its coordinates are in the final parameterization space. Parts of the object that are outside the bounding box are excluded from the view. The domain’s units are specific for the surface type. For example, the units for a cylinder are degrees and linear units (typically millimeters).
if (!swap_uv) { implicit_param.u = parameterization_on_u_coeff_a * param.u + parameterization_on_u_coeff_b implicit_param.v = parameterization_on_v_coeff_a * param.v + parameterization_on_v_coeff_b } else { implicit_param.u = parameterization_on_v_coeff_a * param.v + parameterization_on_v_coeff_b implicit_param.v = parameterization_on_u_coeff_a * param.u + parameterization_on_u_coeff_b }
It describes a surface reparameterization regarding the implicit parameterization that corresponds to its canonical form. Here are some important points: Here is the evaluation formula for a given parameterization setting:
To ensure that
implicit_param.u(min) < implicit_param.v(min)andimplicit_param.u(max) < implicit_param.v(max), you must specify parameterization values.m_dUCoeffA= 2 PIm_dUCoeffB= 0.m_dVCoeffA= 25m_dVCoeffB= 0.m_bSwapUV= falsem_dUCoeffA= 1.m_dUCoeffB= 0.m_dVCoeffA= 1.m_dVCoeffB= 0.m_bSwapUV= false
This example shows the settings to reparameterize a cylinder of 25mm height, having an implicit parameterization of 2 PI radian in u and height in v, to a domain of (0,0) and (1,1): And this example shows the member settings to retain the implicit parameterization (reparameterization is unnecessary):
- Default settings. If reparameterization is unnecessary (the implicit parameterization is used), the
Variables
-
A3DDomainData
A3DUVParameterizationData.m_sUVDomain -
Definition domain.
-
A3DBool
A3DUVParameterizationData.m_bSwapUV -
Need to swap U and V coordinates.
-
A3DDouble
A3DUVParameterizationData.m_dUCoeffA -
Coefficient for reparameterization along u vector.
-
A3DDouble
A3DUVParameterizationData.m_dVCoeffA -
Coefficient for reparameterization along v vector.
-
A3DDouble
A3DUVParameterizationData.m_dUCoeffB -
Coefficient for reparameterization along u vector.
-
A3DDouble
A3DUVParameterizationData.m_dVCoeffB -
Coefficient for reparameterization along v vector.