Where is the documentation/paper for active data ?

karim

CAD community veteran
Do I have to look at the resulting BinOcaf file with inspector ? or should I use something else. I created a simple model but I can not make heads or tails with inspector !!!
Many feilds that does not make sense at all.
It looks a bit like some unsync issue. Have you stepped into the code again (to this CDF_StoreList or something) to see if it really is the "BinOcaf" that's being searched for?

Other than that, you can try setting up the binary driver with

Code:
BinDrivers::DefineFormat(app);

once you have "app" as the Application. Maybe even just insert this code right into ActData_BaseModel. Something like this patch:

Code:
Handle(TDocStd_Document) ActData_BaseModel::newDocument()
{
  Handle(TDocStd_Document) aResDoc;
  BinDrivers::DefineFormat( ActData_Application::Instance() );
  ActData_Application::Instance()->NewDocument(ACTBinFormat, aResDoc);
  return aResDoc;
}

I haven't tried it, so let me know if it changes anything for you.
As soon as the issue stopped I wanted to get on with my model. So I did not dig deeper in to the issue.
 

karim

CAD community veteran
I am going through the AS code for a few days now and I am still confused about asiData_VertexNode class. I suppose this class is supposed to have xyz information and name or id of the vertex in it. but there is no parameter fields defined there. Why ? what is going on ?
 

Quaoar

Administrator
Staff member
This node is to contain the selected vertex. It's basically just a holder for the vertex ID. I don't think you need this or similar stuff because it is one of the AS's architectural things.
 

karim

CAD community veteran
This node is to contain the selected vertex. It's basically just a holder for the vertex ID. I don't think you need this or similar stuff because it is one of the AS's architectural things.
I am going through the code and I think has a lot of things I learn. Now I understand Partition, Node and the Model from active data. I am stuck there. I don't know how to proceed from here ? should I walk backwards from the asiTcl_Interp and understand the code from there ?
 

Quaoar

Administrator
Staff member
Analysis Situs is huge. It's larger than plenty of commercial software packages we developed at OCC back in the days. Why wouldn't you start developing what you need for yourself and learn the framework as you go? Starting by solving a real problem could be easier than trying to comprehend things in their entirety (and some of those are likely irrelevant to your task).

Or, if active data is clear to you, you can just design your data model with it and forget about the rest of Analysis Situs. A former colleague of mine did something like that: he started developing his own Qt+VTK software and just borrowed the architecture of visualization. Where are you right now? How far have you managed to get in developing your software?
 

karim

CAD community veteran
Analysis Situs is huge. It's larger than plenty of commercial software packages we developed at OCC back in the days. Why wouldn't you start developing what you need for yourself and learn the framework as you go? Starting by solving a real problem could be easier than trying to comprehend things in their entirety (and some of those are likely irrelevant to your task).

Or, if active data is clear to you, you can just design your data model with it and forget about the rest of Analysis Situs. A former colleague of mine did something like that: he started developing his own Qt+VTK software and just borrowed the architecture of visualization. Where are you right now? How far have you managed to get in developing your software?

I am comfortable with active data. I can derive my own data model from ActData_BaseModel. However, as I go through the code of AS and I think it is far better than what I can possibly write. I think the separation of the concern is well done. The framework solves a lot of issues. a big concern of mine is how to consistently modify mesh, which the frame work is designed to to it seems. I will start to develop my components and see what happens.
 

Quaoar

Administrator
Staff member
I am comfortable with active data. I can derive my own data model from ActData_BaseModel. However, as I go through the code of AS and I think it is far better than what I can possibly write. I think the separation of the concern is well done. The framework solves a lot of issues. a big concern of mine is how to consistently modify mesh, which the frame work is designed to to it seems. I will start to develop my components and see what happens.
Mesh modification in Analysis Situs is largely unimplemented aside from the experiments done in the `poly-*` commands (and these are largely just prototypes not working properly). We anticipate having a CAE-oriented project later this year, and hopefully that will also contribute to the open source side of things.
 

karim

CAD community veteran
@Quaoar,
Lets assume I have 4 vertices and 3 edges in a simple FEM model, and lets say I decide to use the asiEngine_Model for my data.
of course each vertex has an ID and xyz coordinates and the edges have at 2 vertices that define the start and end of the edge.
should I use the asiData_ReVertexNode Nodes to store the xyz and asiData_ReEdgeNode to store the edges ? I could not find anything else !
 

karim

CAD community veteran
I am going to ask a lot of stupid questions it seems. :(
Why asiData_ReEdge has a function to set first and last VertexIndex ? what is the use of vertexIndex ? should not a property concerning vertex be in the asiData_ReVertex ?

The reason I am atempting to use the existing code is that I dont want to re-invent the wheel.
 

karim

CAD community veteran
Why analysis situs uses the vtk rather than the cascade AIS_InteractiveService ? I had a feeling that vtk might be better for engineering applications like fem.
 

Quaoar

Administrator
Staff member
@Quaoar,
Lets assume I have 4 vertices and 3 edges in a simple FEM model, and lets say I decide to use the asiEngine_Model for my data.
of course each vertex has an ID and xyz coordinates and the edges have at 2 vertices that define the start and end of the edge.
should I use the asiData_ReVertexNode Nodes to store the xyz and asiData_ReEdgeNode to store the edges ? I could not find anything else !
Well, actually, the way Active Data is supposed to work is that you create your own "Model" class and populate it with your own classes to represent your domain objects. I'm pretty sure you don't need all these Vertex/Edge/Coedge/whatever nodes as they are all tailored to the [specific] architecture of Analysis Situs. This software provides interactive inspection tools for a CAD model, and that's why its Nodes store indices of the current selection, different visual artifacts, and what not. It's not that you just reuse the data objects from Analysis Situs. The right way would be to create your own Nodes and clean up everything else in the Analysis Situs codebase (if you want to reuse it to the maximum extent).
 

Quaoar

Administrator
Staff member
Why analysis situs uses the vtk rather than the cascade AIS_InteractiveService ? I had a feeling that vtk might be better for engineering applications like fem.
VTK is, indeed, better for FEM. As for AIS, I personally find it quite horrible, but I know that others do not share this opinion (ask @natalia). Moreover, AIS is pretty good from the performance point of view. I wouldn't even start smth like CAD Processor or CAD Assistant on VTK mainly because of performance. Read this topic: http://analysissitus.org/forum/index.php?threads/vtk-vs-ais.45/
 
Top