CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Ge.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
25
26
27#ifndef OD_GEGBLGE_H
28#define OD_GEGBLGE_H
30#include "TD_PackPush.h"
31
32#include "Ge/GeExport.h"
33#include "Ge/GeLibVersion.h"
34
42struct OdGe
43{
48
49 //unused
50 //DOM-IGNORE-BEGIN
51 enum
52 {
54 eBad
55 };
56 //DOM-IGNORE-END
57
62 {
229
253 kDummy9
254 };
255
260 {
273 };
274
279 {
286 };
287
292 {
294 kUninit = 0x00,
296 kOpen = 0x01,
298 kClosed = 0x02,
300 kPeriodic = 0x04,
302 kRational = 0x08,
304 kNoPoles = 0x10,
310 kPoleAtBoth = 0x80
311 };
312
322 kExtend
323 };
324
330 {
332 kNotDefined = 1 << 0,
334 kUnknown = 1 << 1,
336 kLeftRight = 1 << 2,
338 kRightLeft = 1 << 3,
340 kLeftLeft = 1 << 4,
342 kRightRight = 1 << 5,
344 kPointLeft = 1 << 6,
346 kPointRight = 1 << 7,
348 kLeftOverlap = 1 << 8,
350 kOverlapLeft = 1 << 9,
352 kRightOverlap = 1 << 10,
354 kOverlapRight = 1 << 11,
356 kOverlapStart = 1 << 12,
358 kOverlapEnd = 1 << 13,
360 kOverlapOverlap = 1 << 14
361 };
362
367 {
373 kCommon
374 };
375
380 {
387 };
388
393 {
407 };
408
413 {
444 };
445
450 {
465 };
466
471 {
478 };
479
484 {
493 };
494
499 {
508 };
509
515 kChord = 0x0,
519 kUniform = 0x2,
524 };
525};
526
534
543
544//FELIX_CHANGE_BEGIN
545/*
546#define DECLARE_GE_RTTI() \
547 virtual bool isKindOf (OdGe::EntityId entType) const;\
548 virtual OdGe::EntityId type() const
549*/
550#define DECLARE_GE_RTTI() \
551 virtual bool isKindOf (OdGe::EntityId entType) const;\
552 virtual OdGe::EntityId type() const;\
553 friend class CFxGeExtension;
554
557//FELIX_CHANGE_END
558
559#define DEFINE_GE_RTTI(Class,Parent,TYPE) \
560 bool Class::isKindOf(OdGe::EntityId entType) const\
561 {\
562 if ( entType == OdGe::TYPE ) return true;\
563 return Parent::isKindOf( entType );\
564 }\
565 OdGe::EntityId Class::type() const { return OdGe::TYPE; }
566
571
572#include "TD_PackPop.h"
573
574#endif // AC_GEGBLGE_H
575
GE_TOOLKIT_EXPORT void EnableGeProtection(bool bVal)
OdGe::ErrorCondition OdGeError
Definition: Ge.h:533
OdGe::OdGeKnotParameterization OdGeKnotParameterization
Definition: Ge.h:542
OdGe::OdGeIntersectError OdGeIntersectError
Definition: Ge.h:541
GE_TOOLKIT_EXPORT void odgeHeapCleanup()
GE_TOOLKIT_EXPORT bool IsGeProtectionEnabled()
#define GE_TOOLKIT_EXPORT
Definition: GeExport.h:49
Definition: Ge.h:43
static const OdGeLibVersion gLibVersion
Definition: Ge.h:47
OdGeXConfig
Definition: Ge.h:330
@ kRightRight
Definition: Ge.h:342
@ kOverlapOverlap
Definition: Ge.h:360
@ kRightLeft
Definition: Ge.h:338
@ kPointRight
Definition: Ge.h:346
@ kUnknown
Definition: Ge.h:334
@ kNotDefined
Definition: Ge.h:332
@ kPointLeft
Definition: Ge.h:344
@ kOverlapEnd
Definition: Ge.h:358
@ kRightOverlap
Definition: Ge.h:352
@ kOverlapLeft
Definition: Ge.h:350
@ kLeftLeft
Definition: Ge.h:340
@ kLeftRight
Definition: Ge.h:336
@ kLeftOverlap
Definition: Ge.h:348
@ kOverlapStart
Definition: Ge.h:356
@ kOverlapRight
Definition: Ge.h:354
csiConfig
Definition: Ge.h:450
@ kXOut
Definition: Ge.h:454
@ kXIn
Definition: Ge.h:456
@ kXTanOut
Definition: Ge.h:458
@ kXUnknown
Definition: Ge.h:452
@ kXCoincidentUnbounded
Definition: Ge.h:464
@ kXTanIn
Definition: Ge.h:460
@ kXCoincident
Definition: Ge.h:462
ExternalEntityKind
Definition: Ge.h:260
@ kExternalEntityUndefined
Definition: Ge.h:268
@ kBimEntity
Definition: Ge.h:270
@ kIfcEntity
Definition: Ge.h:272
@ kGe3dCurveEntity
Definition: Ge.h:264
@ kGeSurfaceEntity
Definition: Ge.h:266
@ kAcisEntity
Definition: Ge.h:262
ErrorCondition
Definition: Ge.h:413
@ kOk
Definition: Ge.h:415
@ kSingularPoint
Definition: Ge.h:443
@ kPerpendicularArg1Arg2
Definition: Ge.h:423
@ kArg1TooBig
Definition: Ge.h:433
@ kEqualArg1Arg2
Definition: Ge.h:425
@ kLinearlyDependentArg1Arg2Arg3
Definition: Ge.h:431
@ k0Arg1
Definition: Ge.h:419
@ kEqualArg1Arg3
Definition: Ge.h:427
@ k0This
Definition: Ge.h:417
@ kDegenerateGeometry
Definition: Ge.h:441
@ kArg1InsideThis
Definition: Ge.h:437
@ kArg1OnThis
Definition: Ge.h:435
@ kNonCoplanarGeometry
Definition: Ge.h:439
@ k0Arg2
Definition: Ge.h:421
@ kEqualArg2Arg3
Definition: Ge.h:429
OdGeIntersectError
Definition: Ge.h:499
@ kXXWrongDimensionAtIndex
Definition: Ge.h:505
@ kXXUnknown
Definition: Ge.h:507
@ kXXIndexOutOfRange
Definition: Ge.h:503
@ kXXOk
Definition: Ge.h:501
EntityId
Definition: Ge.h:62
@ kPolyline3d
Definition: Ge.h:144
@ kPointEnt2d
Definition: Ge.h:68
@ kPosition2d
Definition: Ge.h:72
@ kConic3d
Definition: Ge.h:90
@ kCurveCurveInt2d
Definition: Ge.h:182
@ kTrimmedSurface
Definition: Ge.h:164
@ kObject
Definition: Ge.h:198
@ kDummy6
Definition: Ge.h:247
@ kCompositeCrv2d
Definition: Ge.h:156
@ kEnvelope2d
Definition: Ge.h:168
@ kSurfaceCurve3dTo2d
Definition: Ge.h:178
@ kEllipArc2d
Definition: Ge.h:96
@ kPosition3d
Definition: Ge.h:74
@ kEntity3d
Definition: Ge.h:66
@ kSurface
Definition: Ge.h:120
@ kCircArc2d
Definition: Ge.h:84
@ kLinearEnt2d
Definition: Ge.h:104
@ kDummy9
Definition: Ge.h:253
@ kExternalSurface
Definition: Ge.h:160
@ kCone
Definition: Ge.h:128
@ kRevolvedSurface
Definition: Ge.h:231
@ kOffsetSurface
Definition: Ge.h:166
@ kFitData3d
Definition: Ge.h:200
@ kBoundBlock2d
Definition: Ge.h:186
@ kBezierCurve3d
Definition: Ge.h:196
@ kCurveSampleData
Definition: Ge.h:208
@ kEllipCone
Definition: Ge.h:210
@ kDSpline2d
Definition: Ge.h:138
@ kRay3d
Definition: Ge.h:118
@ kAugPolyline3d
Definition: Ge.h:146
@ kCompositeCrv3d
Definition: Ge.h:158
@ kPlanarEnt
Definition: Ge.h:112
@ kDummy7
Definition: Ge.h:249
@ kDummy5
Definition: Ge.h:245
@ kSphere
Definition: Ge.h:122
@ kSplineEnt3d
Definition: Ge.h:142
@ kBoundedPlane
Definition: Ge.h:82
@ kExternalCurve2d
Definition: Ge.h:174
@ kEdgeCurve
Definition: Ge.h:235
@ kExternalObject
Definition: Ge.h:218
@ kEllipArc3d
Definition: Ge.h:98
@ kLine2d
Definition: Ge.h:100
@ kSurfaceSurfaceInt
Definition: Ge.h:222
@ kTrimmedCrv2d
Definition: Ge.h:154
@ kAugPolyline2d
Definition: Ge.h:134
@ kNurbCurve3d
Definition: Ge.h:148
@ kCylinder
Definition: Ge.h:124
@ kOffsetCurve2d
Definition: Ge.h:190
@ kRay2d
Definition: Ge.h:116
@ kRuled
Definition: Ge.h:233
@ kCurveCurveInt3d
Definition: Ge.h:184
@ kSplineEnt2d
Definition: Ge.h:130
@ kHatch
Definition: Ge.h:202
@ kEntity2d
Definition: Ge.h:64
@ kLine3d
Definition: Ge.h:102
@ kDummy2
Definition: Ge.h:239
@ kBoundBlock3d
Definition: Ge.h:188
@ kLineSeg2d
Definition: Ge.h:108
@ kCurve3d
Definition: Ge.h:94
@ kNurbSurface
Definition: Ge.h:162
@ kPolyline2d
Definition: Ge.h:132
@ kDummy8
Definition: Ge.h:251
@ kNurbCurve2d
Definition: Ge.h:136
@ kCurveBoundedSurface
Definition: Ge.h:170
@ kIntervalBoundBlock
Definition: Ge.h:214
@ kTrimmedCurve2d
Definition: Ge.h:204
@ kClipBoundary2d
Definition: Ge.h:216
@ kExternalCurve3d
Definition: Ge.h:172
@ kPolynomCurve3d
Definition: Ge.h:194
@ kEllipCylinder
Definition: Ge.h:212
@ kPointOnCurve2d
Definition: Ge.h:76
@ kTrimmedCurve3d
Definition: Ge.h:206
@ kPlane
Definition: Ge.h:114
@ kCubicSplineCurve3d
Definition: Ge.h:152
@ kCircArc3d
Definition: Ge.h:86
@ kConic2d
Definition: Ge.h:88
@ kPointOnSurface
Definition: Ge.h:80
@ kPointEnt3d
Definition: Ge.h:70
@ kDSpline3d
Definition: Ge.h:150
@ kDummy1
Definition: Ge.h:237
@ kCurveSurfaceInt
Definition: Ge.h:220
@ kExternalBoundedSurface
Definition: Ge.h:180
@ kLineSeg3d
Definition: Ge.h:110
@ kDummy3
Definition: Ge.h:241
@ kSpunSurface
Definition: Ge.h:226
@ kDummy4
Definition: Ge.h:243
@ kCurve2d
Definition: Ge.h:92
@ kPointOnCurve3d
Definition: Ge.h:78
@ kLinearEnt3d
Definition: Ge.h:106
@ kSurfaceCurve2dTo3d
Definition: Ge.h:176
@ kHelix
Definition: Ge.h:224
@ kOffsetCurve3d
Definition: Ge.h:192
@ kCubicSplineCurve2d
Definition: Ge.h:140
@ kSegmentChain2d
Definition: Ge.h:228
@ kTorus
Definition: Ge.h:126
BooleanType
Definition: Ge.h:367
@ kCommon
Definition: Ge.h:373
@ kUnion
Definition: Ge.h:369
@ kSubtract
Definition: Ge.h:371
@ eGood
Definition: Ge.h:53
@ eBad
Definition: Ge.h:54
ClipCondition
Definition: Ge.h:393
@ kAllSegmentsOutsideOddWinds
Definition: Ge.h:404
@ kAllSegmentsOutsideZeroWinds
Definition: Ge.h:401
@ kInvalid
Definition: Ge.h:395
@ kAllSegmentsInside
Definition: Ge.h:397
@ kSegmentsIntersect
Definition: Ge.h:399
@ kAllSegmentsOutsideEvenWinds
Definition: Ge.h:406
PointContainment
Definition: Ge.h:279
@ kOutside
Definition: Ge.h:283
@ kOnBoundary
Definition: Ge.h:285
@ kInside
Definition: Ge.h:281
ssiType
Definition: Ge.h:471
@ kSSIAntiTangent
Definition: Ge.h:477
@ kSSITangent
Definition: Ge.h:475
@ kSSITransverse
Definition: Ge.h:473
ssiConfig
Definition: Ge.h:484
@ kSSIOut
Definition: Ge.h:488
@ kSSIUnknown
Definition: Ge.h:486
@ kSSICoincident
Definition: Ge.h:492
@ kSSIIn
Definition: Ge.h:490
OffsetCrvExtType
Definition: Ge.h:316
@ kExtend
Definition: Ge.h:322
@ kChamfer
Definition: Ge.h:320
@ kFillet
Definition: Ge.h:318
NurbSurfaceProperties
Definition: Ge.h:292
@ kOpen
Definition: Ge.h:296
@ kRational
Definition: Ge.h:302
@ kNoPoles
Definition: Ge.h:304
@ kPoleAtBoth
Definition: Ge.h:310
@ kUninit
Definition: Ge.h:294
@ kPoleAtMax
Definition: Ge.h:308
@ kPoleAtMin
Definition: Ge.h:306
@ kPeriodic
Definition: Ge.h:300
@ kClosed
Definition: Ge.h:298
ClipError
Definition: Ge.h:380
@ eNotInitialized
Definition: Ge.h:386
@ eOk
Definition: Ge.h:382
@ eInvalidClipBoundary
Definition: Ge.h:384
OdGeKnotParameterization
Definition: Ge.h:513
@ kNotDefinedKnotParam
Definition: Ge.h:523
@ kCustomParameterization
Definition: Ge.h:521
@ kUniform
Definition: Ge.h:519
@ kChord
Definition: Ge.h:515
@ kSqrtChord
Definition: Ge.h:517