Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Auxiliary classes

autocad en


Auxiliary classes

These classes are common for all parts of the standard framework. Most of them are not database-resident objects.

Family of AcmCAuxEntities

This is the common base class for all sub-entities. The class defines the minimum common interface fo 18418n138s r sub-entities to use it to fulfill their responsibilities. That means if we want to add another responsibility, we can just add another member function here with its default behavior.



(Notice we are not going to hide data for these classes. This is because they are not saved in a drawing and so there is not a strong requirement to fix these across later releases.)

Constructing and Initializing

AcmCAuxEntity();

AcmCAuxEntity(const AcmCAuxEntity& src);

virtual ~AcmCAuxEntity();

virtual const AcmCAuxEntity& operator = (const AcmCAuxEntity& src);

virtual AcmCAuxEntity* clone() const;

virtual AcmCAuxEntity::Type type () const=0

Properties

virtual void setProperties(const AcDbObjectId& id,Adesk::Int16 color = -1);

There are two common properties: color and line Id. The color of -1 means no color at all. The color of this sub-entity is then controlled by the caller's Entity Traits.

AcDbObjectId ltypeId() const;

virtual void setLtypeId(const AcDbObjectId& id);

Receives or sets a line Id of sub-entity.

Adesk::Int16 color() const;

virtual void setColor(Adesk::Int16 col);

Receives or sets a color number of sub-entity.

This release introduces new methods for supporting line weights. No change required for current applications.

AcDb::LineWeight lineWeight() const;

virtual void setLineWeight(const AcDb::LineWeight wgh);

Used to control line weights for the display list entity.

Currently Supported Responsibilities

virtual Acad::ErrorStatus getGeomExtents(AcDbExtents& extents) const = 0;

virtual Acad::ErrorStatus transformBy(const AcGeMatrix3d& xform) = 0;

virtual Acad::ErrorStatus explode(AcDbVoidPtrArray& entitySet, const AcDbEntity*) const = 0;

virtual Adesk::Boolean worldDraw(AcGiWorldDraw* mode) = 0;

virtual void viewportDraw(AcGiViewportDraw* mode) = 0;

virtual Acad::ErrorStatus getOsnapPoints(AcDb::OsnapMode osnapMode,

const AcGePoint3d& pickPoint,const AcGePoint3d& lastPoint,

const AcGeMatrix3d& viewXform,AcGePoint3dArray& snapPoints,AcDbIntArray& geomIds) const;

virtual Acad::ErrorStatus intersectWith(const AcDbEntity* ent,

AcDb::Intersect intType, AcGePoint3dArray& points,

int entGsMarker = 0) const;

virtual Acad::ErrorStatus intersectWith(const AcDbEntity* ent,

AcDb::Intersect intType, const AcGePlane& projPlane,

AcGePoint3dArray& points, int entGsMarker = 0) const;

Existing Child Classes

There are several sub-entity classes implemented at this time: AcmCAuxPline for multiple segment lines, AcmCAuxPolygon for closed multiple segment lines, AcmCAuxCircle for general circles, AcmCAuxArc for general planar arcs, AcmCAuxText for general text and AcmCAuxHatch for machinery hatches composed from lines only. The last sub-entity class is AcmCAuxEntArray, which works the same way as AcDbVoidPtrArray, but holds typed pointers for AcmCAuxEntity.

Dialog Support Classes

Some of these classes are used to transfer data that is used in many different dialogs.

AcmCDesc

This class and its successors (AcmCArrowDesc, AcmCSymbolDesc, AcmCGDTSymbolDesc) are used to transfer symbol dialog descriptors. It is its bitmap and description. Some of them use the internal integer variable for storing their private data.

CPreferencePage

CVarDlgInfo

This class is used to control the appearance of the dialog for various symbols including surface texture and welding.

Adesk::UInt32 helpIndex() const;

void setHelpIndex(Adesk::UInt32 hlpIdx);

Sets or receives a help id to be used to get context-sensitive help for the current variable.

Adesk::UInt16 dlgIndex() const;

void setDlgIndex(Adesk::UInt16 dlgIdx);

Sets or receives an index being used to edit the specified data in the dialog. Please note that the type has changed from Adesk::UIInt8 to Adesk::UIInt16 as of this release. If you use this class in your applications, you'll need to recompile and relink them.

LPCTSTR tooltip() const;

void setTooltip(LPCTSTR str);

Sets or receives a string specifying a tool tip string.

LPCTSTR label() const;

void setLabel(LPCTSTR str);

Sets or receives a string specifying the label to be used for the current variable.

CStringList& suggested() const;

void setSuggested(const CStringList& list);

Adesk::Boolean isSuggested() const;

Sets or receives the list of suggested values for the specified variable. Dialog implementation may use it to display important values to users.

Templates

There are several template classes available through the Standard that may be helpful for developers. This document will not describe them in detail, since they are exposed completely within the source code (in the file AcmDef.h.)

Template <class TClass> class AcmCObjPtrArray

This class provides a typed array version of AcDbVoidPtrArray, so that you can use just at() or [] and don't need to specify the type each time the members are accessed.

Template <class TClass> class AcmCObjArray

This class provides a typed array version of AcDbVoidPtrArray, which frees all its content together with it. It means you can just put new objects there and the used memory will be released when those objects are no longer used.


Document Info


Accesari: 1390
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )