mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-06-30 12:14:08 +03:00
StlTransfer.cxx, function StlTransfer::BuildIncrementalMesh(...) fills the StlMesh_Mesh. Before this fix the StlTransfer always force meshing of the passed shape. Now meshing is completely removed from the StlTransfer. StlWriter can return error status now, for example, if a mesh of the passed shape is empty. In this case file will be not created. Added test case bugs/xde/bug25357 Avoid the warning on gcc compiler. Test scripts were modified according to the fix. 1) bug23192, bug22670, bug23193: removed "isParallel" flag from the command arguments. Manually meshing of the shape (as far as meshing was removed from STL writer). 2) bug22898: before the fix writestl always remeshes the shape with a deflection, related to the boundery box of the shape. For "hammer" shape there is a 38.9076 deflection for mesh. Differences between before writing and after reading are dedicated to fact that stl writes triangulation as an elements of the spahe (like faces, edges etc.)
48 lines
955 B
Plaintext
48 lines
955 B
Plaintext
puts "=========="
|
|
puts "OCC25357"
|
|
puts "=========="
|
|
puts ""
|
|
#######################################################################################
|
|
# STL writer does not check the given shape for existing triangulation and remeshes
|
|
# shape using BRepMesh in force mode
|
|
#######################################################################################
|
|
|
|
set aFile ${imagedir}/${test_image}.stl
|
|
file delete -force ${aFile}
|
|
|
|
set anASCIImode 0
|
|
|
|
ptorus res 10 8
|
|
incmesh res 0.5
|
|
|
|
#decho off
|
|
set LogBefore [trinfo res]
|
|
#decho on
|
|
|
|
writestl res ${aFile} ${anASCIImode}
|
|
|
|
#decho off
|
|
set LogAfter [trinfo res]
|
|
#decho on
|
|
|
|
set status 1
|
|
if { ![file exists ${aFile}] } {
|
|
set status 0
|
|
}
|
|
|
|
# Check file size
|
|
set filesize [ file size ${aFile} ]
|
|
if { ${filesize} == 0 } {
|
|
set status 0
|
|
}
|
|
|
|
if { $LogBefore != $LogAfter } {
|
|
set status 0
|
|
}
|
|
|
|
if {$status == 1} {
|
|
puts "OK: STL writer check given shape"
|
|
} else {
|
|
puts "Error: STL writer does not check given shape"
|
|
}
|