Hi Gilles,

I like that idea. I'm picturing that as something that could happen after the 
first beta release. Here is my current roadmap (of sorts):


  1.  Wrap up a few issues (GEOMETRY-92, 93, and 94)
  2.  Release 1.0-beta1
  3.  Add model-specific example code as you have started with the examples-io 
module. This would include fleshing out a Mesh class and adding readers and 
writers for various formats. (I specifically want to add support for obj and 
stl files since I use those in my day job.) There is a lot of cool stuff we 
could do here.
  4.  Work on performance improvements, with a focus on the BSP tree classes.
  5.  Implement bug fixes and other improvements from 1.0-beta1.
  6.  Update/rewrite the userguide as you have mentioned.
  7.  Release 1.0-beta2 (or 1.0 if the API seems solid at that point).

Thoughts?

(Also, the paper you referenced looks very interesting. I'll try to take a 
look. We currently have CSG functionality implemented using BSP trees but I'm 
interested to see what they have to say. The primary reference for our 
implementation, and the original commons-math one, is 
http://www.cs.yorku.ca/~amana/research/bsptSetOp.pdf.)

-Matt
________________________________
From: Gilles Sadowski <gillese...@gmail.com>
Sent: Friday, April 17, 2020 10:46 AM
To: Commons Developers List <dev@commons.apache.org>
Subject: [Geometry] CSG?

Hello.

I guess that the [Geometry] code is readily usable as described
in e.g. this paper:
    
https://www.semanticscholar.org/paper/Constructive-Solid-Geometry-Using-BSP-Tree-Segura-Stine/eeb5014f86750c54a87f214b03246799e970d114

If so, it would help BSP newbies (like me) if the userguide followed
the approach where "Constructive Solid Geometry" examples are
used to gradually introduce the more abstract concepts.  [Whereas
currently, the userguide rather follows the code layout (more or less
being a summary of the auto-generated API docs) from which it is
not obvious where one should start to get something useful done.]

To illustrate the concepts, the userguide should probably include
pictures, and indicate how one could actually see one's work, i.e.
how to go from BSP to standard file formats, for visualization.[1]

IOW, it seems to me[2] that the userguide should start with
1. how to define "primitive" shapes,
2. how to combine them (CSG),
3. how to transform them,
4. how to load/save them, and how those "models" might be
different from those created programmatically (e.g. "mesh"
vs "BSP tree").

WDYT?

Best,
Gilles

[1] Commit
    
https://gitbox.apache.org/repos/asf?p=commons-geometry.git;a=commit;h=bf3db751335d75d76f49b4c3c55865d0f4f95f23
was a step in that direction.
[2] Maybe because that's what I'm looking for. ;-)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to