[Gcblue-commits] gcb_wx/src/graphics tcCreditView.cpp,1.9,1.10 tcMapView.cpp,1.9,1.10
Status: Alpha
Brought to you by:
ddcforge
|
From: Dewitt C. <ddc...@us...> - 2004-12-05 02:49:57
|
Update of /cvsroot/gcblue/gcb_wx/src/graphics In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20399/src/graphics Modified Files: tcCreditView.cpp tcMapView.cpp Log Message: Sonar work, passive sonar, torpedoes Index: tcMapView.cpp =================================================================== RCS file: /cvsroot/gcblue/gcb_wx/src/graphics/tcMapView.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** tcMapView.cpp 23 Nov 2004 23:30:55 -0000 1.9 --- tcMapView.cpp 5 Dec 2004 02:49:47 -0000 1.10 *************** *** 1296,1300 **** --- 1296,1365 ---- } + return symbol; + } + + /** + * Creates osg::Geometry object for requested NTDS symbol + */ + osg::Geometry* tcTacticalMapView::DrawNTDSTorpedo(teAffiliation affil) + { + float w = 8.0f; + osg::Geometry* symbol = CreateSymbolGeometry(); + + // set color + osg::Vec4Array* colors = new osg::Vec4Array; + colors->push_back(GetAffiliationColor(affil)); + symbol->setColorArray(colors); + symbol->setColorBinding(osg::Geometry::BIND_OVERALL); + + // create vertex array + osg::Vec3Array* vertices = new osg::Vec3Array; + symbol->setVertexArray(vertices); + + + switch (affil) + { + case FRIENDLY: + case NEUTRAL: + { + AddArcPrimitive(symbol, vertices, 0, 0, 2*w, -2*w, -90, 90, 32); + break; + } + case UNKNOWN: + { + vertices->push_back(osg::Vec3(w, 0, 0)); + vertices->push_back(osg::Vec3(w, -w, 0)); + vertices->push_back(osg::Vec3(-w, -w, 0)); + vertices->push_back(osg::Vec3(-w, 0, 0)); + + symbol->addPrimitiveSet(new osg::DrawArrays(GL_LINE_STRIP,0,4)); + break; + } + case HOSTILE: + { + vertices->push_back(osg::Vec3(w, 0, 0)); + vertices->push_back(osg::Vec3(0, -w, 0)); + vertices->push_back(osg::Vec3(-w, 0, 0)); + + symbol->addPrimitiveSet(new osg::DrawArrays(GL_LINE_STRIP,0,3)); + break; + } + default: + { + fprintf(stderr, "Error - tcTacticalMapView::DrawNTDSSubsurface\n"); + } + } + + // add "T" + size_t v_idx = vertices->size(); + vertices->push_back(osg::Vec3(-0.65*w, -0.2*w, 0)); + vertices->push_back(osg::Vec3(0.65*w, -0.2*w, 0)); + vertices->push_back(osg::Vec3(0, -0.2*w, 0)); + vertices->push_back(osg::Vec3(0, -1.1*w, 0)); + + symbol->addPrimitiveSet(new osg::DrawArrays(GL_LINES, v_idx, 4)); + + return symbol; } *************** *** 1328,1331 **** --- 1393,1399 ---- osg::Geometry* pSub = DrawNTDSSubsurface((teAffiliation)nAffiliation); + // torpedo + osg::Geometry* pTorpedo = DrawNTDSTorpedo((teAffiliation)nAffiliation); + *************** *** 1356,1359 **** --- 1424,1429 ---- break; case SYMBOL_TORPEDO: + pSymbol = pTorpedo; + break; case SYMBOL_SUBSURFACE: case SYMBOL_SUBMARINE: *************** *** 1407,1410 **** --- 1477,1483 ---- osg::Geometry* pAir = CreateTexturedSymbol(zBuff); + sprintf(zBuff,"air_rw%s",zAffil); + osg::Geometry* pHelo = CreateTexturedSymbol(zBuff); + sprintf(zBuff,"missile%s",zAffil); osg::Geometry* pMissile = CreateTexturedSymbol(zBuff); *************** *** 1416,1419 **** --- 1489,1496 ---- osg::Geometry* pSub = CreateTexturedSymbol(zBuff); + sprintf(zBuff,"torp%s",zAffil); + osg::Geometry* pTorpedo = CreateTexturedSymbol(zBuff); + + osg::Geometry* pUnknown = CreateTexturedSymbol("unknown.png"); *************** *** 1435,1438 **** --- 1512,1517 ---- break; case SYMBOL_HELO: + pSymbol = pHelo; + break; case SYMBOL_AIR: case SYMBOL_FIXEDWING: *************** *** 1440,1443 **** --- 1519,1524 ---- break; case SYMBOL_TORPEDO: + pSymbol = pTorpedo; + break; case SYMBOL_SUBSURFACE: case SYMBOL_SUBMARINE: Index: tcCreditView.cpp =================================================================== RCS file: /cvsroot/gcblue/gcb_wx/src/graphics/tcCreditView.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** tcCreditView.cpp 7 Nov 2004 03:40:44 -0000 1.9 --- tcCreditView.cpp 5 Dec 2004 02:49:47 -0000 1.10 *************** *** 267,270 **** --- 267,271 ---- } + #ifdef _DEBUG static unsigned int frameCount = 0; wxString infoString = wxString::Format("%d Y:%f\n", frameCount, fY); *************** *** 272,275 **** --- 273,277 ---- DrawText(infoString.c_str(), 10, 10, defaultFont.get(), nColorBright, 16.0f, LEFT_BASE_LINE); + #endif DrawBorder(); |