CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Db3dProfile.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2020, 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 _DB3DPROFILE_H_INCLUDED_
25#define _DB3DPROFILE_H_INCLUDED_
26
27#include "RxObject.h"
28#include "TD_PackPush.h"
29#include "DbGeomRef.h"
30
31class OdDb3dProfile;
32class OdDb3dProfileData;
33
36
48{
49public:
52
57
64
70 OdDb3dProfile(const OdDbFullSubentPath& faceSubentPath);
71
79
85 OdDb3dProfile(const OdDbVertexRef& vertexRef);
86
93
99 OdDb3dProfile(const OdDbPathRef& pathRef);
100
104 virtual ~OdDb3dProfile();
105
111 void copyFrom(const OdRxObject* src);
112
121
129
136 OdResult set(const OdDbVertexRef& vertexRef);
137
147
154 OdResult set(const OdDbPathRef& pathRef);
155
162 OdDb3dProfile& operator =(const OdDb3dProfile& src);
163
170 bool isClosed(OdGeTol tol = OdGeTol()) const;
171
177 bool isPlanar() const;
178
184 bool isSubent() const;
185
191 bool isFace() const;
192
198 bool isEdge() const;
199
205 bool isValid() const;
206
217
228 bool mergeEdges, bool mergeCurves,
229 OdArray<OdDb3dProfile*>& mergedProfileArr);
230
239
255 OdResult convertProfile(bool explodeMultiFaceRegions, bool convertSurfaceToEdges,
256 bool nonPlanarOnly, bool outerLoopOnly,
257 OdArray<OdDb3dProfile*>& convertedProfileArr) const;
258
259private:
260 void setEntity(OdDbEntity* pEntity);
261
262 OdDb3dProfileDataPtr m_pProfileData;
263
264 friend class OdDb3dProfileData;
265};
266
267#include "TD_PackPop.h"
268#endif // _DB3DPROFILE_H_INCLUDED_
OdSmartPtr< OdDb3dProfileData > OdDb3dProfileDataPtr
Definition: Db3dProfile.h:35
OdSmartPtr< OdDb3dProfile > OdDb3dProfilePtr
Definition: Db3dProfile.h:34
#define DBENT_EXPORT
Definition: DbExport.h:67
tol
Definition: DimVarDefs.h:2287
OdResult
Definition: OdResult.h:29
virtual ~OdDb3dProfile()
OdDbEntity * entity() const
bool isEdge() const
OdDb3dProfile(const OdDbFullSubentPath &faceSubentPath)
static OdResult mergeProfiles(const OdArray< OdDb3dProfile * > &profileArr, bool mergeEdges, bool mergeCurves, OdArray< OdDb3dProfile * > &mergedProfileArr)
OdDb3dProfile * convertProfile(const OdArray< OdDbPathRef > &aPath)
static OdSmartPtr< OdDb3dProfile > createObject(const OdDbFullSubentPath &faceSubentPath)
OdDb3dProfile(const OdDbVertexRef &vertexRef)
OdDb3dProfile(OdDbEntity *pEntity)
OdResult set(const OdDbPathRef &pathRef)
OdResult set(const OdDbVertexRef &vertexRef)
bool isSubent() const
OdDb3dProfile(const OdDb3dProfile &src)
OdResult convertProfile(bool explodeMultiFaceRegions, bool convertSurfaceToEdges, bool nonPlanarOnly, bool outerLoopOnly, OdArray< OdDb3dProfile * > &convertedProfileArr) const
void copyFrom(const OdRxObject *src)
OdResult getVertexRef(OdDbVertexRef &vertexRef) const
OdResult getPathRef(OdDbPathRef &pathRef) const
bool isFace() const
OdDb3dProfile(const OdDbPathRef &pathRef)
bool isValid() const
OdResult set(OdDbEntity *pEntity)
bool isClosed(OdGeTol tol=OdGeTol()) const
ODRX_DECLARE_MEMBERS(OdDb3dProfile)
bool isPlanar() const
Definition: GeTol.h:49