CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
BrEntity.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#ifndef _INC_DDBRENTITY_3F819553013C_INCLUDED
27#define _INC_DDBRENTITY_3F819553013C_INCLUDED
28
29
30#include "OdaCommon.h"
31#include "Br/BrExport.h"
32#include "Br/BrEnums.h"
33#include "Br/BrMassProps.h"
34
35#include "TD_PackPush.h"
36#include "SharedPtr.h"
37#include "DbBaseSubentId.h"
38#include "../Ge/Ge.h"
39
40class OdBrBrep;
41class OdBrHit;
42class OdGePoint3d;
43class OdGeLinearEnt3d;
45
46
55{
56public:
57
66 bool isNull() const;
67
83 const OdBrEntity* pOtherEntity) const;
84
93 bool getBrep(OdBrBrep& brep) const;
94
101 bool checkEntity() const;
102
116
120 virtual ~OdBrEntity();
121
133
159 OdGe::PointContainment& containment,
160 OdBrEntity*& brEntContainer ) const;
161
179 const OdUInt32& iNumHitsWanted,
180 OdUInt32& iNumHitsFound,
181 OdBrHit*& brHit ) const;
182
183
184/*
185 void* getEntity() const;
186 OdBrErrorStatus setEntity(void* pData, OdDbBaseFullSubentPath& subPath = *(OdDbBaseFullSubentPath*)NULL);
187*/
188
201
202 // Validation
203
216
229
240
251/*
252 bool brepChanged() const;
253
254 // Queries & Initialisers
255 OdBrErrorStatus set(const BrValidationLevel& path);
256 OdBrErrorStatus get(BrValidationLevel& path) const;
257 OdBrErrorStatus set(OdBrBrepData* data);
258 OdBrErrorStatus get(OdBrBrepData*& data) const;
259*/
260
261 // Geometric properties
262
287 const double& dDensity = dUnspecified,
288 const double& dTolRequired = dUnspecified,
289 double& dTolAchieved = dUnspecified) const;
290
309 OdBrErrorStatus getVolume(double& dVolume,
310 const double& dTolRequired = dUnspecified,
311 double& dTolAchieved = dUnspecified) const;
312
333 const double& dTolRequired = dUnspecified,
334 double& dTolAchieved = dUnspecified) const;
335
356 const double& dTolRequired = dUnspecified,
357 double& dTolAchieved = dUnspecified) const;
358
370
371 //DOM-IGNORE-BEGIN
373
374protected:
375 void *m_pImp;
377 bool m_bIsValidate; //The enum has only 2 values.
378
380#ifdef OD_ADD_MOVE_CTOR_HAVE_DEF_DEL_FUNC
381 //DOM-IGNORE-BEGIN
382 OdBrEntity(const OdBrEntity&) = default;
383 OdBrEntity(OdBrEntity&&) = default;
384//FELIX_CHANGE_BEGIN Build fix with FxARX
385public:
386 OdBrEntity& operator=( const OdBrEntity& ) = default;
387 OdBrEntity& operator=( OdBrEntity&& ) = default;
388protected:
389//FELIX_CHANGE_END
390 //DOM-IGNORE-END
391#endif
392
393 friend class OdBrEntityInternals;
394 //DOM-IGNORE-END
395};
396
397#include "TD_PackPop.h"
398
399#endif /* _INC_DDBRENTITY_3F819553013C_INCLUDED */
400
OdBrErrorStatus
Definition: BrEnums.h:41
BrValidationLevel
Definition: BrEnums.h:120
#define ODBR_TOOLKIT_EXPORT_STATIC
Definition: BrExport.h:40
#define ODBR_TOOLKIT_EXPORT
Definition: BrExport.h:39
ptrdiff_t OdGsMarker
unsigned int OdUInt32
OdBrErrorStatus getPerimeterLength(double &dLength, const double &dTolRequired=dUnspecified, double &dTolAchieved=dUnspecified) const
OdBrErrorStatus getValidationLevel(BrValidationLevel &level) const
OdBrErrorStatus getVolume(double &dVolume, const double &dTolRequired=dUnspecified, double &dTolAchieved=dUnspecified) const
OdBrErrorStatus setSubentPath(OdBrBrep &brep, OdDbBaseFullSubentPath &subpath)
OdSharedPtr< OdDbStubPtrArray > m_pFSubentPath
Definition: BrEntity.h:376
OdBrErrorStatus setValidationLevel(const BrValidationLevel &level)
OdBrErrorStatus getLineContainment(const OdGeLinearEnt3d &line, const OdUInt32 &iNumHitsWanted, OdUInt32 &iNumHitsFound, OdBrHit *&brHit) const
static ODBR_TOOLKIT_EXPORT_STATIC double dUnspecified
Definition: BrEntity.h:372
OdBrErrorStatus getMassProps(OdBrMassProps &massProps, const double &dDensity=dUnspecified, const double &dTolRequired=dUnspecified, double &dTolAchieved=dUnspecified) const
OdBrErrorStatus getPointContainment(const OdGePoint3d &point, OdGe::PointContainment &containment, OdBrEntity *&brEntContainer) const
OdBrErrorStatus getSubentPath(OdDbBaseFullSubentPath &subPath) const
bool getBrep(OdBrBrep &brep) const
bool m_bIsValidate
Definition: BrEntity.h:377
OdBrErrorStatus getSurfaceArea(double &dArea, const double &dTolRequired=dUnspecified, double &dTolAchieved=dUnspecified) const
bool isEqualTo(const OdBrEntity *pOtherEntity) const
bool isNull() const
OdUInt32 getFlags() const
bool checkEntity() const
OdBrErrorStatus getBoundBlock(OdGeBoundBlock3d &block) const
OdUInt64 getUniqueId() const
void * m_pImp
Definition: BrEntity.h:375
OdBrErrorStatus getGsMarker(OdGsMarker &marker) const
virtual ~OdBrEntity()
Definition: BrHit.h:39
GLint level
Definition: gles2_ext.h:110
PointContainment
Definition: Ge.h:279