CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
DbPolygonMesh.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_DB_POLYGON_MESH_
28#define _OD_DB_POLYGON_MESH_
29
30#include "TD_PackPush.h"
31
32#include "DbEntity.h"
33#include "DbObjectIterator.h"
34#include "DbPolygonMeshVertex.h"
35#include "DwgDeclareMembers.h"
36
37class OdDbSequenceEnd;
40
45namespace OdDb
46{
48 {
49 kSimpleMesh = 0, // Simple mesh
50 kQuadSurfaceMesh = 5, // Quadratic B-spline fit
51 kCubicSurfaceMesh = 6, // Cubic B-spline fit
52 kBezierSurfaceMesh = 8 // Bezier Surface fit
53 };
54}
55
76{
77public:
79
81
97
115 OdDb::PolyMeshType polyMeshType);
116
134 OdDb::PolyMeshType polyMeshType);
135
139 OdInt16 mSize() const;
140
146 OdInt16 mSize);
147
151 OdInt16 nSize() const;
152
157 void setNSize(OdInt16 nSize);
158
162 bool isMClosed() const;
163
168
172 void makeMOpen();
173
177 bool isNClosed() const;
178
183
187 void makeNOpen();
188
198
209 OdInt16 mSurfaceDensity);
210
220
231 OdInt16 nSurfaceDensity);
232
237
242
262 OdDb::PolyMeshType surfType,
263 OdInt16 surfU,
264 OdInt16 surfV);
265
285 OdDbPolygonMeshVertex* pVertex,
287
299 OdDbObjectId vertId,
300 OdDb::OpenMode mode,
301 bool openErasedOne = false);
302
316 OdDb::OpenMode mode);
317
323
325 OdDbDwgFiler* pFiler);
326
327 virtual void dwgOutFields(
328 OdDbDwgFiler* pFiler) const;
329
331 OdDbDxfFiler* pFiler);
332
333 virtual void dxfOutFields(
334 OdDbDxfFiler* pFiler) const;
335
336 virtual void dxfOut(
337 OdDbDxfFiler* pFiler) const;
338
340 OdDbDxfFiler* pFiler);
341
343 OdDbDxfFiler* pFiler);
344
345 virtual void dxfOutFields_R12(
346 OdDbDxfFiler* pFiler) const;
347
349 OdGiWorldDraw* pWd) const;
350
351 void subClose();
352
354 void* pClsid) const;
355
356 virtual bool isPlanar() const;
357
359 OdGePlane& plane,
360 OdDb::Planarity& planarity) const;
361
363 const OdGeMatrix3d& xfm);
364
369 OdRxObjectPtrArray& entitySet) const;
370
374 virtual OdResult explodeGeometry(OdRxObjectPtrArray& entitySet) const;
375
377 OdGsMarker gsMark,
378 const OdGePoint3d& ,
379 const OdGeMatrix3d& ,
380 OdDbFullSubentPathArray& subentPaths,
381 const OdDbObjectIdArray* pEntAndInsertStack ) const;
382
384 OdGsMarkerArray& gsMarkers) const;
385};
386
391
392#include "TD_PackPop.h"
393
394#endif
#define DBENT_EXPORT
Definition: DbExport.h:67
OdSmartPtr< OdDbPolygonMesh > OdDbPolygonMeshPtr
OdSmartPtr< OdDbSequenceEnd > OdDbSequenceEndPtr
Definition: DbPolygonMesh.h:39
OdSmartPtr< OdDbPolygonMeshVertex > OdDbPolygonMeshVertexPtr
Definition: DbPolygonMesh.h:38
ptrdiff_t OdGsMarker
short OdInt16
OdResult
Definition: OdResult.h:29
OdInt16 nSurfaceDensity() const
void setNSize(OdInt16 nSize)
void setNSurfaceDensity(OdInt16 nSurfaceDensity)
DWGMAP_DECLARE_MEMBERS(OdDbPolygonMesh)
void setMSize(OdInt16 mSize)
OdResult subGetClassID(void *pClsid) const
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
virtual void dxfOut(OdDbDxfFiler *pFiler) const
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
OdResult subGetGsMarkersAtSubentPath(const OdDbFullSubentPath &subPath, OdGsMarkerArray &gsMarkers) const
virtual OdResult subExplode(OdRxObjectPtrArray &entitySet) const
void convertToPolyMeshType(OdDb::PolyMeshType polyMeshType)
virtual OdResult explodeGeometry(OdRxObjectPtrArray &entitySet) const
void surfaceFit(OdDb::PolyMeshType surfType, OdInt16 surfU, OdInt16 surfV)
OdInt16 mSurfaceDensity() const
virtual OdResult getPlane(OdGePlane &plane, OdDb::Planarity &planarity) const
bool isNClosed() const
OdDbObjectIteratorPtr vertexIterator() const
bool subWorldDraw(OdGiWorldDraw *pWd) const
virtual OdResult subTransformBy(const OdGeMatrix3d &xfm)
OdInt16 mSize() const
OdDbSequenceEndPtr openSequenceEnd(OdDb::OpenMode mode)
virtual void dxfOutFields_R12(OdDbDxfFiler *pFiler) const
OdDb::PolyMeshType polyMeshType() const
virtual OdResult dxfIn(OdDbDxfFiler *pFiler)
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
void setMSurfaceDensity(OdInt16 mSurfaceDensity)
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
void setPolyMeshType(OdDb::PolyMeshType polyMeshType)
OdInt16 nSize() const
OdDbObjectId appendVertex(OdDbPolygonMeshVertex *pVertex, OdDb::Vertex3dType vType=OdDb::k3dSimpleVertex)
OdResult subGetSubentPathsAtGsMarker(OdDb::SubentType type, OdGsMarker gsMark, const OdGePoint3d &, const OdGeMatrix3d &, OdDbFullSubentPathArray &subentPaths, const OdDbObjectIdArray *pEntAndInsertStack) const
bool isMClosed() const
virtual OdResult dxfInFields_R12(OdDbDxfFiler *pFiler)
virtual bool isPlanar() const
OdDbPolygonMeshVertexPtr openVertex(OdDbObjectId vertId, OdDb::OpenMode mode, bool openErasedOne=false)
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
PolyMeshType
Definition: DbPolygonMesh.h:48
@ kSimpleMesh
Definition: DbPolygonMesh.h:49
@ kCubicSurfaceMesh
Definition: DbPolygonMesh.h:51
@ kQuadSurfaceMesh
Definition: DbPolygonMesh.h:50
@ kBezierSurfaceMesh
Definition: DbPolygonMesh.h:52
Vertex3dType
Definition: DbVertex.h:42
@ k3dSimpleVertex
Definition: DbVertex.h:43
Planarity
Definition: DbEntity.h:74
OpenMode
Definition: DbObjectId.h:54