MCPcopy Create free account
hub / github.com/OpenSees/OpenSees / getDisplayCrds

Method getDisplayCrds

DEVELOPER/core/Node.cpp:2338–2382  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2336}
2337
2338int
2339Node::getDisplayCrds(Vector &res, double fact, int mode)
2340{
2341 int ndm = Crd->Size();
2342 int resSize = res.Size();
2343
2344 if (resSize < ndm)
2345 return -1;
2346
2347 if (mode < 0) {
2348 int eigenMode = -mode;
2349 if ((theEigenvectors != 0) && ((*theEigenvectors).noCols() > eigenMode)) {
2350 if (displayLocation != 0)
2351 for (int i=0; i<ndm; i++)
2352 res(i) = (*displayLocation)(i)+(*theEigenvectors)(i,eigenMode-1)*fact;
2353 else
2354 for (int i=0; i<ndm; i++)
2355 res(i) = (*Crd)(i)+(*theEigenvectors)(i,eigenMode-1)*fact;
2356 }
2357 } else {
2358
2359 if (commitDisp != 0) {
2360 if (displayLocation != 0)
2361 for (int i=0; i<ndm; i++)
2362 res(i) = (*displayLocation)(i)+(*commitDisp)(i)*fact;
2363 else
2364 for (int i=0; i<ndm; i++)
2365 res(i) = (*Crd)(i)+(*commitDisp)(i)*fact;
2366 } else {
2367 if (displayLocation != 0)
2368 for (int i=0; i<ndm; i++)
2369 res(i) = (*displayLocation)(i);
2370 else
2371 for (int i=0; i<ndm; i++)
2372 res(i) = (*Crd)(i);
2373 }
2374
2375 }
2376
2377 // zero rest
2378 for (int i=ndm; i<resSize; i++)
2379 res(i) = 0;
2380
2381 return 0;
2382}
2383
2384int
2385Node::setDisplayCrds(const Vector &theCrds)

Callers 1

displaySelfMethod · 0.95

Calls 2

SizeMethod · 0.45
noColsMethod · 0.45

Tested by

no test coverage detected