Coder Social home page Coder Social logo

Comments (5)

maisonobe avatar maisonobe commented on June 28, 2024

The issue should be fixed in the git repository.
Note that as the spherical polygons in the test case are very small with respect to the tolerance
(or rather the tolerance is very large with respect to the spherical polygons), the result of the union
operation is now a consistent BSP tree, but is not very accurate. As several points from the two
polygons are too close to each other, they are considered equal, which distorts the result.
This is considered normal.
I agree that the consistency of the tree needed to be fixed.

Thanks for the report, for the analysis, and for the simple test case!

from hipparchus.

jerdmanGH avatar jerdmanGH commented on June 28, 2024

Thanks for the quick turnaround. Is there a planned release date for 1.4?

from hipparchus.

maisonobe avatar maisonobe commented on June 28, 2024

No release date planned for now, but we could do that.
Do you need a release soon or would a release in the next few months suit your needs?

from hipparchus.

jerdmanGH avatar jerdmanGH commented on June 28, 2024

I've been playing around with tolerance values to try to determine if there is an "ideal" setting that will fit my use case but keep running into issues. The latest is a "this should never happen" exception that can be reproduced using the code below. I can submit this as a new issue but it may already be fixed by your previous commit. I'm going to put in a check for minimum allowable size for shapes to see if that gets me past this. I'm hopeful that I can find a workaround without the need for an accelerated release.

        S2Point[] s2pA = new S2Point[]{
                new S2Point(new Vector3D(0.1504230736114679, -0.6603084987333554, 0.7357754993377947)),
                new S2Point(new Vector3D(0.15011191112224423, -0.6603400871954631, 0.7358106980616113)),
                new S2Point(new Vector3D(0.15008035620222715, -0.6605195692153062, 0.7356560238085725)),
                new S2Point(new Vector3D(0.1503914563063968, -0.6604879854490165, 0.7356208472763267))
        };
        final SphericalPolygonsSet spsA = new SphericalPolygonsSet(1E-100, s2pA);
        spsA.getSize();

from hipparchus.

maisonobe avatar maisonobe commented on June 28, 2024

Please open a new issue. It is not fixed by the previous commit.

from hipparchus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.