intuitiv'3d API documentation Copyright ã1993 by Cub'x SystÜmes. All Rights Reserved.

AIParameter

	DECLARED IN	i3d/CX3DAttributeInsp.h

	SYNOPSIS	

	typedef struct _aiparameter
		{
	  int type;        
  	  BOOL dynamicBound; 
  	  char parameterName[128];
  		  union
    	   {
      		    struct __floatp
	    {
	      SEL setValueMethod;
	      SEL getValueMethod;
	      SEL getMinValueMethod;
	      SEL getMaxValueMethod;
	    } floatp;
      		   struct __pointp
	   {
	     SEL setXValueMethod;
	     SEL getXValueMethod;
	     SEL getXMinValueMethod;
	     SEL getXMaxValueMethod;
	     SEL setYValueMethod;
	     SEL getYValueMethod;
	     SEL getYMinValueMethod;
	     SEL getYMaxValueMethod;
	     SEL setZValueMethod;
	     SEL getZValueMethod;
	     SEL getZMinValueMethod;
	     SEL getZMaxValueMethod;
	    } pointp;
        	  struct __colorp
	   {  
	    SEL setRedValueMethod;
	    SEL setGreenValueMethod;
	    SEL setBlueValueMethod;
	    SEL getRedValueMethod;
	    SEL getGreenValueMethod;
	    SEL getBlueValueMethod;
	   } colorp;
      	  struct __boolp
	   {
	     SEL setBoolValue;
	     SEL getBoolValue;
	     char trueTitle[128];
	     char falseTitle[128];
	   } boolp;
                     } data;
              } AIParameter;

	DESCRIPTION

	 The AIParameter is used to describe the behavior of the CX3DAttributeInsp class. Top fields are:

	type
	The type field describes the type of the instance variable. Its value can be:

	AIP_NULL     This particular type marks the end of the AIParameter array.
	AIP_FLOAT A float scalar variable. Interface is a slider and a textfield.
	AIP_ANGLE  A float variable that is an angle. Interface is a slider and a textfield.
	AIP_POINT   Three floats in an array (RtPoint). Interface is three sliders and three textfields
	AIP_COLOR  A NXColor variable. Interface is a color well. 
                       AIP_BOOL     A boolean value. Interface is two toggle buttons.
	
	dynamicBound
	If this boolean value is equal to YES, bounds methods (see below) are called each time a value change inside the inspector. This is useful when slider min and max values have to be updated in some cases.  If this value is equal to NO, bounds methods are called only one time.	

	parameterName
	This string stores the name of the parameter. This name could be different from the instance variable name. 

	floatp union part

		   The floatp union part must be initialized if the type value is AIP_FLOAT or AIP_ANGLE.

	setValueMethod
This variable stores the selector of the method that is called by the CX3DAttributeInsp instance to set the instance variable. This method takes a float * parameter. (Example: setSize:(float*) floatPtr;) and should take in account the contents of the pointer.

	getValueMethod
This variable stores the selector of the method that is called by the CX3DAttributeInsp instance to get the instance variable value. This method takes a float * parameter. (Example: getSize:(float*) floatPtr) The method should fill the float ptr contents with the current float value.

	getMinValueMethod
This variable stores the selector of a method that returns the minimum value for the slider. As for the "set" and "get" method, this method takes a float * parameter. 

	setMaxValueMethod
This variable stores the selector of a method that returns the maximum value for the slider. As for the "set" and "get" method, this method takes a float * parameter. 

pointp union part
		   The pointp union part must be initialized if the type value is AIP_POINT.

	   The pointp union part works like the floatp union part, but there is a set / get / min / max method for each X / Y / Z component. Field names speak by themselves.

	colorp union part
		   The colorp union part must be initialized if the type value is AIP_COLOR.

		    There is no bounds method for that type. There is a "set" and a "get" method for each red / green / blue component. 

	boolp union part
 		    The boolp union part must be initialized if the type value is AIP_BOOL.

	setBoolValue
This variable stores the selector of the method that should be called to set the value of the boolean instance variable. This method takes one argument which is a boolean value. (e.g - setUseOpacity:(BOOL) flag). 

	getBoolValue
This variable stores the selector of the method that should be called to get the value of the boolean instance variable. This method takes no argument. 
(e.g - (BOOL) useOpacity )

	trueTitle
	This variable stores a string that is displayed as the title of the TRUE value of the boolean variable.

	falseTitle
	This variable stores a string that is displayed as the title of the FALSE value of the boolean variable.

	See also
		    The source code ColoredPlan.[hm] in the Example/AdvancedObject folder.