User Frame/zh-hans
< User Frame
Revision as of 13:28, 30 May 2017 by Chi (talk | contribs) (Created page with "{{Languages}} == User Frame == User can add his own frame by teaching three points: A, B, C 700px | Defining the frame<br> The origin of the fram...")
语言: | [[::User Frame|English]] • [[::User Frame/zh-hans|中文(简体)]] |
---|
Contents
User Frame
User can add his own frame by teaching three points: A, B, C
The origin of the frame is at point A and points B & C help defining the orientation of the new frame.
PROTO.PRO
New function must be defined in the PROTO,PRO file as:
IMPORT_C RBT_TABLE(byval as generic location, byval as generic location, byval as generic location, as generic location ) as long
Usage
Calling:
-->?RBT_TABLE(A,B,C,D)
Return Value
Anything except 0 is an error code.
Example
Library definition:
IMPORT_C RBT_TABLE(byval as generic location,byval as generic location,byval as generic location, as generic location ) as long public function Table(byval a as generic location,byval b as generic location,byval c as generic location) as generic location dim tmp as long dim x as generic location tmp = rbt_table(a,b,c,x) if tmp then Print "Internal TABLE error",tmp end if Table = x end function
Usage
dim shared Xax as location of xyzypr = #{10,0,0,0,0,0} dim shared Yax as location of xyzypr = #{0,10,0,0,0,0} dim shared Zax as location of xyzypr = #{0,0,10,0,0,0} dim shared Origin as location of xyzypr = #{10,20,30,0,0,0} program dim MyFrame as location of xyzypr dim Res as generic location MyFrame = Origin:#{0,0,0,45,45,45} Print "MyFrame : ";Myframe Res = Table(Origin,MyFrame:Xax,MyFrame:Yax) Print "Res : ";res end program
Output:
MyFrame : #{10 , 20 , 30 , 45 , 45 , 45} Res : #{10 , 20 , 30 , 45 , 45 , 45}
See Also
Source code example: File:FRAMES.ZIP
Euler Angles Manipulations : Translating_Euler_Angles