File: bug26196

package info (click to toggle)
oce 0.18.3-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 301,548 kB
  • sloc: cpp: 1,190,609; ansic: 67,225; sh: 11,630; tcl: 7,954; cs: 5,221; python: 2,867; java: 1,522; makefile: 342; xml: 292; perl: 37
file content (43 lines) | stat: -rw-r--r-- 1,305 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
puts "========"
puts "OCC26196"
puts "========"
puts ""
#################################################
# Wrong result obtained by projection algorithm
#################################################

restore [locate_data_file OCC26196-Face.brep] f

explode f e
mkcurve c f_1
mksurface s f
trim st s 1.33305 4.31185 -1.56174 0.415831
project c2d c st

set bug_info [dump c2d]
set bug_info [string trim [string range $bug_info [expr {[string first "KnotsPoles :" $bug_info] + 12}] [string length $bug_info]]]
set bug_info [string trim [string range $bug_info 0 [expr {[string first "Knots :" $bug_info] - 1}]]]
set bug_info_length [llength $bug_info]

set beg_X [lindex $bug_info 2]
set beg_X [string range $beg_X 0 [expr {[string length $beg_X] - 2}]]
set beg_Y [lindex $bug_info 3]

set end_X [lindex $bug_info [expr {$bug_info_length - 2}]]
set end_X [string range $end_X 0 [expr {[string length $end_X] - 2}]]
set end_Y [lindex $bug_info [expr {$bug_info_length - 1}]]

if {$beg_X > $end_X} {
  set diff_X [expr {$beg_X - $end_X}]
} else {
  set diff_X [expr {$end_X - $beg_X}]
}
if {$beg_Y > $end_Y} {
  set diff_Y [expr {$beg_Y - $end_Y}]
} else {
  set diff_Y [expr {$end_Y - $beg_Y}]
}

if {$diff_X > 1.e-06 || $diff_Y > 1.e-06} {
  puts "ERROR: OCC26196 is reproduced. Projection is wrong."
}