0024351: Test cases for AIS dimension presentations to check arrow orientation, text...
[occt.git] / tests / bugs / vis / bug24351_1
1 puts "============"
2 puts "CR24351"
3 puts "============"
4 puts ""
5 #######################################################################
6 #  Test AIS Length dimensions: label position and arrow orientation
7 #######################################################################
8 pload VISUALIZATION
9
10 vinit
11 vright
12
13 set hpos "left hcenter right"
14 set vpos "above vcenter below"
15
16 # ---------------------------------------------------------------------
17 # create dimensions with different arrow orientation and fit algorithm
18 # ---------------------------------------------------------------------
19
20 vpoint arrow_p1  0 0 0
21 vpoint arrow_p2 50 0 0
22
23 vpoint arrow_p3 100 0 0
24 vpoint arrow_p4 150 0 0
25
26 vpoint arrow_p5  0 0 50
27 vpoint arrow_p6 10 0 50
28
29 vpoint arrow_p7 100 0 50
30 vpoint arrow_p8 127 0 50
31
32 vdimension length name=arrow_d1 text=3d plane=zox label=hfit flyout=10.0 arrows=internal arrow_p1 arrow_p2
33 vdimension length name=arrow_d2 text=3d plane=zox label=hfit flyout=10.0 arrows=external arrow_p3 arrow_p4
34 vdimension length name=arrow_d3 text=3d plane=zox label=hfit flyout=10.0 arrows=fit arrow_p5 arrow_p6
35 vdimension length name=arrow_d4 text=3d plane=zox label=hfit flyout=10.0 arrows=fit arrow_p7 arrow_p8
36 vdisplay arrow_d1 arrow_d2 arrow_d3 arrow_d4
37 vfit
38
39 # ------------------------------------------------
40 # create dimension with different label positions
41 # ------------------------------------------------
42
43 vinit Viewer2/View2
44 vright
45
46 set idx 0
47 for {set r 0} {$r < 3} {incr r} {
48   for {set c 0} {$c < 3} {incr c} {
49
50     set point1 p_[expr "$idx * 2 + 0"]
51     set point2 p_[expr "$idx * 2 + 1"]
52
53     vpoint $point1 [expr "50.0 * ($c*2 + 0)"] 0.0 [expr "50.0 * $r"]
54     vpoint $point2 [expr "50.0 * ($c*2 + 1)"] 0.0 [expr "50.0 * $r"]
55
56     set dimension d_$idx
57
58     vdimension length name=$dimension text=3d plane=zox label=[lindex $hpos $c],[lindex $vpos $r] arrows=external flyout=10.0 $point1 $point2
59     vdisplay $dimension
60
61     incr idx
62   }
63 }
64 vfit
65
66 set only_screen 1