47 lines
1.3 KiB
C++
47 lines
1.3 KiB
C++
//-----------------------------------------------------------------------------+
|
|
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
|
|
// = FileName : TBlockGeomInfo.h
|
|
// = Version : ver2.0
|
|
// = Author : xlc
|
|
// = CreateDate : 2002-09-09
|
|
// = Description: 图块几何信息类的声明
|
|
// = Maintainers:
|
|
//
|
|
//-----------------------------------------------------------------------------+
|
|
#ifndef _TBLOCKGEOMINFO_H_
|
|
#define _TBLOCKGEOMINFO_H_
|
|
|
|
#ifndef _TADSGEPOINT3D_H_
|
|
#include "TADSGePoint3d.h"
|
|
#endif
|
|
|
|
class GEOAPI TBlockGeomInfo
|
|
{
|
|
public:
|
|
TBlockGeomInfo();
|
|
virtual ~TBlockGeomInfo();
|
|
|
|
double GetSizeX() const;
|
|
double GetSizeY() const;
|
|
double GetSizeZ() const;
|
|
double GetRotation() const;
|
|
TADSGePoint3d GetCenter() const;
|
|
|
|
// 取得四个角点
|
|
TADSGePoint3d GetLowLeft() const;
|
|
TADSGePoint3d GetLowRight() const;
|
|
TADSGePoint3d GetUpRight() const;
|
|
TADSGePoint3d GetUpLeft() const;
|
|
void GetPolyline(AcDbPolyline &pline) const;
|
|
Acad::ErrorStatus CalInsertParameters(const AcDbBlockReference *pBlk, TADSGePoint3d &ptBase, double *nRot, double *nSx, double *nSy, double *nSz) const;
|
|
|
|
void SetFromInsert(const AcDbBlockReference *pInsert);
|
|
void UpdateInsert(AcDbBlockReference *pInsert) const;
|
|
|
|
public:
|
|
TADSGePoint3d m_ptCen; //底面中心
|
|
double m_nRotation;
|
|
double m_nSizeX, m_nSizeY, m_nSizeZ;
|
|
};
|
|
|
|
#endif |