CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
GeEllipArc2d.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, 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 Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 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#ifndef OD_GE_ELLIP_ARC_2D_H
25#define OD_GE_ELLIP_ARC_2D_H
26
27class OdGeCircArc2d;
28class OdGePlanarEnt;
29class OdGeEllipArc2d;
30class OdGeLinearEnt2d;
31class OdGeExtents2d;
32#include "OdPlatform.h"
33#include "Ge/GeCurve2d.h"
34
35#include "TD_PackPush.h"
36
56{
57public:
59
66
73 const OdGeEllipArc2d& ell);
74
81 const OdGeCircArc2d& arc);
82
93 const OdGePoint2d& center,
96 double majorRadius,
97 double minorRadius);
98
111 const OdGePoint2d& center,
112 const OdGeVector2d& majorAxis,
113 const OdGeVector2d& minorAxis,
114 double majorRadius,
115 double minorRadius,
116 double startAng,
117 double endAng);
118
132 const OdGeLinearEnt2d& line,
133 int& numInt,
134 OdGePoint2d& p1,
135 OdGePoint2d& p2,
136 const OdGeTol& tol = OdGeContext::gTol) const;
137
147 const OdGeTol& tol = OdGeContext::gTol) const;
148
160 const OdGePoint2d& point,
161 const OdGeTol& tol = OdGeContext::gTol) const;
162
170
177 double minorRadius() const;
178
185 double majorRadius() const;
186
194
202
214 double startAng() const;
215
227 double endAng() const;
228
236
244
249 bool isClockWise() const;
250
260 const OdGePoint2d& center);
261
271 double rad);
272
282 double rad);
283
294 const OdGeVector2d& majorAxis,
295 const OdGeVector2d& minorAxis);
296
310 double startAng,
311 double endAng);
312
327 const OdGePoint2d& center,
328 const OdGeVector2d& majorAxis,
329 const OdGeVector2d& minorAxis,
330 double majorRadius,
331 double minorRadius);
332
352 const OdGePoint2d& center,
353 const OdGeVector2d& majorAxis,
354 const OdGeVector2d& minorAxis,
355 double majorRadius,
356 double minorRadius,
357 double startAng,
358 double endAng);
359
370 const OdGeCircArc2d& arc);
371
380 const OdGeEllipArc2d& ell);
381
383 // Overrides :
384
386 // TD Special :
387
394 OdGeExtents2d& extents) const;
395
396 // returns the parameter of elliptical arc points (if any) which have tangent
397 // co-directional to "tan" vector. Parameters are returned in params array.
398 // Note that this function doesn't clear array - only appends items.
399
411 //FELIX_CHANGE_BEGIN
413 OdGeVector2d tan,
414 OdGeDoubleArray& params) const;
415 //FELIX_CHANGE_END
416};
417
418#include "TD_PackPop.h"
419
420#endif // OD_GE_ELLIP_ARC_2D_H
tol
OdArray< double, OdMemoryAllocator< double > > OdGeDoubleArray
#define GE_TOOLKIT_EXPORT
Definition GeExport.h:35
OdGeCurve2d & operator=(const OdGeCurve2d &curve)
OdGeEllipArc2d & setCenter(const OdGePoint2d &center)
void inverseTangent(OdGeVector2d tan, OdGeDoubleArray &params) const
double minorRadius() const
void getGeomExtents(OdGeExtents2d &extents) const
OdGeVector2d minorAxis() const
OdGeEllipArc2d(const OdGePoint2d &center, const OdGeVector2d &majorAxis, const OdGeVector2d &minorAxis, double majorRadius, double minorRadius)
bool isCircular(const OdGeTol &tol=OdGeContext::gTol) const
OdGePoint2d center() const
bool isClockWise() const
double endAng() const
OdGeVector2d majorAxis() const
bool isInside(const OdGePoint2d &point, const OdGeTol &tol=OdGeContext::gTol) const
OdGeEllipArc2d & set(const OdGePoint2d &center, const OdGeVector2d &majorAxis, const OdGeVector2d &minorAxis, double majorRadius, double minorRadius, double startAng, double endAng)
OdGeEllipArc2d & setAxes(const OdGeVector2d &majorAxis, const OdGeVector2d &minorAxis)
double majorRadius() const
OdGeEllipArc2d(const OdGeEllipArc2d &ell)
OdGeEllipArc2d & setMinorRadius(double rad)
OdGeEllipArc2d & setAngles(double startAng, double endAng)
OdGeEllipArc2d & set(const OdGeCircArc2d &arc)
OdGeEllipArc2d(const OdGePoint2d &center, const OdGeVector2d &majorAxis, const OdGeVector2d &minorAxis, double majorRadius, double minorRadius, double startAng, double endAng)
OdGeEllipArc2d(const OdGeCircArc2d &arc)
OdGeEllipArc2d & setMajorRadius(double rad)
GE_OPERATORS_OVERRIDE_2D(OdGeEllipArc2d)
OdGePoint2d endPoint() const
bool intersectWith(const OdGeLinearEnt2d &line, int &numInt, OdGePoint2d &p1, OdGePoint2d &p2, const OdGeTol &tol=OdGeContext::gTol) const
double startAng() const
OdGeEllipArc2d & set(const OdGePoint2d &center, const OdGeVector2d &majorAxis, const OdGeVector2d &minorAxis, double majorRadius, double minorRadius)
OdGePoint2d startPoint() const
GLenum GLint * params
Definition gles2_ext.h:184
static GE_STATIC_EXPORT OdGeTol gTol
Definition GeGbl.h:67