CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
GeEllipArc2d.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, 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-2022 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
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:
58
65
72 const OdGeEllipArc2d& ell);
73
80 const OdGeCircArc2d& arc);
81
92 const OdGePoint2d& center,
93 const OdGeVector2d& majorAxis,
94 const OdGeVector2d& minorAxis,
95 double majorRadius,
96 double minorRadius);
97
110 const OdGePoint2d& center,
111 const OdGeVector2d& majorAxis,
112 const OdGeVector2d& minorAxis,
113 double majorRadius,
114 double minorRadius,
115 double startAng,
116 double endAng);
117
131 const OdGeLinearEnt2d& line,
132 int& numInt,
133 OdGePoint2d& p1,
134 OdGePoint2d& p2,
135 const OdGeTol& tol = OdGeContext::gTol) const;
136
146 const OdGeTol& tol = OdGeContext::gTol) const;
147
159 const OdGePoint2d& point,
160 const OdGeTol& tol = OdGeContext::gTol) const;
161
169
176 double minorRadius() const;
177
184 double majorRadius() const;
185
193
201
213 double startAng() const;
214
226 double endAng() const;
227
235
243
248 bool isClockWise() const;
249
259 const OdGePoint2d& center);
260
270 double rad);
271
281 double rad);
282
293 const OdGeVector2d& majorAxis,
294 const OdGeVector2d& minorAxis);
295
309 double startAng,
310 double endAng);
311
326 const OdGePoint2d& center,
327 const OdGeVector2d& majorAxis,
328 const OdGeVector2d& minorAxis,
329 double majorRadius,
330 double minorRadius);
331
351 const OdGePoint2d& center,
352 const OdGeVector2d& majorAxis,
353 const OdGeVector2d& minorAxis,
354 double majorRadius,
355 double minorRadius,
356 double startAng,
357 double endAng);
358
369 const OdGeCircArc2d& arc);
370
379 const OdGeEllipArc2d& ell);
380
382 // Overrides :
383
385 // TD Special :
386
393 OdGeExtents2d& extents) const;
394
395 // returns the parameter of elliptical arc points (if any) which have tangent
396 // co-directional to "tan" vector. Parameters are returned in params array.
397 // Note that this function doesn't clear array - only appends items.
398
410 //FELIX_CHANGE_BEGIN
412 OdGeVector2d tan,
413 OdGeDoubleArray& params) const;
414 //FELIX_CHANGE_END
415};
416
417#include "TD_PackPop.h"
418
419#endif // OD_GE_ELLIP_ARC_2D_H
tol
Definition: DimVarDefs.h:2287
#define GE_TOOLKIT_EXPORT
Definition: GeExport.h:49
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)
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
Definition: GeTol.h:49
GLenum GLint * params
Definition: gles2_ext.h:184
static GE_STATIC_EXPORT OdGeTol gTol
Definition: GeGbl.h:65