明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: mxdwg

梦想mxdraw浏览,编辑控件

  [复制链接]
 楼主| 发表于 2008-6-22 20:23:00 | 显示全部楼层
本帖最后由 作者 于 2008-6-22 20:24:48 编辑

2008.06.22更新


1.增加Spline线的支持
2.增加返回数据库的外包范围坐标
3.加入控件授权显示信息

http://www.mxdraw.com/viewthread.php?tid=7&extra=page%3D1

 楼主| 发表于 2008-10-6 08:01:00 | 显示全部楼层
本帖最后由 作者 于 2008-10-6 8:12:10 编辑

2008.10.06更新

1、修正尺寸标注中的MTEXT文字显示不正确问题.

2、控件工具条改成从mxt文件加载,这样用户通过修改mxt文件可以自定义工具条

mxt文格式如下:
// 工具条文件头说明.
// ("文件类型字符串" "资源文件名" "透明颜色")
("MxDrawToolBarFile" "MxDraw.dll" (214 211 206))
// 文件中的工具命令字符串每项说明.
// ("命令名称" "命令提示字符串" "命令" "图标索引字符串")
("打开dwg文件" "打开dwg文件" "OpenDwg" "IDB_OPENDWG_BITMAP")
("SEPARATOR")
("缩放"     "视区缩放命令" "Z" "IDB_ZOOM_BITMAP")
("视区移动" "视区移动命令" "P" "IDB_PAN_BITMAP")
("前一个视区" "缩放上一个" "ZoomP" "ID_PRVVIEW_BITMAP")
("重新生成图形" "重新生成图形" "Re" "IDB_REGEN_BITMAP")
("SEPARATOR")
("操作回退" "操作回退" "U" "IDB_UNDO_BITMAP")
("打印图形" "打印图形" "Plot" "IDB_PRINT_BITMAP")

3、导出EnableToolBarControl接口,用来禁用或激活工具条上的按钮.
接口原型为:SHORT EnableToolBarControl(LPCTSTR pszControlName, SHORT isEnable);

4、ActiveX控件增加SendStringToExecute接口,用来发送执行某个命令.
接口原型为: SHORT SendStringToExecute(LPCTSTR pszCmd);

5、ActiveX控件增加OpenWebDwgFile接口,用来打开网上某个dwg文件.
接口原型为:SHORT OpenWebDwgFile(LPCTSTR sUrlPath);
使用方法为:
代码:
<script language="vbscript">
   MxDrawOcxCtrl.SetAtIERuning(1)
   MxDrawOcxCtrl.EnableToolBarControl "打印图形",0
   MxDrawOcxCtrl.OpenWebDwgFile("http://www.mxdraw.com/downland/S0304-00.DWG")
</script>
6、修改VB使用控件,当使用命令时,这时退出程序,但VB程序一直没有退出,在进程管理器中能看到,的问题
运行效果抓图:
 
7、修正AcDb2dPolyline,AcDbPolyline的返回标高函数总是返回零的问题

8、修正控件在IE使用容易出错的问题,使用控件在IE使用更为稳定

9、修正控件控件在IE中打开,提示控件安全警告问题,具体情况如下:
       用敖游打开不会有提示了,用IE打开,需要对IE的 "选项"=>"高级"里的"允许活动程序在我电脑上运行"选项先上
运行效果抓图:

10、增加打印功能

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2008-10-6 08:08:00 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2008-10-18 20:12:00 | 显示全部楼层

2008.10.18更新
http://www.mxdraw.com/viewthread.php?tid=32&extra=page%3D1

1、增加读取属性块中属性功能
调用代码如下:
AcDbObjectIterator* pAttribIter = spBlkRef->attributeIterator();
 if(pAttribIter != NULL)
 {
  acutPrintf(_T("\n 块的属性值为:"));
  for(;!pAttribIter->done();pAttribIter->step() )
  {
            // 打开块属性对象.
   AcDbObjectPointer<AcDbAttribute> spAttribute(pAttribIter->objectId(),AcDb::kForRead);
   acutPrintf(_T("\n %s"),spAttribute->textStringEx());
  }
  acutPrintf(_T("\n"));
  // 删除块属性递代器指针.
delete pAttribIter;
 }
 else
 {
  acutPrintf(_T("\n 选择的不块不带属性"));
 }
2、增加实体名柄类AcDbHandle,并可以把实体名柄与实体ID互相转换。

3、增加闪烁实体功能和停闪烁接口
调用代码如下:
// 闪烁实体.
static bool TwinkeEnt(AcDbObjectId id);
// 停闪东实体
static bool StopTwinkeEnt(AcDbObjectId id);
// 停闪止所有实体
static bool StopAllTwinkeEnt(MXDRAWOCXHANDLE hOcx);

4、增加构建选择集函数acedSSGet,acedSSLength,acedSSFree,acedSSName,现在支持带过滤的X选方式。

 struct resbuf* filter = acutBuildList(8,layer,RTDXF0, _T("LWPOLYLINE"),-4,_T("<OR"),62,0,
  62,1,62,256,-4,_T("OR>"),0);
  acutPrintf(_T("\n 选择实体:"));
 ads_name ss;


 int rc = acedSSGet(_T("X"), NULL, NULL,filter,ss);

 acutRelRb(filter);

 if(rc != RTNORM)
 {
  AfxMessageBox(_T("没有发现满足要求的实体"));
  return;
 }

 long len = 0;
 acedSSLength(ss,&len);

 CString sT;
 sT.Format(_T("发现%d个实体"),len);
 AfxMessageBox(sT);

5.增加图层的操作,关闭打开图层,可以参照samples\Edit.sln例程.

6.读取实体的扩展记录,和读取ReadNamedObjectsDictionary功能。
// 把字典中所有的数据都输出
  AcDbDatabase *pDb = acdbHostApplicationServices()->workingDatabase();
  AcDbObjectPointer<AcDbDictionary> spDict(pDb->namedObjectsDictionaryId(),AcDb::kForRead);
  if(spDict.openStatus() == Acad::eOk)
  {
   rintDictionary(spDict.object() );
  }

7.增加控件配制文件,在配制文件中可以指控件的背景色,是否显示工具条,是否显示命令窗口,字体文件搜索路径等。配制文件格式如下:

// 控件的背景色 R G B
("ViewBlkColor" (0 0 0))

// 是否显示命令行窗口
("ShowCommandWindow" "Y")

// 是否显示工具条
("ShowToolBar" "Y")

// 打开dwg文件时,是否读取扩展数据
("ReadDwgExData" "Y")

// 打开dwg文件时,是否读取扩展记录
("ReadDwgExRecord" "Y")

// 是否支持实体名柄操作
("IsSupportEntHandle" "Y")

// shx文件目录
("ShxDir" "Shx")

8.增加对自定义实体的显示AcDbProxyEntity;

9.增加对属性定义文件的显示AcDbAttributeDefinition


 

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2008-11-3 15:29:00 | 显示全部楼层

我的控件又更新了:

1、增加W ,C方式构造选集,
2、增加实体选择变虚功能
3、增加acedGetPoint函数,可以从图上取一个点。
4、增加在图上动态标注一个点的显示例程.
5、增加设置光标位置函数
6、修正了一堆显示细节问题,控件显示更为精确。
比如有:文字间的空隔距离问题,MTEXT字体风格问题,填充对象有时填充不对问题,块中实体颜色显示等问题。

http://www.mxdraw.com/viewthread.php?tid=35&extra=page%3D1

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2008-11-17 15:16:00 | 显示全部楼层

确实很厉害!

发表于 2008-11-25 10:29:00 | 显示全部楼层

不错!

强人!

 楼主| 发表于 2008-12-1 16:37:00 | 显示全部楼层

2008.12.01更新

http://www.mxdraw.com/viewthread.php?tid=40&extra=page%3D1

1.增加对公差显示的
2.修正了椭圆弧显示问题,等一堆显示问题.
3.增加带有形的复杂线型的显示.
4.增加在IE中同时打开两个控件的演示例程.
5.增加打开对话框中显示dwg预览的功能,并增加
 CBitmap* MxDraw::GetPreviewBmp(LPCTSTR pszFileName)函数得到dwg的预览位图.
6.增加MxDraw::DoPreviewFileDialog函数,弹出带预览窗口的文件打开对话框
7.增加对DXF文件的显示支持.
8.修正控件尺寸在除VC的其它语言中改不了的问题。

 楼主| 发表于 2008-12-1 16:38:00 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2008-12-3 12:20:00 | 显示全部楼层

2008.12.03更新

http://www.mxdraw.com/viewthread.php?tid=42&extra=page%3D1

1.增加超酷的图纸浏览程序MxDrawCADTools.exe,浏览程序源代码在控件安装目录下的samples\MxDrawCADTools\MxDrawCADTools.sln工程中.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 04:26 , Processed in 0.176641 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表