MGCL V10  V10
MGCL V10
 全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 フレンド グループ ページ
Geometry (sub) classes

名前空間

 MGCL
 

クラス

class  MGBSumCurve
 Define MGBSumCurve Class(Boolean sum curve of three curves). [詳解]
 
class  MGBSumSurf
 Defines Boolean sum surface. [詳解]
 
class  MGCompositeCurve
 MGCompositeCurve is a composite of other leaf curves. [詳解]
 
class  MGCurve
 MGCurve is an abstract class which represents a whole curve. [詳解]
 
class  MGCylinder
 MGCylinder is a Cylinder in 3D space. [詳解]
 
class  MGEllipse
 MGEllipse is a class to define an ellipse of 2D or 3D. [詳解]
 
class  MGGeometry
 MGGeometry is an abstract class which represents a whole geometry. [詳解]
 
class  MGLBRep
 MGLBRep is a class for B-SPline representation. [詳解]
 
class  MGPlane
 MGPlane is infinite plane in 3D space. [詳解]
 
class  MGPoint
 MGPoint represents one dimensional manifold, a point in a space. [詳解]
 
class  MGRLBRep
 Defines Rational Line B-Representation. [詳解]
 
class  MGRSBRep
 Defines Surface B-Representation of rational form. [詳解]
 
class  MGSBRep
 Defines Surface B-Representation, that is , B-Spline surface. [詳解]
 
class  MGSphere
 MGSphere is a Sphere in 3D space. [詳解]
 
class  MGStraight
 MGStraight is a curve of any space dimension, represent a straight line. [詳解]
 
class  MGSurface
 MGSurface is an abstract class of 3D surface. [詳解]
 
class  MGSurfCurve
 MGSurfCurve is a curve on a surface. [詳解]
 
class  MGTrimmedCurve
 MGTrimmedCurve is a part of an original curve of a limitted parameter range. [詳解]
 

関数

MG_DLL_DECLR int MGRLBRep_ellipse_weight (const MGPosition &P0, const MGVector &T0, const MGPosition &P, const MGPosition &P2, const MGVector &T2, MGPosition &P1, double &w1)
 
int MG_DLL_DECLR construct_perimeters (const MGPvector< MGCurve > &peris, MGPvector< MGLBRep > &perimeters2)
 
MG_DLL_DECLR void bool_sum (const MGCurve *edge_crvl[4], const MGSBRepTP &tp, int &error, MGSBRep &surf)
 construct boolean sum surface from the four perimeters and their tangent planes. [詳解]
 
MG_DLL_DECLR void bool_sum (const MGCurve *edge_crvl[4], MGSBRepVecTP &vectp, int &error, MGSBRep &surf)
 

詳解

MGGeometry is top abstract class for MGPoint, MGCurve, and MGSurface.

関数詳解

MG_DLL_DECLR void bool_sum ( const MGCurve edge_crvl[4],
const MGSBRepTP tp,
int &  error,
MGSBRep surf 
)

construct boolean sum surface from the four perimeters and their tangent planes.

引数
edge_crvl境界線リスト(vmin,umax,vmax,uminの順,辺番号0,1,2,3の順)
tp接続面(パラメータ範囲は境界線と同じ)
errorエラーコード
surfConstructed surf will be output.
MG_DLL_DECLR void bool_sum ( const MGCurve edge_crvl[4],
MGSBRepVecTP vectp,
int &  error,
MGSBRep surf 
)
引数
edge_crvl境界線リスト(vmin,umax,vmax,uminの順,辺番号0,1,2,3の順)
vectp接続面(パラメータ範囲は境界線と同じ)
errorエラーコード
surfConstructed surf will be output.
int MG_DLL_DECLR construct_perimeters ( const MGPvector< MGCurve > &  peris,
MGPvector< MGLBRep > &  perimeters2 
)

Construct 4 perimeters, given at least two of the four. Input perimeters may have different knot configuration. In this case they will be updated so as to have the same configuration. Function's return value indicates which perimeter(s) was missing: 10: all of the 4 were input(and knot configurations were updated to have the same). 0: only perimeter 0 was missing. 1: only perimeter 1 was missing. 2: only perimeter 2 was missing. 3: only perimeter 3 was missing. 4: perimeter 2 and 3 were missing. 5: perimeter 1 and 3 were missing. 6: perimeter 1 and 2 were missing. 7: perimeter 0 and 3 were missing. 8: perimeter 0 and 2 were missing. 9: perimeter 0 and 1 were missing. -2: less than 2 perimeters were provided.

引数
peris境界線リスト(vmin,umax,vmax,uminの順,辺番号0,1,2,3の順). Let i be the perimeter number, and the data is missing, perimeter[i] must be null. If perimeter 3 data is missing, perimeters.size() may be 3. If perimeter 2 and 3 data are missing, perimeters.size() may be 2. When perimeters were not the same knot configuration along u(perimeter 0 and 2) or along v(perimeter 3 and1), they will be rebuild to have the same configuration.
perimeters2new perimeters will be output.
MG_DLL_DECLR int MGRLBRep_ellipse_weight ( const MGPosition P0,
const MGVector T0,
const MGPosition P,
const MGPosition P2,
const MGVector T2,
MGPosition P1,
double &  w1 
)

Function to compute control point P1 and weight w1 of rational form of an ellipse segment. Pi and Ti are points and tangents of start and end for i=0,2. P is mid point of the ellipse. Function's output is if obtained(!=0:true) or not(=0:false). When obtained, =1:as finite control point, =2:as infinite. When T0, T2, P0, and P2 are not in one plane, function return 0.

(P0,1.) (P1,w1) (P2,1.) constitute the ellipse control polygon of order 3 in homogeneous form.

See "The NURBS Book" of W.Tiller and L.Piegl publised by Springer.