The SEDRIS Data Representation Model
APPENDIX A - Classes
Polygon Control Link

Class Name: Polygon Control Link

Superclass - <Control Link>

Subclasses

This DRM class is concrete and has no subclasses.

Definition

An instance of this DRM class is a <Control Link> that has been specialized to control the polygon_flags (in a SE_Token_Set) in a <Polygon>.

Primary Page in DRM Diagram:

Secondary Pages in DRM Diagram:

Example

  1. The SE_POLY_FLAG_INVISIBLE flag on a <Polygon> is set to SE_TRUE. A <Polygon Control Link> can reset some polygon_flags values. In this case, it could set the SE_POLY_FLAG_INVISIBLE flag to be SE_FALSE.

FAQs

Why isn't there a single < Polygon Control Link> field to control the polygon_flags field of the affected <Polygon> instance(s)?
The polygon_flags field of <Polygon> is an SE_Token_Set, and users of <Polygon Control Link> are not trying to change the Token Set in question. What users are doing is setting (or clearing) individual boolean flags within the Token Set.

Consequently, instead of having a single index field for the polygon_flags field, <Polygon Control Link> provides separate index fields for each flag that can be manipulated, so that each can be driven by a separate controlling <Expression>.

Why aren't there < Polygon Control Link> fields for each of the individual flags within polygon_flags?
Simple! No one has asked to be able to control the other flags. If you'd like to be able to control another flag, we'd be happy to consider any change request you might offer.

Constraints

None.

Composed of (two-way)(inherited)

Component of (two-way)

Inherited Field Elements

SE_String description; (notes)

Field Elements

SE_Integer_Unsigned hat_test_expr_index; (notes)
SE_Integer_Unsigned collidible_expr_index; (notes)
SE_Integer_Unsigned invisible_expr_index; (notes)
SE_Integer_Unsigned laser_range_finding_expr_index; (notes)

Notes

Fields Notes


description

 A text description of what the <Control Link> is for

hat_test_expr_index

 index of the expression whose value controls the inclusion
 or exclusion of SE_POLY_FLAG_HAT_TEST within the polygon_flags
 field (a token set) of the affected <Polygon>.
 If 0, the SE_POLY_FLAG_HAT_TEST portion of the token set of
 the <Polygon> is not controlled.  If non-zero, then the index
 will refer to a boolean expression, where SE_TRUE means that the
 SE_POLY_FLAG_HAT_TEST token should be added to the token set,
 and SE_FALSE means that the token should be cleared from the set.

collidible_expr_index

 index of the expression whose value controls the inclusion
 or exclusion of SE_POLY_FLAG_COLLIDIBLE within the polygon_flags
 field (a token set) of the affected <Polygon>.
 If 0, the SE_POLY_FLAG_COLLIDIBLE portion of the token set of
 the <Polygon> is not controlled.  If non-zero, then the index
 will refer to a boolean expression, where SE_TRUE means that the
 SE_POLY_FLAG_COLLIDIBLE token should be added to the token set,
 and SE_FALSE means that the token should be cleared from the set.

invisible_expr_index

 index of the expression whose value controls the inclusion
 or exclusion of SE_POLY_FLAG_INVISIBLE within the polygon_flags
 field (a token set) of the affected <Polygon>.
 If 0, the SE_POLY_FLAG_INVISIBLE portion of the token set of
 the <Polygon> is not controlled.  If non-zero, then the index
 will refer to a boolean expression, where SE_TRUE means that the
 SE_POLY_FLAG_INVISIBLE token should be added to the token set,
 and SE_FALSE means that the token should be cleared from the set.

laser_range_finding_expr_index

 index of the expression whose value controls the inclusion
 or exclusion of SE_POLY_FLAG_LASER_RANGE_FINDING within the
 polygon_flags field (a token set) of the affected <Polygon>.
 If 0, the SE_POLY_FLAG_LASER_RANGE_FINDING portion of the
 token set of the <Polygon> is not controlled.  If non-zero, then the
 index will refer to a boolean expression, where SE_TRUE means that
 the SE_POLY_FLAG_LASER_RANGE_FINDING token should be added to
 the token set, and SE_FALSE means that the token should be cleared
 from the set.

Prev: Polygon. Next: Positional Light. Up:Index.

Last updated: October 1, 2002 Copyright © 2002 SEDRIS™