Benutzer-Werkzeuge

Webseiten-Werkzeuge


guicomponents:3dview

View 4D

Overview

This component visualizes 3d objects in space and time. It is used to show a 3d-stick-figure for marker based motion analysis. But it is also possible to show arbitrary 3d objects like planes, spheres or bones. The scene can move with the time correspondig to the global time position defined by the Time Synchronization component. Different views of the same scene at time are possible and a lot of specific 3d objects e.g. to visualize the ground, force plates, bottom of support areas, segments centre of mass points, … are available.

Configuration

Markers and Points

<Marker>- and <Point>-elements visualize spherical objects. Many markerbased motion analysis measurement systems use retroreflective spherical markers, with different diameters, which can visualized with the <Marker>-element. All other points are visualized with the <Point>-element. <Marker>- and <Point>-element differs in the diameter and the default colors.

Each marker is defined as an child to the <MarkerSet>-element:

<MarkerSet name="Markers">
    <Marker name="ABC" origin="ABC"/>
</MarkerSet>

And each <Point>-element is defined as an child of the <PointSet>-element:

<PointSet name="Point">
       <Point name="D" origin="D"/>
</PointSet>

The <MarkerSet>- and the <PointSet>-element must have an attribute „name“, which can be used by the graphical user interface to visualize and edit the visualization description.

A <Marker>-element is a specialized version of a <Point>-element. It defines a default behavoir to visualize sperical markers as used for marker based motion analysis measurement systems.

Attribute Default Description Required
radius 0.00475mm float No
color gray red, green, blue, grey No
origin No
visible true (not used) No
comment - comment No

Connection Sets

A <Connection>-element visualizes the connection between two markers or points by a stick. Each connection is defined as a child of the <ConnectionSet>-element. The <ConnectionSet>-element is defined as an child of the <MarkerSet>-element.

<MarkerSet name="ABC">
   <ConnectionSet name="">
      <Connection name="AB" start="A" end="B"
   </ConnectionSet>
</MarkerSet>

Arrows

An <ArrowSet>-element defines a list of arrows and its child elements of type <Arrow> define this arrows.

Attributes

Attribute Default Description Required
name name of the element Yes
start Startposition of the arrow. Yes
end Endposition of the arrow. No
mid (not implemented yet) Alternative to the attributes start and end, the arrow can be defined by the attributes mid and vector (and optional length). The attribute mid defines the mid of the arrow. The direction is then defined by the attribute vector. The default length is 0.1m. This can be changed by the attribute length. No
vector Alternative to the attributes start and end, the arrow can be defined by start and vector. The attribute vector defines the direction of the arrow. The default length is 0.1m. This can be changed by the attribute length. If the attribute „start“ is not set, than (0,0,0) is used as start position. No
radius (not yet implemented) 0.005 Radius of the cylinder. No
length (not implemented yet) 0.1m This attribute is used optional in combination with the vector attribute. It defines the length of the arrow. The current implementation uses a fix length of 0.1m only. No
comment No
color blue green,red, green, blue, gray No
visible true No

Example

<ArrowSet name="Arrows">         
       <Arrow name="MyArrow" start="RMEP" end="RLEP"/>     
</ArrowSet> 

Frames

The <Frame>-elements shows a coordinate system represented by three orthogonal vectors. The colors of these vectors are identical to the colors used by Vicon Nexus:

Axis Color
X green
Y blue
Z red

The following attributes can be used to customize the frame visualization:

Attribute Default Unit Description Required
name String Name of the element Yes
xColor red RGB color of the x-axis No
yColor green RGB color of the y-axis No
zColor blue RGB color of the z-axis No
origin [m,m,m] Vector-3d position of the coordinate system No
visible true boolean No
rotation Quat4d or Matrix3d data Yes
radius 0.1 [m] Radius of the sphere to visualize the origin of the coordinate syste No
length 0.15 [m] length of the axis (not yet implemented) No
diameter length/20.0 [m] diamter of the coordinate system axes (not yet implemented) No

Each <Frame>-element must be contained in a named <FrameSet>-element container. Have a look at the following example:

  <FrameSet>
        <Frame name="Mir"
               origin="MirPosition"
               rotation="Mir"/>
        <Frame name="Labor"
               origin="LaborPosition"
               rotation="Labor"/>
  </FrameSet>

Global Frame

The <GlobalFrame>-element visualized the global coordinate system, represented by three orthogonal vectors. The colors of these vectors are different to the colors used by Vicon Nexus:

Axis Color
X red
Y green
Z blue
    <GlobalFrame/>

Shapes

The <ShapeSet>-element defines a ".obj"-file in the view-folder of the project, which includes one or more shapes. With the <Shape>-children elements these elements can be referenced and visualiszed at specified poses.

Example:

  <ShapeSet name="Golembones" filename="golembones.obj">
        <Shape name="head"
               origin="HeadPosition"
               rotation="HeadRotation"/>
  </ShapeSet>

Attributes of the <Shape>-elements:

Attribute Default Description Required
name default Name of the element as defined in the „.obj“-file. Yes
origin name of the timeserie, which defines the position, where to place the shape. Yes
rotation name of the timeserie which defines the orientation the shape is shown. Yes
scale 0.2 Scale applyed to the bone size No

The loader of the obj-fileformat is not complete. Only a subset of the identifiers are currently supported.

Example

<?xml version="1.0" encoding="UTF-8"?>
<?DOCTYPE View4d PUBLIC "-//Nimue//DTD View4d Def 1.0//EN" 
 "http://www.orat.de/Nimue/dtds/view4d_1.0.dtd"?>
 
<View4d name="Full Body">
 
 <MarkerSet name="Markers">
 
 <!-- thorax -->
 <Marker name="CLAV" origin="CLAV"/>
 <Marker name="STRN" origin="STRN"/>
 <Marker name="C7" origin="C7"/>
 <Marker name="RSHO" origin="RSHO"/> 
 <Marker name="LSHO" origin="LSHO"/> 
 <Marker name="T10" origin="T10"/> 
 
 <!-- pelvis -->
 <Marker name="SACR" origin="SACR"/>
 <Marker name="RASI" origin="RASI"/>
 <Marker name="LASI" origin="LASI"/>
 
 <!-- left leg -->
 <Marker name="LTHI" origin="LTHI"/>
 <Marker name="LKNE" origin="LKNE"/>
 <Marker name="LTIB" origin="LTIB"/>
 <Marker name="LANK" origin="LANK"/>
 <Marker name="LHEE" origin="LHEE"/>
 <Marker name="LTOE" origin="LTOE"/>
 
 <!-- right leg -->
 <Marker name="RTHI" origin="RTHI"/>
 <Marker name="RKNE" origin="RKNE"/>
 <Marker name="RTIB" origin="RTIB"/>
 <Marker name="RHEE" origin="RHEE"/>
 <Marker name="RTOE" origin="RTOE"/>
 <Marker name="RANK" origin="RANK"/>
 
 <!-- KAD -->
 <Marker name="LKD2" origin="LKD2"/>
 <Marker name="RKD2" origin="RKD2"/>
 <Marker name="RKAX" origin="RKAX"/>
 <Marker name="LKD1" origin="LKD1"/>
 <Marker name="RKD1" origin="RKD1"/>
 <Marker name="LKAX" origin="LKAX"/>
 <!--Marker name="PELF" origin="PELF"/--> 
 
 <!-- right arm -->
 <Marker name="RRAD" origin="RRAD"/>
 <Marker name="RULN" origin="RULN"/> 
 <Marker name="RELB" origin="RELB"/>
 <Marker name="RELBW" origin="RELBW"/> 
 <Marker name="RHUMS" origin="RHUMS"/>
 
 <!-- left arm -->
 <Marker name="LRAD" origin="LRAD"/>
 <Marker name="LULN" origin="LULN"/>
 <Marker name="LELB" origin="LELB"/>
 <Marker name="LELBW" origin="LELBW"/>
 <Marker name="LHUMS" origin="LHUMS"/>
 
 <!-- head -->
 <Marker name="RMAS" origin="RMAS"/>
 <Marker name="LMAS" origin="LMAS"/>
 <Marker name="HEAD" origin="HEAD"/>
 
 <ConnectionSet name="Connections">
 
 <!-- shoulder -->
 <Connection name="1" start="C7" end="RSHO"/>
 <Connection name="2" start="RSHO" end="CLAV"/> 
 <Connection name="3" start="CLAV" end="LSHO"/> 
 <Connection name="4" start="LSHO" end="C7"/>
 
 <!-- thorax -->
 <Connection name="5" start="CLAV" end="STRN"/> 
 <Connection name="6" start="C7" end="T10"/> 
 <Connection name="7" start="T10" end="SACR"/> 
 
 <!-- pelvis -->
 <Connection name="8" start="SACR" end="RASI"/> 
 <Connection name="9" start="RASI" end="LASI"/> 
 <Connection name="10" start="LASI" end="SACR"/> 
 
 <!-- right leg -->
 <Connection name="11" start="RASI" end="RTHI"/> 
 <Connection name="12" start="RTHI" end="RKNE"/> 
 <Connection name="13" start="RKNE" end="RTIB"/> 
 <Connection name="14" start="RTIB" end="RANK"/> 
 
 ...
 
 </MarkerSet> 
 
 <!--ConjunctRotationField name="RVectorField"
 origin="ThoraxUncalibratedPosition"
 rotation="ThoraxUncalibrated"/>
 
 <NavigationFrame name="Navigation"
 origin="RSHO"
 rotation="ThoraxUncalibrated"/-->
</View4d>
guicomponents/3dview.txt · Zuletzt geändert: 2021/05/19 09:50 von oliver

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki