MCPcopy Create free account
hub / github.com/DanielChappuis/reactphysics3d / initBoxShapeHalfEdgeStructure

Method initBoxShapeHalfEdgeStructure

src/engine/PhysicsCommon.cpp:73–109  ·  view source on GitHub ↗

Initialize the static half-edge structure of a BoxShape

Source from the content-addressed store, hash-verified

71
72// Initialize the static half-edge structure of a BoxShape
73void PhysicsCommon::initBoxShapeHalfEdgeStructure() {
74
75 // Vertices
76 mBoxShapeHalfEdgeStructure.addVertex(0);
77 mBoxShapeHalfEdgeStructure.addVertex(1);
78 mBoxShapeHalfEdgeStructure.addVertex(2);
79 mBoxShapeHalfEdgeStructure.addVertex(3);
80 mBoxShapeHalfEdgeStructure.addVertex(4);
81 mBoxShapeHalfEdgeStructure.addVertex(5);
82 mBoxShapeHalfEdgeStructure.addVertex(6);
83 mBoxShapeHalfEdgeStructure.addVertex(7);
84
85 MemoryAllocator& allocator = mMemoryManager.getHeapAllocator();
86
87 // Faces
88 Array<uint> face0(allocator, 4);
89 face0.add(0); face0.add(1); face0.add(2); face0.add(3);
90 Array<uint> face1(allocator, 4);
91 face1.add(1); face1.add(5); face1.add(6); face1.add(2);
92 Array<uint> face2(allocator, 4);
93 face2.add(4); face2.add(7); face2.add(6); face2.add(5);
94 Array<uint> face3(allocator, 4);
95 face3.add(4); face3.add(0); face3.add(3); face3.add(7);
96 Array<uint> face4(allocator, 4);
97 face4.add(4); face4.add(5); face4.add(1); face4.add(0);
98 Array<uint> face5(allocator, 4);
99 face5.add(2); face5.add(6); face5.add(7); face5.add(3);
100
101 mBoxShapeHalfEdgeStructure.addFace(face0);
102 mBoxShapeHalfEdgeStructure.addFace(face1);
103 mBoxShapeHalfEdgeStructure.addFace(face2);
104 mBoxShapeHalfEdgeStructure.addFace(face3);
105 mBoxShapeHalfEdgeStructure.addFace(face4);
106 mBoxShapeHalfEdgeStructure.addFace(face5);
107
108 mBoxShapeHalfEdgeStructure.computeHalfEdges();
109}
110
111// Initialize the static half-edge structure of a TriangleShape
112void PhysicsCommon::initTriangleShapeHalfEdgeStructure() {

Callers

nothing calls this directly

Calls 4

computeHalfEdgesMethod · 0.80
addVertexMethod · 0.45
addMethod · 0.45
addFaceMethod · 0.45

Tested by

no test coverage detected