与 Teigha的相爱相杀
2026/5/8 13:36:12 网站建设 项目流程

与 Teigha的相爱相杀

Teigha再脱离CAD处理DWG,效率还是比较高的,
最近研究通过Teigha识别一些图形过程中,发现一些让我血压飙升的问题。

1.API未实现的问题

在处理共线线段之间的位置关系时,判断线段之间是否有重叠关系,看到Overlap,感觉Teigha很贴心,飞快的码完代码。

LineSegment2d line1 = new LineSegment2d(new Point2d(0, 0), new Point2d(10, 0)); LineSegment2d line2 = new LineSegment2d(new Point2d(10, 0), new Point2d(20, 0)); LineSegment2d line3 = new LineSegment2d(new Point2d(5, 0), new Point2d(20, 0)); LineSegment2d line4 = new LineSegment2d(new Point2d(5, 0), new Point2d(5, 5)); LinearEntity2d result2 = line1.Overlap(line2); LinearEntity2d result3 = line1.Overlap(line3); LinearEntity2d result4 = line1.Overlap(line4);

我很期待的等待你的结果,你却让我失望透顶。

什么鬼,有API,没有实现,那么你暴露出来API的意义是什么?

2. LineSegment2d 对象不能作为字典的Key

LineSegment2d line1 = new LineSegment2d(new Point2d(0, 0), new Point2d(10, 0)); LineSegment2d line2 = new LineSegment2d(new Point2d(10, 0), new Point2d(20, 0)); LineSegment2d line3 = new LineSegment2d(new Point2d(5, 0), new Point2d(20, 0)); LineSegment2d line4 = new LineSegment2d(new Point2d(5, 0), new Point2d(5, 5)); Dictionary<LineSegment2d, string> dict = new Dictionary<LineSegment2d, string>(); dict.Add(line1,""); dict.Add(line2,""); dict.Add(line3,""); dict.Add(line4,"");

原因大概是:

以上便是我最近几天遇到的奇怪,气人的问题,如果你有好的解决方案,请一起探讨学习。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询