From 00d8ce7a487e08df0f763830d0a34e8dd003e664 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Fri, 26 Sep 2003 20:14:30 +0000 Subject: [PATCH] Changed std::vector<>::at(i) array access usage to straight [i] to keep things compiling on gcc 2.x serious --- src/osgUtil/TangentSpaceGenerator.cpp | 84 +++++++++++++-------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/src/osgUtil/TangentSpaceGenerator.cpp b/src/osgUtil/TangentSpaceGenerator.cpp index 0d892fe4e..3f55eca4d 100644 --- a/src/osgUtil/TangentSpaceGenerator.cpp +++ b/src/osgUtil/TangentSpaceGenerator.cpp @@ -113,9 +113,9 @@ void TangentSpaceGenerator::generate(osg::Geometry *geo, int normal_map_tex_unit // the triangle normal's direction for (i=0; iat(i); - osg::Vec4 &vB = B_->at(i); - osg::Vec4 &vN = N_->at(i); + osg::Vec4 &vT = (*T_)[i]; + osg::Vec4 &vB = (*B_)[i]; + osg::Vec4 &vN = (*N_)[i]; osg::Vec3 txN = osg::Vec3(vT.x(), vT.y(), vT.z()) ^ osg::Vec3(vB.x(), vB.y(), vB.z()); @@ -147,23 +147,23 @@ void TangentSpaceGenerator::compute_basis_vectors(osg::PrimitiveSet *pset, const { case osg::Array::Vec2ArrayType: for (i=0; i<2; ++i) { - P1.ptr()[i] = static_cast(vx)->at(iA).ptr()[i]; - P2.ptr()[i] = static_cast(vx)->at(iB).ptr()[i]; - P3.ptr()[i] = static_cast(vx)->at(iC).ptr()[i]; + P1.ptr()[i] = static_cast(*vx)[iA].ptr()[i]; + P2.ptr()[i] = static_cast(*vx)[iB].ptr()[i]; + P3.ptr()[i] = static_cast(*vx)[iC].ptr()[i]; } break; case osg::Array::Vec3ArrayType: - P1 = static_cast(vx)->at(iA); - P2 = static_cast(vx)->at(iB); - P3 = static_cast(vx)->at(iC); + P1 = static_cast(*vx)[iA]; + P2 = static_cast(*vx)[iB]; + P3 = static_cast(*vx)[iC]; break; case osg::Array::Vec4ArrayType: for (i=0; i<3; ++i) { - P1.ptr()[i] = static_cast(vx)->at(iA).ptr()[i]; - P2.ptr()[i] = static_cast(vx)->at(iB).ptr()[i]; - P3.ptr()[i] = static_cast(vx)->at(iC).ptr()[i]; + P1.ptr()[i] = static_cast(*vx)[iA].ptr()[i]; + P2.ptr()[i] = static_cast(*vx)[iB].ptr()[i]; + P3.ptr()[i] = static_cast(*vx)[iC].ptr()[i]; } break; @@ -178,24 +178,24 @@ void TangentSpaceGenerator::compute_basis_vectors(osg::PrimitiveSet *pset, const switch (tx->getType()) { case osg::Array::Vec2ArrayType: - uv1 = static_cast(tx)->at(iA); - uv2 = static_cast(tx)->at(iB); - uv3 = static_cast(tx)->at(iC); + uv1 = static_cast(*tx)[iA]; + uv2 = static_cast(*tx)[iB]; + uv3 = static_cast(*tx)[iC]; break; case osg::Array::Vec3ArrayType: for (i=0; i<2; ++i) { - uv1.ptr()[i] = static_cast(tx)->at(iA).ptr()[i]; - uv2.ptr()[i] = static_cast(tx)->at(iB).ptr()[i]; - uv3.ptr()[i] = static_cast(tx)->at(iC).ptr()[i]; + uv1.ptr()[i] = static_cast(*tx)[iA].ptr()[i]; + uv2.ptr()[i] = static_cast(*tx)[iB].ptr()[i]; + uv3.ptr()[i] = static_cast(*tx)[iC].ptr()[i]; } break; case osg::Array::Vec4ArrayType: for (i=0; i<2; ++i) { - uv1.ptr()[i] = static_cast(tx)->at(iA).ptr()[i]; - uv2.ptr()[i] = static_cast(tx)->at(iB).ptr()[i]; - uv3.ptr()[i] = static_cast(tx)->at(iC).ptr()[i]; + uv1.ptr()[i] = static_cast(*tx)[iA].ptr()[i]; + uv2.ptr()[i] = static_cast(*tx)[iB].ptr()[i]; + uv3.ptr()[i] = static_cast(*tx)[iC].ptr()[i]; } break; @@ -211,39 +211,39 @@ void TangentSpaceGenerator::compute_basis_vectors(osg::PrimitiveSet *pset, const osg::Vec3(P3.x() - P1.x(), uv3.x() - uv1.x(), uv3.y() - uv1.y()); if (V.x() != 0) { V.normalize(); - T_->at(iA).x() += -V.y() / V.x(); - B_->at(iA).x() += -V.z() / V.x(); - T_->at(iB).x() += -V.y() / V.x(); - B_->at(iB).x() += -V.z() / V.x(); - T_->at(iC).x() += -V.y() / V.x(); - B_->at(iC).x() += -V.z() / V.x(); + (*T_)[iA].x() += -V.y() / V.x(); + (*B_)[iA].x() += -V.z() / V.x(); + (*T_)[iB].x() += -V.y() / V.x(); + (*B_)[iB].x() += -V.z() / V.x(); + (*T_)[iC].x() += -V.y() / V.x(); + (*B_)[iC].x() += -V.z() / V.x(); } V = osg::Vec3(P2.y() - P1.y(), uv2.x() - uv1.x(), uv2.y() - uv1.y()) ^ osg::Vec3(P3.y() - P1.y(), uv3.x() - uv1.x(), uv3.y() - uv1.y()); if (V.x() != 0) { V.normalize(); - T_->at(iA).y() += -V.y() / V.x(); - B_->at(iA).y() += -V.z() / V.x(); - T_->at(iB).y() += -V.y() / V.x(); - B_->at(iB).y() += -V.z() / V.x(); - T_->at(iC).y() += -V.y() / V.x(); - B_->at(iC).y() += -V.z() / V.x(); + (*T_)[iA].y() += -V.y() / V.x(); + (*B_)[iA].y() += -V.z() / V.x(); + (*T_)[iB].y() += -V.y() / V.x(); + (*B_)[iB].y() += -V.z() / V.x(); + (*T_)[iC].y() += -V.y() / V.x(); + (*B_)[iC].y() += -V.z() / V.x(); } V = osg::Vec3(P2.z() - P1.z(), uv2.x() - uv1.x(), uv2.y() - uv1.y()) ^ osg::Vec3(P3.z() - P1.z(), uv3.x() - uv1.x(), uv3.y() - uv1.y()); if (V.x() != 0) { V.normalize(); - T_->at(iA).z() += -V.y() / V.x(); - B_->at(iA).z() += -V.z() / V.x(); - T_->at(iB).z() += -V.y() / V.x(); - B_->at(iB).z() += -V.z() / V.x(); - T_->at(iC).z() += -V.y() / V.x(); - B_->at(iC).z() += -V.z() / V.x(); + (*T_)[iA].z() += -V.y() / V.x(); + (*B_)[iA].z() += -V.z() / V.x(); + (*T_)[iB].z() += -V.y() / V.x(); + (*B_)[iB].z() += -V.z() / V.x(); + (*T_)[iC].z() += -V.y() / V.x(); + (*B_)[iC].z() += -V.z() / V.x(); } - N_->at(iA) += osg::Vec4(face_normal, 0); - N_->at(iB) += osg::Vec4(face_normal, 0); - N_->at(iC) += osg::Vec4(face_normal, 0); + (*N_)[iA] += osg::Vec4(face_normal, 0); + (*N_)[iB] += osg::Vec4(face_normal, 0); + (*N_)[iC] += osg::Vec4(face_normal, 0); }