mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-05 18:16:23 +03:00
Purpose: The algorithm is to build solids from set of shapes. It uses the BOPAlgo_Builder algorithm to intersect the given shapes and build the images of faces (if needed) and BOPAlgo_BuilderSolid algorithm to build the solids. Steps of the algorithm: 1. Collect all faces: intersect the shapes if necessary and collect the images of faces, otherwise just collect the faces to the <myFaces> list. All faces on this step added twice, with orientation FORWARD and REVERSED; 2. Create bounding box covering all the faces from <myFaces> and create solid box from corner points of that bounding box (myBBox, mySBox). Add faces from that box to <myFaces>; 3. Build solids using faces from <myFaces> using BOPAlgo_BuilderSolid algorithm; 4. Treat the result: Eliminate solid containig faces from <mySBox>; 5. Fill internal shapes: add internal vertices and edges into created solids; 6. Prepare the history. Fix for regression. class BOPAlgo_BuilderSolid: The tolerance value used in BRepClass3d_SolidClassifier has been increased. Test cases for issue CR25232 Small correction to eliminate the warning.
29 lines
624 B
Plaintext
29 lines
624 B
Plaintext
puts "============"
|
|
puts "OCC25232"
|
|
puts "============"
|
|
puts ""
|
|
#########################################################################
|
|
# Functionality to create solids from set of shapes
|
|
#########################################################################
|
|
|
|
box b1 10 10 10
|
|
explode b1 f
|
|
box b2 4 4 4 2 2 2
|
|
explode b2 w
|
|
mkvolume result b1_1 b1_2 b1_3 b1_4 b1_5 b1_6 b2_1 b2_2 b2_3 b2_4 b2_5 b2_6 -ni
|
|
# 1 solid created
|
|
|
|
set square 600
|
|
|
|
set nb_v_good 16
|
|
set nb_e_good 24
|
|
set nb_w_good 6
|
|
set nb_f_good 6
|
|
set nb_sh_good 1
|
|
set nb_sol_good 1
|
|
set nb_compsol_good 0
|
|
set nb_compound_good 0
|
|
set nb_shape_good 54
|
|
|
|
set 2dviewer 1
|