Synopsis
PDX_MSGT picr_BSurface(long option, int model, MDA_PTR orig_db_ptr, int tag, int identifier, MDA_PTR u_params, MDA_PTR v_params, int u_degree, int v_degree, int n_u_vertices, int n_v_vertices, int vertex_dim, PINT_BOOL is_rational, double *vertex, int form, int n_u_knots, int n_v_knots, int *u_knot_mult, int *v_knot_mult, double *u_knot, double *v_knot, int u_knot_type, int v_knot_type, PINT_BOOL is_u_periodic, PINT_BOOL is_v_periodic, PINT_BOOL is_u_closed, PINT_BOOL is_v_closed, PINT_BOOL self_intersecting, int convexity, MDA_PTR *bsurface_ptr)
Purpose
Create the PINT model BSurface entity.
Description
This function creates a PINT BSurface entity for the given input data. The data provided must result in a valid definition. The orig_db_ptr argument should contain the database pointer of the entity that the new entity was created from (usually this should be obtained by the calling routine via mda_GetOrigDbptr) or MDA_NULL_PTR. See the mda_intro man page for more information about predecessor entities.
Input
option
PICR_VALIDATE
Validate the entity fields
PICR_NOVALIDATE
Do not validate the entity fields
identifier
Parasolid's identifier
model
PINT model for entity creation
orig_db_ptr
The original entities orig_db_ptr as obtained from the mda_GetOrigDbptr call, or MDA_NULL_PTR
tag
Parasolid tag for this entity
basis_set
MDA_PTR to basis_set entity defining bsurface
u_params
MDA_NULL_PTR
No parm values
v_params
MDA_NULL_PTR
No parm values
u_degree
U degree of the bsurface
v_degree
V degree of the bsurface
n_u_vertices
Number of u vertices in the surface
n_v_vertices
Number of v vertices in the surface
vertex_dim
dimension of the vertex (2, 3, 4)
is_rational
PINT_TRUE
The surface is rational
PINT_FALSE
The surface is not rational
vertex
The surface vertices
form
PINT_BSURFACE_UNSET
The surface shape has not been evaluated
PINT_BSURFACE_ARBITRARY
The surface shape is not special
PINT_BSURFACE_PLANAR
The surface is a piece of a plane
PINT_BSURFACE_CYLINDRICAL
The surface is a piece of a cylinder
PINT_BSURFACE_CONICAL
The surface is a piece of a cone
PINT_BSURFACE_SPHERICAL
The surface is a piece of a sphere
PINT_BSURFACE_TOROIDAL
The surface is a piece of a torus
PINT_BSURFACE_REVOLVED
The surface is a b-spline curve revolved
PINT_BSURFACE_RULED
The surface is a ruled
PINT_BSURFACE_GEN_CONE
The surface is a generalized cone
PINT_BSURFACE_QUADRATIC
The surface is quadratic
PINT_BSURFACE_SWEPT
The surface is a b-spline curve swept
n_u_knots
Number of u knots for the surface
n_v_knots
Number of v knots for the surface
u_knot_mult
The number of times each u knot value is repeated
v_knot_mult
The number of times each v knot value is repeated
u_knot
The u knot values
v_knot
The v knot values
u_knot_type
PINT_KNOT_UNSET
The type has not been calculated
PINT_KNOT_NON_UNIFORM
The knot is general non-uniform
PINT_KNOT_UNIFORM
The knot are uniformly spaced
PINT_KNOT_QUASI_UNIFORM
The first and last knots have multiplicity degree+1, and the remainder have multiplicity 1, with equal spacing
PINT_KNOT_PIECEWISE_BEZIER
The first and last knots have multiplicity degree+1, and the remainder have multiplicity degree, with equal spacing
PINT_KNOT_BEZIER_ENDS
The the first and last knots have multiplicity degree+1. In other respects, the knot set is non-uniform
v_knot_type
PINT_KNOT_UNSET
The type has not been calculated
PINT_KNOT_NON_UNIFORM
The knot is general non-uniform
PINT_KNOT_UNIFORM
The knot are uniformly spaced
PINT_KNOT_QUASI_UNIFORM
The first and last knots have multiplicity degree+1, and the remainder have multiplicity 1, with equal spacing
PINT_KNOT_PIECEWISE_BEZIER
The first and last knots have multiplicity degree+1, and the remainder have multiplicity degree, with equal spacing
PINT_KNOT_BEZIER_ENDS
The the first and last knots have multiplicity degree+1. In other respects, the knot set is non-uniform
is_u_periodic
PINT_TRUE
The surface is periodic in the u direction
PINT_FALSE
The surface is not periodic in the u direction
is_v_periodic
PINT_TRUE
The surface is periodic in the v direction
PINT_FALSE
The surface is not periodic in the v direction
is_u_closed
PINT_TRUE
The surface is closed in the u direction
PINT_FALSE
The surface is not closed in the u direction
is_v_closed
PINT_TRUE
The surface is closed in the v direction
PINT_FALSE
The surface is not closed in the v direction
self_intersecting
PINT_TRUE
The surface is self_intersecting
PINT_FALSE
The surface is not self_intersecting
PINT_UNSET
The surface has not been tested
convexity
PINT_CONVEXITY_UNSET
The surface convexity has not been tested
PINT_CONVEXITY_ARBITRARY
The surface is neither convex nor concave
PINT_CONVEXITY_CONVEX
The surface is convex
PINT_CONVEXITY_CONCAVE
The surface is concave
Output
bsurface_ptr
The PINT model pointer
Return
Low level error return
.fi