Consider moving spatial methods from Analytical_Engine to Spatial_Engine #1072
Replies: 1 comment 1 reply
-
I think I would be against simply implementing methods taking Analytical objects in Spatial_Engine. I believe that will only solve the result of the problem, and not its source. Taking I believe we should start from mapping it all out, as started at some point by @kThorsager and @al-fisher. The diagram of relationships should drive the location of each method, with as few exceptions as possible. |
Beta Was this translation helpful? Give feedback.
-
Wondering if it would be worth migrating some of the methods in Analytical_Engine that are targeting the Analytical interfaces to do spatial operations from Analytical_Engine to Spatial_Engine.
Main benefit it would give is that it would make us crowd around the Spatial namespace even more heavily for things that are spatial. Engineers have to ask themselves less "what is the level of the interface I have to look for for this to work" etc.
There is also a secondary benefit of some potential performance boost for a few cases, as RunExtensionMethod could be avoided by having a layer of dynamic casting before, picking up the analytical interfaces straight away. This is ofc secondary though, and should not be at the core of the decision.
Argument against would be that we would need to add a dependency on Analytical_oM in the Spatial_Engine, which is kind of incorrect as Spatial sits below Analytical in general. Another argument against would be that you do not find the methods for the analytical objects (or interfaces) in analytical_Engine, but rather in spatial, but that could be counteracted by the argument that we want to cull out methods for getting Area and similar from the Structural and Environmental engines.
This would basically target all of the current methods in the analytical engine (writing this before the work on graphs by @rolyhudson has been merged in).
Any thoughts on the above, @al-fisher @FraserGreenroyd @pawelbaran @LMarkowski @rolyhudson @adecler ?
Beta Was this translation helpful? Give feedback.
All reactions