File indexing completed on 2026-09-20 09:17:10
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _BRepMeshData_PCurve_HeaderFile
0017 #define _BRepMeshData_PCurve_HeaderFile
0018
0019 #include <IMeshData_PCurve.hxx>
0020 #include <Standard_Type.hxx>
0021 #include <NCollection_IncAllocator.hxx>
0022
0023
0024 class BRepMeshData_PCurve : public IMeshData_PCurve
0025 {
0026 public:
0027 DEFINE_INC_ALLOC
0028
0029
0030 Standard_EXPORT BRepMeshData_PCurve(const IMeshData::IFacePtr& theDFace,
0031 const TopAbs_Orientation theOrientation,
0032 const occ::handle<NCollection_IncAllocator>& theAllocator);
0033
0034
0035 Standard_EXPORT ~BRepMeshData_PCurve() override;
0036
0037
0038 Standard_EXPORT void InsertPoint(const int thePosition,
0039 const gp_Pnt2d& thePoint,
0040 const double theParamOnPCurve) override;
0041
0042
0043 Standard_EXPORT void AddPoint(const gp_Pnt2d& thePoint, const double theParamOnPCurve) override;
0044
0045
0046 Standard_EXPORT gp_Pnt2d& GetPoint(const int theIndex) override;
0047
0048
0049 Standard_EXPORT int& GetIndex(const int theIndex) override;
0050
0051
0052 Standard_EXPORT void RemovePoint(const int theIndex) override;
0053
0054
0055 Standard_EXPORT double& GetParameter(const int theIndex) override;
0056
0057
0058 Standard_EXPORT int ParametersNb() const override;
0059
0060
0061 Standard_EXPORT void Clear(const bool isKeepEndPoints) override;
0062
0063 DEFINE_STANDARD_RTTIEXT(BRepMeshData_PCurve, IMeshData_PCurve)
0064
0065 protected:
0066
0067 Standard_EXPORT void removeParameter(const int theIndex) override;
0068
0069 private:
0070 IMeshData::Model::SequenceOfPnt2d myPoints2d;
0071 IMeshData::Model::SequenceOfReal myParameters;
0072 IMeshData::Model::SequenceOfInteger myIndices;
0073 };
0074
0075 #endif