how touse sap2000 API getnamelist

5 vues (au cours des 30 derniers jours)
Tudor
Tudor le 3 Avr 2013
Commenté : Morteza Dehghani le 13 Août 2014
Hello
I'm working on a project and I need to get all the point names (because SAP doesen't name points in an order) from the SAP model in matlab so i can use them after that.
My code so far in this section is:
feature('COM_SafeArraySingleDim', 1);
feature('COM_PassSafeArrayByRef', 1);
SapObject = actxserver('Sap2000v15.SapObject');
SapObject.ApplicationStart;
Sap = SapObject.SapModel;
% open and run file
ret = Sap.File.OpenFile('F:\Faculta\_Dizertatie\matlab\DDBD\SAP\exemplu cadru.sdb');
ret = Sap.Analyze.RunAnalysis();
countP= Sap.PointElm.Count;
PCTs= zeros(1,1); (I tried alot here, but haven't found the right one)
[ret,PCTs] = Sap.FrameObj.GetNameList(countP,PCTs);
The count is getting the corect number of points but I don't get the list of point names
And i also have a question, what is the diference between element and object (point, frame...)
I keep getting as a result => rect = 0 ; PCTs = 104
If someone can tell me what am i doing wrong I will be verfy gratefull.
  1 commentaire
Morteza Dehghani
Morteza Dehghani le 13 Août 2014
You may try this:
PCTs = cellstr(' ');
[ret,PCTs] = Sap.FrameObj.GetNameList(countP,PCTs);
I guess that the point ID is string and you should store it in cell in case if they do not have the same length.

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Deep Learning Toolbox dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by