| 670 | } |
| 671 | |
| 672 | void ObjWriteTarget::writeData( const std::string &typeSpecifier, uint8_t dims, size_t strideBytes, const float *srcData, size_t count ) |
| 673 | { |
| 674 | if( strideBytes == 0 ) |
| 675 | strideBytes = sizeof(float) * dims; |
| 676 | for( size_t v = 0; v < count; ++v ) { |
| 677 | const float *data = (const float*)(((const uint8_t*)srcData) + v * strideBytes); |
| 678 | ostringstream os; |
| 679 | os << typeSpecifier << " "; |
| 680 | for( uint8_t d = 0; d < dims; ++d ) { |
| 681 | os << data[d]; |
| 682 | if( d == dims - 1 ) os << std::endl; |
| 683 | else os << ' '; |
| 684 | } |
| 685 | mStream->writeData( os.str().c_str(), os.str().length() ); |
| 686 | } |
| 687 | } |
| 688 | |
| 689 | void ObjWriteTarget::copyAttrib( geom::Attrib attr, uint8_t dims, size_t strideBytes, const float *srcData, size_t count ) |
| 690 | { |
no test coverage detected