New sample added for XDE; test cases added for this and some other samples; description of Tcl samples in Overview updated
* DataExchangeDemo.tcl: demonstrates sample sequence of operations with writing and reading IGES file
* ModelingDemo.tcl: demonstrates creation of simple shape and displaying it in HLR mode
* VisualizationDemo.tcl: demonstrates use of 3d viewer
- * challenge.tcl: creates solid shape looking like abbreviation "CAD"
+ * cad.tcl: creates solid shape looking like abbreviation "CAD"
* bottle.tcl: creates bottle as in OCCT Tutorial
* drill.tcl: creates twist drill bit shape
- * mill.tcl: creates milling cutter shape
+ * cutter.tcl: creates milling cutter shape
+ * xde.tcl: demonstrates creation of simple assembly in XDE
+ * materials.tcl: demonstrates visual properties of materials supported by 3d viewer
* raytrace.tcl: demonstrates use of ray tracing display in 3d viewer
+ * dimensions.tcl: demonstrates use of dimensions, clipping, and capping in 3d viewer
**Getting Help**
--- /dev/null
+# This script creates a model described at
+# http://www.caddd.org/2010/04/opencascade-challenge.html
+
+pload MODELING VISUALIZATION
+
+# make base
+box b0 0 0 0 12 7 6
+explode b0 e
+blend b01 b0 1 b0_8
+blend b02 b01 1 b0_6
+
+# make cut at bottom
+box b1 3 -1 0 2 9 1.5
+bcut b2 b02 b1
+explode b2 e
+blend b3 b2 1 b2_27
+blend b4 b3 1 b2_30
+
+# make central cut
+box h1 3 -1 2.5 2 9 0.5
+box h2 3 -1 3 2 9 2
+plane p 4 -1 3 0 1 0
+pcylinder c p 1 9
+bcommon h3 h2 c
+bcut b5 b4 h1
+bcut b6 b5 h3
+
+# make side cut
+box b7 9 -1 1 2 9 4
+explode b7 e
+blend b71 b7 1 b7_6
+blend b72 b71 1 b7_8
+bcut b8 b6 b72
+
+# make box for inner cylindrical cut
+box bc1 -1 0 2 9 1 4
+box bc2 2 -1 2 4 3 3
+bcut bc3 bc1 bc2
+explode bc3 e
+blend bc4 bc3 1 bc3_20
+blend bc5 bc4 1 bc3_23
+blend bc6 bc5 1.99 bc3_21
+blend bc7 bc6 1.99 bc3_22
+
+# make inner cylindrical cut
+explode bc7 f
+revol r bc7_1 -1 0 6 1 0 0 100
+bcut b9 b8 r
+
+# make outer cylindrical cut
+plane p2 -1 0 6 1 0 0
+pcylinder c2 p2 6 15
+bcommon res b9 c2
+
+# show result
+donly res
+trotate res 0 0 0 0 0 1 90
+vinit
+vdisplay res
+vsetdispmode 1
+vshowfaceboundary res 1 255 255 255
+vfit
+++ /dev/null
-# This script creates a model described at
-# http://www.caddd.org/2010/04/opencascade-challenge.html
-
-pload MODELING VISUALIZATION
-
-# make base
-box b0 0 0 0 12 7 6
-explode b0 e
-blend b01 b0 1 b0_8
-blend b02 b01 1 b0_6
-
-# make cut at bottom
-box b1 3 -1 0 2 9 1.5
-bcut b2 b02 b1
-explode b2 e
-blend b3 b2 1 b2_27
-blend b4 b3 1 b2_30
-
-# make central cut
-box h1 3 -1 2.5 2 9 0.5
-box h2 3 -1 3 2 9 2
-plane p 4 -1 3 0 1 0
-pcylinder c p 1 9
-bcommon h3 h2 c
-bcut b5 b4 h1
-bcut b6 b5 h3
-
-# make side cut
-box b7 9 -1 1 2 9 4
-explode b7 e
-blend b71 b7 1 b7_6
-blend b72 b71 1 b7_8
-bcut b8 b6 b72
-
-# make box for inner cylindrical cut
-box bc1 -1 0 2 9 1 4
-box bc2 2 -1 2 4 3 3
-bcut bc3 bc1 bc2
-explode bc3 e
-blend bc4 bc3 1 bc3_20
-blend bc5 bc4 1 bc3_23
-blend bc6 bc5 1.99 bc3_21
-blend bc7 bc6 1.99 bc3_22
-
-# make inner cylindrical cut
-explode bc7 f
-revol r bc7_1 -1 0 6 1 0 0 100
-bcut b9 b8 r
-
-# make outer cylindrical cut
-plane p2 -1 0 6 1 0 0
-pcylinder c2 p2 6 15
-bcommon res b9 c2
-
-# show result
-donly res
-vinit
-vdisplay res
-vsetdispmode 1
-vfit
-
-# Script reproducing creation of bottle model as described in OCCT Tutorial
+# Script demonstrating ray tracing in 3d view
# make bottle by calling another script
source [file join [file dirname [info script]] bottle.tcl]
ttranslate glass -30 -30 0
# show table and glass
+vinit w=1024 h=1024
vsetmaterial bottle aluminium
vdisplay table
vsetmaterial table bronze
--- /dev/null
+# Simple sample demonstrating work with assemblies in XDE, and assignment of
+# names and colors to components vs. instances
+
+pload MODELING
+pload OCAF
+pload XDE
+
+puts "Make a link as assembly made of a pin and two instances of the same nut"
+pcylinder pin 1 10
+pcylinder nut 2 2
+compound nut nut nuts
+explode nuts
+ttranslate nuts_1 0 0 7
+ttranslate nuts_2 0 0 1
+compound pin nuts_1 nuts_2 link
+
+puts "Add link assembly in XCAF document, and add names and colors:"
+NewDocument D XCAF
+XAddShape D link
+SetName D [XFindShape D pin] "Pin"
+SetName D [XFindShape D nut] "Nut"
+SetName D [XFindShape D link] "Link"
+SetName D [XFindShape D link]:1 "Pin instance"
+SetName D [XFindShape D link]:2 "Nut instance 1"
+SetName D [XFindShape D link]:3 "Nut instance 2"
+
+puts "- Pin will be white"
+XSetColor D [XFindShape D pin] 1 1 1
+puts "- Nut itself will be dark gray"
+XSetColor D [XFindShape D nut] 0.1 0.1 0.1
+puts "- Nut instance #1 will be red"
+XSetColor D [XFindShape D link]:2 1 0 0
+puts "- Nut instance #2 will be green"
+XSetColor D [XFindShape D link]:3 0 1 0
+
+puts "Starting DF browser..."
+DFBrowse D
+puts "Expand the document tree to see its structure and assigned names"
+
+puts "Showing assembly in 3d view..."
+XShow D
+vfit
+vsetdispmode 1
-puts "TODO ?OCC24130 Windows: TKOpenGl | Type\: Error | ID\: 0 | Severity\: High | Message\:"
-
# test for creation of bottle as in tutorial (script is in samples)
source $env(CASROOT)/samples/tcl/bottle.tcl
--- /dev/null
+# test for generating funny shape
+source $env(CASROOT)/samples/tcl/cad.tcl
+
+# check shape validity and make a snapshot
+checkshape res
+vdump $imagedir/${test_image}.png
+
+puts "TEST COMPLETED"
--- /dev/null
+# test for creation of cutter shape
+source $env(CASROOT)/samples/tcl/cutter.tcl
+
+# make a snapshot
+vdump $imagedir/${test_image}.png
+
+puts "TEST COMPLETED"
--- /dev/null
+# test for creation of drill shape
+source $env(CASROOT)/samples/tcl/drill.tcl
+
+# make a snapshot
+vdump $imagedir/${test_image}.png
+
+puts "TEST COMPLETED"
--- /dev/null
+# test for visual properties of materials in 3d viewer
+source $env(CASROOT)/samples/tcl/materials.tcl
+
+# make a snapshot
+vdump $imagedir/${test_image}.png
+
+puts "TEST COMPLETED"
--- /dev/null
+# test for XDE sample
+source $env(CASROOT)/samples/tcl/xde.tcl
+
+# make a snapshot
+vdump $imagedir/${test_image}.png
+
+puts "TEST COMPLETED"