本文整理汇总了C++中EventData::getExtraDataVector3方法的典型用法代码示例。如果您正苦于以下问题:C++ EventData::getExtraDataVector3方法的具体用法?C++ EventData::getExtraDataVector3怎么用?C++ EventData::getExtraDataVector3使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EventData
的用法示例。
在下文中一共展示了EventData::getExtraDataVector3方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: onEvent
virtual void onEvent(const EventData& e)
{
if (e.type == EventData::Trace)
{
fprintf(stderr, "TRACE source %d\n", e.sourceId);
}
else if (e.type == EventData::Untrace)
{
fprintf(stderr, "UNTRACE source %d\n", e.sourceId);
}
else if (e.type == EventData::Update)
{
if (e.serviceType == EventData::ServiceTypeMocap) // Mocap (head I guess
fprintf(stderr, "MOCAP source %d type %d device %d\n",
e.sourceId, e.type, e.deviceTag);
if (e.serviceType == EventData::ServiceTypeWand) // Wand
fprintf(stderr, "Wand source %d type %d device %d\n",
e.sourceId, e.type, e.deviceTag);
fprintf(stderr, " pos(%6.3f %6.3f %6.3f)\n", e.posx, e.posy, e.posz);
fprintf(stderr, " rot(%6.3f %6.3f %6.3f %6.3f)\n", e.orx, e.ory, e.orz, e.orw);
fprintf(stderr, " flag: %d\n", e.flags);
fprintf(stderr, " extra type: %d\n", e.extraDataType);
fprintf(stderr, " extra items: %d\n", e.extraDataItems);
fprintf(stderr, " extra mask: %d\n", e.extraDataMask);
if (e.extraDataItems) {
if (e.extraDataType == EventData::ExtraDataFloatArray)
{ //array of floats
float *ptr = (float*)(e.extraData);
for (int k=0;k<e.extraDataItems;k++)
{
fprintf(stderr, " val %2d: [%6.3f]\n", k, ptr[k]);
}
}
else if (e.extraDataType == EventData::ExtraDataVector3Array)
{ //array of floats
float val[3];
//float *ptr = (float*)(e.extraData);
for (int k = 0; k < e.extraDataItems; k++)
{
e.getExtraDataVector3(k, val);
fprintf(stderr, " val %2d: [%6.3f, %6.3f, %6.3f]\n", k, val[0], val[1], val[2]);
}
}
}
fprintf(stderr, "-----------\n");
}
else if (e.type == EventData::Down) {
//fprintf(stderr, "EVENT down: %d\n", mButton(e.flags));
}
else if (e.type == EventData::Up)
{
fprintf(stderr, "EVENT up: %d type: %d\n", e.sourceId, e.type);
fprintf(stderr, " flag: %d\n", e.flags);
fprintf(stderr, " extra: %d\n", e.extraDataType);
fprintf(stderr, " items: %d\n", e.extraDataItems);
fprintf(stderr, " mask: %d\n", e.extraDataMask);
fprintf(stderr, "-----------\n");
}
}