25#ifndef _DbNurbSurface_h_Included_
26#define _DbNurbSurface_h_Included_
81 OdResult get (
int& iUDegree,
int& iVDegree,
bool& bRational,
int& iUNumControlPoints,
int& iVNumControlPoints,
119 OdResult set (
int iUDegree,
int iVDegree,
bool bRational,
int iUNumControlPoints,
int iVNumControlPoints,
645 OdResult rebuild(
int iUDegree,
int iVDegree,
int iNumUCtrlPts,
int iNumVCtrlPts,
bool bRestore =
false);
OdArray< OdDbCurvePtr > OdDbCurvePtrArray
OdSmartPtr< OdDbNurbSurface > OdDbNurbSurfacePtr
virtual bool isPlanar() const
OdResult getIsolineAtV(double dV, OdDbCurvePtrArray &lineSegments) const
OdResult getDegreeInV(int &iDegree) const
OdResult getParameterOfPoint(const OdGePoint3d &point, double &dU, double &dV) const
OdResult getNumberOfControlPointsInU(int &iCount) const
OdResult getDegreeInU(int &iDegree) const
ODDB_DECLARE_MEMBERS(OdDbNurbSurface)
OdResult getPeriodInU(double &dPeriod) const
OdResult evaluate(double dU, double dV, OdGePoint3d &pos, OdGeVector3d &uDeriv, OdGeVector3d &vDeriv) const
OdResult setControlPointAt(int iUIndex, int iVIndex, const OdGePoint3d &point)
OdResult getNumberOfControlPointsInV(int &iCount) const
OdResult getNumberOfKnotsInU(int &iCount) const
OdResult getControlPointAt(int iUIndex, int iVIndex, OdGePoint3d &point) const
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
OdResult getNormal(double dU, double dV, OdGeVector3d &normal) const
OdResult getNumberOfSpansInU(int &span) const
OdResult getUKnots(OdGeKnotVector &knots) const
OdResult isRational(bool &bIsRational) const
OdResult getIsolineAtU(double dU, OdDbCurvePtrArray &lineSegments) const
OdResult InsertKnotAtU(double dU)
OdResult getPeriodInV(double &dPeriod) const
OdResult isClosedInV(bool &bIsClosed) const
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
OdResult InsertControlPointsAtV(double dV, const OdGePoint3dArray &uCtrlPts, const OdGeDoubleArray &uWeights)
OdResult getVKnots(OdGeKnotVector &knots) const
OdResult RemoveControlPointsAtU(int iUDegree)
OdResult get(int &iUDegree, int &iVDegree, bool &bRational, int &iUNumControlPoints, int &iVNumControlPoints, OdGePoint3dArray &ctrlPtsArr, OdGeDoubleArray &weights, OdGeKnotVector &uKnots, OdGeKnotVector &vKnots) const
OdResult InsertControlPointsAtU(double dU, const OdGePoint3dArray &vCtrlPts, const OdGeDoubleArray &vWeights)
OdResult isPointOnSurface(const OdGePoint3d &point, bool &bOnSurface) const
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
OdResult InsertKnotAtV(double dV)
OdResult getWeight(int iUIndex, int iVIndex, double &weight) const
OdResult getNumberOfKnotsInV(int &iCount) const
OdResult evaluate(double dU, double dV, OdGePoint3d &pos, OdGeVector3d &uDeriv, OdGeVector3d &vDeriv, OdGeVector3d &uuDeriv, OdGeVector3d &uvDeriv, OdGeVector3d &vvDeriv) const
OdResult RemoveControlPointsAtV(int iVDegree)
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
OdResult isPeriodicInV(bool &bIsPeriodic) const
OdResult isClosedInU(bool &bIsClosed) const
OdResult getControlPoints(int &iUCount, int &iVCount, OdGePoint3dArray &points) const
OdResult modifyPositionAndTangent(double dU, double dV, const OdGePoint3d &point, const OdGeVector3d *uDeriv=NULL, const OdGeVector3d *vDeriv=NULL)
OdResult rebuild(int iUDegree, int iVDegree, int iNumUCtrlPts, int iNumVCtrlPts, bool bRestore=false)
OdResult evaluate(double dU, double dV, OdGePoint3d &pos) const
OdResult isPeriodicInU(bool &bIsPeriodic) const
OdResult set(int iUDegree, int iVDegree, bool bRational, int iUNumControlPoints, int iVNumControlPoints, const OdGePoint3dArray &ctrlPtsArr, const OdGeDoubleArray &weights, const OdGeKnotVector &uKnots, const OdGeKnotVector &vKnots)
OdResult convertFrom(OdDbSurface *pSource, OdDb::DwgVersion version, bool transferId=true)
OdResult setWeight(int iUIndex, int iVIndex, double weight)
OdResult getNumberOfSpansInV(int &span) const
OdResult isPlanar(bool &bIsPlanar, OdGePoint3d &ptOnSurface, OdGeVector3d &normal) const
OdResult evaluate(double dU, double dV, int iDerivDegree, OdGePoint3d &point, OdGeVector3dArray &derivatives) const
OdResult setControlPoints(int iUCount, int iVCount, const OdGePoint3dArray &points)