一、增加自定义实体对象
调用DrawCustomEntity函数,绘制一个自定义实体对象。
下面代码绘制一个自定义实体,C#代码实现如下:
private void DrawMlineCommand()
|
js代码实现如下:
//绘制自定义实体
|
//绘制自定义实体1
|
二、响应自定义事件,绘制自定义实体
需要响应DMxDrawXEvents::CustomEntity_Explode事件。
下面例子,得到自实体的数据,C#代码实现如下:
private void axMxDrawX1_CustomEntity_Explode(object sender, AxMxDrawXLib._DMxDrawXEvents_CustomEntity_ExplodeEvent e)
|
js代码实现如下:
// 自定义实体绘制函数
|
三、响应自定义事件,动态绘制
C#代码实现如下:
private void axMxDrawX1_DynWorldDraw(object sender, AxMxDrawXLib._DMxDrawXEvents_DynWorldDrawEvent e)
|
js代码实现如下:
//动态施放绘制事件回调函数指针
|
四、响应自定义事件,返回自定义实体夹点
需要响应_DMxDrawXEvents::CustomEntity_getGripPoints事件,C#代码实现如下:
private void axMxDrawX1_CustomEntity_getGripPoints(object sender, AxMxDrawXLib._DMxDrawXEvents_CustomEntity_getGripPointsEvent e)
|
js代码实现如下:
// 返回自定义实体夹点
|
五、响应自定义事件,夹点移动后的处理
需要响应CustomEntity_moveGripPointsAt事件。
下面例子,夹点移动后,修改自定义实体的属性,C#代码实现如下:
private void axMxDrawX1_CustomEntity_moveGripPointsAt(object sender, AxMxDrawXLib._DMxDrawXEvents_CustomEntity_moveGripPointsAtEvent e)
|
js代码实现如下:
// 移动自定义实体夹点
|
六、自定义实体之打碎
c#代码实现如下
// 打开图纸文件。
|
七、在块表记录中添加一个自定义实体
c#代码实现如下
MxDrawDatabase database = (MxDrawDatabase)axMxDrawX1.GetDatabase();
|
原文地址:https://www.cnblogs.com/yzy0224/p/10860946.html