OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    AppParCurves_MultiCurve Class Reference

    This class describes a MultiCurve approximating a Multiline. As a Multiline is a set of n lines, a MultiCurve is a set of n curves. These curves are Bezier curves. A MultiCurve is composed of m MultiPoint. The approximating degree of these n curves is the same for each one. More...

    #include <AppParCurves_MultiCurve.hxx>

    Inheritance diagram for AppParCurves_MultiCurve:

    Public Member Functions

     AppParCurves_MultiCurve ()
     returns an indefinite MultiCurve.
     AppParCurves_MultiCurve (const int NbPol)
     creates a MultiCurve, describing Bezier curves all containing the same number of MultiPoint. An exception is raised if Degree < 0.
     AppParCurves_MultiCurve (const NCollection_Array1< AppParCurves_MultiPoint > &tabMU)
     creates a MultiCurve, describing Bezier curves all containing the same number of MultiPoint. Each MultiPoint must have NbCurves Poles.
    virtual ~AppParCurves_MultiCurve ()
    void SetNbPoles (const int nbPoles)
     The number of poles of the MultiCurve will be set to <nbPoles>.
    void SetValue (const int Index, const AppParCurves_MultiPoint &MPoint)
     sets the MultiPoint of range Index to the value <MPoint>. An exception is raised if Index <0 or Index >NbMPoint.
    int NbCurves () const
     Returns the number of curves resulting from the approximation of a MultiLine.
    virtual int NbPoles () const
     Returns the number of poles on curves resulting from the approximation of a MultiLine.
    virtual int Degree () const
     returns the degree of the curves.
    int Dimension (const int CuIndex) const
     returns the dimension of the CuIndex curve. An exception is raised if CuIndex<0 or CuIndex>NbCurves.
    void Curve (const int CuIndex, NCollection_Array1< gp_Pnt > &TabPnt) const
     returns the Pole array of the curve of range CuIndex. An exception is raised if the dimension of the curve is 2d.
    void Curve (const int CuIndex, NCollection_Array1< gp_Pnt2d > &TabPnt) const
     returns the Pole array of the curve of range CuIndex. An exception is raised if the dimension of the curve is 3d.
    const AppParCurves_MultiPoint & Value (const int Index) const
     returns the Index MultiPoint. An exception is raised if Index <0 or Index >Degree+1.
    const gp_Pnt & Pole (const int CuIndex, const int Nieme) const
     returns the Nieme pole of the CuIndex curve. the curve must be a 3D curve.
    const gp_Pnt2d & Pole2d (const int CuIndex, const int Nieme) const
     returns the Nieme pole of the CuIndex curve. the curve must be a 2D curve.
    void Transform (const int CuIndex, const double xx, const double dx, const double yy, const double dy, const double zz, const double dz)
     Applies a transformation to the curve of range <CuIndex>. newx = x + dx*oldx newy = y + dy*oldy for all points of the curve. newz = z + dz*oldz.
    void Transform2d (const int CuIndex, const double xx, const double dx, const double yy, const double dy)
     Applies a transformation to the Curve of range <CuIndex>. newx = x + dx*oldx newy = y + dy*oldy for all points of the curve.
    virtual void Value (const int CuIndex, const double U, gp_Pnt &Pt) const
     returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
    virtual void Value (const int CuIndex, const double U, gp_Pnt2d &Pt) const
     returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
    virtual void D1 (const int CuIndex, const double U, gp_Pnt &Pt, gp_Vec &V1) const
     returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
    virtual void D1 (const int CuIndex, const double U, gp_Pnt2d &Pt, gp_Vec2d &V1) const
     returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
    virtual void D2 (const int CuIndex, const double U, gp_Pnt &Pt, gp_Vec &V1, gp_Vec &V2) const
     returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
    virtual void D2 (const int CuIndex, const double U, gp_Pnt2d &Pt, gp_Vec2d &V1, gp_Vec2d &V2) const
     returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
    virtual void Dump (Standard_OStream &o) const
     Prints on the stream o information on the current state of the object. Is used to redefine the operator <<.

    Protected Attributes

    occ::handle< NCollection_HArray1< AppParCurves_MultiPoint > > tabPoint

    Detailed Description

    This class describes a MultiCurve approximating a Multiline. As a Multiline is a set of n lines, a MultiCurve is a set of n curves. These curves are Bezier curves. A MultiCurve is composed of m MultiPoint. The approximating degree of these n curves is the same for each one.

    Example of a MultiCurve composed of MultiPoints:

    P1______P2_____P3______P4________........_____PNbMPoints

    Q1______Q2_____Q3______Q4________........_____QNbMPoints . . . . . . R1______R2_____R3______R4________........_____RNbMPoints

    Pi, Qi, ..., Ri are points of dimension 2 or 3.

    (Pi, Qi, ...Ri), i= 1,...NbPoles are MultiPoints. each MultiPoint has got NbPol Poles.

    Constructor & Destructor Documentation

    ◆ AppParCurves_MultiCurve() [1/3]

    AppParCurves_MultiCurve::AppParCurves_MultiCurve ( )

    returns an indefinite MultiCurve.

    ◆ AppParCurves_MultiCurve() [2/3]

    AppParCurves_MultiCurve::AppParCurves_MultiCurve ( const int NbPol)

    creates a MultiCurve, describing Bezier curves all containing the same number of MultiPoint. An exception is raised if Degree < 0.

    ◆ AppParCurves_MultiCurve() [3/3]

    AppParCurves_MultiCurve::AppParCurves_MultiCurve ( const NCollection_Array1< AppParCurves_MultiPoint > & tabMU)

    creates a MultiCurve, describing Bezier curves all containing the same number of MultiPoint. Each MultiPoint must have NbCurves Poles.

    ◆ ~AppParCurves_MultiCurve()

    virtual AppParCurves_MultiCurve::~AppParCurves_MultiCurve ( )
    virtual

    Member Function Documentation

    ◆ Curve() [1/2]

    void AppParCurves_MultiCurve::Curve ( const int CuIndex,
    NCollection_Array1< gp_Pnt > & TabPnt ) const

    returns the Pole array of the curve of range CuIndex. An exception is raised if the dimension of the curve is 2d.

    ◆ Curve() [2/2]

    void AppParCurves_MultiCurve::Curve ( const int CuIndex,
    NCollection_Array1< gp_Pnt2d > & TabPnt ) const

    returns the Pole array of the curve of range CuIndex. An exception is raised if the dimension of the curve is 3d.

    ◆ D1() [1/2]

    virtual void AppParCurves_MultiCurve::D1 ( const int CuIndex,
    const double U,
    gp_Pnt & Pt,
    gp_Vec & V1 ) const
    virtual

    returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ D1() [2/2]

    virtual void AppParCurves_MultiCurve::D1 ( const int CuIndex,
    const double U,
    gp_Pnt2d & Pt,
    gp_Vec2d & V1 ) const
    virtual

    returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ D2() [1/2]

    virtual void AppParCurves_MultiCurve::D2 ( const int CuIndex,
    const double U,
    gp_Pnt & Pt,
    gp_Vec & V1,
    gp_Vec & V2 ) const
    virtual

    returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ D2() [2/2]

    virtual void AppParCurves_MultiCurve::D2 ( const int CuIndex,
    const double U,
    gp_Pnt2d & Pt,
    gp_Vec2d & V1,
    gp_Vec2d & V2 ) const
    virtual

    returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ Degree()

    virtual int AppParCurves_MultiCurve::Degree ( ) const
    virtual

    returns the degree of the curves.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ Dimension()

    int AppParCurves_MultiCurve::Dimension ( const int CuIndex) const

    returns the dimension of the CuIndex curve. An exception is raised if CuIndex<0 or CuIndex>NbCurves.

    ◆ Dump()

    virtual void AppParCurves_MultiCurve::Dump ( Standard_OStream & o) const
    virtual

    Prints on the stream o information on the current state of the object. Is used to redefine the operator <<.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ NbCurves()

    int AppParCurves_MultiCurve::NbCurves ( ) const

    Returns the number of curves resulting from the approximation of a MultiLine.

    ◆ NbPoles()

    virtual int AppParCurves_MultiCurve::NbPoles ( ) const
    virtual

    Returns the number of poles on curves resulting from the approximation of a MultiLine.

    ◆ Pole()

    const gp_Pnt & AppParCurves_MultiCurve::Pole ( const int CuIndex,
    const int Nieme ) const

    returns the Nieme pole of the CuIndex curve. the curve must be a 3D curve.

    ◆ Pole2d()

    const gp_Pnt2d & AppParCurves_MultiCurve::Pole2d ( const int CuIndex,
    const int Nieme ) const

    returns the Nieme pole of the CuIndex curve. the curve must be a 2D curve.

    ◆ SetNbPoles()

    void AppParCurves_MultiCurve::SetNbPoles ( const int nbPoles)

    The number of poles of the MultiCurve will be set to <nbPoles>.

    ◆ SetValue()

    void AppParCurves_MultiCurve::SetValue ( const int Index,
    const AppParCurves_MultiPoint & MPoint )

    sets the MultiPoint of range Index to the value <MPoint>. An exception is raised if Index <0 or Index >NbMPoint.

    ◆ Transform()

    void AppParCurves_MultiCurve::Transform ( const int CuIndex,
    const double x,
    const double dx,
    const double y,
    const double dy,
    const double z,
    const double dz )

    Applies a transformation to the curve of range <CuIndex>. newx = x + dx*oldx newy = y + dy*oldy for all points of the curve. newz = z + dz*oldz.

    ◆ Transform2d()

    void AppParCurves_MultiCurve::Transform2d ( const int CuIndex,
    const double x,
    const double dx,
    const double y,
    const double dy )

    Applies a transformation to the Curve of range <CuIndex>. newx = x + dx*oldx newy = y + dy*oldy for all points of the curve.

    ◆ Value() [1/3]

    virtual void AppParCurves_MultiCurve::Value ( const int CuIndex,
    const double U,
    gp_Pnt & Pt ) const
    virtual

    returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ Value() [2/3]

    virtual void AppParCurves_MultiCurve::Value ( const int CuIndex,
    const double U,
    gp_Pnt2d & Pt ) const
    virtual

    returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.

    Reimplemented in AppParCurves_MultiBSpCurve.

    ◆ Value() [3/3]

    const AppParCurves_MultiPoint & AppParCurves_MultiCurve::Value ( const int Index) const

    returns the Index MultiPoint. An exception is raised if Index <0 or Index >Degree+1.

    Field Documentation

    ◆ tabPoint

    occ::handle<NCollection_HArray1<AppParCurves_MultiPoint> > AppParCurves_MultiCurve::tabPoint
    protected

    The documentation for this class was generated from the following file: