乐筑天下

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

[编程交流] 相交点

[复制链接]

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 09:55:07 | 显示全部楼层 |阅读模式
大家好
我知道我们可以使用函数“inters”到交点。
但对于曲线(圆弧样条曲线)和直线。
我们怎样才能得到它们的交点。谢谢你抽出时间。
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-6 10:01:30 | 显示全部楼层
  1. (setq dd (vlax-ename->vla-object (car (entsel)))
  2.      ss (vlax-ename->vla-object (car (entsel))))
  3. (vlax-safearray->list(vlax-variant-value(vla-intersectwith dd ss  acExtendNone)))

 
 
 
回复

使用道具 举报

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 10:06:57 | 显示全部楼层
谢谢你的回复。
但我遇到了另一个问题。
请参见下图。
当我得到交点(A)时,如果我想画黄色部分。用于线路。我只需要使用“Line”命令
这很容易做到。但对于曲线(圆弧样条),这相当困难。有什么想法吗??
105520wqjbfzxomffxxxqx.png
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-6 10:09:47 | 显示全部楼层
好啊
 
只是我的眼睛还是没有照片?
回复

使用道具 举报

4

主题

78

帖子

74

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:15:58 | 显示全部楼层
我看到一张照片,
我不完全理解这个问题,但是打开edgemode并扩展这两个对象难道不可能吗?或者,您希望“扩展”部分为黄色和虚线,而不是白色和实心?
回复

使用道具 举报

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 10:18:47 | 显示全部楼层
我在此附上一份文件。
白色部分是两个物体。我想画黄色的部分。请看附件。曲线图纸
回复

使用道具 举报

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 10:25:46 | 显示全部楼层
最复杂的部分是如何绘制黄色曲线(这是白色对象的延伸部分,但我希望它们是两个对象)
回复

使用道具 举报

4

主题

78

帖子

74

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:31:54 | 显示全部楼层
黄曲线psuedo代码,我不确定代码是否正确,我是一个喜欢钓鱼的人,但我会采取以下步骤:
  1. get white arc center point
  2. get intersection of white arc and white line
  3. get white arc bottom end point or end point nearest the intersection
  4. draw arc using center to start then begin point and end point
回复

使用道具 举报

GP_

8

主题

248

帖子

245

银币

初来乍到

Rank: 1

铜币
42
发表于 2022-7-6 10:36:28 | 显示全部楼层
  1. (setq dd (vlax-ename->vla-object (car (entsel)))
  2.      ss (vlax-ename->vla-object (car (entsel))))
  3. (vlax-safearray->list(vlax-variant-value(vla-intersectwith dd ss [b]acExtendBoth[/b])))

 
 
 
exextendoption:让它只找到实际的交点,或者对象扩展的交点。从ActiveX/VBA参考:
 
acExtendNone-不扩展任何一个对象。
acExtendThisEntity-扩展基础对象。
acExtendOtherEntity-扩展作为参数传递的对象。
acExtendBoth-扩展两个对象
回复

使用道具 举报

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 10:39:30 | 显示全部楼层
@ccowgill公司
 
首先感谢你的帮助。
圆弧只是曲线的一个样本。它(曲线)可能是样条或其他东西。
希望有人能解决这个问题。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 00:29 , Processed in 0.437577 second(s), 85 queries .

© 2020-2025 乐筑天下

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