1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00
occt/tests/bugs/modalg_7/bug22750
luz paz 7b5e532f83 0031939: Coding - correction of spelling errors in comments [part 7]
Fix various typos

Fixed via codespell v2.1.dev
2021-01-20 21:27:44 +03:00

113 lines
2.6 KiB
Plaintext

puts "========"
puts "OCC22750"
puts "========"
puts ""
#######################################################
# Boolean operation: Bug in Fuse
#######################################################
# Step 1: Create surface wing
# Create sections as ellipses 2D (possible to create directly in 3D)
ellipse e1 0 0 30 20
ellipse e2 0 0 20 10
ellipse e3 0 0 16 8
# Convert 2d Curves in 3d Curves, and place them along Z axis
to3d ee1 e1
to3d ee2 e2; translate ee2 0 0 100
to3d ee3 e3; translate ee3 0 0 200
rotate ee2 0 0 100 0 1 0 10
rotate ee3 0 0 200 0 1 0 20
#Approximate the ellipses by Bsplines
appro c1 16 ee1
appro c2 16 ee2
appro c3 16 ee3
#Make a surface by approximation passing through a set of curves
# and create a face
appsurf s1 c1 c2 c3
mkface f1 s1
#Make a surface by approximation passing through a set of ellipse
# and create a face
appsurf s2 ee1 ee2 ee3
mkface f2 s2
# Step 2: Create surface for fuselage
#Create circles in 3D along axe X
circle c1 -100 0 0 1 0 0 10
circle c2 -50 0 0 1 0 0 30
circle c3 50 0 0 1 0 0 29
circle c4 100 0 0 1 0 0 20
circle c5 150 0 0 1 0 0 10
#Make a surface by approximation passing through a set of circles
# and create a face
appsurf s3 c1 c2 c3 c4 c5
mkface f3 s3
# Step 3: Create a Solid for the Wing
# Build edges from ellipse, wires with edges, faces on wires
# It's necessary to sew the faces to create the Shell, because the faces don't shared the same edge
#sewing will create a shell, it remains to create the solid from the shell
mkedge ed1 ee1
mkedge ed3 ee3
wire w1 ed1
wire w3 ed3
mkplane f5 w1
mkplane f6 w3
sewing r f2 f5 f6
###mksol so1 r
shape so1 So
add r so1
checkshape so1
# The shape so1 is valid
#Step 4: Create a Solid for fuselage
# We will extract the edge from the face f3, and use them to build faces, the edge will be shared and we
# can rebuild a sh and a solid with the basic and fast method
nexplode f3 e
#nexplode give same order of exploration in different sessions
wire w1 f3_1
wire w3 f3_3
mkplane f7 w1 1
mkplane f8 w3 1
mkvolume so2 f3 f7 f8 -ni
checkshape so2
# Step 5: Fuse the Wing to the fuselage
ttranslate so1 0 0 10
bop so1 so2
bopfuse rrr
checkshape rrr
checknbshapes rrr -face 5 -wire 5 -shell 1 -solid 1
checkprops rrr -s 57448.9 -v 664969
# Step 6: Create the other wing using copy and rotation
tcopy so1 so3
trotate so3 0 0 0 1 0 0 180
# Step 7: Fuse the Wing to the fuselage
bop rrr so3
bopfuse result
checkshape result
checknbshapes result -wire 8 -face 7 -shell 1 -solid 1
checkprops result -s 73752.9 -v 784375
checkview -display result -2d -path ${imagedir}/${test_image}-2d.png