CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
GeTorus.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_GETORUS_H
25#define OD_GETORUS_H
27#include "OdPlatform.h"
28#include "Ge/GeSurface.h"
29#include "Ge/GeCircArc3d.h"
30
31#include "TD_PackPush.h"
32
73{
74public:
75
87
99 double majorRadius,
100 double minorRadius,
101 const OdGePoint3d& center,
102 const OdGeVector3d& axisOfSymmetry);
103
121 double majorRadius,
122 double minorRadius,
123 const OdGePoint3d& center,
124 const OdGeVector3d& axisOfSymmetry,
125 const OdGeVector3d& refAxis,
126 double startAngleU,
127 double endAngleU,
128 double startAngleV,
129 double endAngleV);
130
137 const OdGeTorus& source);
138
139 // Geometric properties.
140 //
141
148 double majorRadius() const;
149
159 double minorRadius() const;
160
168 double& startAngleU,
169 double& endAngleU) const;
170
178 double& startAngleV,
179 double& endAngleV) const;
180
188
196
204
213 bool isOuterNormal() const;
214
227 double radius);
228
241 double radius);
242
257 double startAngleU,
258 double endAngleU);
259
270 double startAngleV,
271 double endAngleV);
272
285 double majorRadius,
286 double minorRadius,
287 const OdGePoint3d& center,
288 const OdGeVector3d& axisOfSymmetry);
289
307 double majorRadius,
308 double minorRadius,
309 const OdGePoint3d& center,
310 const OdGeVector3d& axisOfSymmetry,
311 const OdGeVector3d& refAxis,
312 double startAngleU,
313 double endAngleU,
314 double startAngleV,
315 double endAngleV);
316
326 const OdGeTorus& torus);
327
352 const OdGeLinearEnt3d& linEnt,
353 int& numInt,
354 OdGePoint3d& p1,
355 OdGePoint3d& p2,
356 OdGePoint3d& p3,
357 OdGePoint3d& p4,
358 const OdGeTol& tol = OdGeContext::gTol) const;
359
360 // Shape Classification Functions
361
377 bool isLemon() const;
378
393 bool isApple() const;
394
409 bool isVortex() const;
410
424 bool isDoughnut() const;
425
431 bool isDegenerate() const;
432
439 bool isHollow() const;
440
447 bool isReverseV() const;
448
456 bool isReverseV);
457
459
460};
461
462#include "TD_PackPop.h"
463
464#endif // OD_GETORUS_H
465
tol
Definition: DimVarDefs.h:2287
#define GE_TOOLKIT_EXPORT
Definition: GeExport.h:49
OdGeSurface & operator=(const OdGeSurface &surf)
Definition: GeTol.h:49
void getAnglesInV(double &startAngleV, double &endAngleV) const
OdGeTorus(const OdGeTorus &source)
bool isVortex() const
bool isReverseV() const
OdGeTorus & set(double majorRadius, double minorRadius, const OdGePoint3d &center, const OdGeVector3d &axisOfSymmetry)
bool isApple() const
OdGeTorus & set(double majorRadius, double minorRadius, const OdGePoint3d &center, const OdGeVector3d &axisOfSymmetry, const OdGeVector3d &refAxis, double startAngleU, double endAngleU, double startAngleV, double endAngleV)
OdGeVector3d refAxis() const
bool isDoughnut() const
OdGeTorus & setMajorRadius(double radius)
OdGePoint3d center() const
OdGeTorus(double majorRadius, double minorRadius, const OdGePoint3d &center, const OdGeVector3d &axisOfSymmetry)
OdGeTorus & setAnglesInU(double startAngleU, double endAngleU)
void getAnglesInU(double &startAngleU, double &endAngleU) const
void setReverseV(bool isReverseV)
bool isOuterNormal() const
double majorRadius() const
OdGeTorus & setMinorRadius(double radius)
OdGeTorus(double majorRadius, double minorRadius, const OdGePoint3d &center, const OdGeVector3d &axisOfSymmetry, const OdGeVector3d &refAxis, double startAngleU, double endAngleU, double startAngleV, double endAngleV)
bool isHollow() const
bool isDegenerate() const
OdGeVector3d axisOfSymmetry() const
double minorRadius() const
bool isLemon() const
OdGeTorus & setAnglesInV(double startAngleV, double endAngleV)
bool intersectWith(const OdGeLinearEnt3d &linEnt, int &numInt, OdGePoint3d &p1, OdGePoint3d &p2, OdGePoint3d &p3, OdGePoint3d &p4, const OdGeTol &tol=OdGeContext::gTol) const
GLsizei GLsizei GLchar * source
Definition: gles2_ext.h:282
static GE_STATIC_EXPORT OdGeTol gTol
Definition: GeGbl.h:65