AcDbBody

 

AcDbBody类用于表示与非AcDb3dSolidAcDbRegion类特性不匹配的隐性实体(nonmanifold solid)及其他ACIS实体。

一个AcDbRegion实体是一个作为实际的实体几何表示的ACIS对象的一个容器和接口。

 

继承自

AcDbEntity

 

包含文件

dbbody.h

 

参见

AcDbVoidPtrArray, AcDb3dSolid

 

成员

 

AcDbBody ACIS Filing函数

AcDbBody::acisIn 函数

static Acad::ErrorStatus

acisIn(

const char * fileName,

AcDbVoidPtrArray& ptr);

fileName

输入读入的ASCII ACIS SAT文件的文件名

ptr

返回指向表示读入的文件中的对象的AcDbEntities的指针

此静态方法从文件名为fileNameASCII ACIS SAT文件中读入所有的ACIS实体,创建AcDbLIne, AcDbCircle, AcDbArc, AcDbEllipse, AcDbSpline, AcDbRegion, AcDb3dSolid,AcDbBody对象,并在ptr中储存新创建的AcDb对象。

注意:新创建的AcDb对象不增加至一个AcDbDatabase中,因此调用的应用程序负责增加它们至一个数据库并在不需要时将它们从内存中删除。

如果成功返回Acad::eOk

如果fileName==NULL,返回Acad::eInvalidInput

如果打开fileName时出现问题,返回Acad::eFileAccessErr

如果读取ACIS文件时出现问题,则返回Acad::eGeneralModelingFailure

 

AcDbBody::acisOut 函数

static Acad::ErrorStatus

acisOut(

const char * fileName,

const AcDbVoidPtrArray& unnamed);

fileName

输入要写入数据的文件名

unnamed

输入包含指向要被写入文件的所有AcDbEntities实体的指针的数组

此静态方法将ptr数组中的所有ACIS实体写出至fileName文件中。ptr数组可能包含任何类型的类型,但只有AcDbRegion, AcDb3dSolid, AcDbBody类或从这些类派生的对象被写入文件中。生成的文件是一个ASCII ACIS SAT格式的文件。

如果成功返回Acad::eOk,如果不成功则返回Acad::eGeneralModelingFailure

 

AcDbBody建构器或析构器

AcDbBody::~AcDbBody 函数

virtual

~AcDbBody();

析构器。

 

AcDbBody::AcDbBody 函数

AcDbBody();

默认建构器。初始化改变计数至0isNullAdesk::kTrue

 

AcDbBody编辑函数

AcDbBody::setBody 函数

virtual Acad::ErrorStatus

setBody(

const void* modelerBody);

modelerBody

指向一个ACIS对象

设置此AcDbBody对象使用modelerBody指向的ACIS对象。modelerBody指针不能为NULL且应指向一个有效的ACIS对象,这个对象同时也是一个有效的实体。

此函数与空间技术的ACIS访问API一起使用。

如果成功返回Acad::eOk,如果modelerBodyNULL或指向一个无效的对象则返回Acad::eInvalidInput

 

AcDbBody杂项函数

AcDbBody::getGsMarkersAtSubentPath 函数

virtual Acad::ErrorStatus

getGsMarkersAtSubentPath(

const AcDbFullSubentPath& subPath,

AcDbIntArray& gsMarkers) const;

subPath

未说明

gsMarkers

未说明

Description to come

 

AcDbBody::list 函数

virtual void

list() const;

Description to come

 

AcDbBody::subentPtr 函数

virtual AcDbEntity *

subentPtr(

const AcDbFullSubentPath& id) const;

id

未说明

Description to come

 

AcDbBody查询函数

AcDbBody::body 函数

virtual void *

body() const;

返回指向此AcDbBody对象的ACIS对象的一个void指针。如果没有与AcDbBody对象关联的ACIS对象,则返回NULL

此函数与空间技术的ACIS访问API一起使用。

 

AcDbBody::getSubentPathsAtGsMarker 函数

virtual Acad::ErrorStatus

getSubentPathsAtGsMarker(

AcDb::SubentType type,

int gsMark,

const AcGePoint3d& pickPoint,

const AcGeMatrix3d& viewXform,

int& numPaths,

AcDbFullSubentPath*& subentPaths,

int numInserts = 0,

AcDbObjectId* entAndInsertStack = NULL) const;

type

未说明

gsMark

未说明

pickPoint

未说明

viewXform

未说明

numPaths

未说明

subentPaths

未说明

numInserts

未说明

entAndInsertStack

未说明

对于AcDbBody类,此方法不使用pickPointviewXform参数。

关于此函数如何工作和参数定义的信息,参见AcDbEntity::getSubentPathsAtGsMarker

 

AcDbBody::internalSubentId 函数

virtual AcDbSubentId

internalSubentId(

void* pEnt) const;

pEnt

指向一个ACIS对象的指针

pEnt中返回一个ACIS实体的子实体ID

此函数与空间技术的ACIS访问API一起使用。

 

AcDbBody::internalSubentPtr 函数

virtual void *

internalSubentPtr(

const AcDbSubentId& id) const;

id

要返回的ACIS对象中的一个子实体的ID

id中返回指向ACIS对象的子实体ID的一个void指针。

此函数与空间技术的ACIS访问API一起使用。

 

AcDbBody::isNull 函数

virtual Adesk::Boolean

isNull() const;

如果此AcDbBody中没有ACIS对象则返回Adesk::kTrue

 

AcDbBody::numChanges 函数

virtual Adesk::UInt32

numChanges() const;

返回从此AcDbBody创建起对它发生的修改的数量。