error compiling active-data

karim

CAD community veteran
I got an error while compiling active data (analysis situs) on debian. here is the error:

active-data/src/ActiveData/Mesh/DS/ActData_Mesh.cpp:56:44: error: ‘class Poly_Triangulation’ has no member named ‘Nodes’; did you mean ‘Node’?
for ( int node_idx = 1; node_idx <= tri->Nodes().Length(); ++node_idx )
^~~~~
Node
 

Quaoar

Administrator
Staff member
I got an error while compiling active data (analysis situs) on debian. here is the error:

active-data/src/ActiveData/Mesh/DS/ActData_Mesh.cpp:56:44: error: ‘class Poly_Triangulation’ has no member named ‘Nodes’; did you mean ‘Node’?
for ( int node_idx = 1; node_idx <= tri->Nodes().Length(); ++node_idx )
^~~~~
Node
Which version of OpenCascade do you use? I should have warned you that Analysis Situs and stuff requires version 7.4.
 

karim

CAD community veteran
What does manifold means in Computational Geometry ? Does it have an specific meaning or is it the same as in tensor calculus or topology ?
 

Quaoar

Administrator
Staff member
What does manifold means in Computational Geometry ? Does it have an specific meaning or is it the same as in tensor calculus or topology ?
It's the topological term meaning that the vicinity of a point is locally homeomorphic to a disk. For edges, at the level of a data structure, it might be simplified to the requirement that an edge belongs strictly to two faces.
 

karim

CAD community veteran
regarding the fem prototype document, when we store element properties or assignment, do you think it is ok to store objects (c++ class objects) or pure date such as floats or ints ?
oW7ulRdr174M6ehnzbavBsyw_3fbh9ihs6JaDOkUQaHhVqW8S5bOclUaT-NHZHKU5iK5DuVpJRYL3uQlzsEzldMMC1H86KjoGgQ-HLdIQc334EW1Kb4LIAQqOEQZ7cZGWGB3kXGa

I mean I can have class Material() or just Material properties such as E, G, Nu and so on added to material section. which is the prefered way and why ?
 

Quaoar

Administrator
Staff member
I mean I can have class Material() or just Material properties such as E, G, Nu and so on added to material section. which is the prefered way and why ?
@karim In my opinion, it's always better to work with object abstraction/interfaces. The approach that I tried to explain in the last video related to OCAF is all about this. You organize your OCAF/database the way you like and then provide a data access object that knows how to interpret it. This principle is common for OCAF. So you might end up with something like IMaterial object providing all the methods like GetNu(), etc. I'm not sure there's any good alternative to object-oriented design (OOD) as such. What OOD essentially does is the incapsulation of your data organization logic in one place which is kind of a black box for the caller code. That's good for modularity and the latter is the holy grail of a robust and extensible system.

I know it all sounds like typical idiomatic bullshit, but if you ask some more specific questions I could try to expand.
 

karim

CAD community veteran
It sounds good advice to me, and I like the approach. I dont have a lot of experince with large projects. None to be exact and I have written mostly numerical computational codes. So I am diping my foot in these waters with a good deal of fear. thanks.
 

Quaoar

Administrator
Staff member
It sounds good advice to me, and I like the approach. I dont have a lot of experince with large projects. None to be exact and I have written mostly numerical computational codes. So I am diping my foot in these waters with a good deal of fear. thanks.
I once worked with javascript calculations code embedded somehow into Ansys Workbench. It was tons of pain ;) Having a good CAE framework is quite demanded I'd guess but that should be a hell of work.
 
Top