1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00
azv 94f71cad33 0024682: Move out B-spline cache from curves and surfaces to dedicated classes BSplCLib_Cache and BSplSLib_Cache
1. B-spline cache was moved into separated classes: BSplCLib_Cache for 2D and 3D curves and BSplSLib_Cache for surfaces.

2. The cache is used now in corresponding adaptor classes (Geom2dAdaptor_Curve, GeomAdaptor_Curve and GeomAdaptor_Surface) when the curve or surface is a B-spline.

3. Algorithms were changed to use adaptors for B-spline calculations instead of curves or surfaces.

4. Precised calculation of derivatives of surface of revolution is implemented for the points of surface placed on the axis of revolution (Geom_SurfaceOfRevolution.cxx)

5. Small modifications are made to adjust algorithms to new behavior of B-spline calculation.

6. Test cases were modified according to the modern behavior.

7. Changes in BOPAlgo_WireSplitter, BOPTools_AlgoTools, BRepLib_CheckCurveOnSurface and ShapeAnalysis_Wire to use adaptors instead of geometric entities

8. Allow Geom2dAdaptor and GeomAdaptor in case of offset curve to use corresponding adaptor for basis curve

Modification of test-cases according to the new behavior.
2015-05-28 13:38:22 +03:00

32 lines
523 B
Plaintext

cpulimit 500
restore [locate_data_file lh3d_px1.brep] a
#removing intersection of faces a_3 and a_220
set faces [explode a f]
bop a_3 a_220
bopcut a_3
compound b
foreach f $faces {
compound b $f b
}
set i 0
compound result
repeat 21 {
plane p_$i 0 $i*100 0 0 1 0
mkface f_$i p_$i
set bsres [bsection s_$i b f_$i]
if { [regexp {Error} $bsres] } {
puts "Error: bsection not done"
}
compound result s_$i result
set dist [expr $i * 100]
puts "OK Section:$dist"
incr i 10
}
set length 2.49755e+06