乐筑天下

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

任何人都可以帮助我吗?AutoCAD2016 中有什么问题?

[复制链接]

23

主题

48

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
140
发表于 2016-9-7 22:04:37 | 显示全部楼层 |阅读模式
我的程序可以在ACAD2008下正常运行,是的,我升级到ACAD2016,但是有些不对劲。
当我调用折线类函数 GetDistAtPoint 时,到起点的每个顶点距离都是 1.0。

alht5tvlfb0.jpg

alht5tvlfb0.jpg


gxvqpllsyup.jpg

gxvqpllsyup.jpg

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

23

主题

48

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
140
发表于 2016-9-7 22:12:43 | 显示全部楼层
并且此折线对象不受数据库限制,它是由另一条折线拆分的。
  1. public static Curve ParticalCopy(this  Curve cv, Point3d pt1, Point3d pt2)
  2.         {
  3.             pt1 = cv.GetClosestPointTo(pt1, false);
  4.             pt2 = cv.GetClosestPointTo(pt2, false);
  5.             if (cv.GetDistAtPoint(pt1) > cv.GetDistAtPoint(pt2))
  6.             {
  7.                 Point3d pt = pt1;
  8.                 pt1 = pt2;
  9.                 pt2 = pt;
  10.             }
  11.             DoubleCollection dbs = new DoubleCollection();
  12.             double param1 = cv.GetParameterAtPoint(pt1);
  13.             dbs.Add(param1);
  14.             double param2 = cv.GetParameterAtPoint(pt2);
  15.             dbs.Add(param2);
  16.             DBObjectCollection DBS = cv.GetSplitCurves(dbs);
  17.             IEnumerator enumDbOc = DBS.GetEnumerator();
  18.             ObjectId res = ObjectId.Null;
  19.             Tolerance t = new Tolerance(0.01, 0.01);
  20.             Curve[] cvs = new Curve[DBS.Count];
  21.             int i = 0;
  22.             while (enumDbOc.MoveNext())
  23.             {
  24.                 Curve lineTemp = (Curve)enumDbOc.Current;
  25.                 cvs[i] = lineTemp;
  26.                 i++;
  27.             }
  28.             if (param1 == 0)
  29.                 return cvs[0];
  30.             else if (cvs.Length >= 2)
  31.                 return cvs[1];
  32.             else
  33.                 return cvs[0];
  34.         }

回复

使用道具 举报

1

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
15
发表于 2016-9-9 16:12:31 | 显示全部楼层
嗨,
你能发布一个示例图吗?
加斯顿·努内斯
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2016-9-9 18:48:00 | 显示全部楼层
您是否尝试过将其添加到数据库中然后测试其方法?
AutoCAD很有趣,就像使用折线等复杂对象一样,它们需要添加到数据库中才能编辑或使用它们。这真的没有意义,Bricscad也不需要这个,但也许它与在这些后续版本中删除Fibres有关?
如果您不想保留它,只需擦除它,或者您可以使用原始几何类进行计算。
回复

使用道具 举报

23

主题

48

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
140
发表于 2016-9-11 23:06:29 | 显示全部楼层
感谢大家,我已经找到了原因,在运行代码之前,请调用“ZOOMALL”,一切正常。
因此,我认为首先,多段线不在屏幕上。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-2-4 16:44 , Processed in 0.260300 second(s), 65 queries .

© 2020-2025 乐筑天下

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