本文整理汇总了C++中Ptr::AddLine方法的典型用法代码示例。如果您正苦于以下问题:C++ Ptr::AddLine方法的具体用法?C++ Ptr::AddLine怎么用?C++ Ptr::AddLine使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Ptr
的用法示例。
在下文中一共展示了Ptr::AddLine方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnStartup
//.........这里部分代码省略.........
}
*/
if (pSensor)
SFusion.AttachToSensor(pSensor);
if (pSensor2)
SFusion2.AttachToSensor(pSensor2);
/*
// Test rotation: This give rotations clockwise (CW) while looking from
// origin in the direction of the axis.
Vector3f xV(1,0,0);
Vector3f zV(0,0,1);
Vector3f rxV = Matrix4f::RotationZ(DegreeToRad(10.0f)).Transform(xV);
Vector3f ryV = Matrix4f::RotationY(DegreeToRad(10.0f)).Transform(xV);
Vector3f rzV = Matrix4f::RotationX(DegreeToRad(10.0f)).Transform(zV);
*/
// Report relative mouse motion (not absolute position)
// pPlatform->SetMouseMode(Mouse_Relative);
const char* graphics = "d3d10";
for (int i = 1; i < argc; i++)
if (!strcmp(argv[i], "-r") && i < argc-1)
graphics = argv[i+1];
pRender = pPlatform->SetupGraphics(OVR_DEFAULT_RENDER_DEVICE_SET, graphics,
RendererParams());
//WireframeFill = pRender->CreateSimpleFill(Fill::F_Wireframe);
// *** Rotating Box
pBox = *new Container;
pBox->Add(Ptr<Model>(
*Model::CreateAxisFaceColorBox(-2.0f, 2.0f, Color(0, 0xAA, 0), // x = green
-1.0f, 1.0f, Color(0xAA,0, 0), // y = red
-1.0f, 1.0f, Color(0, 0, 0xAA)) )); // z = blue
// Drop-down line from box, to make it easier to see differences in angle.
Ptr<Model> downLine = *new Model(Prim_Lines);
downLine->AddLine(Vertex(0.0f,-4.5f, 0.0f, 0xFFE0B0B0),
Vertex(0.0f, 0.0f, 0.0f, 0xFFE0B0B0));
pBox->Add(downLine);
Sc.World.Add(pBox);
// Secondary rotating coordinate object, if we have two values.
if (pSensor2)
{
pBox2 = *new Container;
// Drop-down line from box, to make it easier to see differences in angle.
Ptr<Model> lines = *new Model(Prim_Lines);
lines->AddLine(Vertex( 0.0f,-4.0f, 0.0f, 0xFFA07070), // -Y
Vertex( 0.0f, 0.0f, 0.0f, 0xFFA07070));
lines->AddLine(Vertex(-4.0f, 0.0f, 0.0f, 0xFF70A070), // -X
Vertex( 0.0f, 0.0f, 0.0f, 0xFF70A070));
lines->AddLine(Vertex( 0.0f, 0.0f,-4.0f, 0xFF7070A0), // -Z
Vertex( 0.0f, 0.0f, 0.0f, 0xFF7070A0));
pBox2->Add(lines);
Sc.World.Add(pBox2);
}
// *** World axis X,Y,Z rendering.
pAxes = *new Model(Prim_Lines);
pAxes->AddLine(Vertex(-8.0f, 0.0f, 0.0f, 0xFF40FF40),
Vertex( 8.0f, 0.0f, 0.0f, 0xFF40FF40)); // X
pAxes->AddLine(Vertex( 7.6f, 0.4f, 0.4f, 0xFF40FF40),
Vertex( 8.0f, 0.0f, 0.0f, 0xFF40FF40)); // X - arrow
pAxes->AddLine(Vertex( 7.6f,-0.4f,-0.4f, 0xFF40FF40),
Vertex( 8.0f, 0.0f, 0.0f, 0xFF40FF40)); // X - arrow
pAxes->AddLine(Vertex( 0.0f,-8.0f, 0.0f, 0xFFFF4040),
Vertex( 0.0f, 8.0f, 0.0f, 0xFFFF4040)); // Y
pAxes->AddLine(Vertex( 0.4f, 7.6f, 0.0f, 0xFFFF4040),
Vertex( 0.0f, 8.0f, 0.0f, 0xFFFF4040)); // Y - arrow
pAxes->AddLine(Vertex(-0.4f, 7.6f, 0.0f, 0xFFFF4040),
Vertex( 0.0f, 8.0f, 0.0f, 0xFFFF4040)); // Y
pAxes->AddLine(Vertex( 0.0f, 0.0f,-8.0f, 0xFF4040FF),
Vertex( 0.0f, 0.0f, 8.0f, 0xFF4040FF)); // Z
pAxes->AddLine(Vertex( 0.4f, 0.0f, 7.6f, 0xFF4040FF),
Vertex( 0.0f, 0.0f, 8.0f, 0xFF4040FF)); // Z - arrow
pAxes->AddLine(Vertex(-0.4f, 0.0f, 7.6f, 0xFF4040FF),
Vertex( 0.0f, 0.0f, 8.0f, 0xFF4040FF)); // Z - arrow
Sc.World.Add(pAxes);
SetView(CurrentView);
LastUpdate = pPlatform->GetAppTime();
return 0;
}