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




Balloon

autocad en


Balloon

The balloon portion of the Standard Framework contains the AcmBOMStd and AcmCBalloonStd classes for standard parts and the AcmBalloon symbol. The symbol contains one sub-symbol - AcmCBalloon. For a description of AcmBOMStd see the previous chapter. This symbol is dependent on the item it is associated with.

AcmCBalloonStd

This class is responsible for balloon symbols. It contains services for different types of balloons. The class has the following successors: AcmCBalloonStdANSI, AcmCBalloonStdBS, AcmCBalloonStdDIN, AcmCBalloonStdISO, AcmCBalloonStdJ 10310q1611k IS, and AcmCBalloonStdGB, which implement standard-specific variations.



Several new methods have been introduced here. No change required for existing applications.

double sizeFactor() const;

void setSizeFactor(double sizeFactor);

Controls the setting for the default balloon service's scale factor. You can use this to change the text size / balloon size ratio (make the balloon relatively smaller compared to the text size).

double horizDistance() const;

void setHorizDistance(double horDist);

Controls the setting for the default balloon service. For description, see setHorizDistance above.

double vertDistance() const;

void setVertDistance(double verDist);

Controls the setting for the default balloon service. For description, see setVertDistance above.

LPCTSTR pattern() const;

void setPattern(LPCTSTR pattern);

Controls the setting for the default balloon service. For description, see setPattern above.

LPCTSTR pattern2() const;

void setPattern2(LPCTSTR pattern);

Controls the setting for the default balloon service, if it has two display fields. The behavior is same as setPattern above.

AcmCBalloonStd(AcmBOMStd *std);

virtual ~AcmCBalloonStd();

AcmBOMStd* getBOMStandard() const;

Acm::ArrowType arrow() const;

void setArrow(Acm::ArrowType type);

Acm::ArrowType auxArrow() const;

void setAuxArrow(Acm::ArrowType type);

void setAuxUsing(bool use);

bool isAuxUsed() const;

Acm::BalloonType defaultBalloonType() const;

void setDefaultBalloonType(Acm::BalloonType type);

Adesk::UInt16 color() const;

void setColor(Adesk::UInt16 color);

double textHeight() const;

void setTextHeight(double height);

Custom Block Interface

virtual bool setUserType (LPCTSTR blkName );

virtual bool setUserTypeId(const AcDbObjectId& btrId);

virtual LPCTSTR userType() const;

virtual Acm::BalloonAttachType attachType() const;

virtual void setAttachType(Acm::BalloonAttachType type);

General Interface

This part of the interface covers most of the member functions from the AcmSymbolStd interface, even if the class is not inherited from it. Most of them are called from the AcmBOMStd when it receives the call.

virtual void initToEditOriginal();

virtual void initToEdit();

virtual Adesk::Boolean edit(CWnd* parentWindow = NULL);

virtual Acm::ErrorStatus getRevision(CString& rev, Adesk::UInt16& year) const;

virtual void getSubEnts(const AcmCBalloon* pSymb,

AcmCAuxEntArray& subents) const;

virtual Acm::ErrorStatus cInit();

virtual Adesk::Boolean setFactoryDefaults();

virtual Adesk::Boolean getDesc(AcmCObjArray<AcmCSymbolDesc>& list) const;

virtual Adesk::Boolean getBalloonArrowDesc(AcmCObjArray<AcmCArrowDesc>& list,

Adesk::Boolean allSrv=Adesk::kFalse) const;

virtual Acm::ErrorStatus onChangeUnits(Adesk::Boolean isMetric);

Balloon Service Interface

This part of interface deals with the balloon services.

Adesk::Boolean registerService(AcmCBalloonService* pNewServ);

This member function registers new balloon services. It also takes over the ownership of the allocated memory, so that users must not delete the service object once it is registered. The balloon standard takes care of deleting all service objects.

AcmCBalloonService* getService(Acm::BalloonType type) const;

AcmCBalloonService* serviceAt(Adesk::UInt32 at) const;

Gets the service object, based on the index and balloon type. It is mainly used in the getSubEnts call.

Adesk::UInt32 numOfServices() const;

Returns the number of services registered in the standard.

Adesk::Boolean removeService(Acm::BalloonType type);

Adesk::Boolean removeServiceAt(Adesk::UInt32 at);

Removes the service registered in the standard.

AcDbObject Interface

This is the basic AcDbObject interface that allows you to save and restore the standard object.

virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler* filer, Adesk::UInt16 ver);

virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler* filer) const;

virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler* filer);

virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler* filer) const;

AcmCBalloonService

This is the parent virtual class, used to implement new balloon services.

virtual void getSubEnts(const AcmCBalloon* pData,

AcmCAuxEntArray& subEnts) const;

This is the main member function used to get the sub-entities for the balloon. It calls getSubEntsSingle for each item saved in balloon. The balloon sub-entities are moved to the right place according to the leader direction. Custom balloon objects do not need to overload the member function if this is the acceptable way to collect balloons.

virtual void getSubEntsSingle(const AcmCBalloon* pData,

AcmCAuxEntArray& subEnts,

int index = 0) const = 0;

Gets the sub-entities for the single item. The index is the index in the list of items.

virtual Acm::BalloonType type() const = 0;

Returns the type of the balloon. This member function has to be used with care, because user-implemented balloon types may use the same type.

virtual Adesk::Int16 maxNumber() const = 0;

Returns the maximum number of columns that may be displayed by the service.

virtual void setColumnList(const AcDbIntArray& lst) = 0;

virtual void getColumnList(AcDbIntArray& lst) const = 0;

Sets or gets the list of the column indexes to be used to properly display the balloon.

virtual Adesk::Boolean removeColumnByIdx(Adesk::Int16 idx) = 0;

This member function is called by AcmCBalloonStd when attempting to remove the column. If the column is used in any balloon service, the member function will return false and the column will not be removed. A similar member function exists in the AcmCpartListStd.

virtual double radius(AcmBalloon* , const AcGeVector3d& direction) const = 0;

Returns the radius of the given balloon shape in the given direction.

virtual void recalcPoint(const AcmCBalloon* pSubSym,

const AcGePoint3d& ptLea,

AcGePoint3d& ptEnd) const = 0;

Calculates the last point of the leader. The end point of the leader is the center point of the balloon. In cases where the balloon creates the geometry, the service should recalculate it and return it to the caller.

Several new methods have been introduced in this release. No change required for existing applications.

virtual double horizDistance() const = 0;

virtual void setHorizDistance(double horDist) = 0;

These control the horizontal distance for the balloon. They are used for creating multiple balloons, or for reorganizing balloons. The next balloon is always placed at the specified horizontal distance away from the existing balloon.. It is used if the multiple balloons are placed horizontally aligned.

virtual double vertDistance() const = 0;

virtual void setVertDistance(double verDist) = 0;

These have same meaning as horizDistance above, but pertain to vertical instead of horizontal alignment.

virtual LPCTSTR pattern() const = 0;

virtual void setPattern(LPCTSTR pattern) = 0;

This change is similar to the one made for equivalents. Formerly, you could use only a column's value in a balloon. So if you want to display something else, for example 'Part: PART1,' you had to create a new column, copy the content, update it and change the column displayed in the service. This is no longer necessary. Just set the pattern used to display the balloon to '=Part: <name>' and you'll get the desired result without having to create new columns.

General Interface

virtual void getDesc(AcmCSymbolDesc& pHan) const = 0;

virtual Adesk::Boolean setFactoryDefaults() = 0;

virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler* filer, Adesk::UInt16 ver) = 0;

virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler* filer) const = 0;

virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler* filer) = 0;

virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler* filer) const = 0;

AcmCBalloon

This sub-symbol doesn't have an extended interface implemented. It is inherited from AcmCSubSymbol.

virtual AcDbObjectIdArray rowIds() const = 0;

virtual void getRowIds(AcDbObjectIdArray& rowIds) const = 0;

virtual void setRowIds(const AcDbObjectIdArray& rowIds) = 0;

Sets and gets the list of items with which the balloon is associated.

virtual Acm::BalloonType type() const = 0;

virtual void setType(const Acm::BalloonType type) = 0;

Sets or gets the balloon type.

virtual Acm::BalloonCollectionType collectionType() const = 0;

virtual void setCollectionType(const Acm::BalloonCollectionType bct) = 0;

Sets or get the collection type. It can be kHorizontal or kVertical.

virtual Acm::Direction leaderDirection() const = 0;

Gets the leader direction. It can be kToTop, kToBottom, kToLeft, or kToRight, depending on the quadrant the leader is pointing to.

Custom Block Interfacevirtual bool setUserTypeId(const AcDbObjectId& btrId) = 0;

virtual AcDbObjectId userTypeId() const = 0;Sets and gets the custom block Id used to display the current balloon. The block must exist in the current drawing, otherwise it will not be displayed.

virtual bool setUserType(LPCTSTR blkName) = 0;

virtual LPCTSTR userType() const = 0;

Sets and gets custom block name

virtual Acm::BalloonAttachType attachType() const = 0;

virtual void setAttachType(Acm::BalloonAttachType type) = 0;

Sets or gets the type of balloon attachment which control where the leader tip point is pointing to.


Document Info


Accesari: 1470
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 )