1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-10 18:51:21 +03:00
occt/tests/v3d/glsl/interior1
mnv 2a33274558 0029076: Visualization - implement element shrinking Shader
Aspect_IS_HOLLOW now an alias to Aspect_IS_EMPTY and Aspect_IS_HIDDENLINE does not implicitly enables mesh edges,
so that Graphic3d_AspectFillArea3d::SetDrawEdges() should be set independently.

OpenGl_ShaderManager now provides built-in GLSL programs for drawing mesh edges
in single pass (and on OpenGL ES which does not provide glPolygonMode()).

Graphic3d_RenderingParams::ToEnableAlphaToCoverage is now enabled by default
and properly handled at TKOpenGl level - enables coverage for Graphic3d_AlphaMode_Mask primitives.

OpenGl_PrimitiveArray now uses GLSL programs instead of glPolygonMode() by default,
which can be managed by OpenGl_Caps::usePolygonMode flag (desktop OpenGL only).
glPolygonMode() is also used as fallback regardless OpenGl_Caps::usePolygonMode flag
when GLSL programs are not supported (Geometry Shaders are required)
or stipple line style is required (not implemented within Face GLSL).

vaspects command has been extended by -setInterior -setDrawEdges -setEdgeColor -setEdgeType -setEdgeWidth
arguments replacing vsetinteriorstyle/vsetedgetype/vunsetedgetype commands.
vaspects now accepts arguments without "set" prefix.
ViewerTest::ParseColor() now parses RGBA color.

Redundant command BUC60738 has been removed.
AIS_ColorScale - fixed usage of uninitialized FillArea aspects.
2019-02-22 16:23:35 +03:00

73 lines
2.3 KiB
Plaintext

puts "============"
puts "0029076: Visualization - implement element shrinking Shader"
puts "Test case on spheres"
puts "============"
puts ""
pload MODELING VISUALIZATION
vclear
vclose ALL
vinit View1 -width 768 -height 409
vdefaults -autoTriang 0
vzbufftrihedron
psphere s1 2
psphere s2 1
psphere s3 1
psphere s4 1
psphere s5 1
compound s1 s2 s3 s4 s5 c
incmesh c 1.0
vdisplay -dispMode 1 s1 s2 s3 s4 s5
vsetlocation s2 -1.3 -1.3 1.3
vsetlocation s3 1.3 1.3 1.3
vsetlocation s4 1.3 -1.3 0.0
vsetlocation s5 -1.3 -1.3 -1.3
vrotate 0.0 0.5 0.0
vrotate 0.4 0.0 0.0
vfit
vaspects s1 -setShadingModel PHONG -setInteriorStyle HOLLOW -setDrawEdges 1 -color GRAY80
vdrawtext t1 " s1: phong hollow-edges " -pos 2 0 0 -disptype SUBTITLE -color BLACK -subColor GRAY80
vaspects s2 -setShadingModel GOURAUD -setInteriorStyle SOLID -setDrawEdges 1 -setEdgeColor YELLOW
vdrawtext t2 " s2: gouraud solid-edges " -pos -1.3 -1.3 2.5 -halign CENTER -disptype SUBTITLE -color BLACK -subColor YELLOW
vaspects s3 -setShadingModel PHONG -setInteriorStyle SOLID -setDrawEdges 1 -edgeWidth 2 -setEdgeColor BLUE1
vdrawtext t3 " s3: phong solid-edges " -pos 1.3 1.3 2.5 -halign CENTER -disptype SUBTITLE -color WHITE -subColor BLUE1
vaspects s4 -setShadingModel GOURAUD -setInteriorStyle HIDDENLINE -setDrawEdges 1 -setEdgeColor RED
vdrawtext t4 " s4: hiddenline-edges " -pos 1.3 -1.3 -1.3 -halign CENTER -disptype SUBTITLE -color BLACK -subColor RED
vaspects s5 -setShadingModel FLAT -setInteriorStyle SOLID -setDrawEdges 1 -setEdgeColor 0 1 0 0 -edgeWidth 3
vdrawtext t5 " s5: flat solid-edges " -pos -1.3 -1.3 -2.5 -halign CENTER -disptype SUBTITLE -color BLACK -subColor GREEN
vrenderparams -msaa 0
vcaps -polygonMode 1
vdump $imagedir/${casename}_ortho_polmode.png
vcaps -polygonMode 0
vdump $imagedir/${casename}_ortho_glsl.png
vrenderparams -msaa 4
vcaps -polygonMode 1
vdump $imagedir/${casename}_ortho_polmode_msaa.png
vcaps -polygonMode 0
vdump $imagedir/${casename}_ortho_glsl_msaa.png
vcamera -persp
vzoom 0.8
vrenderparams -msaa 0
vcaps -polygonMode 1
vdump $imagedir/${casename}_persp_polmode.png
vcaps -polygonMode 0
vdump $imagedir/${casename}_persp_glsl.png
vrenderparams -msaa 4
vcaps -polygonMode 1
vdump $imagedir/${casename}_persp_polmode_msaa.png
vcaps -polygonMode 0
vdump $imagedir/${casename}_persp_glsl_msaa.png