MGVector coef(int i, int j) const
Extract (i,j,k) elements for 0<=k
Definition: SBRep.h:498
virtual MGSurface & change_range(int is_u, double t1, double t2)=0
Change parameter range, able to change the direction by providing t1 greater than t2...
virtual MGSSisect_list isect(const MGSurface &srf2) const =0
Surface and Surface intersection.
virtual void eval_all(double u, double v, MGPosition &f, MGVector &fu, MGVector &fv, MGVector &fuv, MGVector &fuu, MGVector &fvv) const
Evaluate right continuous surface data.
Vector of a general n space dimension.
Definition: Vector.h:26
double & knot_v(int i)
Definition: SBRep.h:654
virtual double param_e_v() const =0
virtual MGSurface & extend(int perimeter, double param, double length, double dk=0.)
Modify the original Surface by extrapolating the specified perimeter.
Definition: Surface.h:365
Defines a Box of any space dimendion.
Definition: Box.h:34
virtual double param_s_u() const =0
Return starting parameter value.
Define MGBSumCurve Class(Boolean sum curve of three curves).
Definition: BSumCurve.h:28
MGCSisect_list isect(const MGStraight &sl) const
Definition: SBRep.h:623
MGSurface & operator*=(double scale)=0
MGSurface & operator-=(const MGVector &v)=0
virtual MGSurface * clone() const =0
Construct new surface object by copying to newed area.
virtual MGSurface * copy_change_dimension(int sdim, int start1=0, int start2=0) const =0
Construct new surface object by changing the original object's space dimension.
virtual int divide_multi_knot(MGPvector< MGSurface > &srfl) const
MGGel is an abstract class which represents a group element.
Definition: Gel.h:53
MGStraight is a curve of any space dimension, represent a straight line.
Definition: Straight.h:49
const MGSurface * surf() const
Return MGSurface pointer.
Definition: Surface.h:1101
int bdim_u() const
Returns B-Rep Dimension of u.
Definition: SBRep.h:464
virtual MGCSisect_list isectSl(const MGStraight &sl, const MGBox &uvbox=mgNULL_BOX) const
Intersection of Surface and a straight line.
MGSPointSeq & surface_bcoef()
Returns the B-coef's.
Definition: SBRep.h:869
MGKnotVector & knot_vector_u()
Definition: SBRep.h:668
virtual MGSurface * part(const MGBox &bx, int multiple=0) const =0
Compute part of the surface limitted by the parameter range bx.
MG_DLL_DECLR MGVector operator*(const MGVector &v, const MGMatrix &m)
virtual int isect_order() const =0
Represent a positional data.
Definition: Position.h:28
MGSurface is an abstract class of 3D surface.
Definition: Surface.h:54
MGSurface & operator+=(const MGVector &v)=0
Object transformation.
MGSSisect_list defines linked list of MGSSisect.
Definition: SSisect_list.h:26
MGCSisect_list defines linked list of MGCSisect.
Definition: CSisect_list.h:22
friend class MGSBRep
Definition: Surface.h:1305
Defines Knot vector of B-Representation.
Definition: KnotVector.h:28
Defines Boolean sum surface.
Definition: BSumSurf.h:26
bool operator!=(const MGGel &gel2) const
Definition: SBRep.h:449
virtual int bdim_v() const
Returns B-Rep Dimension of v.
Definition: Surface.h:135
const double * knot_data_u() const
Returns a pointer to the u knot vector data.
Definition: SBRep.h:661
const MGKnotVector & knot_vector_u() const
Returns the u knot vector.
Definition: SBRep.h:667
int order_v() const
Returns the B-Rep order(v-direction).
Definition: SBRep.h:729
Defines End Condition of Surface B-Representation.
Definition: SBRepEndC.h:51
Defines BPoint seq of a space dimension and of a capacity.
Definition: BPointSeq.h:38
MGSphere is a Sphere in 3D space.
Definition: Sphere.h:42
MGSurface & unlimit()
Definition: SBRep.h:882
virtual void negate()
Negate direction of surface.
Definition: Surface.h:730
virtual int intersect_dnum_v() const =0
bool operator!=(const MGSBRep &gel2) const
Definition: SBRep.h:450
MGOfstream is a class to serialize all of the subclasses of MGGel.
Definition: Ofstream.h:31
Defines Rational Line B-Representation.
Definition: RLBRep.h:32
virtual bool operator==(const MGGel &gel2) const =0
comparison
double knot_v(int i) const
Definition: SBRep.h:658
MGOgesIfstream write out to *.iges file, transforming MGCL objects to IGES objects.
Definition: IgesOfstream.h:26
virtual MGSurface & change_dimension(int sdim, int start1=0, int start2=0)=0
Changing this object's space dimension.
int bdim_v() const
Returns B-Rep Dimension of v.
Definition: SBRep.h:467
Defines Surface B-Representation of rational form.
Definition: RSBRep.h:38
double coef(int i, int j, int k) const
Access to (i,j)th element of coef(right-hand side version).
Definition: SBRep.h:495
double & knot_u(int i)
Access to i-th element of u knot //(right-hand side version)
Definition: SBRep.h:646
Defines non-decreasing double data array.
Definition: NDDArray.h:27
Defines Surface B-Representation, that is , B-Spline surface.
Definition: SBRep.h:48
MGEllipse is a class to define an ellipse of 2D or 3D.
Definition: Ellipse.h:38
int sdim() const
Returns the space dimension.
Definition: SBRep.h:851
virtual void shrink_to_knot(const MGBox &uvbx, int multiple=0)
Shrink this surface to the part limitted by the parameter range of uvbx.
Definition: Surface.h:1083
MGSURFACE_TYPE
Surface type(曲面の種類).
Definition: MGCL.h:173
Defines Array of Knots.
Definition: KnotArray.h:26
Defines Tangent Plane Line B-Representation Class.
Definition: SBRepTP.h:28
Defines Spoint seq of a space dimension and of a size.
Definition: SPointSeq.h:36
mgSysGL is a class to provide a facility to draw temporal pictures.
Definition: sysGL.h:26
virtual bool less_than(int i, const MGPosition &uv1, const MGPosition &uv2) const
Compare two parameter values. If uv1 is less than uv2, return true.
virtual void display_control_polygon(mgSysGL &sgl) const
Definition: Gel.h:194
double & coef(int i, int j, int k)
Access to (i,j)th element of coef(left-hand side version).
Definition: SBRep.h:488
Define a unit vector, is a MGVector.
Definition: Unit_vector.h:17
virtual MGCurve * parameter_curve(int is_u, double x) const =0
Compute parameter curve.
MGSurfCurve is a curve on a surface.
Definition: SurfCurve.h:43
MGMatrix is a matix of m by m, where m is the space dimension.
Definition: Matrix.h:30