0025282: Visualization, OpenGl_PrimitiveArray - provide built-in GLSL programs as...
[occt.git] / tests / bugs / vis / bug24131_markers
CommitLineData
a577aaab 1puts "========"
2puts "OCC24131 Markers using Point Sprites"
3puts "========"
4
5# reflects Aspect_TypeOfMarker enumeration
6set aMarkerTypeNames {
7 Aspect_TOM_POINT
8 Aspect_TOM_PLUS
9 Aspect_TOM_STAR
10 Aspect_TOM_X
11 Aspect_TOM_O
12 Aspect_TOM_O_POINT
13 Aspect_TOM_O_PLUS
14 Aspect_TOM_O_STAR
15 Aspect_TOM_O_X
16 Aspect_TOM_RING1
17 Aspect_TOM_RING2
18 Aspect_TOM_RING3
19 Aspect_TOM_BALL
20 Aspect_TOM_USERDEFINED
21}
22
abe46077 23
24# custom marker
25set aCustom1 [locate_data_file images/marker_box1.png]
26set aCustom2 [locate_data_file images/marker_box2.png]
27set aCustom3 [locate_data_file images/marker_dot.png]
a577aaab 28
29# draw box in advance which should fit all our markers
30box b -8 -8 0 16 16 2
31puts "hI"
32for { set aMode 0 } { $aMode <= 1 } { incr aMode } {
33 set aTitle "bitmaps"
34 if { $aMode == 1 } { set aTitle "sprites" }
8625ef7e 35 vcaps -sprites $aMode
a577aaab 36 set aV "Driver${aMode}/Viewer1/View1"
37 vinit name=$aV l=32 t=32 w=512 h=512
38 vactivate $aV
39 vclear
40
41 vbottom
42 vdisplay b
43 vfit
44 verase b
45
46 for { set aMarkerType 0 } { $aMarkerType <= 13 } { incr aMarkerType } {
47 set aRow [expr $aMarkerType - 7]
48 set aCol 5
49 set aName [lindex $aMarkerTypeNames $aMarkerType]
50 vdrawtext "$aName" 0 [expr $aRow + 0.5] 0 128 255 255 1 1 000 0 12 2 Arial
51 if { $aMarkerType == 13 } {
52 vmarkerstest m${aMarkerType}_${aCol} $aCol $aRow 0 PointsOnSide=1 FileName=$aCustom1
53 set aCol [expr $aCol - 1]
54 vmarkerstest m${aMarkerType}_${aCol} $aCol $aRow 0 PointsOnSide=1 FileName=$aCustom2
abe46077 55 set aCol [expr $aCol - 1]
56 vmarkerstest m${aMarkerType}_${aCol} $aCol $aRow 0 PointsOnSide=1 FileName=$aCustom3
a577aaab 57 } else {
58 for { set aMarkerScale 1.0 } { $aMarkerScale <= 7 } { set aMarkerScale [expr $aMarkerScale + 0.5] } {
59 vmarkerstest m${aMarkerType}_${aCol} $aCol $aRow 0 MarkerType=$aMarkerType Scale=$aMarkerScale PointsOnSide=1
60 set aCol [expr $aCol - 1]
61 }
62 }
63 }
64 vdump $imagedir/${casename}_${aTitle}.png
65}