0033317: Data Exchange, Step Export - Ignoring color attached to the reference shape label Fixed problem with pure referencing. To export reference label to step we convert it to the assembly with one part. All attributes attached to the label should be moved to the new part. For working with it new map contains only pure reference labels, that converted to the part was implemented to the STEPCAFControl_Writer. Updated code style of the STEPCAFControl_Writer Improved ability to export labels from different documents Removed OCCT_Debug macros to print in Trace gravity
0032350: Data Exchange - STEPControl_Writer.writeStream(std::ostream) STEPCAFControl_Writer::WriteStream(), STEPControl_Writer::WriteStream() - added interface for writing into stream. STEPCAFControl_Reader::ReadStream() - added stream reading method (similar to STEPControl_Reader::ReadStream()). Added option -stream to commands ReadStep, WriteStep, and testwritestep.
0031382: Data Exchange - BinXCAF should preserve length unit information Possibility for adding LengthUnit info to XCAF document using special class XCAFDoc_LenghtUnit and XCAFDoc_LenghtUnitTool is implemented. Package UnitsMethods is split: geom methods were placed to new file GeomConvert_Units which is in the toolkit TKXSBase, internal step scale factors was placed to StepData. Updated UnitMethods to convert scale factor to different unit types. Now, XSAlgo::XSAlgo_AlgoContainer is used to update unit info from static interface values. New Draw command "XSetLengthUnit" and "XGetLengthUnit" for set or get XDE attribute. Upgraded tests for STEP, IGES, OBJ, glTF, VRML formats to check area regressing with used unit. Upgraded tests\de test cases to use any units in the "loop back" algorithms.
0025748: Parallel version of progress indicator Progress indication mechanism is refactored to support incrementing progress within multithreaded algorithms. The class Message_ProgressIndicator is only an interface to the user application. It accumulates the progress provided by progress scopes. The counter is protected by mutex for thread-safety. The new class Message_ProgressScope replacing Message_ProgressSentry should be used to advance the progress. The scopes are nested to each other to reflect the nested nature of operations. The new class Message_ProgressRange should be used to pass the progress to sub-scopes. All OCCT algorithms involving progress indication have been updated to new API. Improvements in Draw_ProgressIndicator: - Separate console mode has been added in order to make possible to put the progress into std::cout instead or in addition to the draw interpreter, instead of trigger option "-tclOutput". - Treatment of Ctrl-Break signal has been added. Now any operation can be aborted by Ctrl-C or Ctrl-Break keystroke. Added new test case 'perf fclasses progr_par' for testing of parallel work of the progress.
0028315: Data Exchange - Import/Export GD&Ts without semantic Implement import/export of Dimensions without semantic. Add new type of dimension for GDTs with presentation and connecting to shapes. Update test cases. Small corrections for issue CR28315
0024788: Foundation Classes - remove Dico_Dictionary Class Dico_Dictionary was replaced by NCollection_DataMap/NCollection_IndexedDataMap classes. Changed argument name in template class NCollection_Datamap to eliminate redefinitions of static members in dependent code.
0026859: Export of GDT from XCAF to STEP Export/Import: Add export of dimensions, geometric tolerances and datums, according to AP242. Add missing STEP entities. Corrections. XCAF: Add new attributes to Datum object: DatumTargetNumber. Supplement enum XCAFDimTolObjects_GeomToleranceZoneModif. Corrections. Test cases: gdt export A1 gdt export A2 gdt export A3 gdt export A4 gdt export A5
0026657: Data Exchange - IGES/STEP OCAF writers should keep hierarchy and colors when saving non-root elements Make modification to save in the file part of the XCAF document starting from specified label. If specified label is component of the high-level assembly then high-level assembly is saved in document with one specified component. In other case only part of the document starting from the specified label is saved.
0024002: Overall code and build procedure refactoring -- automatic Automatic upgrade of OCCT code by command "occt_upgrade . -nocdl": - WOK-generated header files from inc and sources from drv are moved to src - CDL files removed - All packages are converted to nocdlpack