/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2016, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Teigha(R) software pursuant to a license // agreement with Open Design Alliance. // Teigha(R) Copyright (C) 2002-2016 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// #ifndef _DbBlockActionEntities_h_Included_ #define _DbBlockActionEntities_h_Included_ #include "TD_PackPush.h" #include "DbBlockElementEntity.h" #include "../DbBlockAction.h" class OdDbBlock1PtParameter; /** \details This class implements the OdDbBlockActionEntity object in the database. */ class DYNBLOCKS_EXPORT OdDbBlockActionEntity: public OdDbBlockElementEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockActionEntity); OdGePoint3d displayLocation() const; void setDisplayLocation( const OdGePoint3d& ); virtual void subViewportDraw(OdGiViewportDraw* pVd) const ODRX_OVERRIDE; virtual OdResult subTransformBy(const OdGeMatrix3d& xfm) ODRX_OVERRIDE; virtual OdResult subGetGripPoints( OdGePoint3dArray& gripPoints ) const ODRX_OVERRIDE; virtual OdResult subMoveGripPointsAt(const OdIntArray& indices,const OdGeVector3d& offset ) ODRX_OVERRIDE; virtual void subHighlight(bool bDoIt = true, const OdDbFullSubentPath* pSubId = 0, bool highlightAll = false) const; }; /** \details The typified smart pointer for the object. This template class is specialization of the OdSmartPtr class for the OdDbBlockActionEntity class. \sa */ typedef OdSmartPtr OdDbBlockActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockMoveActionEntity : public OdDbBlockActionEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockMoveActionEntity); //double angleOffset(); //double distanceMultiplier(); //OdDbBlockActionXYType distanceType(); //void setAngleOffset(double); //void setDistanceMultiplier(double); //void setDistanceType(OdDbBlockActionXYType); protected: OdDbBlockMoveActionEntity(); }; typedef OdSmartPtr OdDbBlockMoveActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockStretchActionEntity : public OdDbBlockActionEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockStretchActionEntity); //double angleOffset()const; //double distanceMultiplier()const; //OdDbBlockActionXYType distanceType()const; //void setAngleOffset(double); //void setDistanceMultiplier(double); //void setDistanceType(OdDbBlockActionXYType); void setStretchFrame(const OdGePoint2dArray&); OdGePoint2dArray stretchFrame() const; protected: virtual void subViewportDraw(OdGiViewportDraw* pVd) const ODRX_OVERRIDE; void subHighlight(bool bDoIt, const OdDbFullSubentPath* pSubId, bool highlightAll) const ODRX_OVERRIDE; virtual OdResult subGetGripPoints( OdGePoint3dArray& gripPoints ) const ODRX_OVERRIDE; virtual OdResult subMoveGripPointsAt(const OdIntArray& indices,const OdGeVector3d& offset ) ODRX_OVERRIDE; OdDbBlockStretchActionEntity(); }; typedef OdSmartPtr OdDbBlockStretchActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockPolarStretchActionEntity : public OdDbBlockActionEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockPolarStretchActionEntity); void setStretchFrame(const OdGePoint2dArray&); OdGePoint2dArray stretchFrame() const; protected: virtual void subViewportDraw(OdGiViewportDraw* pVd) const ODRX_OVERRIDE; void subHighlight(bool bDoIt, const OdDbFullSubentPath* pSubId, bool highlightAll) const ODRX_OVERRIDE; virtual OdResult subGetGripPoints( OdGePoint3dArray& gripPoints ) const ODRX_OVERRIDE; virtual OdResult subMoveGripPointsAt(const OdIntArray& indices,const OdGeVector3d& offset ) ODRX_OVERRIDE; OdDbBlockPolarStretchActionEntity(); }; typedef OdSmartPtr OdDbBlockPolarStretchActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockArrayActionEntity : public OdDbBlockActionEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockArrayActionEntity); //double columnOffset() const; //double rowOffset() const; //void setColumnOffset(double); //void setRowOffset(double); protected: OdDbBlockArrayActionEntity(); }; typedef OdSmartPtr OdDbBlockArrayActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockFlipActionEntity : public OdDbBlockActionEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockFlipActionEntity); protected: OdDbBlockFlipActionEntity(); }; typedef OdSmartPtr OdDbBlockFlipActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockLookupActionEntity : public OdDbBlockActionEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockLookupActionEntity); protected: OdDbBlockLookupActionEntity(); }; typedef OdSmartPtr OdDbBlockLookupActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockActionWithBasePtEntity : public OdDbBlockActionEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockActionWithBasePtEntity); OdGePoint3d basePoint() const; OdGeVector3d basePointOffset() const; bool dependent() const; void setBasePoint(OdGePoint3d const &); void setBasePointOffset(OdGeVector3d const &); void setDependent(bool); protected: virtual void subViewportDraw(OdGiViewportDraw* pVd) const ODRX_OVERRIDE; virtual OdResult subTransformBy(const OdGeMatrix3d& xfm) ODRX_OVERRIDE; virtual OdResult subGetGripPoints( OdGePoint3dArray& gripPoints ) const ODRX_OVERRIDE; virtual OdResult subMoveGripPointsAt(const OdIntArray& indices,const OdGeVector3d& offset ) ODRX_OVERRIDE; OdDbBlockActionWithBasePtEntity(); }; typedef OdSmartPtr OdDbBlockActionWithBasePtEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockScaleActionEntity : public OdDbBlockActionWithBasePtEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockScaleActionEntity); //OdDbBlockActionXYType scaleType(); //void setScaleType( OdDbBlockActionXYType ); protected: OdDbBlockScaleActionEntity(); }; typedef OdSmartPtr OdDbBlockScaleActionEntityPtr; class DYNBLOCKS_EXPORT OdDbBlockRotateActionEntity : public OdDbBlockActionWithBasePtEntity { public: ODDB_DECLARE_MEMBERS(OdDbBlockRotateActionEntity); OdDbBlockRotateActionEntity(); }; typedef OdSmartPtr OdDbBlockScaleActionEntityPtr; #include "TD_PackPop.h" #endif