主要用到函数说明:

IMxDrawEntity::Rotate

旋转一个对象。详细说明如下:

参数 说明

[in] IMxDrawPoint* basePoint

旋转基点

[in] DOUBLE dRotationAngle

旋转角度

IMxDrawAnimation::GetAnimationEntity2

得到动画临时对象.如果对象没有被初始成动画状态,返回为 NULL。详细说明如下:

参数 说明

[in] BSTR pszHandle

动画对象句柄

js中实现代码说明:

     function InitDraw() {
draw = document.getElementById("MxDrawXCtrl");
draw.ImplementCommandEventFun = function DoCommandEventFunc(iCmd) {
if (iCmd == 1) {
// 启动时打开文件
draw.OpenDwgFile(draw.GetOcxAppPath() + "\\Blk\\animation.dwg");
var animation = draw.NewComObject("IMxDrawAnimation");
//把对象初始化成动画状态
animation.InitAnimationEntity2("211");
animation.InitAnimationEntity2("212");
animation.InitAnimationEntity2("213");
// 启动一个控件时钟事件,用于实现动画。
draw.CallLongParam1("Mx_StartUserTimer", 30);
}
};
draw.ImplementCustomEvent = function CustomEvent(sEventName) {
if (sEventName == "Mx_UserTimer")
{
var animation = draw.NewComObject("IMxDrawAnimation");
//开始一个动画绘制过程
animation.StartDraw();
// 211 212 213是需要旋转实体的句柄.
RotateEnt("211", animation);
RotateEnt("212", animation);
RotateEnt("213", animation);
//结束动画绘制过程
animation.EndDraw();
// 注意需要显示释放递代器.,不然会引起错误
animation = null;
CollectGarbage();
}
};
}
function  RotateEnt( handls,  animation)
{
//得到动画临时对象.如果对象没有被初始成动画状态,返回为 NULL
var ent = animation.GetAnimationEntity2(handls);
if (ent != null && (ent.ObjectName == "McDbBlockReference"))
{
var blkRef = ent;
//旋转一个对象,参数一为旋转基点,参数二为旋转角度
blkRef.Rotate(blkRef.Position, -30 * 3.14159265 / 180.0);
//绘制动画对象.该函数只能在StartDraw,EndDraw之前调用
animation.Draw2(handls);
}
}

最新文章

  1. listView当中有嵌套了有onClickListener的控件时ListView自身的onItemClick无响应的解决方案
  2. Spring MVC与Struts2的区别
  3. C++访问权限
  4. STL set 使用小结
  5. dedecms(织梦)自定义表单后台显示不全 自定义模型当中添加自定义字段后在后台添加内容后不显示解决方案
  6. block 解析 - 局部变量
  7. jQuery内容过滤器
  8. Linux云计算 面试时最常遇到的40个问题
  9. IO代码记忆
  10. Android的几种Manager
  11. final关键字的几种用法
  12. 《Linux就该这么学》第十七天课程
  13. nginx 域名泛解析
  14. 详解kubeadm生成的证书(转)
  15. mvn jetty debug
  16. solr客户端的使用
  17. Cygwin工具的简单使用
  18. python小练习--函数调用函数,让对象具有能动性
  19. [Backbone]7. Collection Views, Custom Events
  20. 1​1​.​0​5​9​2​M​晶​振​与12M晶振

热门文章

  1. 在Linux(centos)上安装PHP的mongodb扩展 成功试过的
  2. 在C++代码中调用L脚本语言
  3. [Java] 监控java对象回收的原理与实现
  4. selenium iframe 定位 qq空间说说
  5. 深度理解apache 重写模块rewrite_mod,重写不再犯错
  6. C#数字、16进制字符串和字节之间互转
  7. hive使用
  8. 自定义的Notification
  9. sublime —— 强大的插件
  10. hdu 4777 Queue