boostorg / boostorg/geometry

Invalid result of intersection for MLs, MPo -> MLs

オープン
#656 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
C++
スター
517
フォーク
232
PR マージ指標
30日以内にマージされた PR はありません

説明

Geometry develop (1.72.0), with VS2017 x64.

![image](https://user-images.githubusercontent.com/1226951/71935978-78d96000-31a8-11ea-89d0-82bb5f6d8b5f.png)

```
typedef bg::model::point point;
typedef bg::model::linestring linestring;
typedef bg::model::polygon polygon;
typedef bg::model::multi_linestring multi_linestring;
typedef bg::model::multi_polygon multi_polygon;

multi_polygon mpo{ { { {0, 0}, {0, 1}, {1, 1}, {1, 0}, {0, 0} },
{ {0, 0}, {0.2, 0.1}, {0.1, 0.2}, {0, 0} } } };
multi_linestring mls{ { {0, 0}, {1, 0}, {1, 1}, {2, 0}, {3, 0} },
{ {-1, -1}, {0, 0}, {0, -1} } };
multi_linestring res_mls;

bg::intersection(mls, mpo, res_mls);
```

Result is: `MULTILINESTRING((0 0, 1 0, 1 1), (1.249e-16 2.498e-16, 0 0, 0 -1))`
should be: `MULTILINESTRING((0 0, 1 0, 1 1))`

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。