XGL Test Suite User's Guide
  Suchtext Nur in diesem Buch
Dieses Buch im PDF-Format herunterladen

Clipping Test Descriptions

8

This chapter describes the Clipping test programs. The following is defined for each test program:
  • Name of the test program
  • Test types (See the section, "Denizen Test Types" on page 2 for the different test types.)
  • Description of the test program
  • Attributes tested by the program
  • Operators tested by the program
  • Output from the test program
· clip_viewclip_pg_2d
Test Types:INDEX, SM
Description:Views clipping in 2D using all combinations of view clip planes of F2D solid filled polygons with and without edges, concave, and multibounded of F2D solid filled polygons with various edge styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CTX_EDGE_COLOR
XGL_CTX_BACKGROUND_COLOR
XGL_CTX_SURF_EDGE_FLAG
XGL_CTX_CLIP_PLANES

                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CTX_EDGE_STYLE
                    XGL_LINE_PATTERNED
                    XGL_CTX_EDGE_PATTERN
                    XGL_LINE_ALT_PATTERNED
                    XGL_LINE_SOLID
                    XGL_CTX_EDGE_WIDTH_SCALE_FACTOR
Operators Tested:   xgl_polygon
                    xgl_object_set
                    xgl_object_get
Output:             Three side-by-side polygons that change in a variety of

ways as their edge styles and clipping planes vary. Their original shapes are (1) a square with a nearly square donut chunk removed from its center, (2) an arrowhead with the tip facing the top of the window raster, and (3) a bow tie. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
· clip_viewclip_line_pttypes_2d
Test Types:INDEX, SM
Description:Views clipping in 2D of thin solid line using all the permitted point types
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_CTX_LINE_STYLE
XGL_LINE_SOLID

Operators Tested: xgl_multipolyline
Output:.....Renders a line with the same vector values but utilizing different point types using the clipping combinations in the order specified in the following text for 2D loop values. The original line segment looks like a lopsided
bow tie with the smaller triangle on the right side and the larger portion of the bow tie open. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
· clip_viewclip_line_styles_2d
Test Types:INDEX, SM
Description:Views clipping in 2D of F2D thin lines of all styles and wide lines
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CLIP_XMIN
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_LINE_SOLID
XGL_CTX_LINE_WIDTH_SCALE_FACTOR
XGL_CTX_LINE_STYLE
XGL_LINE_PATTERNED
XGL_CTX_LINE_PATTERN

Operators Tested: xgl_multipolyline
Output:· clip_viewclip_pg_2d_1Renders a line with the same vector values but utilizing different line styles using the clipping combinations in the order specified below for 2D loop values. The original line segment looks like a lopsided bow tie with the smaller triangle on the right side and the larger portion of the bow tie open. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
Test Types:INDEX, SM
Description:Views clipping in 2D of F2D polygons with all possible fill styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CTX_SURF_FPAT
XGL_CTX_BACKGROUND_COLOR
XGL_CTX_CLIP_PLANES

                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CTX_SURF_FRONT_FILL_STYLE
                    XGL_SURF_FILL_SOLID
                    XGL_SURF_FILL_HOLLOW
                    XGL_SURF_FILL_OPAQUE_STIPPLE
                    XGL_CTX_EDGE_WIDTH_SCALE_FACTOR
                    XGL_SURF_FILL_EMPTY
Operators Tested:   xgl_polygon
                    xgl_object_set
                    xgl_object_get
Output:             Three side-by-side polygons that change in a variety of

ways as their interior fill style and clipping planes vary. Their original shapes are (1) a square with a nearly square donut chunk removed from its center, (2) an arrow head with the tip facing the top of the raster, and (3) an arrowhead with a small portion of its staff and its arrow tip facing the left side of the window raster. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
· clip_viewclip_marker_2d
Test Types:INDEX, SM
Description:Views clipping in 2D of F2D multimarkers with all possible marker styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_CLIP_PLANES
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CTX_MARKER
Operators Tested:   xgl_multimarker
                    xgl_object_set
Output:             Five markers which form a cross that changes in a variety

of ways as their clipping planes vary. See Table 8-1 for the 2D clipping combinations used.
· clip_viewclip_multiarc_2d
Test Types:INDEX, SM
Description:Views clipping in 2D of F2D multicircles with all possible fill styles, thin and wide edge styles; of F2D closed multiarcs with all possible fill styles, thin and wide edge styles, and possible thin and wide line styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_NURBS_CURVE_APPROX_VAL
                    XGL_CTX_SURF_FPAT
                    XGL_CTX_CLIP_PLANES
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CTX_SURF_FRONT_FILL_STYLE
                    XGL_SURF_FILL_SOLID
                    XGL_CTX_ARC_FILL_STYLE
                    XGL_ARC_SECTOR
                    XGL_ARC_CHORD
                    XGL_SURF_FILL_HOLLOW
                    XGL_SURF_FILL_OPAQUE_STIPPLE
                    XGL_CTX_EDGE_COLOR
                    XGL_CTX_SURF_EDGE_FLAG
                    XGL_CTX_EDGE_WIDTH_SCALE_FACTOR
                    XGL_CTX_EDGE_WIDTH_SCALE_FACTOR
                    XGL_CTX_EDGE_STYLE
                    XGL_LINE_SOLID
                    XGL_LINE_PATTERNED
                    XGL_CTX_EDGE_PATTERN
                    XGL_LINE_ALT_PATTERNED
                    XGL_ARC_OPEN
                    XGL_CTX_LINE_COLOR
                    XGL_CTX_LINE_WIDTH_SCALE_FACTOR
                    XGL_CTX_LINE_STYLE
                    XGL_CTX_LINE_PATTERN
Operators Tested:   xgl_multiarc
                    xgl_object_set
                    xgl_object_get

Output:· clip_viewclip_multicircle_2dFour arcs that change in a variety of ways as their interior fill style and clipping planes vary. Their positions are leftmost arc, highest arc, rightmost arc, and lowest arc. The leftmost arc is directly across from the rightmost arc, and the highest arc is directly above the lowest arc. Their original unclipped appearances described clockwise are (1) an arc rendered counterclockwise from 2 p.m. to 5 p.m., (2) an arc rendered counterclockwise from 5 p.m. to 7 p.m., (3) an arc rendered counterclockwise from 6 p.m. to 12 p.m., and finally the lowest arc, (4) an arc rendered counterclockwise from 12 p.m. to 5 p.m. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
Test Types:INDEX, SM
Description:Views clipping in 2D of F2D multicircles with all possible fill styles, thin and wide edge styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CTX_NURBS_CURVE_APPROX_VAL
XGL_CTX_SURF_FPAT
XGL_CTX_CLIP_PLANES
XGL_CLIP_XMIN
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_CTX_SURF_FRONT_FILL_STYLE
XGL_SURF_FILL_SOLID
XGL_SURF_FILL_HOLLOW
XGL_SURF_FILL_OPAQUE_STIPPLE
XGL_CTX_EDGE_COLOR
XGL_CTX_SURF_EDGE_FLAG
XGL_LINE_PATTERNED
XGL_CTX_EDGE_WIDTH_SCALE_FACTOR
XGL_CTX_EDGE_STYLE
XGL_LINE_SOLID
XGL_CTX_EDGE_PATTERN
XGL_LINE_ALT_PATTERNED

Operators Tested: xgl_multicircle
                    xgl_object_set
                    xgl_object_get
Output:             Two side-by-side circles that change in a variety of ways

as their interior fill style and clipping planes vary. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
· clip_viewclip_nu_bspline_curve_2d
Test Types:INDEX, SM
Description:Views clipping in 2D of F2D nurbs curves of all possible thin and wide line styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_NURBS_CURVE_APPROX_VAL
                    XGL_CTX_SURF_FPAT
                    XGL_CTX_LINE_COLOR
                    XGL_CTX_LINE_WIDTH_SCALE_FACTOR
                    XGL_CTX_CLIP_PLANES
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CTX_LINE_STYLE
                    XGL_LINE_SOLID
                    XGL_CTX_LINE_WIDTH_SCALE_FACTOR
                    XGL_CTX_LINE_STYLE
                    XGL_LINE_PATTERNED
                    XGL_CTX_LINE_PATTERN
                    XGL_LINE_ALT_PATTERNED
Operators Tested:   xgl_nu_bspline_curve
                    xgl_object_set
                    xgl_object_get
Output:             B-spline curve in the shape of a seed that changes in a

variety of ways as both of its edge styles and line styles change as well as its clipping planes. See Table 8-1 for the 2D clipping combinations used.
· clip_viewclip_pg_bbox_2d
Test Types:INDEX, SM
Description:Same as clip_viewclip_pg_2d but with primitives in a bounding box
Attributes Tested: XGL_SYS_ST_ERROR_DETECTION
XGL_CLIP_XMIN
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_CTX_SURF_EDGE_FLAG

Operators Tested: xgl_polygon
Output:· clip_viewclip_qmThree side-by-side polygons that change in a variety of ways as their edge styles and their clipping planes vary. Their original shapes are (1) a square with a nearly square donut chunk removed from its center, (2) an arrowhead with the tip facing the top of the window raster, and (3) a bow tie. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
Test Types:INDEX, SM
Description:Views clipping in 3D of F3D quadrilateral meshes of all possible fill styles, and thin and wide edge styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS

XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_CLIP_ZMIN
XGL_CLIP_ZMAX

                    XGL_CTX_SURF_FRONT_FILL_STYLE
                    XGL_CTX_EDGE_WIDTH_SCALE_FACTOR
                    XGL_SURF_FILL_EMPTY
                    XGL_SURF_FILL_SOLID
                    XGL_SURF_FILL_HOLLOW
                    XGL_SURF_FILL_OPAQUE_STIPPLE
Operators Tested:   xgl_quadrilateral_mesh
                    xgl_object_set
                    xgl_object_get
Output:             Two quadmesh side-by-side edges touching and the left

side quadmesh is perhaps a little less than one third the side of its adjacent quadmesh. Both change in a variety of ways as their fill styles and edge style vary as well as their clipping planes. See Table 8-1 at the end of this chapter for the 3D clipping combinations used.
· clip_viewclip_rect_2d
Test Types:INDEX, SM
Description:Views clipping in 2D of F2D multirectangles with all possible fill styles and some edge combinations
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_CTX_SURF_FRONT_FILL_STYLE
XGL_SURF_FILL_SOLID
XGL_SURF_FILL_HOLLOW
XGL_SURF_FILL_OPAQUE_STIPPLE
XGL_CTX_EDGE_COLOR
XGL_CTX_SURF_EDGE_FLAG
XGL_CTX_EDGE_WIDTH_SCALE_FACTOR

Operators Tested: xgl_multirectangle
Output:· clip_viewclip_stext_2dThree rectangles practically in a row with the last rectangle being the largest. All three rectangles change in a variety of ways as their fill styles and edge style vary as well as their clipping planes. See Table 8-1 at the end of this chapter for the 2D clipping combinations used.
Test Types:INDEX, SM
Description:Views clipping in 2D of stroke text with a variety of different point types
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS

XGL_CLIP_XMIN
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX

Operators Tested: xgl_stroke_text
Output:· clip_viewclip_tsFive huge "X"s which form a cross that changes in a variety of ways as their clipping planes vary. See Table 8-1 at the end of the chapter for the 2D clipping combinations used.
Test Types:INDEX, SM
Description:Views clipping in 3D of F3D triangle strips of all possible fill styles, and thin and wide edge styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS

XGL_CLIP_XMIN

                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CLIP_ZMIN
                    XGL_CLIP_ZMAX
                    XGL_CTX_SURF_FRONT_FILL_STYLE
                    XGL_SURF_FILL_SOLID
                    XGL_SURF_FILL_EMPTY
                    XGL_SURF_FILL_HOLLOW
                    XGL_SURF_FILL_OPAQUE_STIPPLE
Operators Tested:   xgl_triangle_strip
                    xgl_object_set
                    xgl_object_get
Output:             Two tristrips connected by a vertical base which appear

like two cones attached at a base that change in a variety of ways as their interior styles, their edges, and their clipping planes vary. See Table 8-1 at the end of the chapter for the 3D clipping combinations used.
· clip_viewclip_line_pttypes_3d
Test Types:INDEX, SM
Description:Views clipping in 3D of thin solid line using all the permitted point types
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX

Operators Tested: xgl_multipolyline
Output:.....Same line segments rendered using all the permissible point types. The line segments correct appearance when no clipping is in effect should look like a lopsided "x" on its side with the small portion closest to the right side of the window raster. Although this is a 3D test, see Table 8-1 at the end of the chapter for the 2D clipping combinations used.
· clip_viewclip_pg_3d
Test Types:INDEX, SM
Description:Views clipping in 3D using all combinations of view clip planes of F3D solid-filled polygons with and without edges, concave, and multibounded of F3D solid-filled polygons with various edge styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_EDGE_COLOR
                    XGL_CTX_BACKGROUND_COLOR
                    XGL_CTX_SURF_EDGE_FLAG
                    XGL_CTX_EDGE_STYLE
                    XGL_LINE_SOLID
                    XGL_CTX_CLIP_PLANES
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CLIP_ZMIN
                    XGL_CLIP_ZMAX
                    XGL_LINE_PATTERNED
                    XGL_CTX_EDGE_PATTERN
                    XGL_LINE_ALT_PATTERNED
                    XGL_CTX_EDGE_WIDTH_SCALE_FACTOR
Operators Tested:   xgl_polygon
                    xgl_object_set
                    xgl_object_get
Output:             Three side by side polygons that change in a variety of

ways as their edge styles and their clipping planes vary. Their original shapes are (1) a square with a nearly square donut chunk removed from its center, (2) an arrowhead with the tip facing the top of the window raster, and (3) a bow tie. See Table 8-1 at the end of this chapter for the 3D clipping combinations used.
· clip_viewclip_line_styles_3d
Test Types:INDEX, SM
Description:Views clipping in 3D of F3D lines of all thin and wide styles (only solid style for wide lines)
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_LINE_WIDTH_SCALE_FACTOR
                    XGL_CTX_CLIP_PLANES
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CTX_LINE_STYLE
                    XGL_LINE_PATTERNED
                    XGL_CTX_LINE_PATTERN
                    XGL_LINE_SOLID
Operators Tested:   xgl_multipolyline
                    xgl_object_set
                    xgl_object_get
Output:             Same line segments rendered using a variety of line types

and widths. The line segments correct appearance when no clipping is in effect should look like a lopsided "x" on its side with the small portion closest to the right side of the window raster. Although this is a 3D test, see Table 8-1 at the end of the chapter for the 2D clipping combinations used.
· clip_viewclip_marker_3d
Test Types:INDEX, SM
Description:Views clipping in 3D of F3D multimarkers for a variety of marker types
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_CTX_MARKER

Operators Tested: xgl_multimarker
Output:.....Five markers which form a cross that changes in a variety of ways as their clipping planes vary. Although this is a 3D test, see Table 8-1 at the end of this chapter for the 2D clipping combinations used.
· clip_viewclip_stext_3d
Test Types:INDEX, SM
Description:Views clipping in 3D of stroke text
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_STEXT_ALIGN_HORIZ
                    XGL_STEXT_ALIGN_HORIZ_CENTER
                    XGL_CTX_STEXT_ALIGN_VERT
                    XGL_STEXT_ALIGN_VERT_HALF
                    XGL_CTX_CLIP_PLANES
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
Operators Tested:   xgl_stroke_text
                    xgl_object_set
Output:             Five huge "X"s which form a cross that changes in a

variety of ways as their clipping planes vary. Although this test is 3D, see Table 8-1 at the end of this chapter for the 2D clipping combinations used.
· clip_viewclip_pg_3d_1
Test Types:INDEX, SM
Description:Views clipping in 3D of F3D polygons of all possible fill styles with and without edges, concave, and multibounded with various edge styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS

XGL_CLIP_XMIN
XGL_CLIP_XMAX
XGL_CLIP_YMIN
XGL_CLIP_YMAX
XGL_CLIP_ZMIN
XGL_CLIP_ZMAX
XGL_CTX_SURF_FRONT_FILL_STYLE

                    XGL_SURF_FILL_SOLID
                    XGL_SURF_FILL_EMPTY
                    XGL_CTX_SURF_EDGE_FLAG
                    XGL_SURF_FILL_HOLLOW
                    XGL_SURF_FILL_OPAQUE_STIPPLE
Operators Tested:   xgl_polygon
                    xgl_object_set
Output:             Three side by side polygons that change in a variety of

ways as their edge styles and their clipping planes vary. Their original shapes are (1) a square with a nearly square donut chunk removed from its center, (2) an arrowhead with the tip facing the top of the window raster, and (3) a bow tie. See Table 8-1 at the end of this chapter for the 3D clipping combinations used.
· clip_viewclip_nu_bspline_curve_3d
Test Types:INDEX, SM
Description:Views clipping in 3D of F3D nurbs curves of all possible thin and wide line styles
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_NURBS_CURVE_APPROX_VAL
                    XGL_CTX_LINE_COLOR
                    XGL_CTX_CLIP_PLANES
                    XGL_CTX_LINE_WIDTH_SCALE_FACTOR
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CLIP_ZMIN
                    XGL_CLIP_ZMAX
                    XGL_CTX_LINE_STYLE
                    XGL_LINE_SOLID
                    XGL_LINE_PATTERNED
                    XGL_CTX_LINE_PATTERN
                    XGL_LINE_ALT_PATTERNED
Operators Tested:   xgl_nu_bspline_curve
                    xgl_object_set
                    xgl_object_get

Output:· clip_viewclip_pg_bbox_3dB-spline curve in the shape of a seed that changes in a variety of ways as both its edge style and line style vary as well as its clipping planes. See Table 8-1 at the end of this chapter for the 3D clipping combinations used.
Test Types:INDEX, SM
Description:Similar to clip_viewclip_pg_3d but with primitives in a bounding box. Views clipping in 3D using all combinations of view clip planes of F3D solid-filled polygons with and without edges, concave, and multibounded F3D polygons.
Attributes Tested: XGL_CTX_VIEW_CLIP_BOUNDS
                    XGL_CTX_EDGE_COLOR
                    XGL_CTX_BACKGROUND_COLOR
                    XGL_CTX_SURF_EDGE_FLAG
                    XGL_CTX_CLIP_PLANES
                    XGL_CLIP_XMIN
                    XGL_CLIP_XMAX
                    XGL_CLIP_YMIN
                    XGL_CLIP_YMAX
                    XGL_CLIP_ZMIN
                    XGL_CLIP_ZMAX
Operators Tested:   xgl_polygon
                    xgl_object_set
Output:             Three side-by-side polygons that change in a variety of

ways as their edge styles and their clipping planes vary. Their original shapes are (1) a square with a nearly square donut chunk removed from its center, (2) an arrowhead with the tip facing the top of the window raster, and (3) a bow tie. See Table 8-1 at the end of this chapter for the 3D clipping combinations used.
· clip_viewportclip_pg_2d
Test Types:INDEX, SM
Description:Clipping to the bounds of XGL_CTX_DC_VIEWPORT in 2D of F2D solid-filled concave and multibounded polygons with and without thin solid edges and all combinations of XGL_CTX_VDC_MAP and XGL_CTX_VDC_ORIENTATION (clipping to DC viewport extent of F2D polygons in 2D)
Attributes Tested: XGL_Y_UP_Z_TOWARD

Operators Tested: xgl_polygon
Output:· clip_viewportclip_pg_3dThree side-by-side polygons whose positioning inside the window raster changes as the orientation and viewport vary. Their original shapes are (1) a long thin appearing "|", (2) a wide bodied "V", and (3) an arrowhead with a small portion of its staff with its tip facing the left side of the window raster.
Test Types:INDEX, SM
Description:Similar to clip_viewportclip_pg_2d except 3D instead of 2D. Clipping to the bounds of XGL_CTX_DC_VIEWPORT in 3D of F3D solid-filled concave and multibounded polygons with and without thin solid edges using both rules for interior and all combinations of XGL_CTX_VDC_MAP and XGL_CTX_VDC_ORIENTATION. Checks that XGL_CTX_DC_VIEWPORT and VDC_WINDOW can be set properly.
Attributes Tested: XGL_Y_UP_Z_TOWARD
                    XGL_Y_DOWN_Z_AWAY
                    XGL_CTX_VDC_MAP
                    XGL_VDC_MAP_OFF
                    XGL_CTX_DC_VIEWPORT
                    XGL_CTX_VDC_WINDOW
                    XGL_CTX_SURF_EDGE_FLAG
                    XGL_VDC_MAP_ALL
                    XGL_VDC_MAP_ASPECT
Operators Tested:   xgl_polygon
                    xgl_object_set
                    xgl_object_get
Output:             Three side-by-side polygons whose positioning inside the

window raster changes as the orientation and viewport vary. Their original shapes are (1) a long thin appearing "|", (2) a wide bodied "V", and (3) an arrowhead with a small portion of its staff with its tip facing the left side of the window.
· clip_modclip_line_styles_3d
Test Types:INDEX, SM
Description:Model clipping in 3D of F3D lines all styles and wide lines
Attributes Tested: XGL_3D_CTX_MODEL_CLIP_PLANE_NUM
                    XGL_3D_CTX_MODEL_CLIP_PLANES
                    XGL_CTX_LINE_STYLE
                    XGL_LINE_SOLID
                    XGL_CTX_LINE_WIDTH_SCALE_FACTOR
                    XGL_LINE_PATTERNED
                    XGL_CTX_LINE_PATTERN
Operators Tested:   xgl_multipolyline
                    xgl_object_set
                    xgl_object_get
Output:             The correct appearance is line segments that form a "v"

on its side near the lower-right corner of the window raster.
· clip_modclip_marker_3d
Test Types:...INDEX, SM
Description:...Model clipping in 3D of all possible types of F3D multimarkers
Attributes Tested: XGL_3D_CTX_MODEL_CLIP_PLANE_NUM
                    XGL_3D_CTX_MODEL_CLIP_PLANES
                    XGL_CTX_MARKER
Operators Tested:   xgl_multimarker
                    xgl_object_set
                    xgl_object_get
Output:             Although five markers are in the point list, only one

should be evident on the window raster due to model clipping.
· clip_modclip_pg_3d
Test Types:INDEX, SM
Description:Model clipping in 3D with the replacement and intersection of the clip volume of F3D solid-filled polygons with and without edges, concave, and multibounded; of F3D solid-filled polygons with various edge styles
Attributes Tested: XGL_CTX_EDGE_COLOR

Operators Tested: xgl_polygon
Output:· clip_modclip_line_pttypes_3dRenders three polygons but the correct view on the screen should be a figure that looks like an hourglass on its side
Test Types:INDEX, SM
Description:Model clipping in 3D of a thin solid line using all the permitted point types
Attributes Tested: XGL_3D_CTX_MODEL_CLIP_PLANE_NUM
                    XGL_3D_CTX_MODEL_CLIP_PLANES
                    XGL_CTX_LINE_STYLE
                    XGL_LINE_SOLID
Operators Tested:   xgl_multipolyline
                    xgl_object_set
Output:             Renders the same line segments using four different point

types. The line segments correct appearance should look like a lopsided "x" on its side with the small portion closest to the right side of the window raster
· clip_modclip_pg_3d_1
Test Types:INDEX, SM
Description:Model clipping in 3D of F3D polygons of all possible fill styles with edges, concave, and multibounded
Attributes Tested: XGL_CTX_SURF_FPAT

Operators Tested: xgl_polygon
Output:· clip_modclip_qmRenders three polygons but the correct view is a figure similar to a telephone handle and a block with two slightly curved edges
Test Types:INDEX, SM
Description:Model clipping of quadmeshes (only solid filled without edges)
Attributes Tested: XGL_CTX_SURF_EDGE_FLAG
                    XGL_3D_CTX_MODEL_CLIP_PLANE_NUM
                    XGL_3D_CTX_MODEL_CLIP_PLANES
                    XGL_CTX_SURF_FRONT_FILL_STYLE
                    XGL_SURF_FILL_SOLID
Operators Tested:   xgl_quadrilateral_mesh
                    xgl_object_set
Output:             Renders two quadmeshes, but the correct view is two

quads connected that appear as one quad with a full width but unusually low height.
· clip_modclip_qm_1
Test Types:INDEX, SM
Description:Model clipping of quadmeshes of all possible fill styles, and edges wide and thin
Attributes Tested: XGL_CTX_SURF_FPAT

Operators Tested: xgl_quadrilateral_mesh
Output:· clip_modclip_stext_3dRenders two quadmeshes, but the correct view is two quads connected that appear as one quad with a full width but unusually low height.
Test Types:INDEX, SM
Description:Model clipping in 3D of stroke text
Attributes Tested: XGL_3D_CTX_MODEL_CLIP_PLANE_NUM
XGL_3D_CTX_MODEL_CLIP_PLANES
XGL_CTX_STEXT_ALIGN_HORIZ

                    XGL_STEXT_ALIGN_HORIZ_CENTER
                    XGL_CTX_STEXT_ALIGN_VERT
                    XGL_STEXT_ALIGN_VERT_HALF
Operators Tested:   xgl_stroke_text
                    xgl_object_set
Output:             Although five huge "X"s which would normally form a

cross are put on the screen for rendering, model clipping removes all but one.
· clip_modclip_ts
Test Types:INDEX, SM
Description:Model clipping of solid filled tristrips
Attributes Tested: XGL_3D_CTX_MODEL_CLIP_PLANE_NUM
                    XGL_3D_CTX_MODEL_CLIP_PLANES
Operators Tested:   xgl_triangle_strip
                    xgl_object_set
Output:             Renders two tristrips and the correct view is one quad with
                    a full width but unusually low height.

· clip_modclip_ts_1
Test Types:INDEX, SM
Description:Model clipping of tristrips of all possible fill styles, and thin and wide edges
Attributes Tested: XGL_CTX_SURF_FPAT

Operators Tested: xgl_triangle_strip
Output:.....Renders two tristrips and the correct view is one quad with a full width but unusually low height.
Table 8-1
2D

Tests Loop Clipping Combinations

3D

Tests Loop Clipping Combinations

i CLIP_PLANESi CLIP_PLANES
0 None0 None
1 XMIN1 XMIN
2 XMAX2 XMAX
3 XMIN | XMAX3 XMIN | XMAX
4 YMIN4 YMIN
5 XMIN | YMIN5 XMIN | YMIN
6 XMAX | YMIN6 XMAX | YMIN
7 XMIN | XMAX | YMIN7 XMIN | XMAX | YMIN
8 YMAX8 YMAX
9 XMIN | YMAX9 XMIN | YMAX
10 XMAX | YMAX10 XMAX | YMAX
11 XMIN | XMAX | YMAX11 XMIN | XMAX | YMAX
12 YMIN | YMAX12 YMIN | YMAX
13 XMIN | YMIN | YMAX13 XMIN | YMIN | YMAX
14 XMAX | YMIN | YMAX14 XMAX | YMIN | YMAX
15 XMIN | XMAX | YMIN | YMAX15 XMIN | XMAX | YMIN | YMAX
16 ZMIN
17 XMIN | ZMIN
18 XMAX | ZMIN
19 XMIN | XMAX | ZMIN
20 YMIN | ZMIN
21 XMIN | YMIN | ZMIN
22 XMAX | YMIN | ZMIN
Table 8-1
2D

Tests Loop Clipping Combinations

3D

Tests Loop Clipping Combinations


23 XMIN | XMAX | YMIN | ZMIN
24 YMAX | ZMIN
25 XMIN | YMAX | ZMIN
26 XMAX | YMAX | ZMIN
27 XMIN | XMAX | YMAX | ZMIN
28 YMIN | YMAX | ZMIN
29 XMIN | YMIN | YMAX | ZMIN
30 XMAX | YMIN | YMAX | ZMIN
31 XMIN | XMAX | YMIN | YMAX
| ZMIN
32 ZMAX
33 XMIN | ZMAX
34 XMAX | ZMAX
35 XMIN | XMAX | ZMAX
36 YMIN | ZMAX
37 XMIN | YMIN | ZMAX
38 XMAX | YMIN | ZMAX
39 XMIN | XMAX | YMIN | ZMAX
40 YMAX | ZMAX
41 XMIN | YMAX | ZMAX
42 XMAX | YMAX | ZMAX
43 XMIN | XMAX | YMAX | ZMAX
44 YMIN | YMAX | ZMAX
45 XMIN | YMIN | YMAX | ZMAX
46 XMAX | YMIN | YMAX | ZMAX
47 XMIN | XMAX | YMIN | YMAX
| ZMAX
Table 8-1
2D

Tests Loop Clipping Combinations

3D

Tests Loop Clipping Combinations


48 ZMIN | ZMAX

49 XMIN | ZMIN | ZMAX

50 XMAX | ZMIN | ZMAX

51 XMIN | XMAX | ZMIN | ZMAX

52 YMIN | ZMIN | ZMAX

53 XMIN | YMIN | ZMIN | ZMAX

54 XMAX | YMIN | ZMIN | ZMAX

55 XMIN | XMAX | YMIN | ZMIN | ZMAX

56 YMAX | ZMIN | ZMAX

57 XMIN | YMAX | ZMIN | ZMAX

58 XMAX | YMAX | ZMIN | ZMAX

59 XMIN | XMAX | YMAX | ZMIN | ZMAX

60 YMIN | YMAX | ZMIN | ZMAX

61 XMIN | YMIN | YMAX | ZMIN | ZMAX

62 XMAX | YMIN | YMAX | ZMIN | ZMAX

63 XMIN | XMAX | YMIN | YMAX | ZMIN | ZMAX