Skip to content

Wrong results by A_MINUS_B #68

@GoogleCodeExporter

Description

@GoogleCodeExporter
What steps will reproduce the problem?
1. get the attached models obj1.ply and obj2.ply
2. run the following code:
    carve::mesh::MeshSet<3> *obj1=readPLYasMesh("obj1.ply");
    carve::mesh::MeshSet<3> *obj2=readPLYasMesh("obj2.ply");
if(obj1->isClosed()==false)
{
    printf("obj1 is not closed\n");
}
if(obj2->isClosed()==false)
{
    printf("obj2 is not closed\n");
}
    carve::csg::CSG csg;
    obj1 = csg.compute(obj1,obj2,csg.A_MINUS_B);
    writePLY("obj1_result.ply", obj1, true);


3.

What is the expected output? What do you see instead?
The result obj1_result.ply is not correct. If you show the polygons in the 
range of 0<x<0.21, -0.05<y<0.1 and -1<z<3.1, the wrong polygon can be shown. In 
addition, the model is symmetric, and if you show polygons in the range of 
-0.21<x<0, -0.05<y<0.1 and -1<z<3.1, the polygons are correct.

What version of the product are you using? On what operating system?
latest version.

Please provide any additional information below.
please see attached files.

Original issue reported on code.google.com by [email protected] on 7 Aug 2014 at 12:39

Attachments:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions