CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
GeEllipArc3d.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_GEELL3D_H
25#define OD_GEELL3D_H
26
27class OdGeEllipArc2d;
28class OdGeCircArc3d;
29class OdGeLineEnt3d;
30class OdGePlanarEnt;
31class OdGeExtents3d;
32
33#include "Ge/GeCurve3d.h"
34#include "OdPlatformSettings.h"
35
36#include "TD_PackPush.h"
37
58{
59public:
61
69
76 const OdGeEllipArc3d& ell);
77
84 const OdGeCircArc3d& source);
85
96 const OdGePoint3d& center,
99 double majorRadius,
100 double minorRadius);
101
114 const OdGePoint3d& center,
115 const OdGeVector3d& majorAxis,
116 const OdGeVector3d& minorAxis,
117 double majorRadius,
118 double minorRadius,
119 double startAng,
120 double endAng);
121
135 const OdGePlanarEnt& plane,
136 OdGePoint3d& pointOnPlane,
137 const OdGeTol& tol = OdGeContext::gTol) const ;
138
157 const OdGeLinearEnt3d& line,
158 int& numInt,
159 OdGePoint3d& p1,
160 OdGePoint3d& p2,
161 const OdGeTol& tol = OdGeContext::gTol) const ;
162
182 const OdGePlanarEnt& plane,
183 int& numInt,
184 OdGePoint3d& p1,
185 OdGePoint3d& p2,
186 const OdGeTol& tol = OdGeContext::gTol) const;
187
207 const OdGeLinearEnt3d& line,
208 const OdGeVector3d& projDir,
209 int& numInt,
210 OdGePoint3d& pntOnEllipse1,
211 OdGePoint3d& pntOnEllipse2,
212 OdGePoint3d& pntOnLine1,
213 OdGePoint3d& pntOnLine2,
214 const OdGeTol& tol = OdGeContext::gTol) const ;
215
222 OdGePlane& plane) const;
223
234 const OdGeTol& tol = OdGeContext::gTol) const;
235
248 const OdGePoint3d& point,
249 const OdGeTol& tol = OdGeContext::gTol) const;
250
258
265 double minorRadius() const;
266
273 double majorRadius() const;
274
282
290
301
314 double startAng() const;
315
328 double endAng() const;
329
337
345
355 const OdGePoint3d& center);
356
366 double rad);
367
377 double rad);
378
389 const OdGeVector3d& majorAxis,
390 const OdGeVector3d& minorAxis);
391
405 double startAng,
406 double endAng);
407
422 const OdGePoint3d& center,
423 const OdGeVector3d& majorAxis,
424 const OdGeVector3d& minorAxis,
425 double majorRadius,
426 double minorRadius);
427
447 const OdGePoint3d& center,
448 const OdGeVector3d& majorAxis,
449 const OdGeVector3d& minorAxis,
450 double majorRadius,
451 double minorRadius,
452 double startAng,
453 double endAng);
454
465 const OdGeCircArc3d& arc);
466
475 const OdGeEllipArc3d& ell);
476
478 // TD Special :
479
480 // functions making ellipse's axis orthogonal
481 // this one requires error flag
482
504 const OdGeTol& tol,
506
522 const OdGeTol& tol = OdGeContext::gTol);
523
530 double param) const;
531
538 OdGeExtents3d& extents) const;
539
552 const OdGeVector3d& tan,
553 OdGeDoubleArray& params) const;
554
567 const OdGePlane& refPlane,
568 OdGeDoubleArray& params) const;
569
590 const OdGeEllipArc3d& curve,
591 const OdGeTol &iTolerance = OdGeContext::gTol);
592};
593
594#include "TD_PackPop.h"
595
596#endif // OD_GEELL3D_H
tol
OdArray< double, OdMemoryAllocator< double > > OdGeDoubleArray
#define GE_TOOLKIT_EXPORT
Definition GeExport.h:35
OdResult
Definition OdResult.h:29
OdGeCurve3d & operator=(const OdGeCurve3d &curve)
OdGeEllipArc3d(const OdGePoint3d &center, const OdGeVector3d &majorAxis, const OdGeVector3d &minorAxis, double majorRadius, double minorRadius, double startAng, double endAng)
OdResult inverseTangentPlane(const OdGePlane &refPlane, OdGeDoubleArray &params) const
OdGeEllipArc3d & setAngles(double startAng, double endAng)
OdGeEllipArc3d & setCenter(const OdGePoint3d &center)
OdGeEllipArc3d(const OdGeEllipArc3d &ell)
double minorRadius() const
double majorRadius() const
OdGeEllipArc3d & set(const OdGePoint3d &center, const OdGeVector3d &majorAxis, const OdGeVector3d &minorAxis, double majorRadius, double minorRadius, double startAng, double endAng)
OdGeEllipArc3d(const OdGePoint3d &center, const OdGeVector3d &majorAxis, const OdGeVector3d &minorAxis, double majorRadius, double minorRadius)
OdGeVector3d tangentAt(double param) const
OdGePoint3d endPoint() const
OdGeEllipArc3d & joinWith(const OdGeEllipArc3d &curve, const OdGeTol &iTolerance=OdGeContext::gTol)
OdGeEllipArc3d & set(const OdGePoint3d &center, const OdGeVector3d &majorAxis, const OdGeVector3d &minorAxis, double majorRadius, double minorRadius)
OdGeEllipArc3d & setMajorRadius(double rad)
double startAng() const
void getPlane(OdGePlane &plane) const
OdGePoint3d closestPointToPlane(const OdGePlanarEnt &plane, OdGePoint3d &pointOnPlane, const OdGeTol &tol=OdGeContext::gTol) const
OdResult inverseTangent(const OdGeVector3d &tan, OdGeDoubleArray &params) const
OdGeEllipArc3d & setAxes(const OdGeVector3d &majorAxis, const OdGeVector3d &minorAxis)
bool isCircular(const OdGeTol &tol=OdGeContext::gTol) const
void orthogonalizeAxes(const OdGeTol &tol, OdGe::ErrorCondition &flag)
bool intersectWith(const OdGePlanarEnt &plane, int &numInt, OdGePoint3d &p1, OdGePoint3d &p2, const OdGeTol &tol=OdGeContext::gTol) const
void getGeomExtents(OdGeExtents3d &extents) const
OdGePoint3d startPoint() const
bool isInside(const OdGePoint3d &point, const OdGeTol &tol=OdGeContext::gTol) const
OdGeVector3d majorAxis() const
OdGePoint3d center() const
OdGeVector3d minorAxis() const
OdGeEllipArc3d & set(const OdGeCircArc3d &arc)
double endAng() const
OdGeVector3d normal() const
bool intersectWith(const OdGeLinearEnt3d &line, int &numInt, OdGePoint3d &p1, OdGePoint3d &p2, const OdGeTol &tol=OdGeContext::gTol) const
OdGeEllipArc3d(const OdGeCircArc3d &source)
void orthogonalizeAxes(const OdGeTol &tol=OdGeContext::gTol)
GE_OPERATORS_OVERRIDE_3D(OdGeEllipArc3d)
OdGeEllipArc3d & setMinorRadius(double rad)
bool projIntersectWith(const OdGeLinearEnt3d &line, const OdGeVector3d &projDir, int &numInt, OdGePoint3d &pntOnEllipse1, OdGePoint3d &pntOnEllipse2, OdGePoint3d &pntOnLine1, OdGePoint3d &pntOnLine2, const OdGeTol &tol=OdGeContext::gTol) const
GLenum GLint * params
Definition gles2_ext.h:184
GLsizei GLsizei GLchar * source
Definition gles2_ext.h:282
static GE_STATIC_EXPORT OdGeTol gTol
Definition GeGbl.h:67
ErrorCondition
Definition Ge.h:415