sofa icon indicating copy to clipboard operation
sofa copied to clipboard

Remove dependencies on Sofa.Component.Topology-related class

Open fredroy opened this issue 4 years ago • 3 comments

Almost all modules needs Sofa.BaseTopology because of:

  • TopologyData (topology changes) is included by a lot of components
  • a lot of components who wants to use Topology are using *SetTopologyContainer instead of BaseMeshTopology or TopologyContainer abstractions
  • people who wants to call some geometry-related algorithms is using *SetGeometryAlgorithms.

Obviously, some components still needs to use *SetTopologyContainer, *GeometryAlgorithms or *TopologyModifier, and will still need to depend of Sofa.BaseTopology. But 90% could avoid this dependency.

Resolving those dependencies could lead to use much more easily different type of topologies (e.g darts-based topology)

(also related to SOFA-NG, as a lot of families of components needs Sofa.Component.Topology and could avoid that as well)

fredroy avatar Oct 12 '21 08:10 fredroy

Still valid for v23.06, but changing the title to reflect the change of architecture/renaming

fredroy avatar Apr 07 '23 02:04 fredroy

Is this issue to guide devs @fredroy ?

hugtalbot avatar May 31 '23 09:05 hugtalbot

Let's say it is a target (one would say a dream) to achieve more than a guide 😅

fredroy avatar May 31 '23 23:05 fredroy