1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-04 18:06:22 +03:00
emv e8b9db57cd 0028508: Make the CellsBuilder algorithm to work with multi-dimensional arguments
1. The CellsBuilder algorithm has been extended to work with multi-dimensional arguments.
It has become possible not only simulate Boolean expressions, but also perform non-supported
Boolean operations, like cutting face from solid, or fusing face with edge.

2. Test cases with multi-dimensional input shapes have been created.

3. Documentation has been updated.
2017-03-23 15:57:30 +03:00

50 lines
1.4 KiB
Plaintext

puts "========"
puts "OCC28528"
puts "========"
puts ""
#######################################################################
# Make the CellsBuilder algorithm to work with multi-dimensional arguments
#######################################################################
puts "Arguments: solid and a face"
box b 10 10 10
plane p 5 5 5 1 0 0
mkface f p -10 10 -10 10
bclearobjects
bcleartools
baddobjects b f
bfillds
bcbuild r
puts "Results"
puts "All split shapes"
bcaddall result
checknbshapes result -solid 2 -m "Number of SOLIDs in the result containing all splits"
checknbshapes result -face 12 -m "Number of FACEs in the result containing all splits"
checkprops result -v 1000 -s 1200
puts "Cut solid from face"
bcremoveall
bcadd result f 1 b 0
checknbshapes result -face 1 -m "Number of FACEs in the result of CUT(f, b) operation"
puts "Cut face from solid"
bcremoveall
bcadd result b 1 f 0
checknbshapes result -solid 2 -m "Number of SOLIDs in the result of CUT(b, f) operation"
puts "Common between face and solid"
bcremoveall
bcadd result b 1 f 1
checknbshapes result -face 1 -m "Number of FACEs in the result of COMMON(b, f) operation"
puts "Fuse operation between face and solid"
bcremoveall
bcadd result b 1 -m 1 -u
bcadd result f 1 b 0
checknbshapes result -solid 1 -m "Number of SOLIDs in the result of FUSE(b, f) operation"
checknbshapes result -face 11 -m "Number of FACEs in the result of FUSE(b, f) operation"