TouchVG framework
| Public 成员函数 | 静态 Public 成员函数 | Private 类型 | Private 成员函数 | Private 属性 | 所有成员列表
MgRecordShape类 参考

The shape class to record drawing. 更多...

#include <girecordshape.h>

类 MgRecordShape 继承关系图:
Inheritance graph

struct  ICmd
 Interface of recording items. 更多...
 

Public 成员函数

 MgRecordShape ()
 
virtual ~MgRecordShape ()
 
int getCount () const
 
void addItem (const Matrix2d &w2m, ICmd *p)
 
void setRefID (int sid)
 
virtual MgObjectclone () const
 复制出一个新对象 更多...
 
virtual void copy (const MgObject &src)
 复制对象数据 更多...
 
virtual void release ()
 释放引用计数,为0时销毁对象 更多...
 
virtual bool equals (const MgObject &src) const
 比较与另一同类对象是否相同 更多...
 
virtual int getType () const
 返回对象类型 更多...
 
virtual bool isKindOf (int type) const
 返回是否能转化为指定类型的对象,即本类为指定类或其派生类 更多...
 
virtual void clear ()
 清除图形数据 更多...
 
virtual bool draw (int mode, GiGraphics &gs, const GiContext &ctx, int segment) const
 显示图形(mode:0-正常显示,1-选中显示,2-拖动显示) 更多...
 
virtual void output (MgPath &) const
 输出路径 更多...
 
virtual bool save (MgStorage *s) const
 保存图形 更多...
 
virtual bool load (MgShapeFactory *factory, MgStorage *s)
 恢复图形 更多...
 
virtual bool isCurve () const
 返回是否为曲线图形 更多...
 
virtual int getPointCount () const
 返回顶点个数 更多...
 
virtual Point2d getPoint (int) const
 返回指定序号的顶点 更多...
 
virtual void setPoint (int, const Point2d &)
 设置指定序号的顶点坐标,需再调用 update() 更多...
 
virtual float hitTest (const Point2d &, float, MgHitResult &) const
 选中点击测试 更多...
 
- Public 成员函数 继承自 MgBaseShape
 MgBaseShape ()
 
virtual ~MgBaseShape ()
 
long toHandle () const
 得到句柄,用于跨库转换 更多...
 
MgBaseShapecloneShape () const
 复制出一个新图形对象 更多...
 
virtual Box2d getExtent () const
 返回图形模型坐标范围 更多...
 
virtual long getChangeCount () const
 返回改变计数,该数将不永久保存 更多...
 
virtual void resetChangeCount (long count)
 重置改变计数 更多...
 
virtual void afterChanged ()
 update() 或改变图形内容后调用 更多...
 
virtual void update ()
 参数改变后重新计算坐标 更多...
 
virtual void transform (const Matrix2d &mat)
 矩阵变换 更多...
 
virtual void clearCachedData ()
 释放临时数据内存 更多...
 
virtual bool isClosed () const
 返回是否闭合 更多...
 
virtual const Point2dgetPoints () const
 
virtual bool setHandlePoint2 (int index, const Point2d &pt, float tol, int &data)
 设置指定序号的控制点坐标,可以处理拖动状态 更多...
 
float hitTest2 (const Point2d &pt, float tol, Point2d &nearpt, int &segment) const
 选中点击测试,可输出段号 更多...
 
float hitTest2 (const Point2d &pt, float tol, Point2d &nearpt) const
 选中点击测试 更多...
 
virtual bool hitTestBox (const Box2d &rect) const
 框选检查 更多...
 
virtual bool draw2 (const MgObject *owner, int mode, GiGraphics &gs, const GiContext &ctx, int segment) const
 可查询上级图形列表对象的图形显示重载方法 更多...
 
MgPath getPath () const
 返回路径 更多...
 
virtual int getHandleCount () const
 返回控制点个数 更多...
 
virtual Point2d getHandlePoint (int index) const
 返回指定序号的控制点坐标 更多...
 
virtual bool setHandlePoint (int index, const Point2d &pt, float tol)
 设置指定序号的控制点坐标,指定的容差用于比较重合点 更多...
 
virtual bool isHandleFixed (int index) const
 返回指定序号的控制点是否不允许移动 更多...
 
virtual int getHandleType (int index) const
 返回指定序号的控制点类型(MgHandleType) 更多...
 
virtual bool offset (const Vector2d &vec, int segment)
 移动图形, 子段号 segment 由 hitTest() 得到 更多...
 
bool getFlag (MgShapeBit bit) const
 得到图形特征标志位 更多...
 
virtual void setFlag (MgShapeBit bit, bool on)
 设置图形特征标志位 更多...
 
virtual void addRef ()
 添加引用计数 更多...
 
void setExtent (const Box2d &rect)
 设置图形模型坐标范围,供Java等语言代码调用 更多...
 
virtual void setOwner (MgObject *owner)
 设置拥有者图形对象 更多...
 
virtual int getSubType () const
 子类型,由具体图形类解释含义 更多...
 
bool isVisible () const
 返回是否可见 更多...
 
bool isLocked () const
 返回是否锁定 更多...
 
- Public 成员函数 继承自 MgObject
MgObjectoperator= (const MgObject &src)
 
bool operator== (const MgObject &src) const
 
bool operator!= (const MgObject &src) const
 

静态 Public 成员函数

static MgRecordShapecreate ()
 
static int Type ()
 
- 静态 Public 成员函数 继承自 MgBaseShape
static int Type ()
 返回本对象的类型 更多...
 
static TolminTol ()
 返回缺省小容差,用于计算包络框等 更多...
 
static float linesHit (int n, const Point2d *points, bool closed, const Point2d &pt, float tol, MgHitResult &res)
 计算点到折线或多边形的最近距离 更多...
 
- 静态 Public 成员函数 继承自 MgObject
template<class T >
static void release_pointer (T *&p)
 

Private 类型

typedef std::vector< ICmd * > ITEMS
 

Private 成员函数

void _clear ()
 
ICmdcreateItem (int type) const
 

Private 属性

ITEMS _items
 
int _sid
 

额外继承的成员函数

- Protected 成员函数 继承自 MgBaseShape
bool _isClosed () const
 
void _copy (const MgBaseShape &src)
 
bool _equals (const MgBaseShape &src) const
 
bool _isKindOf (int type) const
 
Box2d _getExtent () const
 
void _update ()
 
void _transform (const Matrix2d &mat)
 
void _clear ()
 
void _clearCachedData ()
 
bool _hitTestBox (const Box2d &rect) const
 
int _getHandleCount () const
 
Point2d _getHandlePoint (int index) const
 
bool _setHandlePoint (int index, const Point2d &pt, float tol)
 
bool _setHandlePoint2 (int index, const Point2d &pt, float tol, int &data)
 
bool _isHandleFixed (int) const
 
int _getHandleType (int) const
 
bool _offset (const Vector2d &vec, int segment)
 
bool _rotateHandlePoint (int index, const Point2d &pt)
 
bool _draw (int, GiGraphics &, const GiContext &, int) const
 
bool _save (MgStorage *s) const
 
bool _load (MgShapeFactory *factory, MgStorage *s)
 
- Protected 成员函数 继承自 MgObject
virtual ~MgObject ()
 
- Protected 属性 继承自 MgBaseShape
Box2d _extent
 
union {
   int   _flags
 
   struct {
      int   _flagSquare:1
 
      int   _flagClosed:1
 
      int   _flagFixedLength:1
 
      int   _flagFixedSize:1
 
      int   _flagRotateDisnable:1
 
      int   _flagShapeLocked:1
 
      int   _flagNoSnap:1
 
      int   _flagNoAction:1
 
      int   _flagNoClone:1
 
      int   _flagHide:1
 
      int   _flagNoDel:1
 
      int   _flagCanSelLocked:1
 
      int   _flagNotAddRel:1
 
      int   _flagNotShowSnap:1
 
      int   _flagCanAddVertex:1
 
   }   _bits
 
}; 
 
long _changeCount
 

详细描述

The shape class to record drawing.


该类的文档由以下文件生成:

通用矢量图形框架, 版权所有 (C) 张云贵 2004-2017,BSD 开源许可证