CFx SDK Documentation  2020SP3
DbEllipse.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, Open Design Alliance (the "Alliance").
3 // All rights reserved.
4 //
5 // This software and its documentation and related materials are owned by
6 // the Alliance. The software may only be incorporated into application
7 // programs owned by members of the Alliance, subject to a signed
8 // Membership Agreement and Supplemental Software License Agreement with the
9 // Alliance. The structure and organization of this software are the valuable
10 // trade secrets of the Alliance and its suppliers. The software is also
11 // protected by copyright law and international treaty provisions. Application
12 // programs incorporating this software must include the following statement
13 // with their copyright notices:
14 //
15 // This application incorporates Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 by Open Design Alliance.
18 // All rights reserved.
19 //
20 // By use of this software, its documentation or related materials, you
21 // acknowledge and accept the above terms.
23 
24 
25 
26 
27 #ifndef _OD_DB_ELIPSE_H
28 #define _OD_DB_ELIPSE_H
30 #include "TD_PackPush.h"
31 
32 #include "DbCurve.h"
33 
63 {
64 public:
66 
75 
76 
92 
93 
110  void setCenter( const OdGePoint3d& center );
111 
112 
126 
127 
143 
144 
161 
162 
177  double radiusRatio() const;
178 
179 
196  void setRadiusRatio( double radiusRatio );
197 
198 
215  double startAngle() const;
216 
217 
240  void setStartAngle( double startAngle );
241 
242 
259  double endAngle() const;
260 
261 
284  void setEndAngle( double endAngle );
285 
286 
298  double paramAtAngle( double angle ) const;
299 
300 
309  double angleAtParam( double param ) const;
310 
311 
334  void get(OdGePoint3d& center,
335  OdGeVector3d& unitNormal,
336  OdGeVector3d& majorAxis,
337  double& radiusRatio,
338  double& startAngle,
339  double& endAngle) const;
340 
341 
368  void set(const OdGePoint3d& center,
369  const OdGeVector3d& unitNormal,
370  const OdGeVector3d& majorAxis,
371  double radiusRatio,
372  double startAngle = 0.0,
373  double endAngle = Oda2PI);
374 
375 
377  OdDbDwgFiler* pFiler);
378 
379  virtual void dwgOutFields(
380  OdDbDwgFiler* pFiler) const;
381 
383  OdDbDxfFiler* pFiler);
384 
385  virtual void dxfOutFields(
386  OdDbDxfFiler* pFiler) const;
387 
388  virtual bool subWorldDraw(
389  OdGiWorldDraw* pWd) const;
390 
391  //FELIX_CHANGE_BEGIN
393  OdGeExtents3d& extents) const;
394  //FELIX_CHANGE_END
395 
397  void* pClsid) const;
398 
399  virtual bool isClosed() const;
400 
401  virtual bool isPeriodic() const;
402 
403 
416  virtual bool isPlanar() const;
417 
418 
436  virtual OdResult getPlane( OdGePlane& gePlane, OdDb::Planarity& gePlanarity ) const;
437 
438 
460  virtual OdResult getStartParam( double& startParam ) const;
461 
462 
491  void setStartParam( double startParam );
492 
493 
515  virtual OdResult getEndParam( double& endParam ) const;
516 
517 
546  void setEndParam( double endParam );
547 
548 
566  virtual OdResult getStartPoint( OdGePoint3d& startPoint ) const;
567 
568 
586  virtual OdResult getEndPoint( OdGePoint3d& endPoint ) const;
587 
588 
608  virtual OdResult getPointAtParam( double param, OdGePoint3d& pointOnCurve ) const;
609 
610 
629  virtual OdResult getParamAtPoint( const OdGePoint3d& pointOnCurve, double& param ) const;
630 
631 
649  virtual OdResult getDistAtParam( double param, double& dist ) const;
650 
651 
669  virtual OdResult getParamAtDist( double dist, double& param ) const;
670 
671 
689  virtual OdResult getFirstDeriv( double param, OdGeVector3d& firstDeriv ) const;
690 
691 
709  virtual OdResult getSecondDeriv( double param, OdGeVector3d& secondDeriv ) const;
710 
711 
729  virtual OdResult getArea( double& vArea ) const;
730 
731 
734 
736  const OdGeMatrix3d& xfm);
737 
738  virtual OdResult getOdGeCurve(OdGeCurve3d*& pGeCurve, const OdGeTol& tol = OdGeContext::gTol) const;
739  virtual OdResult setFromOdGeCurve(const OdGeCurve3d& geCurve, OdGeVector3d *normal = NULL, const OdGeTol& tol = OdGeContext::gTol);
741 };
742 
751 
752 #include "TD_PackPop.h"
753 
754 #endif //_OD_DB_ELIPSE_H
755 
OdDbEllipse::getOdGeCurve
virtual OdResult getOdGeCurve(OdGeCurve3d *&pGeCurve, const OdGeTol &tol=OdGeContext::gTol) const
OdResult
OdResult
Definition: OdResult.h:29
OdDbCurve::getFirstDeriv
virtual OdResult getFirstDeriv(double param, OdGeVector3d &firstDeriv) const =0
OdGePlane
Definition: GePlane.h:45
OdGeVector3d
Definition: GeVector3d.h:54
NULL
#define NULL
Definition: GsProperties.h:177
Oda2PI
#define Oda2PI
Definition: OdaCommon.h:57
OdDbEllipse::normal
OdGeVector3d normal() const
OdDbEllipse::subGetGeomExtents
virtual OdResult subGetGeomExtents(OdGeExtents3d &extents) const
OdDbEllipse::majorAxis
OdGeVector3d majorAxis() const
OdDbEllipse::getDistAtParam
virtual OdResult getDistAtParam(double param, double &dist) const
OdDb::Planarity
Planarity
Definition: DbEntity.h:74
tol
tol
Definition: DimVarDefs.h:2287
OdDbEllipse::setRadiusRatio
void setRadiusRatio(double radiusRatio)
OdDbEllipse::angleAtParam
double angleAtParam(double param) const
OdDbCurve::getSecondDeriv
virtual OdResult getSecondDeriv(double param, OdGeVector3d &secondDeriv) const
OdDbEllipse::TD_USING
TD_USING(OdDbCurve::getFirstDeriv)
OdDbEllipse::getPlane
virtual OdResult getPlane(OdGePlane &gePlane, OdDb::Planarity &gePlanarity) const
OdDbEllipse::subWorldDraw
virtual bool subWorldDraw(OdGiWorldDraw *pWd) const
OdDbEllipse::get
void get(OdGePoint3d &center, OdGeVector3d &unitNormal, OdGeVector3d &majorAxis, double &radiusRatio, double &startAngle, double &endAngle) const
OdDbEllipse::getArea
virtual OdResult getArea(double &vArea) const
OdDbEllipse::center
OdGePoint3d center() const
OdDbEllipse::getStartParam
virtual OdResult getStartParam(double &startParam) const
TD_PackPop.h
OdDbEllipse::setStartParam
void setStartParam(double startParam)
OdDbEllipse::minorAxis
OdGeVector3d minorAxis() const
OdDbEllipse::isPeriodic
virtual bool isPeriodic() const
OdGeMatrix3d
Definition: GeMatrix3d.h:73
OdDbEllipse::dwgOutFields
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
OdDbEllipse::set
void set(const OdGePoint3d &center, const OdGeVector3d &unitNormal, const OdGeVector3d &majorAxis, double radiusRatio, double startAngle=0.0, double endAngle=Oda2PI)
OdSmartPtr
Definition: SmartPtr.h:58
OdDbEllipse::getStartPoint
virtual OdResult getStartPoint(OdGePoint3d &startPoint) const
OdGePoint3d
Definition: GePoint3d.h:55
OdDbEllipse::startAngle
double startAngle() const
OdDbEllipse::getSecondDeriv
virtual OdResult getSecondDeriv(double param, OdGeVector3d &secondDeriv) const
DbCurve.h
OdDbEllipse::setFromOdGeCurve
virtual OdResult setFromOdGeCurve(const OdGeCurve3d &geCurve, OdGeVector3d *normal=NULL, const OdGeTol &tol=OdGeContext::gTol)
OdDbEllipse::setCenter
void setCenter(const OdGePoint3d &center)
OdDbEllipse::paramAtAngle
double paramAtAngle(double angle) const
OdDbDxfFiler
Definition: DbFiler.h:194
OdDbEllipse::subGetClassID
virtual OdResult subGetClassID(void *pClsid) const
OdDbEllipse::getFirstDeriv
virtual OdResult getFirstDeriv(double param, OdGeVector3d &firstDeriv) const
OdDbEllipse::dxfInFields
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
OdDbEllipse
Definition: DbEllipse.h:63
OdDbEllipse::setEndParam
void setEndParam(double endParam)
OdDbEllipsePtr
OdSmartPtr< OdDbEllipse > OdDbEllipsePtr
Definition: DbEllipse.h:750
OdDbEllipse::radiusRatio
double radiusRatio() const
OdDbEllipse::ODDB_DECLARE_MEMBERS
ODDB_DECLARE_MEMBERS(OdDbEllipse)
OdDbEllipse::getParamAtDist
virtual OdResult getParamAtDist(double dist, double &param) const
OdDbEllipse::setEndAngle
void setEndAngle(double endAngle)
OdGiWorldDraw
Definition: GiWorldDraw.h:44
OdDbEllipse::getParamAtPoint
virtual OdResult getParamAtPoint(const OdGePoint3d &pointOnCurve, double &param) const
OdDbEllipse::reverseCurve
virtual OdResult reverseCurve()
OdDbEllipse::OdDbEllipse
OdDbEllipse()
OdDbEllipse::getEndPoint
virtual OdResult getEndPoint(OdGePoint3d &endPoint) const
OdGeCurve3d
Definition: GeCurve3d.h:56
OdDbCurve
Definition: DbCurve.h:53
OdGeContext::gTol
static GE_STATIC_EXPORT OdGeTol gTol
Definition: GeGbl.h:60
OdDbEllipse::dxfOutFields
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
OdGeExtents3d
Definition: GeExtents3d.h:45
OdDbEllipse::TD_USING
TD_USING(OdDbCurve::getSecondDeriv)
OdDbEllipse::isClosed
virtual bool isClosed() const
TOOLKIT_EXPORT
#define TOOLKIT_EXPORT
Definition: DbExport.h:40
OdDbEllipse::isPlanar
virtual bool isPlanar() const
OdGeTol
Definition: GeTol.h:49
OdDbEllipse::getPointAtParam
virtual OdResult getPointAtParam(double param, OdGePoint3d &pointOnCurve) const
OdDbEllipse::getEndParam
virtual OdResult getEndParam(double &endParam) const
OdDbEllipse::dwgInFields
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
OdDbDwgFiler
Definition: DbFiler.h:1031
OdDbEllipse::endAngle
double endAngle() const
OdDbEllipse::subTransformBy
virtual OdResult subTransformBy(const OdGeMatrix3d &xfm)
OdDbEllipse::setStartAngle
void setStartAngle(double startAngle)