FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcDb3dSolid.h
Go to the documentation of this file.
1#pragma once
2
3//
4// (C) Copyright 2005-2024 by Graebert GmbH.
5//
6// Permission to use, copy, modify, and distribute this software in
7// object code form for any purpose and without fee is hereby granted,
8// provided that the above copyright notice appears in all copies and
9// that both that copyright notice and the limited warranty and
10// restricted rights notice below appear in all supporting
11// documentation.
12//
13// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
14// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
15// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
16// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
17// UNINTERRUPTED OR ERROR FREE.
18
20#include "..\acdb17\AcDb.h"
21#include "..\acad\Acad.h"
22
23template < typename Param1 > class AcArrayMemCopyReallocator;
24template < typename Param1 > class AcArrayObjectCopyReallocator;
25class AcCmColor;
26class AcDbCurve;
27class AcDbEntity;
28class AcDbExtents;
30class AcDbLoftOptions;
31class AcDbObjectId;
32class AcDbRegion;
34class AcDbSubentId;
35class AcDbSurface;
38class AcGeMatrix3d;
39class AcGePlane;
40class AcGePoint3d;
41class AcGeVector3d;
42class AcGiMapper;
44class AcGiWorldDraw;
45class AcRxClass;
46
48{
49public:
51
52 virtual ~AcDb3dSolid(void);
53 virtual bool recordHistory(void)const ;
54 virtual bool showHistory(void)const ;
55 virtual AcDbEntity * subentPtr( AcDbFullSubentPath const &)const ;
56 virtual AcDbSubentId internalSubentId(void *)const ;
57
58 virtual Acad::ErrorStatus booleanOper( AcDb::BoolOperType, AcDb3dSolid *);
59 virtual Acad::ErrorStatus chamferEdges( AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId *> > const &, AcDbSubentId const &,double,double);
60 virtual Acad::ErrorStatus checkInterference( AcDb3dSolid const *,int,int &, AcDb3dSolid * &)const ;
61 virtual Acad::ErrorStatus cleanBody(void);
63 virtual Acad::ErrorStatus copyEdge( AcDbSubentId const &, AcDbEntity * &);
64 virtual Acad::ErrorStatus copyFace( AcDbSubentId const &, AcDbEntity * &);
65 virtual Acad::ErrorStatus createBox(double,double,double);
66 virtual Acad::ErrorStatus createExtrudedSolid( AcDbEntity *, AcDbSubentId const &, AcGeVector3d const &, AcDbSweepOptions &);
67 virtual Acad::ErrorStatus createExtrudedSolid( AcDbEntity *, AcDbSubentId const &,double, AcDbSweepOptions &);
68 virtual Acad::ErrorStatus createExtrudedSolid( AcDbEntity *, AcGeVector3d const &, AcDbSweepOptions &);
69 virtual Acad::ErrorStatus createFrustum(double,double,double,double);
71 virtual Acad::ErrorStatus createPyramid(double,int,double,double);
72 virtual Acad::ErrorStatus createRevolvedSolid( AcDbEntity *, AcDbSubentId const &, AcGePoint3d const &, AcGeVector3d const &,double,double, AcDbRevolveOptions &);
73 virtual Acad::ErrorStatus createRevolvedSolid( AcDbEntity *, AcGePoint3d const &, AcGeVector3d const &,double,double, AcDbRevolveOptions &);
74 virtual Acad::ErrorStatus createSphere(double);
75 virtual Acad::ErrorStatus createSweptSolid( AcDbEntity *, AcDbEntity *, AcDbSweepOptions &);
76 virtual Acad::ErrorStatus createSweptSolid( AcDbEntity *, AcDbSubentId const &, AcDbEntity *, AcDbSweepOptions &);
77 virtual Acad::ErrorStatus createTorus(double,double);
78 virtual Acad::ErrorStatus createWedge(double,double,double);
79 virtual Acad::ErrorStatus extrude( AcDbRegion const *,double,double);
80 virtual Acad::ErrorStatus extrudeAlongPath( AcDbRegion const *, AcDbCurve const *,double=0.0);
81 virtual Acad::ErrorStatus extrudeFaces( AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId *> > const &,double,double);
84 virtual Acad::ErrorStatus getArea(double &)const ;
85 virtual Acad::ErrorStatus getClassID( _GUID *)const ;
86 virtual Acad::ErrorStatus getGsMarkersAtSubentPath( AcDbFullSubentPath const &, AcGeIntArray &)const ;
87 virtual Acad::ErrorStatus getMassProp(double &, AcGePoint3d &,double * const,double * const,double * const, AcGeVector3d * const,double * const, AcDbExtents &)const ;
88 virtual Acad::ErrorStatus getSection( AcGePlane const &, AcDbRegion * &)const ;
89 virtual Acad::ErrorStatus getSlice( AcDbSurface *,bool, AcDb3dSolid * &);
90 virtual Acad::ErrorStatus getSlice( AcGePlane const &, Adesk::Boolean, AcDb3dSolid * &);
91 virtual Acad::ErrorStatus getSubentColor( AcDbSubentId const &, AcCmColor &)const ;
92 virtual Acad::ErrorStatus getSubentMaterial( AcDbSubentId const &, AcDbObjectId &)const ;
93 virtual Acad::ErrorStatus getSubentMaterialMapper( AcDbSubentId const &, AcGiMapper &)const ;
94 virtual Acad::ErrorStatus getSubentPathsAtGsMarker(unsigned long,int, AcGePoint3d const &, AcGeMatrix3d const &,int &, AcDbFullSubentPath * &,int = 0, AcDbObjectId * = nullptr)const ;
95 virtual Acad::ErrorStatus imprintEntity( AcDbEntity const *);
96 virtual Acad::ErrorStatus offsetBody(double);
97 virtual Acad::ErrorStatus offsetFaces( AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId *> > const &,double);
99 virtual Acad::ErrorStatus revolve( AcDbRegion const *, AcGePoint3d const &, AcGeVector3d const &,double);
101 virtual Acad::ErrorStatus setBody(void const *);
102 virtual Acad::ErrorStatus setRecordHistory(bool);
103 virtual Acad::ErrorStatus setShowHistory(bool);
104 virtual Acad::ErrorStatus setSubentColor( AcDbSubentId const &, AcCmColor const &);
105 virtual Acad::ErrorStatus setSubentMaterial( AcDbSubentId const &, AcDbObjectId);
106 virtual Acad::ErrorStatus setSubentMaterialMapper( AcDbSubentId const &, AcGiMapper const &);
107 virtual Acad::ErrorStatus shellBody( AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId *> > const &,double);
108 virtual Acad::ErrorStatus stlOut(wchar_t const *, Adesk::Boolean)const ;
109 virtual Acad::ErrorStatus taperFaces( AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId *> > const &, AcGePoint3d const &, AcGeVector3d const &,double);
111 virtual Acad::ErrorStatus subClose( void );
112 virtual Adesk::Boolean isNull(void)const ;
114 virtual unsigned long numChanges(void)const ;
115 virtual void * body(void)const ;
116 virtual void * internalSubentPtr( AcDbSubentId const &)const ;
117 virtual void list(void)const ;
119 virtual Acad::ErrorStatus createFrom(AcDbEntity const*);
120
123
125
126 virtual void* ASMBodyCopy( bool = false ) const;
127 virtual void const* getLockedASMBody();
128 virtual void unlockASMBody();
129 virtual void* getLockedWritableASMBody();
130 virtual void commitWritableASMBody();
131 virtual Acad::ErrorStatus setASMBody( const void* );
132
135
136};
Acad::ErrorStatus ErrorStatus
Definition acdbabb.h:21
#define ACRX_DECLARE_MEMBERS(classname)
Definition addmacro.h:756
virtual Acad::ErrorStatus shellBody(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, double)
virtual Acad::ErrorStatus getSubentMaterial(AcDbSubentId const &, AcDbObjectId &) const
virtual unsigned long numChanges(void) const
virtual Acad::ErrorStatus setShowHistory(bool)
virtual Acad::ErrorStatus createExtrudedSolid(AcDbEntity *, AcDbSubentId const &, double, AcDbSweepOptions &)
virtual Acad::ErrorStatus stlOut(wchar_t const *, Adesk::Boolean) const
virtual Acad::ErrorStatus createFrom(AcDbEntity const *)
virtual Acad::ErrorStatus createPyramid(double, int, double, double)
virtual Acad::ErrorStatus setSubentMaterial(AcDbSubentId const &, AcDbObjectId)
virtual Acad::ErrorStatus createBox(double, double, double)
virtual Acad::ErrorStatus getSubentPathsAtGsMarker(unsigned long, int, AcGePoint3d const &, AcGeMatrix3d const &, int &, AcDbFullSubentPath *&, int=0, AcDbObjectId *=nullptr) const
virtual Acad::ErrorStatus createRevolvedSolid(AcDbEntity *, AcGePoint3d const &, AcGeVector3d const &, double, double, AcDbRevolveOptions &)
virtual Acad::ErrorStatus setRecordHistory(bool)
virtual Acad::ErrorStatus extrudeAlongPath(AcDbRegion const *, AcDbCurve const *, double=0.0)
virtual AcDbEntity * subentPtr(AcDbFullSubentPath const &) const
virtual Acad::ErrorStatus revolve(AcDbRegion const *, AcGePoint3d const &, AcGeVector3d const &, double)
virtual Acad::ErrorStatus convertToBrepAtSubentPaths(AcArray< AcDbFullSubentPath, AcArrayObjectCopyReallocator< AcDbFullSubentPath > > const &)
virtual Acad::ErrorStatus chamferEdges(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, AcDbSubentId const &, double, double)
virtual Acad::ErrorStatus extrudeFaces(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, double, double)
virtual Acad::ErrorStatus checkInterference(AcDb3dSolid const *, int, int &, AcDb3dSolid *&) const
virtual Acad::ErrorStatus offsetBody(double)
virtual Acad::ErrorStatus getMassProp(double &, AcGePoint3d &, double *const, double *const, double *const, AcGeVector3d *const, double *const, AcDbExtents &) const
virtual Acad::ErrorStatus imprintEntity(AcDbEntity const *)
virtual Acad::ErrorStatus getGsMarkersAtSubentPath(AcDbFullSubentPath const &, AcGeIntArray &) const
virtual Acad::ErrorStatus getSection(AcGePlane const &, AcDbRegion *&) const
virtual Acad::ErrorStatus taperFaces(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, AcGePoint3d const &, AcGeVector3d const &, double)
virtual Acad::ErrorStatus getSubentColor(AcDbSubentId const &, AcCmColor &) const
virtual Acad::ErrorStatus createTorus(double, double)
virtual Acad::ErrorStatus transformFaces(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, AcGeMatrix3d const &)
virtual Acad::ErrorStatus copyFace(AcDbSubentId const &, AcDbEntity *&)
virtual Acad::ErrorStatus getSubentMaterialMapper(AcDbSubentId const &, AcGiMapper &) const
virtual ~AcDb3dSolid(void)
virtual Acad::ErrorStatus booleanOper(AcDb::BoolOperType, AcDb3dSolid *)
virtual Acad::ErrorStatus createExtrudedSolid(AcDbEntity *, AcGeVector3d const &, AcDbSweepOptions &)
virtual Acad::ErrorStatus offsetFaces(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, double)
virtual Acad::ErrorStatus getSlice(AcDbSurface *, bool, AcDb3dSolid *&)
virtual Acad::ErrorStatus cleanBody(void)
virtual Acad::ErrorStatus createSweptSolid(AcDbEntity *, AcDbEntity *, AcDbSweepOptions &)
virtual Acad::ErrorStatus copyEdge(AcDbSubentId const &, AcDbEntity *&)
virtual Acad::ErrorStatus createFrustum(double, double, double, double)
virtual Acad::ErrorStatus setSubentColor(AcDbSubentId const &, AcCmColor const &)
virtual void list(void) const
virtual Acad::ErrorStatus createLoftedSolid(AcDbEntityArray &, AcDbEntityArray &, AcDbEntity *, AcDbLoftOptions &)
virtual Adesk::Boolean worldDraw(AcGiWorldDraw *)
virtual void * body(void) const
virtual Acad::ErrorStatus extrude(AcDbRegion const *, double, double)
virtual Acad::ErrorStatus removeFaces(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &)
virtual Acad::ErrorStatus setSubentMaterialMapper(AcDbSubentId const &, AcGiMapper const &)
virtual Acad::ErrorStatus createRevolvedSolid(AcDbEntity *, AcDbSubentId const &, AcGePoint3d const &, AcGeVector3d const &, double, double, AcDbRevolveOptions &)
virtual Acad::ErrorStatus subClose(void)
virtual Acad::ErrorStatus separateBody(AcArray< AcDb3dSolid *, AcArrayMemCopyReallocator< AcDb3dSolid * > > &)
virtual Acad::ErrorStatus createExtrudedSolid(AcDbEntity *, AcDbSubentId const &, AcGeVector3d const &, AcDbSweepOptions &)
virtual AcDbSubentId internalSubentId(void *) const
virtual Acad::ErrorStatus createSphere(double)
virtual void viewportDraw(AcGiViewportDraw *)
virtual Acad::ErrorStatus createSweptSolid(AcDbEntity *, AcDbSubentId const &, AcDbEntity *, AcDbSweepOptions &)
virtual Acad::ErrorStatus extrudeFacesAlongPath(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, AcDbCurve const *)
virtual bool showHistory(void) const
virtual Acad::ErrorStatus filletEdges(AcArray< AcDbSubentId *, AcArrayMemCopyReallocator< AcDbSubentId * > > const &, AcGeDoubleArray const &, AcGeDoubleArray const &, AcGeDoubleArray const &)
AcDb3dSolid(void)
virtual void * internalSubentPtr(AcDbSubentId const &) const
virtual Acad::ErrorStatus createWedge(double, double, double)
Acad::ErrorStatus createSculptedSolid(AcArray< AcDbEntity *, AcArrayMemCopyReallocator< AcDbEntity * > > const &, AcArray< int, AcArrayMemCopyReallocator< int > > const &)
Acad::ErrorStatus projectOnToSolid(AcDbEntity const *, AcGeVector3d const &, AcArray< AcDbEntity *, AcArrayMemCopyReallocator< AcDbEntity * > > &) const
virtual Acad::ErrorStatus getClassID(_GUID *) const
virtual Adesk::Boolean isNull(void) const
virtual bool recordHistory(void) const
virtual Acad::ErrorStatus getSlice(AcGePlane const &, Adesk::Boolean, AcDb3dSolid *&)
virtual Acad::ErrorStatus setBody(void const *)
virtual Acad::ErrorStatus getArea(double &) const