
Functions | |
| void | DShow_Local_Light (HC_KEY key, double *x, double *y, double *z) |
| Similar to Show_Local_Light(), but returns double-precision values. More... | |
| void | Show_Local_Light (HC_KEY key, float *x, float *y, float *z) |
| Returns the position of a "local light", as referenced by a key. More... | |
| void DShow_Local_Light | ( | HC_KEY | key, |
| double * | x, | ||
| double * | y, | ||
| double * | z | ||
| ) |
Similar to Show_Local_Light(), but returns double-precision values.
| key | - Unique numeric identifier pointing to a local light in the database. |
| x | - Location of the local light in object space. Returned to user. Passed by reference always. |
| y | - |
| z | - |
No additional details. See Show_Local_Light().
| void Show_Local_Light | ( | HC_KEY | key, |
| float * | x, | ||
| float * | y, | ||
| float * | z | ||
| ) |
Returns the position of a "local light", as referenced by a key.
| key | - Unique numeric identifier pointing to a local light in the database. |
| x | - Location of the local light in object space. Returned to user. Passed by reference always. |
| y | - |
| z | - |
This routine finds the position of the local light that corresponds to the given key. You could use this ability, for example, to place the camera at a particular position with respect to a light, or to realign the light with an object that has moved in the scene. There is no way to edit an existing local light; it is simple enough to remove the light with Delete_By_Key() , and then reinsert it at a new position.
The key for the local light might come from Find_Contents() ( Begin_Contents_Search() ) or it might have been saved by your program when the local light was created (via Insert_Local_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 (local, spot, and distant lights) are not directly selectable.