-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathREADME
134 lines (112 loc) · 6.61 KB
/
README
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
These are examples taken from 'The Inventor Mentor' and 'The Inventor Toolmaker'
and adapted for Coin library and its GUI toolkit libraries (SoQt, SoWin, SoXt,
and SoWx).
Some of the original examples are strongly dependent on the original Open
Inventor component library, based on X11/Xt APIs, and therefore are not always
easily adaptable to different window systems.
The current status is the following:
````
+-----------------------------------------------------+
The Inventor Mentor | SoQt | SoWin | SoXt | SoWx |
+-----------------------+-------+-------+------+------+
02.1.HelloCone | ok | | ok | ok |
02.2.EngineSpin | ok | | ok | ok |
02.3.Trackball | ok | | ok | ok |
02.4.Examiner | ok | | ok | ok |
03.1.Molecule | ok | | ok | ok |
03.2.Robot | ok | | ok | ok |
03.3.Naming | ok | | ok | ok |
04.1.Cameras | ok | | ok | ok |
04.2.Lights | ok | | ok | ok |
05.1.FaceSet | ok | | ok | ok |
05.2.IndexedFaceSet | ok | | ok | ok |
05.3.TriangleStripSet | ok | | ok | ok |
05.4.QuadMesh | ok | | ok | ok |
05.5.Binding | ok | | ok | ok |
05.6.TransformOrdering | ok | | ok | ok |
06.1.Text | ok | | ok | ok |
06.2.Simple3DText | ok | | ok | ok |
06.3.Complex3DText | ok | | ok | ok |
07.1.BasicTexture | ok | | ok | ok |
07.2.TextureCoordinates | ok | | ok | ok |
07.3.TextureFunction | ok | | ok | ok |
08.1.BSCurve | ok | | ok | ok |
08.2.UniCurve | ok | | ok | ok |
08.3.BezSurf | ok | | ok | ok |
08.4.TrimSurf | ok | | ok | ok |
09.1.Print | [1] | | [1] | ? |
09.2.Texture | [1] | | [1] | ? |
09.3.Search | ok | | ok | ok |
09.4.PickAction | ok | | ok | ok |
09.5.GenSph | ok | | ok | ok |
10.1.addEventCB | ok | | ok | ok |
10.2.setEventCB | N.A. | N.A. | ok | N.A. |
10.3and4.MotifList | N.A. | N.A. | [4] | N.A. |
10.5.SelectionCB | ok | | ok | ok |
10.6.PickFilterTopLevel | ok | | ok | ko |
10.7.PickFilterManip | ok | | ok | |
10.8.PickFilterNodeKit | N.A. | N.A. | [1] | N.A. |
11.1.ReadFile | ok | | ok | ok |
11.2.ReadString | ok | | ok | ok |
12.1.FieldSensor | ok | | ok | ok |
12.2.NodeSensor | ok | | ok | ok |
12.3.AlarmSensor | ok | | ok | ok |
12.4.TimerSensor | ok | | ok | ok |
13.1.GlobalFlds | ok | | ok | ok |
13.2.ElapsedTime | ok | | ok | ok |
13.3.TimeCounter | ok | | ok | ok |
13.4.Gate | ok | | ok | ok |
13.5.Boolean | ok | | ok | ok |
13.6.Calculator | ok | | ok | ok |
13.7.Rotor | ok | | ok | ok |
13.8.Blinker | ok | | ok | ok |
14.1.FrolickingWords | ok | | [3] | ok |
14.2.Editors | [2] | N.A. | [2] | [2] |
14.3.Balance | ok | | ok | ok |
15.1.ConeRadius | ok | | ok | ok |
15.2.SliderBox | ok | | ok | ok |
15.3.AttachManip | ok | | ok | ok |
15.4.Customize | ok | | ok | ok |
16.1.Overlay | N.A. | N.A. | [4] | N.A. |
16.2.Callback | N.A. | N.A. | [1] | [7] |
16.3.AttachEditor | N.A. | N.A. | [1] | [7] |
16.4.OneWindow | N.A. | N.A. | KO | N.A. |
16.5.Examiner | ok | | ok | ok |
17.1.ColorIndex | N.A. | N.A. | [6] | N.A. |
17.2.GLCallback | N.A. | N.A. | ok | ok |
17.3.GLFloor | N.A. | N.A. | ok | N.A. |
+-----------------------+-------+-------+------+------+
+-----------------------------+-------+-------+------+------+
The Inventor Toolmaker | SoQt | SoWin | SoXt | SoWx |
+-----------------------------+-------+-------+------+------+
02.Nodes/newNodes | ok | | ok | ok |
03.Fields/fieldtest | ok | | ok | ok |
04.Actions/printVolume | ok | | ok | ok |
05.Elements/elementtest | ok | | ok | ok |
07.Nodekits/jumpingJackKitTest| ok | | ok | ok |
08.Manips/newManips | ok | | ok | ok |
09.Highlights/overlayTest | ok | | [5] | [?] |
09.Highlights/selectionTest | ok | | ok | ok |
10.Components/tumble | N.A. | | KO | N.A. |
11.Events/eventTest | N.A. | | N.A. | N.A. |
+-----------------------------+-------+-------+------+------+
````
[1] On Linux systems indirect GLX rendering must be enabled in the X server [see here](https://groups.google.com/forum/#!topic/coin3d-discuss/eyb9jCIOkpA)
[2] So[Q,X]tDirectionalLightEditor::attach() functionality not yet completed
[3] The code has been modified to avoid a possible bug in Coin SoCalculator engine
[4] Possible internal SoXt bug
[5] SoXtGLWidget::setOverlayRender() functionality not yet completed
[6] Couldn't create visual
[7] Error with Coin offscreen rendering
How to build
First make sure you have a working Coin3D setup either by building Coin on your machine, or by downloading the build artifacts from the releases. Make sure you include the GUI toolkit binding of your choice (SoWin, SoQt, SoWx, SoXt) when building.
Then execute the typical CMake configure/build commands in the parent directory of your cloned ivexamples repository (make sure to include the submodules when cloning).
Using Windows, SoQt, Visual Studio 2019, 64 bit, and Qt 6.5.2 the commands would read:
cmake -S ivexamples -B ivexamples_build -G "Visual Studio 16 2019" -A x64 -DGui=Qt -DCMAKE_PREFIX_PATH=C:\Coin3D;C:\Qt\6.5.2\msvc2019_64
cmake --build ivexamples_build --target ALL_BUILD --config Release
Additional note on SoWx
Only CMake is supported to build with SoWx GUI toolkit binding.
If SoWx or wxWidgets are not in a standard path you can specify the path with CMAKE_PREFIX_PATH.
e.g.:
cmake -DCMAKE_PREFIX_PATH="/opt/SoWx;/opt/wxWidgets" <path to ivexamples sources>
Compilation in the same path of source code is deprecated.