Difference between revisions of "PRIM POSITION/ja"

From Second Life Wiki
Jump to navigation Jump to search
m (Undo revision 850132 by Mako Nozaki (Talk))
 
(3 intermediate revisions by one other user not shown)
Line 1: Line 1:
<onlyinclude>{{#if:
<onlyinclude>{{#if:


{{#vardefine:position_const|{{LSL Const/ja|PRIM_POSITION|integer|6|c=プリムの位置を{{GetSet|{{{1|}}}|取得|設定|/}}するのに用いられます}}}}
{{#vardefine:position_const|{{LSL Const/ja|PRIM_POSITION|integer|6|c=プリムの位置を{{GetSet|{{{1|}}}|取得|設定|/}}するために使用されます。}}}}


{{#vardefine:p_position_desc|}}
{{#vardefine:p_positionget_desc|[[Viewer_coordinate_frames/ja#リージョン (Region)|リージョン座標]] での位置。}}
{{#vardefine:p_positionget_hover|リージョン座標での位置。}}
 
{{#vardefine:p_positionset_desc|[[Viewer_coordinate_frames/ja#ローカル (Local)|ローカル座標]] または [[Viewer_coordinate_frames/ja#リージョン (Region)|リージョン座標]] での位置。状況によって異なります。}}
{{#vardefine:p_positionset_hover|ローカル座標またはリージョン座標での位置。状況によって異なります。}}
 
 
{{#vardefine:caveats-get|* '''{{LSL Param|positionget|position}}''' は常に [[Viewer_coordinate_frames/ja#リージョン (Region)|リージョン座標]] です。プリムが子プリムでも [[attachment/ja|アタッチメント]] でも同様です。}}
 
{{#vardefine:caveats-set|{{#ifeq:{{{1|}}}|set|**|*}} 状況によって '''{{LSL Param|positionset|position}}''' は [[Viewer_coordinate_frames/ja#ローカル (Local)|ローカル座標]] か [[Viewer_coordinate_frames/ja#リージョン|リージョン座標]] のどちらかを指定する必要があります。詳細は [[llSetPos/ja#仕様|llSetPosの仕様]] を参照してください。
{{#ifeq:{{{1|}}}|set|**|*}} アタッチされていないルートプリムの場合、プリムが動ける範囲は限られています。{{#var:position_const}} 1 コールあたり 10m に制限されています。[[WarpPos/ja|WarpPos]] を参照してください。これは非常に特殊なケースです。 Do not rely on rule duplication of other flags - 結果は不定で、将来 '''きっと''' 壊れます。
{{#ifeq:{{{1|}}}|set|**|*}} {{#var:position_const}} で [[avatar/ja|アバター]] を動かすときは、
{{#ifeq:{{{1|}}}|set|***|**}} アバターが座っているプリムを動かしてもアバターは動きません。
{{#ifeq:{{{1|}}}|set|***|**}} アバターを動かしても、アバターが座っているプリムは動きません。
{{#ifeq:{{{1|}}}|set|***|**}} 座っている位置の座標はプリムの座標に素直に連動しません。[[llSitTarget/ja#便利なスペニット|SitTargetを更新]] を使ってください。
{{#ifeq:{{{1|}}}|set|***|**}} '''{{LSL Param|positionset|position}}''' が中心から 54 メートルを超えると、エラーを出さずに失敗します。}}
 
{{#switch:{{{1|}}}|set={{#vardefine:caveats|{{#var:caveats}}
* <span id="Caveats-PRIM_POSITION"></span> {{#var:position_const}} caveats
{{#var:caveats-set}}{{#vardefine:caveats-set}}}}
|get={{#vardefine:caveats|{{#var:caveats}}
{{#var:caveats-get}}{{#vardefine:caveats-get}}}}
}}
 
{{#vardefine:PRIM_POSITION/SLPP&A|
オブジェクトに座っているアバターを、[[llSetLinkPrimitiveParams/ja|llSetLinkPrimitiveParams]] と [[PRIM_POSITION/ja|PRIM_POSITION]] を使って動かすことができます。もともとは予定していなかった特性ですが、[http://jira.secondlife.com/browse/SVC-3408?focusedCommentId=88574#action_88574 Andrew Linden] により、リンデンはこの特性をサポートすることにしました。
 
=====例=====
下の例では、座っているプリムの位置を動かさずに x,y,z の方向にアバターを動かします。x,y,z が呼び出し元から 54 メートルを超えると、何もエラーを出さずに失敗します。x,y,z は他のリンクされているオブジェクトのプリム同様、オブジェクトの相対座標であることに注意してください。
 
アバターは常にリンクセットの中の最後のプリムです。このため、[[llGetNumberOfPrims]] は乗り物に座っている 1 人のアバターにも使用できます。
 
例: <source lang="lsl2">llSetLinkPrimitiveParams(llGetNumberOfPrims(), [PRIM_POSITION, <x,y,z>]);</source>
}}


}}</onlyinclude>{{#if:
}}</onlyinclude>{{#if:
Line 11: Line 44:
|type=integer
|type=integer
|value=6
|value=6
|desc=PRIM_POSITIONはプリムの位置を取得あるいは設定するのに用いられます。
|desc=PRIM_POSITION はプリムの位置を設定するために使用されます。
|pa={{LSL Constant/List/ja|i_front=[&#32;{{#var:position_const}},&#32;|i_end=&nbsp;]
|pa={{LSL Constant/List/ja|i_front=[[llSetPrimitiveParams]]([&#32;...,&#32;{{#var:position_const}},&#32;|i_end=,&#32;...&nbsp;]);
|text=[[llSetPrimitiveParams/ja|llSetPrimitiveParams]]と
|text={{LSL Constant/PrimParamText/ja|set}}
[[llSetLinkPrimitiveParams/ja|llSetLinkPrimitiveParams]]を実行する時に用いられます。
{{LSL Generic/Caveats/ja|caveats={{#var:caveats-set}}|title=*}}
|i1_type=vector|i1_name=position
==={{LSLGC/ja|Avatar|アバター}}===
{{#var:PRIM_POSITION/SLPP&A}}
|i1_type=vector|i1_name=positionset|i1_disp=position
|toc=llSetPrimitiveParams
|toc=llSetPrimitiveParams
}}
}}
|pb={{LSL Constant/List/ja|i_front=[[llGetPrimitiveParams/ja|llGetPrimitiveParams]]([&nbsp;{{#var:position_const}}|i_end=&nbsp;]);|
|pb={{LSL Constant/List/ja|i_front=[[llGetPrimitiveParams]]([&#32;...,&#32;{{#var:position_const}}|i_end=,&#32;...&nbsp;]);|
|r_front=list [&nbsp;|r_end=&nbsp;]を返します。
|r_front=[&nbsp;|r_end=&nbsp;] のリストを返します。
|text
|text={{LSL Constant/PrimParamText/ja|get}}
|r1_type=vector|r1_name=position
{{LSL Generic/Caveats/ja|caveats={{#var:caveats-get}}|title=*}}
|r1_type=vector|r1_name=positionget|r1_disp=position
|toc=llGetPrimitiveParams
|toc=llGetPrimitiveParams
}}
}}
|examples
|examples
|constants=
|constants=
<!--{{LSL ConstRow|CHANGED_SHAPE}}-->
{{LSL ConstRow|PRIM_ROTATION/ja}}
|functions=
|functions=
{{LSL DefineRow||[[llGetPrimitiveParams/ja|llGetPrimitiveParams]]|}}
{{LSL DefineRow||[[llGetPrimitiveParams/ja|llGetPrimitiveParams]]|}}
Line 36: Line 72:
{{LSL DefineRow||[[llGetRootPosition/ja|llGetRootPosition]]|}}
{{LSL DefineRow||[[llGetRootPosition/ja|llGetRootPosition]]|}}
{{LSL DefineRow||[[llGetObjectDetails/ja|llGetObjectDetails]]|}}
{{LSL DefineRow||[[llGetObjectDetails/ja|llGetObjectDetails]]|}}
|events=
|events
<!--{{LSL DefineRow||[[changed]]|}}-->
|articles=
{{LSL DefineRow||[[warpPos/ja|warpPos]]|}}
|location
|location
|cat1=Prim
|cat1=Prim

Latest revision as of 12:55, 25 February 2016

解説

定数: integer PRIM_POSITION = 6;

integer 定数 PRIM_POSITION の値は 6 です。

PRIM_POSITION はプリムの位置を設定するために使用されます。

llSetPrimitiveParams

llSetPrimitiveParams([ ..., PRIM_POSITION, vector position, ... ]);
• vector position ローカル座標 または リージョン座標 での位置。状況によって異なります。

同じ構文が llSetLinkPrimitiveParamsllSetLinkPrimitiveParamsFast に適用されますが、頭に リンク パラメータがつきます。

警告

  • 状況によって positionローカル座標リージョン座標 のどちらかを指定する必要があります。詳細は llSetPosの仕様 を参照してください。
  • アタッチされていないルートプリムの場合、プリムが動ける範囲は限られています。PRIM_POSITION 1 コールあたり 10m に制限されています。WarpPos を参照してください。これは非常に特殊なケースです。 Do not rely on rule duplication of other flags - 結果は不定で、将来 きっと 壊れます。
  • PRIM_POSITIONアバター を動かすときは、
    • アバターが座っているプリムを動かしてもアバターは動きません。
    • アバターを動かしても、アバターが座っているプリムは動きません。
    • 座っている位置の座標はプリムの座標に素直に連動しません。SitTargetを更新 を使ってください。
    • position が中心から 54 メートルを超えると、エラーを出さずに失敗します。
JIRA で関連バグを検索する

アバター

オブジェクトに座っているアバターを、llSetLinkPrimitiveParamsPRIM_POSITION を使って動かすことができます。もともとは予定していなかった特性ですが、Andrew Linden により、リンデンはこの特性をサポートすることにしました。

下の例では、座っているプリムの位置を動かさずに x,y,z の方向にアバターを動かします。x,y,z が呼び出し元から 54 メートルを超えると、何もエラーを出さずに失敗します。x,y,z は他のリンクされているオブジェクトのプリム同様、オブジェクトの相対座標であることに注意してください。

アバターは常にリンクセットの中の最後のプリムです。このため、llGetNumberOfPrims は乗り物に座っている 1 人のアバターにも使用できます。

例:
llSetLinkPrimitiveParams(llGetNumberOfPrims(), [PRIM_POSITION, <x,y,z>]);

llGetPrimitiveParams

llGetPrimitiveParams([ ..., PRIM_POSITION, ... ]);

vector position ] のリストを返します。

• vector position リージョン座標 での位置。

同じ構文が llSetLinkPrimitiveParamsllSetLinkPrimitiveParamsFast に適用されますが、頭に リンク パラメータがつきます。

警告

JIRA で関連バグを検索する

関連記事

特記事項

この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)