Commit Graph

6300 Commits

Author SHA1 Message Date
ichesnok 9d93d9b9b8 0033638: Data Exchange, Step Import - Style for tessellated object missed
TransferBRep_ShapeBinder used for tessellated face.
2024-03-16 19:36:33 +00:00
ichesnok d5bcd33386 0033631: Data Exchange, Step import - Crash by reading STEP file
Creating Poly_Triangulation from ComplexTriangulatedSurfaceSet was fixed.
2024-03-16 19:36:18 +00:00
ichesnok 3888b58c27 0033603: Data Exchange, Step Import - Crash reading corrupted STEP file
Crash fixed by checking IsNull().
2024-03-16 19:35:48 +00:00
ichesnok d1eae5b0d0 0033602: Data Exchange, Step - Carriage return removing
Carriage removing integrated
2024-03-16 19:35:29 +00:00
ichesnok 32f7b4e5bf 0033641: Data Exchange, Step Import - Changing default value for metadata flag
Value for myMetaMode flag changed from 'false' to 'true'.
2024-03-13 17:18:41 +00:00
ichesnok 993da38d54 0033611: Data Exchange - Incorrect header guard for STEP property
Incorrect header guard fixed.
2024-03-13 17:18:27 +00:00
ichesnok a9becad233 0033596: Documentation - Incorrect default value read.step.tessellated
Default value of read.step.tessellated corrected.
2024-03-13 17:18:13 +00:00
abv 5939991070 0025415: Data Exchange - Invalid result of loading a STEP file
Handling of special case found on some STEP files produced by FPX Expert 2013 (PCB design system):
edge curve is line displaced from its true position but with correct direction;
we shift the line in this case so that it passes through vertices correcty.

Protection against possible exception in writing XDE.
2024-03-13 17:17:45 +00:00
astromko e8a36f3a02 0033383: Modeling Algorithms - Wire/Face creation problem
ProjCurve3d and BRepAlgo_FaceRestrictor::Perform functions should not continue to work and should terminate if the BRep_Tool::Curve function returns null pointer.
2024-02-28 18:30:11 +00:00
ichesnok f286953d85 0033530: Data Exchange, Step Import - Implement GENERAL_PROPERTY support
The necessary classes for GeneralProperty support were added.
The ReadMetadata method was created for reading and saving attributes.
2024-02-15 14:00:40 +00:00
ichesnok 20955d88da 0033261: Data Exchange, Step Import - Empty shape after reading process
Added a transfer for ShapeRepresentationRelationship in Transfer of MappedItem method,
in order to support link of components according to ISO 10303-203-2003.
2024-02-08 19:15:58 +00:00
ichesnok 80705eaf31 0033569: Data Exchange, STEP - Crash when reading multi-body file
Datum reading changed in ReadDatums() method:
using DatumSystemAP242 (DatumSystem or DatumReference) array
instead of DatumSystem array (DatumReference)
2024-02-02 12:11:45 +00:00
ichesnok 7b9bda716e 0025188: Data Exchange, Step Export - Losing shapes after import
Check on null for description added to WriteStep methods
(for product, product_definition and product_definition_formation)
2024-02-02 12:10:51 +00:00
ichesnok dec56592dd 0032980: Data Exchange - STEP import produce a crash
Check on null for loop added
2024-01-30 11:02:05 +00:00
rodrlyra f035e0718b 0033551: Visualization - Add new transform persistence mode to force orthographic projection on object.
The new transform persistence mode, with flag `Graphic3d_TMF_OrthoPers`, can be combined (bitwise OR operation) with the other persistence modes (2D, Trihedron or Zoom/Rotate Persistence) to make objects be rendered with orthographic projection when it is on a view with perspective projection.

If the view already uses orthographic projection, there will be no difference.

This feature was implemented to fix ViewCube being distorted when view with perspective projection changes size.
2024-01-17 12:53:49 +00:00
vglukhik cb290cc932 Revert "0033551: Visualization - Add new transform persistence mode to force orthographic projection on object."
This reverts commit 0141024df5.
2024-01-15 15:15:41 +00:00
dpasukhi cdc6566c3c 0033564: Data Exchange, STEP - Making default unit parameter
Updated signature for step makers with units
  to have default unit as a mm (no scaling)
2024-01-12 17:24:16 +00:00
oan 631a34a05f 0033567: Modeling Data - GeomLib_IsPlanarSurface raises exception SIGFPE Arithmetic Exception in Release mode
Add protection against zero-division
2024-01-12 17:23:55 +00:00
rodrlyra 0141024df5 0033551: Visualization - Add new transform persistence mode to force orthographic projection on object.
The new transform persistence mode, with flag `Graphic3d_TMF_OrthoPers`, can be combined (bitwise OR operation) with the other persistence modes (2D, Trihedron or Zoom/Rotate Persistence) to make objects be rendered with orthographic projection when it is on a view with perspective projection.

If the view already uses orthographic projection, there will be no difference.

This feature was implemented to fix ViewCube being distorted when view with perspective projection changes size.
2024-01-05 18:36:54 +00:00
drochalo 5c94806385 0032487: Visualization - synchronize myHasEntityWithPersistence with such entities number
Changed myHasEntityWithPersistence to a counter.
Renamed variable to myNbEntityWithPersistence.
Modified HasEntityWithPersistence() method.
Modified logical test in SelectMgr_ViewerSelector::traverseObject.
2023-12-26 08:38:03 +00:00
dpasukhi f0caf64f54 Update version to 7.8.1 dev 2023-12-26 08:38:01 +00:00
dpasukhi 656b0d217f 0033557: Coding - Cocoa compilation problem
Fixed extern relation for VisTest component on MacOS
V7_8_0
2023-12-26 08:37:59 +00:00
dpasukhi 83bb2a329d 0033555: Foundation Classes - DEBUG macro leads to compile error
Removed incorrect parameter call when DEBUG macro is active
2023-12-15 19:53:17 +00:00
dpasukhi 5b0f5b52b9 0033554: Foundation Classes - Missed hash specialization for enumerations
Fixed problem with missed hash specialization
2023-12-15 19:53:06 +00:00
dpasukhi 06282d9c7c 0033553: Foundation Classes - HashUtils compilation problem
Updated OptimalSeed template
2023-12-15 19:52:56 +00:00
Xu Zhongxing 60792f26f0 0033552: Foundation Classes - NCollection_BaseMap move ctor clears wrong pointer
Replaced correct class member to clear
2023-12-15 19:51:57 +00:00
rodrlyra 6ef56849a5 0033542: Visualization, AIS_ViewController - New AIS_DragAction for when drag interaction is confirmed
Added AIS_DragAction_Confirmed drag action, which will be called by AIS_ViewController when the drag interaction is confirmed (mouse moved more than click threshold).
2023-12-15 19:51:25 +00:00
dpasukhi e8605596c9 0033548: Tests - VC142 internal problem for Chamfer functionality
Update test cases for Jenkins old compiler. Mark as BAD
2023-12-12 17:28:20 +00:00
dpasukhi ffd7a3aa4f 0033544: Foundation Classes - Fixing compiler problems [HotFix]
Fixed problem with Clang-16
Fixed problem with SWIG-4
Fixed genproj procedure
2023-12-06 13:00:13 +00:00
dpasukhi 8147976d9f Update OCCT version to 7.8.0 2023-12-04 15:53:08 +00:00
dpasukhi 40b80d8d66 0033300: Data Exchange, DE Wrapper - Specialize WS for each transfer process
Updated STEP and IGES to personalize own work session
2023-12-04 15:53:07 +00:00
dpasukhi 7036facf10 0033399: Configuration - Research into opportunities to increase performance
Implement CMake profiles to modify compiler and linker flags
2023-12-04 15:53:07 +00:00
ichesnok a6e425d0a6 0033540: Data Exchange - Segmentation fault on loading model
Implemented workaround to avoid crash on out-of-ISO files
2023-12-04 15:53:07 +00:00
ichesnok b9fbc699b5 0033483: Data Exchange - Static_Interface local instance for the model
StepData_StepParameters class created and used instead of Interface_Static
2023-12-04 15:53:06 +00:00
ichesnok 0435edfe54 0033474: Data Exchange - Implement stream reading into RWMesh interface
Stream usage as parameter
2023-12-04 15:53:05 +00:00
dpasukhi bd651bbbd9 0033531: Configuration - Rework DataExchange ToolKits organization
Integrated DE plugin functionality.
Reworked DE components:
 - TKDESTEP: Handling STEP file format.
 - TKDEOBJ: Handling OBJ file format.
 - TKDEIGES: Handling IGES file format.
 - TKDEGLTF: Handling GLTF file format.
 - TKDEVRML: Handling VRML file format.
 - TKDEPLY: Handling PLY file format.
 - TKDESTL: Handling STL file format.
Reworked DE DRAW components:
  TKXSDRAWSTEP: Container for DE command to work with STEP.
  TKXSDRAWOBJ: Container for DE command to work with OBJ.
  TKXSDRAWIGES: Container for DE command to work with IGES.
  TKXSDRAWGLTF: Container for DE command to work with GLTF.
  TKXSDRAWVRML: Container for DE command to work with VRML.
  TKXSDRAWPLY: Container for DE command to work with PLY.
  TKXSDRAWSTL: Container for DE command to work with STL.
TKXSDRAW rework to be base DRAW plugin to keep DE session and utils.
Updated documentation
Updated samples
2023-12-04 15:52:47 +00:00
dpasukhi 3aeea1e96e 0033425: Configuration - Implement JeMalloc memory manager
Integrated CMake procedure to choose MMGR
Default MMGE is Native
2023-12-04 13:38:51 +00:00
dpasukhi ed85665b55 0033529: Data Exchange, Step - Move on IncAllocator functionality
Update allocation mechanism for StepParser
Decrease the table size for parsing
2023-12-04 13:37:10 +00:00
dpasukhi 1103eb60af 0033370: Foundation Classes - Moving into STL and Boost functionality
NCollection containers update:
  - NCollection_Array1 - updated functionality
  - NCollection_Array2 - NCollection_Array1 as a wrapper for 2array
  - NCollection_Vector -> NCollection_DynamicArray was renamed and reworked.
TCollection:
  - Use static empty string to avoid allocations on empty string
 NCollection allocators update:
  - NCollection_Allocator - allocator that used Standard::Allocate
  - NCollection_OccAllocator - allocator-wrapper that used OCC BaseAllocator objects
  - NCollection_IncAllocator - rework to increase performance
Standard:
  - Rework functionality to use different allocation libs
  - Implement basic of new way to wrap allocations tools
  - Define 4 ways to allocation (defines in configure stage)
 Additional changes:
  - Hash function uses std::hash functionality
   - size_t as a hash value
  - New HashUtils with Murmur and FVN hash algo for x32 and x64
  - Deprecated _0.cxx and .gxx DE classes reorganized
  - Create own utility for std memory
  - Update Standard_Transient to be more platform-independent
 Math TK changes:
  - math_Vector -> match_BaseVector<>
    - Buffer decreased to cash 32 elements instead of 512
2023-12-04 13:37:09 +00:00
rodrlyra 6dbfade692 0033521: Visualization - possibility to redefine rotation persistence in Graphic3d_TransformPers
Added virtual function to Graphic3d_TransformPers that allows overriding rotation persistence behavior on application level.
2023-11-28 13:33:19 +00:00
ichesnok 588ee924e4 0033491: Data Exchange, Step Import - Incorrect import of ComplexTriangulatedFace
Reading and writing of triangle_strips and triangle_fans has been corrected in RWStepVisual_RWComplexTriangulatedFace.cxx file. And corresponding corrections have been added to other files.
2023-11-09 15:05:29 +00:00
akaftasev f0c6e6fc8d 0033515: Modeling Algorithm - BRepExtrema_DistShapeShape poduces wrong result
Changed redundant square operation
2023-11-03 14:21:37 +00:00
dorlov 58390c4eb1 0032666: Data Exchange - Cannot write STEP file from an XCAF document containing only triangulations in the faces
Added support of reading and writing of the triangulated_surface_set.
Prevented creation of tesselated geometry under the schemas different from AP242DIS.
test step_read corrected, switched parameter write.step.schema to AP242DIS in begin and back to AP214CD at the end
2023-10-18 12:39:00 +01:00
ika 38581280d0 0033486: Data Exchange - Mistake in processing of the oriented dimensions
Remove using the array member's number instead of array member.
2023-09-23 14:41:46 +01:00
ika 4ce99d9697 0033470: Application Framework - TDataStd_NamedData HasSmth() methods return true for empty containers.
Add checks for empty containers.
2023-09-22 14:35:53 +01:00
anv 2b5ee7c791 0033484: Data Exchange, Step Import - Pretessellated geometry is translated incompletely
Added proper translation for TessellatedCurveSet and ComplexTriangulatedSurfaceSet.
2023-09-22 05:57:01 +01:00
ichesnok 06f2625c35 0033426: Data Exchange, VRML - Impossible to import VRML V1
VrmlData_ShapeNode creating (for vrml v1 case) was added
2023-09-14 08:16:45 +01:00
ichesnok 28b505b27b 0033351: Data Exchange, Step - Improvement for thread safety of the STEP translator
Local StepData_Factors object usage for each session
Static variables isolated
2023-09-08 11:28:53 +01:00
ichesnok a948803521 0033183: Data Exchange - Lose texture after saving XBF file
Texture reading and writing changed in VisMaterial drivers
2023-09-08 11:28:27 +01:00
akaftasev e7bcf415c3 0033450: Modeling algorithm - HLR algorightm stucks
Selecting the middle point between XInf and XSup leads situation, where X values almost does not change.
To prevent this situation, select shifted point instead of middle.
2023-09-05 23:52:02 +01:00