找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 639|回复: 1

[编程申请]:求助

[复制链接]

已领礼包: 557个

财富等级: 财运亨通

发表于 2002-12-16 21:36:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
在VB中,如何取得一个任意多边形内的点、线和跟这个多边形相交的线,谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 181个

财富等级: 日进斗金

发表于 2002-12-17 18:05:39 | 显示全部楼层
用IntersectWith函数。

  1.   [FONT=courier new]
  2. Sub Example_IntersectWith()

  3.     ' 创建直线
  4.     Dim lineObj As AcadLine
  5.     Dim startPt(0 To 2) As Double
  6.     Dim endPt(0 To 2) As Double
  7.     startPt(0) = 1: startPt(1) = 1: startPt(2) = 0
  8.     endPt(0) = 5: endPt(1) = 5: endPt(2) = 0

  9.     Set lineObj = ThisDrawing.ModelSpace.AddLine(startPt, endPt)
  10.         
  11.     ' 创建圆
  12.     Dim circleObj As AcadCircle
  13.     Dim centerPt(0 To 2) As Double
  14.     Dim radius As Double
  15.     centerPt(0) = 3: centerPt(1) = 3: centerPt(2) = 0
  16.     radius = 1
  17.     Set circleObj = ThisDrawing.ModelSpace.AddCircle(centerPt, radius)

  18.       
  19.     ' 判断直线和圆是否有交点及交点坐标,返回值为空表示不相交,否则返回值就是所有交点的坐标。
  20.     Dim intPoints As Variant
  21.     intPoints = lineObj.IntersectWith(circleObj, acExtendNone)
  22.    
  23.     ' Print all the intersection points
  24.     Dim I As Integer, j As Integer, k As Integer
  25.     Dim str As String
  26.     If VarType(intPoints) <> vbEmpty Then

  27.         For I = LBound(intPoints) To UBound(intPoints)
  28.             str = "交点[" & k & "] is: " & intPoints(j) & "," & intPoints(j + 1) & "," & intPoints(j + 2)
  29.             MsgBox str, , "相交示例"
  30.             str = ""
  31.             I = I + 2
  32.             j = j + 3
  33.             k = k + 1

  34.         Next
  35.     End If
  36. End Sub
  37.   [/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-24 13:05 , Processed in 0.191104 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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