明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1620|回复: 4

[求助]本站的《AutoCAD .NET 开发人员手册》中的疑问

[复制链接]
发表于 2010-7-21 18:51:00 | 显示全部楼层 |阅读模式
http://www.mjtd.com/helpcenter/netguide/

控制 AutoCAD 环境->控制“图形”窗口->缩放和平移当前视图->操纵当前视图 (Manipulate the Current View)

下的C#代码中:
static void Zoom 函数有一段:
  1.           // Create an extents object using a line          using (Line acLine = new Line(pMin, pMax))          {              eExtents = new Extents3d(acLine.Bounds.Value.MinPoint,                                       acLine.Bounds.Value.MaxPoint);          }

acLine.Bounds这里报错!提示 Line中并不包含Bounds的定义!
我想可能是版本的问题,我是ObjectArx 2007的,Line中的定义与Bounds.Value.MinPoint接近的只有EndPoint了,
于是改成以下:
  1.                          eExtents = new Extents3d(acLine.EndPoint, acLine.StartPoint);
复制代码
编译通过了,但调试时运行到这时过不去,崩溃了,
改成                    eExtents = new Extents3d(pMin,  pMax);并且把using 那一行去掉,
也不行,运行过不去。

问题是:
为什么要用Line来创建Extents 对象呢?,代码从头到尾只有这一处有Line的对象,直接创建Extents(用pMin,  pMax)为什么
运行失败了呢?这地方到底是怎么一回事?

还有,是不是这个AutoCAD .NET 开发人员手册是基于比较新的版本,一些对象的定义都更新了,那么用比较旧的版本,有没有其他方法实现呢?
发表于 2010-7-21 21:12:00 | 显示全部楼层
zoom的代码以前我应该是贴过的,你搜下吧
发表于 2010-7-23 17:21:00 | 显示全部楼层
AutoCAD .NET 开发人员手册
 楼主| 发表于 2010-7-26 15:56:00 | 显示全部楼层

回复:(lzh741206)zoom的代码以前我应该是贴过的,你...

 我是按照本站中的 《开发手册》 做的,现在问题没有解决。。。

估计是版本问题

我是CAD2007的,有些函数不存在
发表于 2010-7-26 16:03:00 | 显示全部楼层

开发手册对应的版本是2010,呵呵

当然,大多数代码在2008下应该是可以实现的

Cad的通病,双数版本还是稳定些

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

本版积分规则

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

GMT+8, 2024-11-25 23:01 , Processed in 0.171170 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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