乐筑天下

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

添加圆时出错

[复制链接]

21

主题

58

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
142
发表于 2017-6-20 08:08:40 | 显示全部楼层 |阅读模式
我收到一条题为'值不在预期范围内#039;错误号为-2147024809,没有其他信息(没有内部异常等) 当'圆圈1=myDocuments.ThisDrawing.ModelSpace。添加圆(点,15)'运行以下行:
  1.                 If keypair.Value.Weepholes.Count > 0 Then
  2.                     For Each point As Point3d In keypair.Value.Weepholes
  3.                         'Add a weephole
  4.                         circle1 = myDocuments.ThisDrawing.ModelSpace.AddCircle(point, 15)
  5.                         circle1.color = ACAD_COLOR.acByLayer
  6.                         circle1.Layer = EASICAD_LAYERS.SOLIDENDWEEPHOLES

的坐标'点#039;变量在模型空间限制内(-40073,-77029,0) 从本质上讲,我从另一个功能中复制并粘贴了这段代码的基础,该功能运行良好
有什么想法吗?
回复

使用道具 举报

21

主题

58

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
142
发表于 2017-6-20 08:19:47 | 显示全部楼层
对不起,作为一个木偶 已将Point3d转换为双精度数组。
回复

使用道具 举报

21

主题

58

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
142
发表于 2017-6-20 08:21:33 | 显示全部楼层
P、 美国;为什么't生成编译时错误,即当它需要一个double数组时,为什么它接受Point3d变量?
回复

使用道具 举报

4

主题

219

帖子

4

银币

后起之秀

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

铜币
238
发表于 2017-6-20 15:09:36 | 显示全部楼层

因为:您在与.NET API的混合中使用了COM API(因为我看到了.NET API中的“Point3d”),其中AddCircle()的第一个参数是一个;“对象”;类型(实际上是变体),在编译时可以是任何类型。这是不好的(或者至少不是“最佳实践”)虽然您已经在使用.NET API,但不知何故,在代码中添加了另一个不必要的依赖层(到COM API)
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-4-20 01:03 , Processed in 2.502700 second(s), 60 queries .

© 2020-2025 乐筑天下

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