乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 61|回复: 4

[求助] 求矩形的参数

[复制链接]

2

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
11
发表于 2008-12-11 11:21:00 | 显示全部楼层 |阅读模式
小弟初学 的VBA,现在想读取AutoCAD的图形信息保存到Access的数据库中,但是不知道矩形的输入参数是否就是对角线两点的坐标?其语句应该怎么写呢?
例如,直线的输入格式为:insert into line(id,x1,y1,x2,y2) values('××××',×××,×××,×××,×××)
           圆形的输入格式为:insert into circle(id,cenx,ceny,rad) values('××××',×××,×××,×××)
请问矩形应该如何输入呢?
请老师们不吝赐教
回复

使用道具 举报

2

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
11
发表于 2008-12-11 14:49:00 | 显示全部楼层
将文件保存成DXF后,用文本格式打开查看后,我认为矩形、三角形等并没有自身的格式,其格式实际上是聚合线,所以应按聚合线格式输入。
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2008-12-11 16:52:00 | 显示全部楼层
直线有StartPoint和EndPoint属性,它是三元素数组,取0和1则为X和Y坐标值。
圆也有同样道理的属性,你可以参照对象模型。
回复

使用道具 举报

0

主题

2

帖子

1

银币

初来乍到

Rank: 1

铜币
2
发表于 2008-12-29 18:26:00 | 显示全部楼层
通过对角两点绘制矩形的函数
Function AddRectangle(varPnt1 As Variant, varPnt2 As Variant) As AcadLWPolyline

On Error GoTo Err_Control

Dim objSpace As AcadBlock
If ThisDrawing.ActiveSpace = acModelSpace Then
Set objSpace = ThisDrawing.ModelSpace
Else
Set objSpace = ThisDrawing.PaperSpace
End If

Dim plineObj As AcadLWPolyline
Dim points(0 To 7) As Double

points(0) = varPnt1(0): points(1) = varPnt1(1)
points(2) = varPnt1(0): points(3) = varPnt2(1)
points(4) = varPnt2(0): points(5) = varPnt2(1)
points(6) = varPnt2(0): points(7) = varPnt1(1)

Set plineObj = objSpace.AddLightWeightPolyline(points)

plineObj.Closed = True
Set AddRectangle = plineObj

Exit_Here:
Exit Function

Err_Control:
Resume Exit_Here

End Function

Sub addrec()
Dim pnt1 As Variant
Dim pnt2 As Variant
pnt1 = ThisDrawing.Utility.GetPoint(, "请输入角点:")
pnt2 = ThisDrawing.Utility.GetCorner(pnt1, "请输入另一角点:")
AddRectangle pnt1, pnt2

End Sub
回复

使用道具 举报

120

主题

326

帖子

7

银币

中流砥柱

Rank: 25

铜币
806
发表于 2008-12-30 09:23:00 | 显示全部楼层

基本都是根据这个原理
pnt1 = ThisDrawing.Utility.GetPoint(, "请输入角点:")
pnt2 = ThisDrawing.Utility.GetCorner(pnt1, "请输入另一角点:")
计算出4个点坐标,别无它法。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-4 19:40 , Processed in 0.257298 second(s), 63 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表