1 /**************************************************************************\
2  * Copyright (c) Kongsberg Oil & Gas Technologies AS
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are
7  * met:
8  *
9  * Redistributions of source code must retain the above copyright notice,
10  * this list of conditions and the following disclaimer.
11  *
12  * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * Neither the name of the copyright holder nor the names of its
17  * contributors may be used to endorse or promote products derived from
18  * this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24  * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 \**************************************************************************/
32 
33 #ifndef COIN_INTERNAL
34 #error this is a private header file
35 #endif /* !COIN_INTERNAL */
36 
37 #ifndef SO_TRACKBALLDRAGGER_IV_H
38 #define SO_TRACKBALLDRAGGER_IV_H
39 
40 static const char TRACKBALLDRAGGER_draggergeometry[] =
41   "#Inventor V2.1 ascii\n"
42   "\n"
43   "\n"
44   "DEF TRACKBALL_INACTIVE_MATERIAL Material { diffuseColor 0.5 0.5 0.5  emissiveColor 0.5 0.5 0.5 }\n"
45   "DEF TRACKBALL_ACTIVE_MATERIAL Material { diffuseColor 0.5 0.5 0  emissiveColor 0.5 0.5 0 }\n"
46   "DEF TRACKBALL_FEEDBACK_MATERIAL Material { diffuseColor 0.5 0 0.5  emissiveColor 0.5 0 0.5 }\n"
47   "\n"
48   "DEF TRACKBALL_USER_INACTIVE_MATERIAL Material { diffuseColor 0 0.7 0.1  emissiveColor 0 0.2 0.1 }\n"
49   "DEF TRACKBALL_USER_ACTIVE_MATERIAL Material { diffuseColor 0 0.8 0.1  emissiveColor 0 0.3 0.1 }\n"
50   "\n"
51   "\n"
52   "\n"
53   "DEF TRACKBALL_BAND_MARKER Group {\n"
54   "   DrawStyle { style LINES }\n"
55   "   ShapeHints { vertexOrdering UNKNOWN_ORDERING }\n"
56   "   Cylinder { parts SIDES  radius 1.05 height 0.1 }\n"
57   "}\n"
58   "\n"
59   "\n"
60   "\n"
61   "\n"
62   "DEF trackballXRotator Separator {\n"
63   "   USE TRACKBALL_INACTIVE_MATERIAL\n"
64   "   DEF TRACKBALL_X_BAND Group {\n"
65   "      Rotation { rotation 0 0 1 1.57 }\n"
66   "      USE TRACKBALL_BAND_MARKER\n"
67   "   }\n"
68   "}\n"
69   "DEF trackballXRotatorActive Separator {\n"
70   "   USE TRACKBALL_ACTIVE_MATERIAL\n"
71   "   USE TRACKBALL_X_BAND\n"
72   "}\n"
73   "\n"
74   "DEF trackballYRotator Separator {\n"
75   "   USE TRACKBALL_INACTIVE_MATERIAL\n"
76   "   USE TRACKBALL_BAND_MARKER\n"
77   "}\n"
78   "DEF trackballYRotatorActive Separator {\n"
79   "   USE TRACKBALL_ACTIVE_MATERIAL\n"
80   "   USE TRACKBALL_BAND_MARKER\n"
81   "}\n"
82   "\n"
83   "DEF trackballZRotator Separator {\n"
84   "   USE TRACKBALL_INACTIVE_MATERIAL\n"
85   "   DEF TRACKBALL_Z_BAND Group {\n"
86   "      Rotation { rotation 1 0 0 1.57 }\n"
87   "      USE TRACKBALL_BAND_MARKER\n"
88   "   }\n"
89   "}\n"
90   "DEF trackballZRotatorActive Separator {\n"
91   "   USE TRACKBALL_ACTIVE_MATERIAL\n"
92   "   USE TRACKBALL_Z_BAND\n"
93   "}\n"
94   "\n"
95   "\n"
96   "\n"
97   "\n"
98   "DEF TRACKBALL_USER_AXIS Group {\n"
99   "   Coordinate3 { point [ 0 1.5 0, 0 -1.5 0 ] }\n"
100   "   IndexedLineSet { coordIndex [ 0, 1, -1 ] }\n"
101   "}\n"
102   "\n"
103   "DEF trackballUserAxis Separator {\n"
104   "   USE TRACKBALL_FEEDBACK_MATERIAL\n"
105   "   USE TRACKBALL_USER_AXIS\n"
106   "}\n"
107   "DEF trackballUserAxisActive Separator {\n"
108   "   USE TRACKBALL_FEEDBACK_MATERIAL\n"
109   "   USE TRACKBALL_USER_AXIS\n"
110   "}\n"
111   "\n"
112   "DEF TRACKBALL_DRAGGER_USER_ROTATOR Group {\n"
113   "   Scale { scaleFactor 1.05 1.05 1.05 } # outside the x, y and z bands\n"
114   "   USE TRACKBALL_BAND_MARKER\n"
115   "}\n"
116   "\n"
117   "DEF trackballUserRotator Separator {\n"
118   "   USE TRACKBALL_USER_INACTIVE_MATERIAL\n"
119   "   USE TRACKBALL_DRAGGER_USER_ROTATOR\n"
120   "}\n"
121   "\n"
122   "DEF trackballUserRotatorActive Separator {\n"
123   "   USE TRACKBALL_USER_ACTIVE_MATERIAL\n"
124   "   USE TRACKBALL_DRAGGER_USER_ROTATOR\n"
125   "}\n"
126   "\n"
127   "DEF TRACKBALL_CENTER Separator {\n"
128   "   DrawStyle { style INVISIBLE }\n"
129   "   Sphere { radius 1.02 }\n"
130   "}\n"
131   "\n"
132   "DEF trackballRotator Separator { USE TRACKBALL_CENTER }\n"
133   "DEF trackballRotatorActive Separator { USE TRACKBALL_CENTER }\n";
134 
135 #endif /* ! SO_TRACKBALLDRAGGER_IV_H */
136