82 lines
3.0 KiB
C++
82 lines
3.0 KiB
C++
#ifndef __DB_POLYPATHARRAY_H
|
|
#define __DB_POLYPATHARRAY_H
|
|
//#include "DbPolyCurveEnt.h"
|
|
|
|
#define RF_EQUALSCALE 0x01//使用Y向比例
|
|
#define RF_AUTOEXPAND 0x02//等比时有效
|
|
#define RF_RIGHTBASE 0x04
|
|
#define RF_MIDBASE 0x08
|
|
#define RF_REVERSE 0x10
|
|
|
|
//路径排列(线图案)
|
|
class TARCH_EXP TDbPolyPathArray: public TDbPolyCurveEnt
|
|
{
|
|
DECLARE_TENTBASE();
|
|
ACRX_DECLARE_MEMBERS(TDbPolyPathArray);
|
|
private:
|
|
const static Adesk::UInt8 g_nVersion;
|
|
protected:
|
|
AcDbHardPointerId m_idUnit; //自定义扶手
|
|
double m_nUnitHeight;//单元高
|
|
double m_nRatio;//填充比例
|
|
Adesk::UInt8 m_nRailFlag; //单元对齐方式
|
|
public:
|
|
TDbPolyPathArray();
|
|
virtual BOOL IsValid() const;
|
|
virtual bool IsModelEntity() const{return true;}
|
|
virtual void CopyPropertiesFrom(AcDbEntity *pSrcEntity, unsigned gMatchFlag);
|
|
virtual int GetFirstVersion()const{return 7;}//ok
|
|
|
|
// Overriden function from AcDbEntity
|
|
virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const;
|
|
virtual Acad::ErrorStatus dwgInFields (AcDbDwgFiler*);
|
|
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler*) const;
|
|
virtual Acad::ErrorStatus dxfInFields (AcDbDxfFiler*);
|
|
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler*) const;
|
|
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d&mat);//ok
|
|
virtual Acad::ErrorStatus subGetOsnapPoints(
|
|
AcDb::OsnapMode osnapMode,
|
|
INT_PTR gsSelectionMark,
|
|
const AcGePoint3d& pickPoint,
|
|
const AcGePoint3d& lastPoint,
|
|
const AcGeMatrix3d& viewXform,
|
|
AcGePoint3dArray& snapPoints,
|
|
AcDbIntArray& geomIds) const;
|
|
|
|
virtual Acad::ErrorStatus subGetOsnapPoints(
|
|
AcDb::OsnapMode osnapMode,
|
|
INT_PTR gsSelectionMark,
|
|
const AcGePoint3d& pickPoint,
|
|
const AcGePoint3d& lastPoint,
|
|
const AcGeMatrix3d& viewXform,
|
|
AcGePoint3dArray& snapPoints,
|
|
AcDbIntArray& geomIds,
|
|
const AcGeMatrix3d& insertionMat) const;
|
|
|
|
// drived from TDbEntity
|
|
virtual DrawType GetDrawType() const;
|
|
virtual const TCHAR *GetDefaultLayer() const;
|
|
virtual Acad::ErrorStatus ExplodeOrDraw2d(XExplodeDraw &dc) const;
|
|
virtual void GetTips(DList<TObjInfoUnit> &) const; //取动态属性显示数据
|
|
|
|
double GetUnitWidth() const;
|
|
double GetUnitHeight()const;
|
|
double GetRatio()const;
|
|
double GetScaleY()const;
|
|
BOOL IsAutoExpand() const;
|
|
BOOL IsEqualScale()const;
|
|
BOOL IsReversed()const;
|
|
int GetBaseType()const;
|
|
AcDbObjectId GetUnitId() const;
|
|
|
|
void SetBaseType(int type=0);//0,左,1,右,2,中
|
|
void SetUnitHeight(double h);
|
|
void SetRatio(double r);
|
|
void SetUnitId(AcDbObjectId id);
|
|
void SetAutoExpand(BOOL bTrue);
|
|
void SetEqualScale(BOOL bTrue);
|
|
void Reverse();
|
|
};
|
|
|
|
|
|
#endif |