查看“LlDetectedGrab”的源代码
←
LlDetectedGrab
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function: vector llDetectedGrab( integer number ); |参数= 参数: integer number–Index of detection information number does not support negative indexes. |返回值= 返回值:Returns a vector that is the grab offset of the user touching the object; only works in the touch event. |注意事项= 注意事项 *If number is out of bounds this function returns <0.0, 0.0, 0.0> and the script continues to execute without an error message. *Events that enable the llDetected* functions always return at least one detected item. *Detection events are not raised if there is nothing detected.[1] *The detection event's items detected parameter is initially never less than 1.[2] |示例= 示例1 <pre> default { state_entry() { llSetStatus(PRIM_PHYSICS,TRUE);//This allows the object to be "grabbed" and dragged } touch(integer num_detected) { llSay(0,(string)llDetectedGrab(0));//Be prepared for a great amount of chatted info. //The faster you move the mouse while grabbing the object the greater the offset becomes. //This is not due to the speed but the reaction time of the turn around of the physical prim, //thus an offset (distance from grab to prim center) is created and measured by this function. } } </pre> 示例2 <pre> /****** Simple llDetectedGrab illustration, rez a prim and add this script. The prim will become a cone that follows mouse grabs. Click and hold the mouse button down on the object, then: - Drag left and right to move parallel to the camera focal plane. - Drag up and down to move to and from the camera. - Hold down Ctrl, then drag up and down to move vertically. ******/ default { state_entry() { llMinEventDelay(0.25); llSetStatus(STATUS_PHYSICS, FALSE); // make the object static for simplicity llSetPrimitiveParams([ PRIM_SIZE, <0.5, 0.5, 0.5>, PRIM_TYPE, PRIM_TYPE_CYLINDER, PRIM_HOLE_DEFAULT, <0.0, 1.0, 0.0>, 0.0, ZERO_VECTOR, ZERO_VECTOR, ZERO_VECTOR ]); // a cone that can follow the mouse pointer } touch(integer total_number) { llLookAt(llGetPos() + llDetectedGrab(0), 1.0, 1.0); } } </pre> |相关函数= [[llPassTouches]] |相关事件= [[touch_start]] [[touch]] [[touch_end]] }}
该页面使用的模板:
模板:LSL Header
(
查看源代码
)
模板:LSLC
(
查看源代码
)
模板:LSLGC
(
查看源代码
)
模板:Multi-lang
(
查看源代码
)
模板:函数详情
(
查看源代码
)
返回至
LlDetectedGrab
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
网站首页
知识百科
编辑帮助
最近更改
工具
链入页面
相关更改
特殊页面
页面信息