Functions

Functions

int mdlSurface_project (MSElementDescrH surfDscrPP, MSElementDescrP elDscrP, DPoint3dP point1, DPoint3dP point2, TransformP pTransform)
 
Creates a surface of projection from the

element descriptor pointed to by elmdscrP. More...

 
int mdlSurface_revolve (MSElementDescrH surfDscrPP, MSElementDescrP elDscrP, DPoint3dP center, int axis, double angle)
 
Creates a surface of revolution from the element

descriptor pointed to by elmdscrP. More...

 

Detailed Description

Function Documentation

int mdlSurface_project ( MSElementDescrH  surfDscrPP,
MSElementDescrP  elDscrP,
DPoint3dP  point1,
DPoint3dP  point2,
TransformP  pTransform 
)

Creates a surface of projection from the

element descriptor pointed to by elmdscrP.

It allocates a new element descriptor and returns its address in surfDscrPP. The element descriptor is transformed by the transformation matrix transform about point2. It is then projected by the distance from point1 to point2. If transform is NULL, the element descriptor is projected without modification. The points are given in the current coordinate system.

Parameters
[out]surfDscrPPaddr of new elm dscr
[in]elDscrPelement(s) to project
[in]point1anchor point
[in]point2dest point
[in]pTransformrotation and scaling
Remarks
Programmers should free the element descriptor pointed to by surfDscrPP when finished with it.
Returns
SUCCESS if the element is projected and surfDscrPP is valid. ERROR if the resulting surface is off the design plane. MDLERR_FILE2SUB3 if the design file is a 2D file.
See also
mdlSurface_revolve mdlParams_setActive
int mdlSurface_revolve ( MSElementDescrH  surfDscrPP,
MSElementDescrP  elDscrP,
DPoint3dP  center,
int  axis,
double  angle 
)

Creates a surface of revolution from the element

descriptor pointed to by elmdscrP.

It allocates a new element descriptor and returns its address in surfDscrPP. The element is revolved about the point given by center, or the (0, 0, 0) point for the current coordinate system if center is NULL.

Parameters
[out]surfDscrPPaddr of new elm dscr
[in]elDscrPelement(s) to revolve
[in]centercenter of revolution
[in]axisaxis (0, 1, or 2)
[in]angleangle of revolution
Remarks
The axis for the revolution is determined from the current coordinate system and axis. axis can be either 0 (X-axis), 1 (Y-axis) or 2 (Z-axis). This is normally the most convenient way to specify the axis of rotation.
The angle of revolution is given by angle in radians.
Programmers should free the element descriptor pointed to by surfDscrPP when finished with it.
Returns
SUCCESS if the element is revolved and if surfDscrPP is valid.ERROR if the resulting surface is off the design plane. MDLERR_FILE2SUB3 if the design file is a 2D file.
See also
mdlSurface_project mdlParams_setActive

Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.