pload MODELING VISUALIZATION
-# Construct bottle body
+puts "Constructing bottle body..."
# set basic dimensions
dset height 70
explode c f
offsetshape body f -thickness/50 1.e-3 c_2
-# Construct threading
+puts "Constructing threading..."
# make two cylinders
cylinder c1 0 0 height 0 0 1 neckradius*0.99
# build threading as solid
thrusections -N thread 1 0 tw1 tw2
+puts "Putting together and writing \"Open CASCADE\"..."
+
# add threading to the body
-compound body thread bottle1
+compound body thread bottle
# define text
text2brep text2d OpenCASCADE Times-Roman 8 bold composite=0
ttranslate text 24.75 -2 65
# cut operation
-bcut bottle bottle1 text
+bcut bodytext body text
+compound bodytext thread bottle
+
+puts "Showing result..."
# display result
vdisplay bottle
vfit
vsetdispmode 1
+
+# set ray tracing
+if { [regexp {HAVE_OPENCL} [dversion]] } {
+ puts "Trying raytrace mode..."
+ if { ! [catch {vraytrace 1}] } {
+ vtextureenv on 1
+ vfit
+ }
+}
\ No newline at end of file
--- /dev/null
+puts "==========="
+puts "OCC21753"
+puts "==========="
+puts "=================================="
+puts "Poor display of shading on cones due to Gouraud shading limitations"
+puts "=================================="
+
+# set rough meshing parameters
+vinit
+vdefaults absDefl=10 devCoeff=0.1
+
+puts "Displaying two equal cones, one with Phong shader"
+pcone p_gouraud 10 100 100
+trotate p_gouraud 0 0 0 0 1 0 -90
+vdisplay p_gouraud
+vsetdispmode p_gouraud 1
+#vsetmaterial p_gouraud bronze
+
+tcopy p_gouraud p_phong
+ttranslate p_phong 200 0 0
+vdisplay p_phong
+vsetdispmode p_phong 1
+#vsetmaterial p_phong bronze
+vshaderprog p_phong phong
+
+vfit
+set only_screen 1