明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2699|回复: 2

[求助]如何在auto vba中提取直线端点在用户坐标系的坐标数据啊?

[复制链接]
发表于 2007-4-13 22:03:00 | 显示全部楼层 |阅读模式

我想把直线的用户坐标数据提取出来放到EXCEL中,可是只能提出直线在世界坐标系中的数据,有什么办法可以转换一下呢?谢谢各位大侠,请帮帮我!

发表于 2007-4-14 19:55:00 | 显示全部楼层

利用TranslateCoordinates 方法

TranslateCoordinates 方法可以将点或位移从一个坐标系转换到另一个坐标系。称为 OriginalPoint 的点参数可以被解释为三维点或三维位移矢量。此参数由 Boolean 参数 Disp 来区分。如果 Disp 参数设置为 TRUE,OriginalPoint 参数将被视为位移矢量;否则视为点。还有两个参数用于确定 OriginalPoint 来自哪个坐标系以及要转换到哪个坐标系。可以在 From 和 To 参数中指定以下 AutoCAD 坐标系:

WCS

世界坐标系:参考坐标系。所有其他坐标系都相对于 WCS 定义,该坐标系恒定不变。相对于 WCS 测量的值可以稳定地转换到其他坐标系中。除非另行指定,ActiveX 方法和特性传入和传出的所有点都以 WCS 表示。

UCS

用户坐标系 (UCS):工作坐标系。用户可以指定 UCS 以方便执行绘图任务。所有传递到 AutoCAD 命令的点,包括从 AutoLISP 例程以及外部函数返回的点,都是当前 UCS 中的点(除非用户于命令提示中在点之前加上了 *)。如果希望应用程序以 WCS、OCS 或 DCS 向 AutoCAD 命令发送坐标,必须先调用 TranslateCoordinates 方法,将这些坐标转换为 UCS。

OCS

对象坐标系:由 Polyline 和 LightweightPolyline 对象的特定方法和特性指定的点值以此坐标系表示(相对于对象)。根据对象的用途,这些点通常会转换为 WCS、当前 UCS 或当前 DCS。相对地,WCS、UCS 或 DCS 中的点在使用相同的特性写入数据库之前,必须将其转换为 OCS。关于采用此坐标系的方法和特性,请参见 AutoCAD《ActiveX and VBA Reference》。

将坐标转换到 OCS 或从 OCS 转换坐标时,必须在 TranslateCoordinates 函数的最后一个参数中输入 OCS 的法线。

DCS

显示坐标系:在此坐标系中,对象在显示前要进行转换。DCS 的原点是存储在 AutoCAD 系统变量 TARGET 中的点,Z 轴是观察方向。也就是说,某个视口始终是其 DCS 的一个平面视图。这些坐标可用于确定显示给 AutoCAD 用户的画面的位置。

PSDCS

图纸空间 DCS:本坐标系只能与当前活动模型空间视口的 DCS 相互转换。这种转换实质上是一种二维转换,其中的 X 和 Y 坐标在 Disp 参数设置为 FALSE 时,始终要进行缩放和偏移。Z 坐标也要缩放,但并不转换。因此,它可用于确定两个坐标系之间的缩放比例。PSDCS 只能转换到当前的模型空间视口中。如果 from 参数等于 PSDCS,则 to 参数必须等于 DCS,反之亦然。

发表于 2012-3-28 09:45:43 | 显示全部楼层
翔羽 发表于 2007-4-14 19:55
利用TranslateCoordinates 方法TranslateCoordinates 方法可以将点或位移从一个坐标系转换到另一个坐标系。 ...

Variant coor1,coor2;
coor1 = Line.endPoint
coor2 = ThisDrawing.Utility.TranslateCoordinates(coor1,acWorld,acUCS,false)
调试coor2的坐标怎么还是和coor1的一样啊?在使用函数TranslateCoordinates有什么前提条件吗?
望指点
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 18:21 , Processed in 0.180680 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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