本文整理汇总了C++中oofegGraphicContext::getLandScale方法的典型用法代码示例。如果您正苦于以下问题:C++ oofegGraphicContext::getLandScale方法的具体用法?C++ oofegGraphicContext::getLandScale怎么用?C++ oofegGraphicContext::getLandScale使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类oofegGraphicContext
的用法示例。
在下文中一共展示了oofegGraphicContext::getLandScale方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: drawScalar
void
Quad10_2D_SUPG :: drawScalar(oofegGraphicContext &gc, TimeStep *tStep)
{
int i, indx, result = 0;
WCRec p [ 3 ];
GraphicObj *tr;
FloatArray v1, v2, v3;
double s [ 3 ];
if ( !gc.testElementGraphicActivity(this) ) {
return;
}
EASValsSetLayer(OOFEG_VARPLOT_PATTERN_LAYER);
// if ((gc.giveIntVarMode() == ISM_local) && (gc.giveIntVarType() == IST_VOFFraction)) {
if ( ( gc.giveIntVarType() == IST_VOFFraction ) && ( gc.giveIntVarMode() == ISM_local ) ) {
Polygon matvolpoly;
//this->formMaterialVolumePoly(matvolpoly, NULL, temp_normal, temp_p, false);
EASValsSetColor( gc.getStandardSparseProfileColor() );
//GraphicObj *go = matvolpoly.draw(gc,true,OOFEG_VARPLOT_PATTERN_LAYER);
matvolpoly.draw(gc, true, OOFEG_VARPLOT_PATTERN_LAYER);
return;
}
if ( gc.giveIntVarMode() == ISM_recovered ) {
result += this->giveInternalStateAtNode(v1, gc.giveIntVarType(), gc.giveIntVarMode(), 1, tStep);
result += this->giveInternalStateAtNode(v2, gc.giveIntVarType(), gc.giveIntVarMode(), 2, tStep);
result += this->giveInternalStateAtNode(v3, gc.giveIntVarType(), gc.giveIntVarMode(), 3, tStep);
} else if ( gc.giveIntVarMode() == ISM_local ) {
GaussPoint *gp = integrationRulesArray [ 0 ]->getIntegrationPoint(0);
result += giveIPValue(v1, gp, gc.giveIntVarType(), tStep);
v2 = v1;
v3 = v1;
result *= 3;
}
if ( result != 3 ) {
return;
}
indx = gc.giveIntVarIndx();
s [ 0 ] = v1.at(indx);
s [ 1 ] = v2.at(indx);
s [ 2 ] = v3.at(indx);
EASValsSetLayer(OOFEG_VARPLOT_PATTERN_LAYER);
if ( gc.getScalarAlgo() == SA_ISO_SURF ) {
for ( i = 0; i < 3; i++ ) {
p [ i ].x = ( FPNum ) this->giveNode(i + 1)->giveCoordinate(1);
p [ i ].y = ( FPNum ) this->giveNode(i + 1)->giveCoordinate(2);
p [ i ].z = 0.;
}
//EASValsSetColor(gc.getYieldPlotColor(ratio));
gc.updateFringeTableMinMax(s, 3);
tr = CreateTriangleWD3D(p, s [ 0 ], s [ 1 ], s [ 2 ]);
EGWithMaskChangeAttributes(LAYER_MASK, tr);
EMAddGraphicsToModel(ESIModel(), tr);
} else if ( ( gc.getScalarAlgo() == SA_ZPROFILE ) || ( gc.getScalarAlgo() == SA_COLORZPROFILE ) ) {
double landScale = gc.getLandScale();
for ( i = 0; i < 3; i++ ) {
p [ i ].x = ( FPNum ) this->giveNode(i + 1)->giveCoordinate(1);
p [ i ].y = ( FPNum ) this->giveNode(i + 1)->giveCoordinate(2);
p [ i ].z = s [ i ] * landScale;
}
if ( gc.getScalarAlgo() == SA_ZPROFILE ) {
EASValsSetColor( gc.getDeformedElementColor() );
EASValsSetLineWidth(OOFEG_DEFORMED_GEOMETRY_WIDTH);
EASValsSetFillStyle(FILL_SOLID);
tr = CreateTriangle3D(p);
EGWithMaskChangeAttributes(WIDTH_MASK | COLOR_MASK | FILL_MASK | LAYER_MASK, tr);
} else {
gc.updateFringeTableMinMax(s, 3);
EASValsSetFillStyle(FILL_SOLID);
tr = CreateTriangleWD3D(p, s [ 0 ], s [ 1 ], s [ 2 ]);
EGWithMaskChangeAttributes(FILL_MASK | LAYER_MASK, tr);
}
EMAddGraphicsToModel(ESIModel(), tr);
}
}
示例2: drawScalar
void Truss1d :: drawScalar(oofegGraphicContext &gc, TimeStep *tStep)
{
int i, indx, result = 0;
WCRec p [ 2 ];
GraphicObj *tr;
FloatArray v1, v2;
double s [ 2 ], defScale;
if ( !gc.testElementGraphicActivity(this) ) {
return;
}
if ( gc.giveIntVarMode() == ISM_recovered ) {
result += this->giveInternalStateAtNode(v1, gc.giveIntVarType(), gc.giveIntVarMode(), 1, tStep);
result += this->giveInternalStateAtNode(v2, gc.giveIntVarType(), gc.giveIntVarMode(), 2, tStep);
} else if ( gc.giveIntVarMode() == ISM_local ) {
GaussPoint *gp = integrationRulesArray [ 0 ]->getIntegrationPoint(0);
result += giveIPValue(v1, gp, gc.giveIntVarType(), tStep);
v2 = v1;
result *= 2;
}
if ( result != 2 ) {
return;
}
indx = gc.giveIntVarIndx();
s [ 0 ] = v1.at(indx);
s [ 1 ] = v2.at(indx);
EASValsSetLayer(OOFEG_VARPLOT_PATTERN_LAYER);
if ( ( gc.getScalarAlgo() == SA_ISO_SURF ) || ( gc.getScalarAlgo() == SA_ISO_LINE ) ) {
for ( i = 0; i < 2; i++ ) {
if ( gc.getInternalVarsDefGeoFlag() ) {
// use deformed geometry
defScale = gc.getDefScale();
p [ i ].x = ( FPNum ) this->giveNode(i + 1)->giveUpdatedCoordinate(1, tStep, defScale);
p [ i ].y = 0.;
p [ i ].z = 0.;
} else {
p [ i ].x = ( FPNum ) this->giveNode(i + 1)->giveCoordinate(1);
p [ i ].y = 0.;
p [ i ].z = 0.;
}
}
//EASValsSetColor(gc.getYieldPlotColor(ratio));
tr = CreateLine3D(p);
EGWithMaskChangeAttributes(LAYER_MASK, tr);
EMAddGraphicsToModel(ESIModel(), tr);
} else if ( ( gc.getScalarAlgo() == SA_ZPROFILE ) || ( gc.getScalarAlgo() == SA_COLORZPROFILE ) ) {
double landScale = gc.getLandScale();
for ( i = 0; i < 2; i++ ) {
if ( gc.getInternalVarsDefGeoFlag() ) {
// use deformed geometry
defScale = gc.getDefScale();
p [ i ].x = ( FPNum ) this->giveNode(i + 1)->giveUpdatedCoordinate(1, tStep, defScale);
p [ i ].y = 0.0;
p [ i ].z = s [ i ] * landScale;
} else {
p [ i ].x = ( FPNum ) this->giveNode(i + 1)->giveCoordinate(1);
p [ i ].y = 0.0;
p [ i ].z = s [ i ] * landScale;
}
}
if ( gc.getScalarAlgo() == SA_ZPROFILE ) {
/*
* EASValsSetColor(gc.getDeformedElementColor());
* EASValsSetLineWidth(OOFEG_DEFORMED_GEOMETRY_WIDTH);
* tr = CreateLine3D(p);
* EGWithMaskChangeAttributes(WIDTH_MASK | COLOR_MASK | LAYER_MASK, tr);
*/
WCRec pp [ 4 ];
pp [ 0 ].x = p [ 0 ].x;
pp [ 0 ].y = 0.0;
pp [ 0 ].z = 0.0;
pp [ 1 ].x = p [ 0 ].x;
pp [ 1 ].y = 0.0;
pp [ 1 ].z = p [ 0 ].z;
pp [ 2 ].x = p [ 1 ].x;
pp [ 2 ].y = 0.0;
pp [ 2 ].z = p [ 1 ].z;
pp [ 3 ].x = p [ 1 ].x;
pp [ 3 ].y = 0.0;
pp [ 3 ].z = 0.0;
tr = CreateQuad3D(pp);
EASValsSetLineWidth(OOFEG_DEFORMED_GEOMETRY_WIDTH);
EASValsSetColor( gc.getDeformedElementColor() );
//EASValsSetLayer(OOFEG_DEFORMED_GEOMETRY_LAYER);
EASValsSetFillStyle(FILL_HOLLOW);
EGWithMaskChangeAttributes(WIDTH_MASK | FILL_MASK | COLOR_MASK | LAYER_MASK, tr);
EMAddGraphicsToModel(ESIModel(), tr);
} else {
//tr = CreateTriangleWD3D(p, s[0], s[1], s[2]);
EASValsSetColor( gc.getDeformedElementColor() );
tr = CreateLine3D(p);
//.........这里部分代码省略.........