乐筑天下

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

如何利用vba得到与某选定直线相交的直线的集合

[复制链接]

7

主题

12

帖子

1

银币

初来乍到

Rank: 1

铜币
40
发表于 2002-9-17 17:18:00 | 显示全部楼层 |阅读模式
大家请帮忙,我已经选择了一条直线,如何不通过鼠标选择,而用vba程序得到与其相交的直线,谢谢,谢谢,thank you
回复

使用道具 举报

14

主题

230

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
286
发表于 2002-9-19 15:58:00 | 显示全部楼层
http://www.mjtd.com/a2/list.asp?id=88
回复

使用道具 举报

7

主题

12

帖子

1

银币

初来乍到

Rank: 1

铜币
40
发表于 2002-9-21 11:59:00 | 显示全部楼层

是以select方法的acselectionpoly,以及过滤器dxf、intersectwith方法联合使用吗,相当复杂,试验好久,没有成功
回复

使用道具 举报

608

0

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
3
发表于 2002-10-7 00:07:00 | 显示全部楼层

对于黄线而言,这个集合包含white + red 线的总和

0gll3gbja1a.jpg

0gll3gbja1a.jpg

I desire this too!
[此贴子已经被作者于2002-10-6 23:36:19编辑过]
难道要遍历选集内所有其他Line,并同时做与yellow线的intersect看看是否有交点才行?
回复

使用道具 举报

608

0

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
3
发表于 2002-10-7 19:41:00 | 显示全部楼层
得到端点p1后使用
selection.getPointAt(p1)
为什么得不到通过p1的全部Line的选集呢?
只有一条被选中了。
回复

使用道具 举报

608

0

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
3
发表于 2002-10-7 21:33:00 | 显示全部楼层

下午起床后又做了2个小时,
selectPointAt()总是不争气,只选择一条。
没办法只好曲线救国啦。
用**********slectcro sd********
yo在这个“小盒子里”真是太难编辑了。我换。。。Public Sub selectAtPoint()
    Dim vSelectPoint As Variant
    Dim selectPoint(2) As Double
   
    Dim corner1 As Variant
    Dim corner2 As Variant
    Dim precious As Double
   
    Dim utilObj As Object
    Dim selection As AcadSelectionSet
   
    Dim i As Integer
    Dim Line As AcadLine
   
    Set selection = ThisDrawing.ActiveSelectionSet
    Set utilObj = ThisDrawing.Utility
   
   
   
    vSelectPoint = utilObj.GetPoint(, "select the test point")
    selectPoint(0) = vSelectPoint(0)
    selectPoint(1) = vSelectPoint(1)
   
    precious = 0.0000000000001 '模拟点的精度。
   
    utilObj.CreateTypedArray corner1, vbDouble, (selectPoint(0) - precious), (selectPoint(1) + precious), 0
    utilObj.CreateTypedArray corner2, vbDouble, (selectPoint(0) + precious), (selectPoint(1) - precious), 0
        
    selection.Select acSelectionSetCrossing, corner1, corner2
   
    For i = 0 To selection.Count - 1
        Set Line = selection.Item(i)
        Line.Color = acBlue
        Line.Update
    Next
   
End Sub
回复

使用道具 举报

7

主题

12

帖子

1

银币

初来乍到

Rank: 1

铜币
40
发表于 2002-10-9 11:23:00 | 显示全部楼层
我把整个图层上的line线都遍历了,才筛选到与该直线相交的线。不知道有没有更快的办法[br]
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2024-11-22 07:21 , Processed in 0.233981 second(s), 69 queries .

© 2020-2024 乐筑天下

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