console output: explanation needed?

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

console output: explanation needed?

Peter Falke
Hi guys,

Is there an explanation of the output of the console available anywhere?

Me thinks it would be helpful to have a summery of all the error and warning messages and what to do in the manual.
Is there a place in the code that they are all listed?

Also I dont quiet know what the meaning of the following is: (The object was done with: cube(); )


Top level object is a 3D object:

Simple: yes

Valid: yes

Vertices: 8

Halfedges: 24

Edges: 12

Halffacets: 12

Facets: 6

Volumes: 2


What is Simple yes/no and Valid yes/no?

What are Halfedges and or Halffacets? And why are they important? When would they be different than twice the number of Facets?


My two cents,

TakeItAndRun

P.S.: I just read the TODO ( https://github.com/openscad/openscad/blob/master/doc/TODO.txt ) that Marius updated last week: There seems to be work for many tens (hundreds) of man-years. :)


 
--
[hidden email]

P.S. Falls meine E-Mail kürzer ausfällt als Dir angenehm ist:
Ich probiere gerade aus kurze Antworten statt gar keine Antworten zu schreiben.
Wenn Du gerne mehr lesen möchtest, dann lass es mich bitte wissen.

P.S. In case my e-mail is shorter than you enjoy:
I am currently trying short replies instead of no replies at all.
Please let me know, if you like to read more.

Enjoy!
Reply | Threaded
Open this post in threaded view
|

Re: console output: explanation needed?

nophead
And why always two volumes for one object?

On 4 February 2013 13:48, Peter Falke <[hidden email]> wrote:
Hi guys,

Is there an explanation of the output of the console available anywhere?

Me thinks it would be helpful to have a summery of all the error and warning messages and what to do in the manual.
Is there a place in the code that they are all listed?

Also I dont quiet know what the meaning of the following is: (The object was done with: cube(); )


Top level object is a 3D object:

Simple: yes

Valid: yes

Vertices: 8

Halfedges: 24

Edges: 12

Halffacets: 12

Facets: 6

Volumes: 2


What is Simple yes/no and Valid yes/no?

What are Halfedges and or Halffacets? And why are they important? When would they be different than twice the number of Facets?


My two cents,

TakeItAndRun

P.S.: I just read the TODO ( https://github.com/openscad/openscad/blob/master/doc/TODO.txt ) that Marius updated last week: There seems to be work for many tens (hundreds) of man-years. :)


 
--
[hidden email]

P.S. Falls meine E-Mail kürzer ausfällt als Dir angenehm ist:
Ich probiere gerade aus kurze Antworten statt gar keine Antworten zu schreiben.
Wenn Du gerne mehr lesen möchtest, dann lass es mich bitte wissen.

P.S. In case my e-mail is shorter than you enjoy:
I am currently trying short replies instead of no replies at all.
Please let me know, if you like to read more.

Enjoy!

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566

Reply | Threaded
Open this post in threaded view
|

Re: console output: explanation needed?

Giles Bathgate-2
On 4 February 2013 13:50, nop head <[hidden email]> wrote:
And why always two volumes for one object?

The closed interior volume, and the infinite exterior volume...

...Also, CGAL represents facets using 2 halffacets, the facet facing the closed interior volume and the facet facing the exterior. And Finally CGAL represents edges using halfedges, the halfedge facing into the interior of the facet, and the halfedge facing to the exterior of the facet. i.e. in most cases for every edge there is 2 halfedges, and for every facet there is 2 half-facets.

I believe the simple and valid have something to do with whether the shape is 2-manifold. If the shape is not 2-manifold the number of facets halffacets edges and halfedges should help you figure out why.

Regards,
Giles
Reply | Threaded
Open this post in threaded view
|

Re: console output: explanation needed?

Peter Falke
Hi,

thanks Giles for the explanation of halffacets and halfedges in CGAL.

I like the concept of a "infinite exterior volume", but for clarification OpenSCAD should do an internal decrement Volumes before outputting it to the console.

I played around a bit with:

cube();

translate(-[1,1,1])cube();


This will give the console output:


Module cache size: 0 modules

Compiling design (CSG Tree generation)...

Rendering Polygon Mesh using CGAL...

PolySets in cache: 1

PolySet cache size in bytes: 896

CGAL Polyhedrons in cache: 5

CGAL cache size in bytes: 33624

Top level object is a 3D object:

Simple: no

Valid: yes

Vertices: 15

Halfedges: 48

Edges: 24

Halffacets: 24

Facets: 12

Volumes: 3

Total rendering time: 0 hours, 0 minutes, 0 seconds

Rendering finished.


(Note: "Vertices: 15" is the indicator for the problem, 2 cubes should have 16 corners)


And the stl-export will now fail with:


Object isn't a valid 2-manifold! Modify your design. See http://en.wikibooks.org/wiki/OpenSCAD_User_Manual/STL_Import_and_Export


Now, I remember that happening to me on a real design before. I was checking with F5 while I designed it - thus everything looked fine. I did a F6 and missed the little word "no". Later when I tried to generate the STL I got the error message. By then it was hard to track down were I had made a mistake.


To solve (improve) this, would it be possible for F5 to display a warning if a thing will not be two-manifold when later doing F6?


And if F6 leads to "Simple: no", could then be a proper warning be generated, like:


Warning: Object isn't a valid 2-manifold!


?


Sincerely,


TakeItAndRun


On 4 February 2013 17:07, Giles Bathgate <[hidden email]> wrote:
On 4 February 2013 13:50, nop head <[hidden email]> wrote:
And why always two volumes for one object?

The closed interior volume, and the infinite exterior volume...

...Also, CGAL represents facets using 2 halffacets, the facet facing the closed interior volume and the facet facing the exterior. And Finally CGAL represents edges using halfedges, the halfedge facing into the interior of the facet, and the halfedge facing to the exterior of the facet. i.e. in most cases for every edge there is 2 halfedges, and for every facet there is 2 half-facets.

I believe the simple and valid have something to do with whether the shape is 2-manifold. If the shape is not 2-manifold the number of facets halffacets edges and halfedges should help you figure out why.

Regards,
Giles

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
[hidden email]

P.S. Falls meine E-Mail kürzer ausfällt als Dir angenehm ist:
Ich probiere gerade aus kurze Antworten statt gar keine Antworten zu schreiben.
Wenn Du gerne mehr lesen möchtest, dann lass es mich bitte wissen.

P.S. In case my e-mail is shorter than you enjoy:
I am currently trying short replies instead of no replies at all.
Please let me know, if you like to read more.

Enjoy!