Functions | |
void | DShow_Spot_Light (HC_KEY key, HC_DPOINT *position, HC_DPOINT *target, char *list) |
Similar to Show_Spot_Light(), but returns double-precision values. More... | |
void | Show_Spot_Light (HC_KEY key, HC_POINT *position, HC_POINT *target, char *list) |
Returns a full description of the "spot light" referenced by a key. More... | |
void DShow_Spot_Light | ( | HC_KEY | key, |
HC_DPOINT * | position, | ||
HC_DPOINT * | target, | ||
char * | list | ||
) |
Similar to Show_Spot_Light(), but returns double-precision values.
key | - Unique numeric identifier pointing to a spot light in the database. |
position | - The location of the light source in object space or, optionally, in camera relative units. Returned to user. Passed by reference always. |
target | - The target towards which the light source shines in user coordinates or, optionally, in camera relative units. Returned to user. Passed by reference always. |
list | - A quoted string or a string variable containing a list of current options for this specific light. Returned to user. Passed by reference always. |
No additional details. See Show_Spot_Light().
Returns a full description of the "spot light" referenced by a key.
key | - Unique numeric identifier pointing to a spot light in the database. |
position | - The location of the light source in object space or, optionally, in camera relative units. Returned to user. Passed by reference always. |
target | - The target towards which the light source shines in user coordinates or, optionally, in camera relative units. Returned to user. Passed by reference always. |
list | - A quoted string or a string variable containing a list of current options for this specific light. Returned to user. Passed by reference always. |
This routine returns the definition of the spot light identified by the given key. You could use this function, for example, to duplicate an existing light, or to realign the light with an object that has moved in the scene. There is no way to edit an existing spotlight. You can remove the lights definition with Delete_By_Key() , then reinsert the light with modifications applied.
The key for the spotlight might come from Find_Contents() ( Begin_Contents_Search() ) or it might have been saved by your program when the spotlight was created (via Insert_Spot_Light() ).
If you want the ability to "drag" the light around with the mouse, you could insert a selectable marker in the same segment as the light source and apply modelling transformations to both objects. Note that "point" lights (spot, local, and distant lights) are not directly selectable.