Restructure modules in python bindings
Within the c++ core of frackit
, distribution of these functionalities over different folders seems justified, especially because the geometry folder is already quite full. In the Python bindings, however, it seems better to not have to write:
from frackit.geometry import Cylinder
from frackit.magnitude import computeMagnitude
cyl = Cylinder(0.5, 1.0)
cylVol = computeMagnitude(cyl)
Since length/area/volume computation is an operation on geometries, within python I guess it is nicer to write:
from frackit.geometry import Cylinder, computeMagnitude
cyl = Cylinder(0.5, 1.0)
cylVol = computeMagnitude(cyl)
That is, the geometry module contains the functions on magnitude computation. The "drawback" is, that computeMagnitude
also works on wrappers around OpenCascade shapes, but these wrappers are not part of the geometry
module yet -> they are part of occutilities
. intersection
is currently also its own module.
The organization of the python modules should be rethought, either intersection stuff should also be moved to geometry, or magnitude
, area
, volume
, length
, 'distance` etc should be collected in another module.