Reading Notes from a 3dm
Demonstrates how to read the user-added notes field from a 3DM file using either C/C++ or the openNURBS toolkit.
bool ReadNotesFromRhino3dmFile( const wchar_t* filename, ON_wString& notes ) { if( 0 == filename || 0 == filename[0] ) return false; // STEP 1: Open the file FILE* archive_fp = ON::OpenFile( filename, L"rb" ); if( 0 == archive_fp ) return false; // STEP 2: Create a binary archive object ON_BinaryFile archive( ON::read3dm, archive_fp ); // STEP 3: Read 3dm start section int file_version = 0; ON_String start_section_comments; if( !archive.Read3dmStartSection(&file_version, start_section_comments) ) { ON::CloseFile( archive_fp ); return false; } // STEP 4: Read 3dm properties section ON_3dmProperties properties; if( !archive.Read3dmProperties(properties) ) { ON::CloseFile( archive_fp ); return false; } // STEP 5: Close the file ON::CloseFile( archive_fp ); // return the notes notes = properties.m_Notes.m_notes; return true; }