Renamed Byte2,3,4 and Short2,3,4 and UByte4 to use the Vec*b, Vec*s and Vec4ub form

This commit is contained in:
Robert Osfield
2005-07-15 14:41:19 +00:00
parent 0c7f228224
commit d35ea68f3e
28 changed files with 594 additions and 549 deletions

View File

@@ -24,25 +24,25 @@ static char* s_ArrayNames[] =
"UByteArray", // 4
"UShortArray", // 5
"UIntArray", // 6
"UByte4Array", // 7
"Vec4ubArray", // 7
"FloatArray", // 8
"Vec2Array", // 9
"Vec3Array", // 10
"Vec4Array", // 11
"Vec4Array", // 11
"Short2Array", // 12
"Short3Array", // 13
"Short4Array", // 14
"Vec2sArray", // 12
"Vec3sArray", // 13
"Vec4sArray", // 14
"Byte2Array", // 15
"Byte3Array", // 16
"Byte4Array", // 17
"Vec2bArray", // 15
"Vec3bArray", // 16
"Vec4bArray", // 17
};
const char* Array::className() const
{
if (_arrayType>=ArrayType && _arrayType<=Byte4ArrayType)
if (_arrayType>=ArrayType && _arrayType<=Vec4bArrayType)
return s_ArrayNames[_arrayType];
else
return "UnkownArray";

View File

@@ -120,30 +120,30 @@ class DrawNormal
else glNormal3fv(normals[pos].ptr());
}
break;
case (Array::Short3ArrayType):
case (Array::Vec3sArrayType):
{
const Short3Array& normals = *static_cast<const Short3Array*>(_normals);
const Vec3sArray& normals = *static_cast<const Vec3sArray*>(_normals);
if (_indices) glNormal3sv(normals[_indices->index(pos)].ptr());
else glNormal3sv(normals[pos].ptr());
}
break;
case (Array::Short4ArrayType):
case (Array::Vec4sArrayType):
{
const Short4Array& normals = *static_cast<const Short4Array*>(_normals);
const Vec4sArray& normals = *static_cast<const Vec4sArray*>(_normals);
if (_indices) glNormal3sv(normals[_indices->index(pos)].ptr());
else glNormal3sv(normals[pos].ptr());
}
break;
case (Array::Byte3ArrayType):
case (Array::Vec3bArrayType):
{
const Byte3Array& normals = *static_cast<const Byte3Array*>(_normals);
const Vec3bArray& normals = *static_cast<const Vec3bArray*>(_normals);
if (_indices) glNormal3bv((const GLbyte*)normals[_indices->index(pos)].ptr());
else glNormal3bv((const GLbyte*)normals[pos].ptr());
}
break;
case (Array::Byte4ArrayType):
case (Array::Vec4bArrayType):
{
const Byte4Array& normals = *static_cast<const Byte4Array*>(_normals);
const Vec4bArray& normals = *static_cast<const Vec4bArray*>(_normals);
if (_indices) glNormal3bv((const GLbyte*)normals[_indices->index(pos)].ptr());
else glNormal3bv((const GLbyte*)normals[pos].ptr());
}
@@ -195,8 +195,8 @@ class DrawColor
case(Array::Vec4ArrayType):
apply((*static_cast<const Vec4Array*>(_colors))[pos]);
break;
case(Array::UByte4ArrayType):
apply((*static_cast<const UByte4Array*>(_colors))[pos]);
case(Array::Vec4ubArrayType):
apply((*static_cast<const Vec4ubArray*>(_colors))[pos]);
break;
case(Array::Vec3ArrayType):
apply((*static_cast<const Vec3Array*>(_colors))[pos]);
@@ -206,7 +206,7 @@ class DrawColor
}
}
inline void apply(const UByte4& v) { glColor4ubv(v.ptr()); }
inline void apply(const Vec4ub& v) { glColor4ubv(v.ptr()); }
inline void apply(const Vec3& v) { glColor3fv(v.ptr()); }
inline void apply(const Vec4& v) { glColor4fv(v.ptr()); }
@@ -230,7 +230,7 @@ class DrawColor : public osg::ConstValueVisitor
else _colors->accept(pos,*this);
}
virtual void apply(const UByte4& v) { glColor4ubv(v.ptr()); }
virtual void apply(const UVec4b& v) { glColor4ubv(v.ptr()); }
virtual void apply(const Vec3& v) { glColor3fv(v.ptr()); }
virtual void apply(const Vec4& v) { glColor4fv(v.ptr()); }
@@ -266,7 +266,7 @@ public:
{
_extensions->glVertexAttrib1f( _vertAttribIndex, f );
}
virtual void apply(const UByte4& v)
virtual void apply(const Vec4ub& v)
{
if( _normalized )
{
@@ -368,7 +368,7 @@ class DrawSecondaryColor : public osg::ConstValueVisitor
else _colors->accept(pos,*this);
}
virtual void apply(const UByte4& v) { _extensions->glSecondaryColor3ubv(v.ptr()); }
virtual void apply(const Vec4ub& v) { _extensions->glSecondaryColor3ubv(v.ptr()); }
virtual void apply(const Vec3& v) { _extensions->glSecondaryColor3fv(v.ptr()); }
virtual void apply(const Vec4& v) { _extensions->glSecondaryColor3fv(v.ptr()); }
@@ -1775,7 +1775,7 @@ class AttributeFunctorArrayVisitor : public ArrayVisitor
virtual void apply(UByteArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(UShortArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(UIntArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(UByte4Array& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(Vec4ubArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(FloatArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(Vec2Array& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(Vec3Array& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
@@ -1824,7 +1824,7 @@ class ConstAttributeFunctorArrayVisitor : public ConstArrayVisitor
virtual void apply(const UByteArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(const UShortArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(const UIntArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(const UByte4Array& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(const Vec4ubArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(const FloatArray& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(const Vec2Array& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
virtual void apply(const Vec3Array& array) { if (!array.empty()) _af.apply(_type,array.size(),&(array.front())); }
@@ -2544,7 +2544,7 @@ class ExpandIndexedArray : public osg::ConstArrayVisitor
virtual void apply(const osg::UByteArray& array) { _targetArray = create(array); }
virtual void apply(const osg::UShortArray& array) { _targetArray = create(array); }
virtual void apply(const osg::UIntArray& array) { _targetArray = create(array); }
virtual void apply(const osg::UByte4Array& array) { _targetArray = create(array); }
virtual void apply(const osg::Vec4ubArray& array) { _targetArray = create(array); }
virtual void apply(const osg::FloatArray& array) { _targetArray = create(array); }
virtual void apply(const osg::Vec2Array& array) { _targetArray = create(array); }
virtual void apply(const osg::Vec3Array& array) { _targetArray = create(array); }

View File

@@ -65,7 +65,7 @@ class ReaderWriter3DC : public osgDB::ReaderWriter
osg::Vec3Array* vertices = new osg::Vec3Array;
osg::Vec3Array* normals = new osg::Vec3Array;
osg::UByte4Array* colours = new osg::UByte4Array;
osg::Vec4ubArray* colours = new osg::Vec4ubArray;
vertices->reserve(targetNumVertices);
normals->reserve(targetNumVertices);
@@ -117,7 +117,7 @@ class ReaderWriter3DC : public osgDB::ReaderWriter
vertices = new osg::Vec3Array;
normals = new osg::Vec3Array;
colours = new osg::UByte4Array;
colours = new osg::Vec4ubArray;
vertices->reserve(targetNumVertices);
normals->reserve(targetNumVertices);
@@ -127,7 +127,7 @@ class ReaderWriter3DC : public osgDB::ReaderWriter
vertices->push_back(pos);
normals->push_back(normal);
colours->push_back(osg::UByte4(r,g,b,255));
colours->push_back(osg::Vec4ub(r,g,b,255));
}
}

View File

@@ -383,14 +383,14 @@ osg::Plane DataInputStream::readPlane(){
return v;
}
osg::UByte4 DataInputStream::readUByte4(){
osg::UByte4 v;
osg::Vec4ub DataInputStream::readVec4ub(){
osg::Vec4ub v;
v.r()=readChar();
v.g()=readChar();
v.b()=readChar();
v.a()=readChar();
if (_verboseOutput) std::cout<<"read/writeUByte4() ["<<v<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4ub() ["<<v<<"]"<<std::endl;
return v;
}
@@ -433,17 +433,17 @@ osg::Array* DataInputStream::readArray(){
case 1: return readUByteArray();
case 2: return readUShortArray();
case 3: return readUIntArray();
case 4: return readUByte4Array();
case 4: return readVec4ubArray();
case 5: return readFloatArray();
case 6: return readVec2Array();
case 7: return readVec3Array();
case 8: return readVec4Array();
case 9: return readShort2Array();
case 10: return readShort3Array();
case 11: return readShort4Array();
case 12: return readByte2Array();
case 13: return readByte3Array();
case 14: return readByte4Array();
case 9: return readVec2sArray();
case 10: return readVec3sArray();
case 11: return readVec4sArray();
case 12: return readVec2bArray();
case 13: return readVec3bArray();
case 14: return readVec4bArray();
default: throw Exception("Unknown array type in DataInputStream::readArray()");
}
}
@@ -517,17 +517,17 @@ osg::UIntArray* DataInputStream::readUIntArray()
return a;
}
osg::UByte4Array* DataInputStream::readUByte4Array()
osg::Vec4ubArray* DataInputStream::readVec4ubArray()
{
int size = readInt();
osg::UByte4Array* a = new osg::UByte4Array(size);
osg::Vec4ubArray* a = new osg::Vec4ubArray(size);
_istream->read((char*)&((*a)[0]), INTSIZE*size);
if (_istream->rdstate() & _istream->failbit)
throw Exception("DataInputStream::readUbyte4Array(): Failed to read UByte4 array.");
throw Exception("DataInputStream::readVec4ubArray(): Failed to read Vec4ub array.");
if (_verboseOutput) std::cout<<"read/writeUByte4Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4ubArray() ["<<size<<"]"<<std::endl;
return a;
}
@@ -618,92 +618,92 @@ osg::Vec4Array* DataInputStream::readVec4Array(){
return a;
}
osg::Byte2Array* DataInputStream::readByte2Array()
osg::Vec2bArray* DataInputStream::readVec2bArray()
{
int size = readInt();
osg::Byte2Array* a = new osg::Byte2Array(size);
osg::Vec2bArray* a = new osg::Vec2bArray(size);
_istream->read((char*)&((*a)[0]), CHARSIZE * 2 * size);
if (_istream->rdstate() & _istream->failbit)
throw Exception("DataInputStream::readByte2Array(): Failed to read Byte2 array.");
throw Exception("DataInputStream::readVec2bArray(): Failed to read Vec2b array.");
if (_verboseOutput) std::cout<<"read/writeByte2Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec2bArray() ["<<size<<"]"<<std::endl;
return a;
}
osg::Byte3Array* DataInputStream::readByte3Array()
osg::Vec3bArray* DataInputStream::readVec3bArray()
{
int size = readInt();
osg::Byte3Array* a = new osg::Byte3Array(size);
osg::Vec3bArray* a = new osg::Vec3bArray(size);
_istream->read((char*)&((*a)[0]), CHARSIZE * 3 * size);
if (_istream->rdstate() & _istream->failbit)
throw Exception("DataInputStream::readByte3Array(): Failed to read Byte3 array.");
throw Exception("DataInputStream::readVec3bArray(): Failed to read Vec3b array.");
if (_verboseOutput) std::cout<<"read/writeByte3Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec3bArray() ["<<size<<"]"<<std::endl;
return a;
}
osg::Byte4Array* DataInputStream::readByte4Array()
osg::Vec4bArray* DataInputStream::readVec4bArray()
{
int size = readInt();
osg::Byte4Array* a = new osg::Byte4Array(size);
osg::Vec4bArray* a = new osg::Vec4bArray(size);
_istream->read((char*)&((*a)[0]), CHARSIZE * 4 * size);
if (_istream->rdstate() & _istream->failbit)
throw Exception("DataInputStream::readByte4Array(): Failed to read Byte4 array.");
throw Exception("DataInputStream::readVec4bArray(): Failed to read Vec4b array.");
if (_verboseOutput) std::cout<<"read/writeByte4Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4bArray() ["<<size<<"]"<<std::endl;
return a;
}
osg::Short2Array* DataInputStream::readShort2Array()
osg::Vec2sArray* DataInputStream::readVec2sArray()
{
int size = readInt();
osg::Short2Array* a = new osg::Short2Array(size);
osg::Vec2sArray* a = new osg::Vec2sArray(size);
_istream->read((char*)&((*a)[0]), SHORTSIZE * 2 * size);
if (_istream->rdstate() & _istream->failbit)
throw Exception("DataInputStream::readShort2Array(): Failed to read Short2 array.");
throw Exception("DataInputStream::readVec2sArray(): Failed to read Vec2s array.");
if (_verboseOutput) std::cout<<"read/writeShort2Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec2sArray() ["<<size<<"]"<<std::endl;
return a;
}
osg::Short3Array* DataInputStream::readShort3Array()
osg::Vec3sArray* DataInputStream::readVec3sArray()
{
int size = readInt();
osg::Short3Array* a = new osg::Short3Array(size);
osg::Vec3sArray* a = new osg::Vec3sArray(size);
_istream->read((char*)&((*a)[0]), SHORTSIZE * 3 * size);
if (_istream->rdstate() & _istream->failbit)
throw Exception("DataInputStream::readShort3Array(): Failed to read Short3 array.");
throw Exception("DataInputStream::readVec3sArray(): Failed to read Vec3s array.");
if (_verboseOutput) std::cout<<"read/writeShort3Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec3sArray() ["<<size<<"]"<<std::endl;
return a;
}
osg::Short4Array* DataInputStream::readShort4Array()
osg::Vec4sArray* DataInputStream::readVec4sArray()
{
int size = readInt();
osg::Short4Array* a = new osg::Short4Array(size);
osg::Vec4sArray* a = new osg::Vec4sArray(size);
_istream->read((char*)&((*a)[0]), SHORTSIZE * 4 * size);
if (_istream->rdstate() & _istream->failbit)
throw Exception("DataInputStream::readShort4Array(): Failed to read Short4 array.");
throw Exception("DataInputStream::readVec4sArray(): Failed to read Vec4s array.");
if (_verboseOutput) std::cout<<"read/writeShort4Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4sArray() ["<<size<<"]"<<std::endl;
return a;
}

View File

@@ -62,7 +62,7 @@ public:
osg::Vec3d readVec3d();
osg::Vec4d readVec4d();
osg::Plane readPlane();
osg::UByte4 readUByte4();
osg::Vec4ub readVec4ub();
osg::Quat readQuat();
osg::Matrixf readMatrixf();
osg::Matrixd readMatrixd();
@@ -72,17 +72,17 @@ public:
osg::UByteArray* readUByteArray();
osg::UShortArray* readUShortArray();
osg::UIntArray* readUIntArray();
osg::UByte4Array* readUByte4Array();
osg::Vec4ubArray* readVec4ubArray();
osg::FloatArray* readFloatArray();
osg::Vec2Array* readVec2Array();
osg::Vec3Array* readVec3Array();
osg::Vec4Array* readVec4Array();
osg::Byte2Array* readByte2Array();
osg::Byte3Array* readByte3Array();
osg::Byte4Array* readByte4Array();
osg::Short2Array* readShort2Array();
osg::Short3Array* readShort3Array();
osg::Short4Array* readShort4Array();
osg::Vec2bArray* readVec2bArray();
osg::Vec3bArray* readVec3bArray();
osg::Vec4bArray* readVec4bArray();
osg::Vec2sArray* readVec2sArray();
osg::Vec3sArray* readVec3sArray();
osg::Vec4sArray* readVec4sArray();
osg::Image* readImage(std::string s);
osg::StateSet* readStateSet();

View File

@@ -261,37 +261,37 @@ void DataOutputStream::writePlane(const osg::Plane& v)
if (_verboseOutput) std::cout<<"read/writePlane() ["<<v<<"]"<<std::endl;
}
void DataOutputStream::writeUByte4(const osg::UByte4& v){
void DataOutputStream::writeVec4ub(const osg::Vec4ub& v){
writeChar(v.r());
writeChar(v.g());
writeChar(v.b());
writeChar(v.a());
if (_verboseOutput) std::cout<<"read/writeUByte4() ["<<v<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4ub() ["<<v<<"]"<<std::endl;
}
void DataOutputStream::writeByte2(const osg::Byte2& v){
void DataOutputStream::writeVec2b(const osg::Vec2b& v){
writeChar(v.r());
writeChar(v.g());
if (_verboseOutput) std::cout<<"read/writeByte2() ["<<v<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec2b() ["<<v<<"]"<<std::endl;
}
void DataOutputStream::writeByte3(const osg::Byte3& v){
void DataOutputStream::writeVec3b(const osg::Vec3b& v){
writeChar(v.r());
writeChar(v.g());
writeChar(v.b());
if (_verboseOutput) std::cout<<"read/writeByte3() ["<<v<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec3b() ["<<v<<"]"<<std::endl;
}
void DataOutputStream::writeByte4(const osg::Byte4& v){
void DataOutputStream::writeVec4b(const osg::Vec4b& v){
writeChar(v.r());
writeChar(v.g());
writeChar(v.b());
writeChar(v.a());
if (_verboseOutput) std::cout<<"read/writeByte4() ["<<v<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4b() ["<<v<<"]"<<std::endl;
}
void DataOutputStream::writeQuat(const osg::Quat& q){
@@ -334,9 +334,9 @@ void DataOutputStream::writeArray(const osg::Array* a){
writeChar((char)3);
writeUIntArray(static_cast<const osg::UIntArray*>(a));
break;
case osg::Array::UByte4ArrayType:
case osg::Array::Vec4ubArrayType:
writeChar((char)4);
writeUByte4Array(static_cast<const osg::UByte4Array*>(a));
writeVec4ubArray(static_cast<const osg::Vec4ubArray*>(a));
break;
case osg::Array::FloatArrayType:
writeChar((char)5);
@@ -354,29 +354,29 @@ void DataOutputStream::writeArray(const osg::Array* a){
writeChar((char)8);
writeVec4Array(static_cast<const osg::Vec4Array*>(a));
break;
case osg::Array::Short2ArrayType:
case osg::Array::Vec2sArrayType:
writeChar((char)9);
writeShort2Array(static_cast<const osg::Short2Array*>(a));
writeVec2sArray(static_cast<const osg::Vec2sArray*>(a));
break;
case osg::Array::Short3ArrayType:
case osg::Array::Vec3sArrayType:
writeChar((char)10);
writeShort3Array(static_cast<const osg::Short3Array*>(a));
writeVec3sArray(static_cast<const osg::Vec3sArray*>(a));
break;
case osg::Array::Short4ArrayType:
case osg::Array::Vec4sArrayType:
writeChar((char)11);
writeShort4Array(static_cast<const osg::Short4Array*>(a));
writeVec4sArray(static_cast<const osg::Vec4sArray*>(a));
break;
case osg::Array::Byte2ArrayType:
case osg::Array::Vec2bArrayType:
writeChar((char)12);
writeByte2Array(static_cast<const osg::Byte2Array*>(a));
writeVec2bArray(static_cast<const osg::Vec2bArray*>(a));
break;
case osg::Array::Byte3ArrayType:
case osg::Array::Vec3bArrayType:
writeChar((char)13);
writeByte3Array(static_cast<const osg::Byte3Array*>(a));
writeVec3bArray(static_cast<const osg::Vec3bArray*>(a));
break;
case osg::Array::Byte4ArrayType:
case osg::Array::Vec4bArrayType:
writeChar((char)14);
writeByte4Array(static_cast<const osg::Byte4Array*>(a));
writeVec4bArray(static_cast<const osg::Vec4bArray*>(a));
break;
default: throw Exception("Unknown array type in DataOutputStream::writeArray()");
}
@@ -427,15 +427,15 @@ void DataOutputStream::writeUIntArray(const osg::UIntArray* a)
if (_verboseOutput) std::cout<<"read/writeUIntArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeUByte4Array(const osg::UByte4Array* a)
void DataOutputStream::writeVec4ubArray(const osg::Vec4ubArray* a)
{
int size = a->getNumElements();
writeInt(size);
for(int i =0; i<size ;i++){
writeUByte4((*a)[i]);
writeVec4ub((*a)[i]);
}
if (_verboseOutput) std::cout<<"read/writeUByte4Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4ubArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeFloatArray(const osg::FloatArray* a)
@@ -483,7 +483,7 @@ void DataOutputStream::writeVec4Array(const osg::Vec4Array* a)
if (_verboseOutput) std::cout<<"read/writeVec4Array() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeShort2Array(const osg::Short2Array* a)
void DataOutputStream::writeVec2sArray(const osg::Vec2sArray* a)
{
int size = a->getNumElements();
writeInt(size);
@@ -492,10 +492,10 @@ void DataOutputStream::writeShort2Array(const osg::Short2Array* a)
writeShort((*a)[i].y);
}
if (_verboseOutput) std::cout<<"read/writeShort2Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec2sArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeShort3Array(const osg::Short3Array* a)
void DataOutputStream::writeVec3sArray(const osg::Vec3sArray* a)
{
int size = a->getNumElements();
writeInt(size);
@@ -505,10 +505,10 @@ void DataOutputStream::writeShort3Array(const osg::Short3Array* a)
writeShort((*a)[i].z);
}
if (_verboseOutput) std::cout<<"read/writeShort3Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec3sArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeShort4Array(const osg::Short4Array* a)
void DataOutputStream::writeVec4sArray(const osg::Vec4sArray* a)
{
int size = a->getNumElements();
writeInt(size);
@@ -519,40 +519,40 @@ void DataOutputStream::writeShort4Array(const osg::Short4Array* a)
writeShort((*a)[i].w);
}
if (_verboseOutput) std::cout<<"read/writeShort4Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4sArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeByte2Array(const osg::Byte2Array* a)
void DataOutputStream::writeVec2bArray(const osg::Vec2bArray* a)
{
int size = a->getNumElements();
writeInt(size);
for(int i =0; i<size ;i++){
writeByte2((*a)[i]);
writeVec2b((*a)[i]);
}
if (_verboseOutput) std::cout<<"read/writeByte2Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec2bArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeByte3Array(const osg::Byte3Array* a)
void DataOutputStream::writeVec3bArray(const osg::Vec3bArray* a)
{
int size = a->getNumElements();
writeInt(size);
for(int i =0; i<size ;i++){
writeByte3((*a)[i]);
writeVec3b((*a)[i]);
}
if (_verboseOutput) std::cout<<"read/writeByte3Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec3bArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeByte4Array(const osg::Byte4Array* a)
void DataOutputStream::writeVec4bArray(const osg::Vec4bArray* a)
{
int size = a->getNumElements();
writeInt(size);
for(int i =0; i<size ;i++){
writeByte4((*a)[i]);
writeVec4b((*a)[i]);
}
if (_verboseOutput) std::cout<<"read/writeByte4Array() ["<<size<<"]"<<std::endl;
if (_verboseOutput) std::cout<<"read/writeVec4bArray() ["<<size<<"]"<<std::endl;
}
void DataOutputStream::writeMatrixf(const osg::Matrixf& mat)

View File

@@ -56,7 +56,7 @@ public:
void writeVec3d(const osg::Vec3d& v);
void writeVec4d(const osg::Vec4d& v);
void writePlane(const osg::Plane& v);
void writeUByte4(const osg::UByte4& v);
void writeVec4ub(const osg::Vec4ub& v);
void writeQuat(const osg::Quat& q);
void writeBinding(osg::Geometry::AttributeBinding b);
void writeArray(const osg::Array* a);
@@ -64,20 +64,20 @@ public:
void writeUByteArray(const osg::UByteArray* a);
void writeUShortArray(const osg::UShortArray* a);
void writeUIntArray(const osg::UIntArray* a);
void writeUByte4Array(const osg::UByte4Array* a);
void writeByte2(const osg::Byte2& v);
void writeByte3(const osg::Byte3& v);
void writeByte4(const osg::Byte4& v);
void writeVec4ubArray(const osg::Vec4ubArray* a);
void writeVec2b(const osg::Vec2b& v);
void writeVec3b(const osg::Vec3b& v);
void writeVec4b(const osg::Vec4b& v);
void writeFloatArray(const osg::FloatArray* a);
void writeVec2Array(const osg::Vec2Array* a);
void writeVec3Array(const osg::Vec3Array* a);
void writeVec4Array(const osg::Vec4Array* a);
void writeShort2Array(const osg::Short2Array* a);
void writeShort3Array(const osg::Short3Array* a);
void writeShort4Array(const osg::Short4Array* a);
void writeByte2Array(const osg::Byte2Array* a);
void writeByte3Array(const osg::Byte3Array* a);
void writeByte4Array(const osg::Byte4Array* a);
void writeVec2sArray(const osg::Vec2sArray* a);
void writeVec3sArray(const osg::Vec3sArray* a);
void writeVec4sArray(const osg::Vec4sArray* a);
void writeVec2bArray(const osg::Vec2bArray* a);
void writeVec3bArray(const osg::Vec3bArray* a);
void writeVec4bArray(const osg::Vec4bArray* a);
void writeMatrixf(const osg::Matrixf& mat);
void writeMatrixd(const osg::Matrixd& mat);

View File

@@ -615,7 +615,7 @@ osg::Drawable* ReaderWriter3DS::ReaderObject::createDrawable(Lib3dsMesh *m,Fac
geom->setNormalBinding(osg::Geometry::BIND_PER_PRIMITIVE);
}
osg::UByte4Array* osg_colors = new osg::UByte4Array(1);
osg::Vec4ubArray* osg_colors = new osg::Vec4ubArray(1);
(*osg_colors)[0].set(255,255,255,255);
geom->setColorArray(osg_colors);
geom->setColorBinding(osg::Geometry::BIND_OVERALL);

View File

@@ -513,9 +513,9 @@ Array* Array_readLocalData(Input& fr)
++fr;
return_array = array;
}
else if (strcmp(arrayName,"UByte4Array")==0)
else if (strcmp(arrayName,"UVec4bArray")==0 || strcmp(arrayName,"Vec4ubArray")==0)
{
UByte4Array* array = new UByte4Array;
Vec4ubArray* array = new Vec4ubArray;
array->reserve(capacity);
while (!fr.eof() && fr[0].getNoNestedBrackets()>entry)
{
@@ -526,7 +526,7 @@ Array* Array_readLocalData(Input& fr)
fr[3].getUInt(a))
{
fr+=4;
array->push_back(osg::UByte4(r,g,b,a));
array->push_back(osg::Vec4ub(r,g,b,a));
}
else ++fr;
}
@@ -601,9 +601,9 @@ Array* Array_readLocalData(Input& fr)
++fr;
return_array = array;
}
else if (strcmp(arrayName,"Byte2Array")==0)
else if (strcmp(arrayName,"Vec2bArray")==0)
{
Byte2Array* array = new Byte2Array;
Vec2bArray* array = new Vec2bArray;
array->reserve(capacity);
while (!fr.eof() && fr[0].getNoNestedBrackets()>entry)
{
@@ -612,16 +612,16 @@ Array* Array_readLocalData(Input& fr)
fr[1].getUInt(g))
{
fr+=2;
array->push_back(osg::Byte2(r,g));
array->push_back(osg::Vec2b(r,g));
}
else ++fr;
}
++fr;
return_array = array;
}
else if (strcmp(arrayName,"Byte3Array")==0)
else if (strcmp(arrayName,"Vec3bArray")==0)
{
Byte3Array* array = new Byte3Array;
Vec3bArray* array = new Vec3bArray;
array->reserve(capacity);
while (!fr.eof() && fr[0].getNoNestedBrackets()>entry)
{
@@ -631,16 +631,16 @@ Array* Array_readLocalData(Input& fr)
fr[2].getUInt(b))
{
fr+=3;
array->push_back(osg::Byte3(r,g,b));
array->push_back(osg::Vec3b(r,g,b));
}
else ++fr;
}
++fr;
return_array = array;
}
else if (strcmp(arrayName,"Byte4Array")==0)
else if (strcmp(arrayName,"Vec4bArray")==0)
{
Byte4Array* array = new Byte4Array;
Vec4bArray* array = new Vec4bArray;
array->reserve(capacity);
while (!fr.eof() && fr[0].getNoNestedBrackets()>entry)
{
@@ -651,16 +651,16 @@ Array* Array_readLocalData(Input& fr)
fr[3].getUInt(a))
{
fr+=4;
array->push_back(osg::Byte4(r,g,b,a));
array->push_back(osg::Vec4b(r,g,b,a));
}
else ++fr;
}
++fr;
return_array = array;
}
else if (strcmp(arrayName,"Short2Array")==0)
else if (strcmp(arrayName,"Vec2sArray")==0)
{
Short2Array* array = new Short2Array;
Vec2sArray* array = new Vec2sArray;
array->reserve(capacity);
while (!fr.eof() && fr[0].getNoNestedBrackets()>entry)
{
@@ -669,16 +669,16 @@ Array* Array_readLocalData(Input& fr)
fr[1].getUInt(g))
{
fr+=2;
array->push_back(osg::Short2(r,g));
array->push_back(osg::Vec2s(r,g));
}
else ++fr;
}
++fr;
return_array = array;
}
else if (strcmp(arrayName,"Short3Array")==0)
else if (strcmp(arrayName,"Vec3sArray")==0)
{
Short3Array* array = new Short3Array;
Vec3sArray* array = new Vec3sArray;
array->reserve(capacity);
while (!fr.eof() && fr[0].getNoNestedBrackets()>entry)
{
@@ -688,16 +688,16 @@ Array* Array_readLocalData(Input& fr)
fr[2].getUInt(b))
{
fr+=3;
array->push_back(osg::Short3(r,g,b));
array->push_back(osg::Vec3s(r,g,b));
}
else ++fr;
}
++fr;
return_array = array;
}
else if (strcmp(arrayName,"Short4Array")==0)
else if (strcmp(arrayName,"Vec4sArray")==0)
{
Short4Array* array = new Short4Array;
Vec4sArray* array = new Vec4sArray;
array->reserve(capacity);
while (!fr.eof() && fr[0].getNoNestedBrackets()>entry)
{
@@ -708,7 +708,7 @@ Array* Array_readLocalData(Input& fr)
fr[3].getUInt(a))
{
fr+=4;
array->push_back(osg::Short4(r,g,b,a));
array->push_back(osg::Vec4s(r,g,b,a));
}
else ++fr;
}
@@ -795,9 +795,9 @@ bool Array_writeLocalData(const Array& array,Output& fw)
return true;
}
break;
case(Array::UByte4ArrayType):
case(Array::Vec4ubArrayType):
{
const UByte4Array& carray = static_cast<const UByte4Array&>(array);
const Vec4ubArray& carray = static_cast<const Vec4ubArray&>(array);
fw<<array.className()<<" "<<carray.size()<<" ";
writeArray(fw,carray.begin(),carray.end(),1);
return true;
@@ -835,49 +835,49 @@ bool Array_writeLocalData(const Array& array,Output& fw)
return true;
}
break;
case(Array::Short2ArrayType):
case(Array::Vec2sArrayType):
{
const Short2Array& carray = static_cast<const Short2Array&>(array);
const Vec2sArray& carray = static_cast<const Vec2sArray&>(array);
fw<<array.className()<<" "<<carray.size()<<std::endl;
writeArray(fw,carray.begin(),carray.end(), 3);
return true;
}
break;
case(Array::Short3ArrayType):
case(Array::Vec3sArrayType):
{
const Short3Array& carray = static_cast<const Short3Array&>(array);
const Vec3sArray& carray = static_cast<const Vec3sArray&>(array);
fw<<array.className()<<" "<<carray.size()<<std::endl;
writeArray(fw,carray.begin(),carray.end(), 2);
return true;
}
break;
case(Array::Short4ArrayType):
case(Array::Vec4sArrayType):
{
const Short4Array& carray = static_cast<const Short4Array&>(array);
const Vec4sArray& carray = static_cast<const Vec4sArray&>(array);
fw<<array.className()<<" "<<carray.size()<<std::endl;
writeArray(fw,carray.begin(),carray.end(), 1);
return true;
}
break;
case(Array::Byte2ArrayType):
case(Array::Vec2bArrayType):
{
const Byte2Array& carray = static_cast<const Byte2Array&>(array);
const Vec2bArray& carray = static_cast<const Vec2bArray&>(array);
fw<<array.className()<<" "<<carray.size()<<" ";
writeArray(fw,carray.begin(),carray.end(),1);
return true;
}
break;
case(Array::Byte3ArrayType):
case(Array::Vec3bArrayType):
{
const Byte3Array& carray = static_cast<const Byte3Array&>(array);
const Vec3bArray& carray = static_cast<const Vec3bArray&>(array);
fw<<array.className()<<" "<<carray.size()<<" ";
writeArray(fw,carray.begin(),carray.end(),1);
return true;
}
break;
case(Array::Byte4ArrayType):
case(Array::Vec4bArrayType):
{
const Byte4Array& carray = static_cast<const Byte4Array&>(array);
const Vec4bArray& carray = static_cast<const Vec4bArray&>(array);
fw<<array.className()<<" "<<carray.size()<<" ";
writeArray(fw,carray.begin(),carray.end(),1);
return true;

View File

@@ -2482,7 +2482,7 @@ osg::Node* DataSet::DestinationTile::createPolygonal()
osg::Vec3Array& v = *(new osg::Vec3Array(numVertices));
osg::Vec2Array& t = *(new osg::Vec2Array(numVertices));
osg::UByte4Array& color = *(new osg::UByte4Array(1));
osg::Vec4ubArray& color = *(new osg::Vec4ubArray(1));
color[0].set(255,255,255,255);

View File

@@ -1568,13 +1568,13 @@ struct LessGeometry
if (rhs_normalArray->getType()<lhs_normalArray->getType()) return false;
switch(lhs_normalArray->getType())
{
case(osg::Array::Byte3ArrayType):
if ((*static_cast<const osg::Byte3Array*>(lhs_normalArray))[0]<(*static_cast<const osg::Byte3Array*>(rhs_normalArray))[0]) return true;
if ((*static_cast<const osg::Byte3Array*>(rhs_normalArray))[0]<(*static_cast<const osg::Byte3Array*>(lhs_normalArray))[0]) return false;
case(osg::Array::Vec3bArrayType):
if ((*static_cast<const osg::Vec3bArray*>(lhs_normalArray))[0]<(*static_cast<const osg::Vec3bArray*>(rhs_normalArray))[0]) return true;
if ((*static_cast<const osg::Vec3bArray*>(rhs_normalArray))[0]<(*static_cast<const osg::Vec3bArray*>(lhs_normalArray))[0]) return false;
break;
case(osg::Array::Short3ArrayType):
if ((*static_cast<const osg::Short3Array*>(lhs_normalArray))[0]<(*static_cast<const osg::Short3Array*>(rhs_normalArray))[0]) return true;
if ((*static_cast<const osg::Short3Array*>(rhs_normalArray))[0]<(*static_cast<const osg::Short3Array*>(lhs_normalArray))[0]) return false;
case(osg::Array::Vec3sArrayType):
if ((*static_cast<const osg::Vec3sArray*>(lhs_normalArray))[0]<(*static_cast<const osg::Vec3sArray*>(rhs_normalArray))[0]) return true;
if ((*static_cast<const osg::Vec3sArray*>(rhs_normalArray))[0]<(*static_cast<const osg::Vec3sArray*>(lhs_normalArray))[0]) return false;
break;
case(osg::Array::Vec3ArrayType):
if ((*static_cast<const osg::Vec3Array*>(lhs_normalArray))[0]<(*static_cast<const osg::Vec3Array*>(rhs_normalArray))[0]) return true;
@@ -1593,9 +1593,9 @@ struct LessGeometry
if (rhs_colorArray->getType()<lhs_colorArray->getType()) return false;
switch(lhs_colorArray->getType())
{
case(osg::Array::UByte4ArrayType):
if ((*static_cast<const osg::UByte4Array*>(lhs_colorArray))[0]<(*static_cast<const osg::UByte4Array*>(rhs_colorArray))[0]) return true;
if ((*static_cast<const osg::UByte4Array*>(rhs_colorArray))[0]<(*static_cast<const osg::UByte4Array*>(lhs_colorArray))[0]) return false;
case(osg::Array::Vec4ubArrayType):
if ((*static_cast<const osg::Vec4ubArray*>(lhs_colorArray))[0]<(*static_cast<const osg::Vec4ubArray*>(rhs_colorArray))[0]) return true;
if ((*static_cast<const osg::Vec4ubArray*>(rhs_colorArray))[0]<(*static_cast<const osg::Vec4ubArray*>(lhs_colorArray))[0]) return false;
break;
case(osg::Array::Vec3ArrayType):
if ((*static_cast<const osg::Vec3Array*>(lhs_colorArray))[0]<(*static_cast<const osg::Vec3Array*>(rhs_colorArray))[0]) return true;
@@ -1901,18 +1901,18 @@ class MergeArrayVisitor : public osg::ArrayVisitor
virtual void apply(osg::UByteArray& rhs) { _merge(rhs); }
virtual void apply(osg::UShortArray& rhs) { _merge(rhs); }
virtual void apply(osg::UIntArray& rhs) { _merge(rhs); }
virtual void apply(osg::UByte4Array& rhs) { _merge(rhs); }
virtual void apply(osg::Vec4ubArray& rhs) { _merge(rhs); }
virtual void apply(osg::FloatArray& rhs) { _merge(rhs); }
virtual void apply(osg::Vec2Array& rhs) { _merge(rhs); }
virtual void apply(osg::Vec3Array& rhs) { _merge(rhs); }
virtual void apply(osg::Vec4Array& rhs) { _merge(rhs); }
virtual void apply(osg::Byte2Array& rhs) { _merge(rhs); }
virtual void apply(osg::Byte3Array& rhs) { _merge(rhs); }
virtual void apply(osg::Byte4Array& rhs) { _merge(rhs); }
virtual void apply(osg::Short2Array& rhs) { _merge(rhs); }
virtual void apply(osg::Short3Array& rhs) { _merge(rhs); }
virtual void apply(osg::Short4Array& rhs) { _merge(rhs); }
virtual void apply(osg::Vec2bArray& rhs) { _merge(rhs); }
virtual void apply(osg::Vec3bArray& rhs) { _merge(rhs); }
virtual void apply(osg::Vec4bArray& rhs) { _merge(rhs); }
virtual void apply(osg::Vec2sArray& rhs) { _merge(rhs); }
virtual void apply(osg::Vec3sArray& rhs) { _merge(rhs); }
virtual void apply(osg::Vec4sArray& rhs) { _merge(rhs); }
};
bool Optimizer::MergeGeometryVisitor::mergeGeometry(osg::Geometry& lhs,osg::Geometry& rhs)

View File

@@ -1075,13 +1075,13 @@ class CopyArrayToPointsVisitor : public osg::ArrayVisitor
virtual void apply(osg::UIntArray& array) { copy(array); }
virtual void apply(osg::FloatArray& array) { copy(array); }
virtual void apply(osg::UByte4Array& array)
virtual void apply(osg::Vec4ubArray& array)
{
if (_pointList.size()!=array.size()) return;
for(unsigned int i=0;i<_pointList.size();++i)
{
osg::UByte4& value = array[i];
osg::Vec4ub& value = array[i];
EdgeCollapse::FloatList& attributes = _pointList[i]->_attributes;
attributes.push_back((float)value.r());
attributes.push_back((float)value.g());
@@ -1291,7 +1291,7 @@ class CopyPointsToArrayVisitor : public osg::ArrayVisitor
virtual void apply(osg::UIntArray& array) { copy(array, dummy_uint()); }
virtual void apply(osg::FloatArray& array) { copy(array, float()); }
virtual void apply(osg::UByte4Array& array)
virtual void apply(osg::Vec4ubArray& array)
{
array.resize(_pointList.size());

View File

@@ -145,7 +145,7 @@ class InsertNewVertices : public osg::ArrayVisitor
virtual void apply(osg::UByteArray& ba) { apply_imp(ba,GLubyte(0)); }
virtual void apply(osg::UShortArray& ba) { apply_imp(ba,GLushort(0)); }
virtual void apply(osg::UIntArray& ba) { apply_imp(ba,GLuint(0)); }
virtual void apply(osg::UByte4Array& ba) { apply_imp(ba,UByte4()); }
virtual void apply(osg::Vec4ubArray& ba) { apply_imp(ba,Vec4ub()); }
virtual void apply(osg::FloatArray& ba) { apply_imp(ba,float(0)); }
virtual void apply(osg::Vec2Array& ba) { apply_imp(ba,Vec2()); }
virtual void apply(osg::Vec3Array& ba) { apply_imp(ba,Vec3()); }
@@ -591,7 +591,7 @@ void Tesselator::reduceArray(osg::Array * cold, const unsigned int nnu)
}
break;
default: // should also handle:ArrayType' ByteArrayType' ShortArrayType' IntArrayType'
// `UShortArrayType' `UIntArrayType' `UByte4ArrayType' `FloatArrayType'
// `UShortArrayType' `UIntArrayType' `Vec4ubArrayType' `FloatArrayType'
break;
}
}

View File

@@ -42,7 +42,7 @@ class WriteValue : public osg::ConstValueVisitor
virtual void apply(const GLubyte& v) { _o << v; }
virtual void apply(const GLuint& v) { _o << v; }
virtual void apply(const GLfloat& v) { _o << v; }
virtual void apply(const UByte4& v) { _o << v; }
virtual void apply(const Vec4ub& v) { _o << v; }
virtual void apply(const Vec2& v) { _o << v; }
virtual void apply(const Vec3& v) { _o << v; }
virtual void apply(const Vec4& v) { _o << v; }
@@ -158,7 +158,7 @@ class RemapArray : public osg::ArrayVisitor
virtual void apply(osg::UByteArray& array) { remap(array); }
virtual void apply(osg::UShortArray& array) { remap(array); }
virtual void apply(osg::UIntArray& array) { remap(array); }
virtual void apply(osg::UByte4Array& array) { remap(array); }
virtual void apply(osg::Vec4ubArray& array) { remap(array); }
virtual void apply(osg::FloatArray& array) { remap(array); }
virtual void apply(osg::Vec2Array& array) { remap(array); }
virtual void apply(osg::Vec3Array& array) { remap(array); }