tudelft3d / val3dity

Validation of 3D primitives according to the international standard ISO19107
GNU General Public License v3.0
92 stars 23 forks source link

Val3dity Crashing #114

Closed steveway1982 closed 6 years ago

steveway1982 commented 6 years ago

Hi Hugo,

I am finding this is crashing with certain data:

Translating all coordinates by (-791502, -354028) XLinks found, resolving them...done. CityGML input file

City Objects found: 1542

Primitive(s) validated: All (CityGML/CityJSON have all their 3D primitives validated) Parameters used for validation: snap_tol 0.01 planarity_d2p_tol 0.014 planarity_n_tol 0.014 overlap_tol 0.01

[> ] 0%
[> ] 1%
[> ] 1%
[=> ] 2%
[=> ] 3%
[=> ] 3%
[==> ] 4%
[==> ] 5%
[==> ] 5%
[===> ] 6%
[===> ] 7%
[===> ] 7%
[====> ] 8%
[====> ] 9%
[====> ] 9%
[=====> ] 10%
[=====> ] 11%
[=====> ] 11%
[======> ] 12%
[======> ] 12%
[======> ] 13%
[=======> ] 14%
[=======> ] 14%
[=======> ] 15%
[========> ] 16%
[========> ] 16%
[========> ] 17%
[=========> ] 18%
[=========> ] 18%
[=========> ] 19%
[==========> ] 20%
[==========> ] 20%
[==========> ] 21%
[===========> ] 22%
[===========> ] 22%
[===========> ] 23%
[===========> ] 23%
[============> ] 24%
[============> ] 25%
[============> ] 25%
[=============> ] 26%
[=============> ] 27%
[=============> ] 27%
[==============> ] 28%
[==============> ] 29%
[==============> ] 29%
[===============> ] 30%
[===============> ] 31%
[===============> ] 31%
[================> ] 32%
[================> ] 33%
[================> ] 33%
[=================> ] 34%
[=================> ] 35%
[=================> ] 35%
[==================> ] 36%
[==================> ] 36%
[==================> ] 37%
[===================> ] 38%
[===================> ] 38%
[===================> ] 39%
[====================> ] 40%
[====================> ] 40%
[====================> ] 41%
[=====================> ] 42%
[=====================> ] 42%
[=====================> ] 43%
[======================> ] 44%
[======================> ] 44%
[======================> ] 45%
[=======================> ] 46%
[=======================> ] 46%
[=======================> ] 47%
[=======================> ] 47%
[========================> ] 48%
[========================> ] 49%
[========================> ] 49%
[=========================> ] 50%
[=========================> ] 51%
[=========================> ] 51%
[==========================> ] 52%
[==========================> ] 53%
[==========================> ] 53%
[===========================> ] 54%
[===========================> ] 55%
[===========================> ] 55%
[============================> ] 56%
[============================> ] 57%
[============================> ] 57%
[=============================> ] 58%
[=============================> ] 59%
[=============================> ] 59%
[==============================> ] 60%
[==============================> ] 60%
[==============================> ] 61%
[===============================> ] 62%
[===============================> ] 62%
[===============================> ] 63%
[================================> ] 64%
[================================> ] 64%
[================================> ] 65%
[=================================> ] 66%
[=================================> ] 66%
[=================================> ] 67%
[==================================> ] 68%
[==================================> ] 68%
[==================================> ] 69%
[===================================> ] 70%
[===================================> ] 70%
[===================================> ] 71% CGAL error: precondition violation! Expression : ! K().collinear_3_object()(p,q,r) File : C:\dev\CGAL-4.11\include\CGAL/Kernel/function_objects.h Line : 2490 Explanation: Refer to the bug-reporting instructions at http://www.cgal.org/bug_report.html

hugoledoux commented 6 years ago

Send me an example, ideally a file with only one primitive that makes it crash. Use “-verbose” to know which one

steveway1982 commented 6 years ago

crashing_primitive.zip Hi Hugo, This is strange. If i remove the primitive, the file validates without crashing. If i validate that one primitive, it validates fine. As soon as i put it into the citygml file, then it crashes.

Also, it validates fine using the online tool - maybe this is a windows-related bug.

hugoledoux commented 6 years ago

Then it must be citygml’s fault 🙃

Use CityJSON instead: http://www.cityjson.org/en/0.5/

I’ll have a look, probably a parsing error.

On Mon, 27 Nov 2017 at 10:35, steveway1982 notifications@github.com wrote:

crashing_primitive.zip https://github.com/tudelft3d/val3dity/files/1505281/crashing_primitive.zip Hi Hugo, This is strange. If i remove the primitive, the file validates without crashing. If i validate that one primitive, it validates fine. As soon as i put it into the citygml file, then it crashes.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/tudelft3d/val3dity/issues/114#issuecomment-347126785, or mute the thread https://github.com/notifications/unsubscribe-auth/ABeZFk-tJdBVBSgmKbijlrgozQqWIVGgks5s6oJagaJpZM4QqBx7 .

hugoledoux commented 6 years ago

It works fine here with macOS too.

"As soon as i put it into the citygml file, then it crashes." --> you mean the whole file? Perhaps you can send it to me, if you don't want people to have access to it email it to me directly.

It could be a Windows issue, especially with the robust arithmetic. Maybe a setup while compiling, it is tricky getting it right.

steveway1982 commented 6 years ago

I think it is definitely windows.

I compiled a linux version and it is working fine.

From: Hugo Ledoux [mailto:notifications@github.com] Sent: 27 November 2017 15:51 To: tudelft3d/val3dity val3dity@noreply.github.com Cc: Steve Way Steve.Way@cyient.com; Author author@noreply.github.com Subject: [EXTERNAL]Re: [tudelft3d/val3dity] Val3dity Crashing (#114)

It works fine here with macOS too.

"As soon as i put it into the citygml file, then it crashes." --> you mean the whole file? Perhaps you can send it to me, if you don't want people to have access to it email it to me directly.

It could be a Windows issue, especially with the robust arithmetic. Maybe a setup while compiling, it is tricky getting it right.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/tudelft3d/val3dity/issues/114#issuecomment-347224786, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Ac8TSUKh5towvAIhlV1o9JUCkHzn4hXNks5s6tp6gaJpZM4QqBx7.


DISCLAIMER:

This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. Check all attachments for viruses before opening them. All views or opinions presented in this e-mail are those of the author and may not reflect the opinion of Cyient or those of our affiliates.

hugoledoux commented 6 years ago

My colleague managed to compile for Windows and we pushed the VS project to the master branch. With that version it works fine; I'll upload the binary in the next 24h when we've checked that it works on other machines (with proper DLLs and all).

hugoledoux commented 6 years ago

it's there: https://github.com/tudelft3d/val3dity/releases/tag/2.0.0

feedback appreciated

steveway1982 commented 6 years ago

Hi Hugo, this works great!

Looking at the VS project files, it seems we have some differences! glad there is a working copy now available.

As you are a small team, it might be worth you guys creating a free VSTS account, linking to github and auto-building the code on commit? Just an idea.

Cheers, Steve